Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Crystal reports 在Crystal Reports 2011的多值参数中使用LIKE_Crystal Reports - Fatal编程技术网

Crystal reports 在Crystal Reports 2011的多值参数中使用LIKE

Crystal reports 在Crystal Reports 2011的多值参数中使用LIKE,crystal-reports,Crystal Reports,我正在Crystal Reports 2011中开发一个报告,其中有3个子报告从3个不同的数据库中提取数据。我在主报告中有一个多值参数(字符串),它将输入值传递给具有相同多值字符串参数的3个子报告 示例输入值为: P000000030, P000000930, P000001730 用户不希望输入前导字母和前导零。他们希望输入以下内容: 三十,, 930, 1730 如果用户使用以下记录选择条件输入整个字符串值,但不使用部分字符串输入,则子报表将成功提取所有记录: {Pm-?Refe

我正在Crystal Reports 2011中开发一个报告,其中有3个子报告从3个不同的数据库中提取数据。我在主报告中有一个多值参数(字符串),它将输入值传递给具有相同多值字符串参数的3个子报告

示例输入值为:

 P000000030,

 P000000930,

 P000001730
用户不希望输入前导字母和前导零。他们希望输入以下内容:

三十,, 930, 1730

如果用户使用以下记录选择条件输入整个字符串值,但不使用部分字符串输入,则子报表将成功提取所有记录:

{Pm-?Reference}中的{Command.Puchase Order}

是否有人可以建议使用子字符串作为输入来提取子报表中的数据所需的语法


提前谢谢

继续,创建一个计算参数长度的公式(
len({Pm-?Reference})
),并将其放在报表标题上。然后将下面的内容放入您的记录选择公式中

右({Command.Puchase Order},{your length formula})在[{Pm-?Reference}]

您可以将[Puchase Order]的“数字”版本添加到数据源中

cast(cast(right([Puchase Order], len([Puchase Order]) - 1) as int) as varchar(9)) 
as [Puchase Order Number]
…然后在“选择专家”中使用该选项。我得到的是不带前导P的数字,转换为int以删除前导的零,然后返回到varchar以在Crystal中进行字符串比较


你也可以在Crystal reports中使用公式。然后在“选择专家”中引用该公式。缺点是必须在所有3个子报告中重复这一点。

谢谢你们的支持!!我从每个人身上汲取了一些经验,并提出了以下解决方案:

  • 在数据源中创建一列,将所需值-->ltrim(regexp_replace(a.“po_num”、“P”、“0”)修剪为“Puchase Order2”
  • 修改了我的记录选择条件,以选择{Pm-?Reference}中的列-->{Command.Puchase Order}或{Pm-?Reference}中的列{Command.Puchase Order2}

  • 我真的很感谢你的意见!在您的帮助下,我能够提供所需的解决方案。

    尝试此{Command.Puchase Order}如{Pm-?Reference}或instr({Command.Puchase Order},“{Pm-?Reference}”)>0谢谢您的建议。Crystal接受了该语句,但未返回任何结果集。我需要输入参数='30'来返回'P000000030'、'P000000330'和'P000013030'的行,所有输入值都将以P0000…开头。。。。ect等,或者可以是另一个字母/数字序列?