选择专家

2020-08-24 00:59发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


专家您好,

我是Crystal报表的新手,老实说,我不是那种精通计算机的人,而是试图修改一些报表以适应雇主的需求。 我有一个报告来跟踪我的公司资产,并且我正在努力使报告根据我在报告启动器上输入的内容为我提供某些数据。 我尝试使用选择专家来过滤数据,如下所示:

{?SortByCatOrAsset} = ['C','A']和
(如果{{BegCat} <>''则{HRCA.AssetCategory}> = {?BegCat}否则为1 = 1)和< br>(如果{?EndCat} <>'zzzzzzzzzzzz',则{HRCA.AssetCategory} <= {?EndCat}否则为1 = 1),并且将{?BegAsset}中的{HRCA.Asset}更改为{?EndAsset},
{HRCA.HRCo} = {?Company}和
(如果{?Status} ='8',则为true,否则为
if hasvalue({?Resource})然后{@AssignedTo} = {?Resource } else
true)和
(如果{?Status} ='0',则{HRCA.udAssetStatus} ='0-可用'else
,如果{?Status} ='1',则{HRCA。 udAssetStatus} ='1-Unavailable'else
如果{?Status} ='2'则{HRCA.udAssetStatus} ='2-Dispose'else
如果{?Status} ='3'则{HRCA。 udAssetStatus} ='3卖'否则
如果{?Status} ='4'则{HRCA.udAssetStatus} ='4-有库存'else
如果{?Status} ='5'则{HRCA .udAssetStatus} ='5-缺少'else
,如果{?Status} ='6',则{HRCA.udAssetStatus} ='6-Reserved'else
,如果{?Status} ='7',则{HRCA .udAssetStatus} ='7-Stolen'else
如果{?Status} ='8'然后1 = 1)

。我的公式有问题吗? 并没有给我我需要的结果,尤其是在使用Resource参数时:我想在启动器中过滤资源#,结果返回空白。

请帮助我。 谢谢。 我正在使用Crystal Report 2013

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


专家您好,

我是Crystal报表的新手,老实说,我不是那种精通计算机的人,而是试图修改一些报表以适应雇主的需求。 我有一个报告来跟踪我的公司资产,并且我正在努力使报告根据我在报告启动器上输入的内容为我提供某些数据。 我尝试使用选择专家来过滤数据,如下所示:

{?SortByCatOrAsset} = ['C','A']和
(如果{{BegCat} <>''则{HRCA.AssetCategory}> = {?BegCat}否则为1 = 1)和< br>(如果{?EndCat} <>'zzzzzzzzzzzz',则{HRCA.AssetCategory} <= {?EndCat}否则为1 = 1),并且将{?BegAsset}中的{HRCA.Asset}更改为{?EndAsset},
{HRCA.HRCo} = {?Company}和
(如果{?Status} ='8',则为true,否则为
if hasvalue({?Resource})然后{@AssignedTo} = {?Resource } else
true)和
(如果{?Status} ='0',则{HRCA.udAssetStatus} ='0-可用'else
,如果{?Status} ='1',则{HRCA。 udAssetStatus} ='1-Unavailable'else
如果{?Status} ='2'则{HRCA.udAssetStatus} ='2-Dispose'else
如果{?Status} ='3'则{HRCA。 udAssetStatus} ='3卖'否则
如果{?Status} ='4'则{HRCA.udAssetStatus} ='4-有库存'else
如果{?Status} ='5'则{HRCA .udAssetStatus} ='5-缺少'else
,如果{?Status} ='6',则{HRCA.udAssetStatus} ='6-Reserved'else
,如果{?Status} ='7',则{HRCA .udAssetStatus} ='7-Stolen'else
如果{?Status} ='8'然后1 = 1)

。我的公式有问题吗? 并没有给我我需要的结果,尤其是在使用Resource参数时:我想在启动器中过滤资源#,结果返回空白。

请帮助我。 谢谢。 我正在使用Crystal Report 2013

付费偷看设置
发送
2条回答
木偶小白
1楼-- · 2020-08-24 01:38

嗨Van

里面有很多过滤器,因此很难追踪导致记录丢失的原因。

第一步,我要 建议您摆脱if-else逻辑,并以简单的" AND-OR"语句替换它们。 像这样:

 {?SortByCatOrAsset} = ['C','A'] AND
 ({?BegCat} =''或{HRCA.AssetCategory}> = {?BegCat})和
 ({?EndCat} ='zzzzzzzzzzzz'或{HRCA.AssetCategory} <= {?EndCat})并且
 {?BegAsset}中的{HRCA.Asset}到{?EndAsset}中,并且
 {HRCA.HRCo} = {?Company}并且
 ({?Status} ='8'OR NOT(hasvalue({?Resource}))OR(hasvalue({?Resource})AND {@AssignedTo} = {?Resource}))AND
 (
 ({?Status} ='0'并且{HRCA.udAssetStatus} ='0-Available')
 要么
 ({?Status} ='1'并且{HRCA.udAssetStatus} ='1-Unavailable')
 要么
 ({?Status} ='2'AND {HRCA.udAssetStatus} ='2-Disposed')
 要么
 ({?Status} ='3'AND {HRCA.udAssetStatus} ='3-Sold')
 要么
 ({?Status} ='4'和{HRCA.udAssetStatus} ='4-In Stock')
 要么
 ({?Status} ='5'AND {HRCA.udAssetStatus} ='5-Missing')
 要么
 ({?Status} ='6'AND {HRCA.udAssetStatus} ='6-Reserved')
 要么
 ({?Status} ='7'AND {HRCA.udAssetStatus} ='7-Stolen')
 )

如果从上面的代码中删除以下行,报告是否返回结果:

({?Status} ='8'OR NOT(hasvalue({?Resource}  ))OR(hasvalue({?Resource})AND {@AssignedTo} = {?Resource}))AND 

如果不返回任何数据,则需要检查字段{ @AssignedTo}对于您选择的资源具有任何值。

-Abhilash

粗暴的香蕉
2楼-- · 2020-08-24 01:30

嗨,Abhilash,

感谢您的回复。

在将if else逻辑替换为and-or语句时,我得到了一个空白报告,如果我删除了({?Status} ='8'ORNOT(hasvalue({?Resource}))的整行,我将获得所有数据。 OR(hasvalue({?Resource})AND {@AssignedTo} = {?Resource}))AND,甚至使用Resource的过滤器。 您能给我进一步的建议吗? 谢谢

一周热门 更多>