具有变量声明的SQL查询代码不起作用

2020-09-12 13:18发布

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

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


亲爱的SAP社区

下面的代码(来自SAP Note 955295)不起作用:

将@Num声明为数字(2)
设置@Num =/* T0.DocNum */[%0]
从ORDR T0中选择T0.DocNum
其中docnum = @Num

,显示错误消息" ...(SWEI)(ODBC -2028)(.... 131-183)"

来源是: https://launchpad.support.sap .com/#/notes/955295

我们应该怎么做才能解决该错误? 我问这个问题是在复杂的(嵌套,联合等)SQL查询中使用变量的更大问题的一部分。 我们正在使用SAP B1 9.2

我非常感谢您

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

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


亲爱的SAP社区

下面的代码(来自SAP Note 955295)不起作用:

将@Num声明为数字(2)
设置@Num =/* T0.DocNum */[%0]
从ORDR T0中选择T0.DocNum
其中docnum = @Num

,显示错误消息" ...(SWEI)(ODBC -2028)(.... 131-183)"

来源是: https://launchpad.support.sap .com/#/notes/955295

我们应该怎么做才能解决该错误? 我问这个问题是在复杂的(嵌套,联合等)SQL查询中使用变量的更大问题的一部分。 我们正在使用SAP B1 9.2

我非常感谢您

付费偷看设置
发送
5条回答
代楠1984
1楼 · 2020-09-12 14:03.采纳回答

嗨,Günther,

哪种语法有效,在某种程度上取决于B1版本和MS SQL版本。 这两个版本都越新,语法越容易编写。

您可以尝试使用旧版本中必需的语法:

/*从ORDR x */中选择*
 将@Num声明为INT
 Set @ Num =/* x.DocNum */[%0]

 选择T0.DocNum
 从ORDR T0
 凡docnum = @Num 

致谢,

Johan

spaceman01
2楼-- · 2020-09-12 14:04

Yaaaaay,谢谢您的工作!!!

您是否可以参考解释了此旧语法的注释或手册链接?

宇峰Kouji
3楼-- · 2020-09-12 13:52

嗨,Gunther,

对于SQL Server,它必须能够正常工作(对于HANA,您需要根据HANA语法更改查询),这是唯一的问题 我在这里看到docnum被强制转换为numeric(2)。 Docnum可能违反2个符号的长度限制。 我建议尝试尝试以下操作:

将@Num声明为INT
 设置@Num =/* T0.DocNum */[%0]
 选择T0.DocNum
 从ORDR T0
 其中docnum = @Num
 
追夢秋陽
4楼-- · 2020-09-12 13:57


我们正在使用Microsoft SQL Server 2012

xfwsx85
5楼-- · 2020-09-12 13:46

您好

您是否正在使用MS SQL或SAP HANA? 我复制并粘贴后,在我的计算机上工作正常,但是我正在使用MS SQL

致谢

赫克托

一周热门 更多>

点击此处---> EasySAP.com 一起学习S4 HANA ...

相关问答