查询以查找具有SAP B1中制造的城市的帐户

2020-08-17 04:53发布

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

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


我编写了此查询,但是当我使用[%0]变量时,它不会在B1中执行,但是如果我替换为文本,它将起作用。 要解决此问题需要做什么?

选择不同的bp。[CardCode],bp。[CardName],
 bp。[MailAddres],bp。[MailZipCod],bp。[Phone1],bp。[Phone2],bp。[Fax],
 bp。[CntctPrsn],bp。[MailCity],bp。[MailCountr],
 bp。[State2],
 invoice.DocNum AS为"最后订单号",invoice.DocTotal AS为"最后总计",
 invoice.DocDate AS'最后订购日期'
 从(选择CardCode,
                                          MAX(oinv.DocEntry)AS'DocEntry'
                      来自OINV
                      GROUP BY卡代码)为最新
 LEFT JOIN OINV AS发票已打开(invoice.DocEntry = Latesti.DocEntry)
 发票上的内部联接OCRD AS bp.cardcode = bp.cardcode
 在哪里(bp。[MailCITY]喜欢'%% [%0] %%')
 和bp。[FROZENFOR] ='N'


 全联盟


 选择不重复的bp2。[CardCode],bp2。[CardName],
 bp2。[MailAddres],bp2。[MailZipCod],bp2。[Phone1],bp2。[Phone2],bp2。[Fax],
 bp2。[CntctPrsn],bp2。[MailCity],bp2。[MailCountr],
 bp2。[State2],
 transfer.DocNum AS为"最后订单号",transfer.DocTotal AS为"最后总计",
 transfer.DocDate AS'最后订购日期'
 从(选择CardCode,
                                          MAX(owtr.DocEntry)AS'DocEntry'
                      从OWTR
                      GROUP BY CardCode)AS Latesttrans
 LEFT JOIN OWTR AS传输打开(transfer.DocEntry = Latesttrans.DocEntry)
 内连接OCRD AS bp2 ON transfer.cardcode = bp2.cardcode
 在哪里(bp2。[MailCITY]喜欢'%% [%0] %%')
 和bp2。[FROZENFOR] ='N'
 通过CardCode订购


 

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

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


我编写了此查询,但是当我使用[%0]变量时,它不会在B1中执行,但是如果我替换为文本,它将起作用。 要解决此问题需要做什么?

选择不同的bp。[CardCode],bp。[CardName],
 bp。[MailAddres],bp。[MailZipCod],bp。[Phone1],bp。[Phone2],bp。[Fax],
 bp。[CntctPrsn],bp。[MailCity],bp。[MailCountr],
 bp。[State2],
 invoice.DocNum AS为"最后订单号",invoice.DocTotal AS为"最后总计",
 invoice.DocDate AS'最后订购日期'
 从(选择CardCode,
                                          MAX(oinv.DocEntry)AS'DocEntry'
                      来自OINV
                      GROUP BY卡代码)为最新
 LEFT JOIN OINV AS发票已打开(invoice.DocEntry = Latesti.DocEntry)
 发票上的内部联接OCRD AS bp.cardcode = bp.cardcode
 在哪里(bp。[MailCITY]喜欢'%% [%0] %%')
 和bp。[FROZENFOR] ='N'


 全联盟


 选择不重复的bp2。[CardCode],bp2。[CardName],
 bp2。[MailAddres],bp2。[MailZipCod],bp2。[Phone1],bp2。[Phone2],bp2。[Fax],
 bp2。[CntctPrsn],bp2。[MailCity],bp2。[MailCountr],
 bp2。[State2],
 transfer.DocNum AS为"最后订单号",transfer.DocTotal AS为"最后总计",
 transfer.DocDate AS'最后订购日期'
 从(选择CardCode,
                                          MAX(owtr.DocEntry)AS'DocEntry'
                      从OWTR
                      GROUP BY CardCode)AS Latesttrans
 LEFT JOIN OWTR AS传输打开(transfer.DocEntry = Latesttrans.DocEntry)
 内连接OCRD AS bp2 ON transfer.cardcode = bp2.cardcode
 在哪里(bp2。[MailCITY]喜欢'%% [%0] %%')
 和bp2。[FROZENFOR] ='N'
 通过CardCode订购


 
付费偷看设置
发送
1条回答
jovirus
1楼 · 2020-08-17 05:32.采纳回答

乔纳森,你好,

这是因为查询包含子查询。 好消息,有解决方案。 请在查询的顶部添加以下内容:

/*从OCRD x */中选择*
 声明@CITY AS NVARCHAR(100)
 SET @CITY =/* x.MailCity */'[%0]'

然后像这样更改参数:

(bp2。[MailCITY] liKE'%%'+  @CITY +'%%')

致谢

Johan

一周热门 更多>