我编写了一段SQL,它在 MS SQL Studio 2017 内完美运行,没有问题。我已将其转移到 SAP B1 并收到以下错误:
关键字“ FOR”附近的语法无效
但是我在我的代码中看不到任何"FOR"
,这有点令人困惑,因为它在MS SQL Studio中可以正常工作。
我看到有人提到它在哪里,因为在select FROM和FROM中的FROM子句中有FROM。我尝试从此WHERE中删除此文件,但是它在查询中重复了我的结果(可能是连接问题),但我不认为这需要连接,因为它不是直接链接到它?
SELECT T1.[ItemCode] AS 'Item No'
,T1.[Dscription] AS 'Item Description'
,'' AS 'Price List'
,'' AS 'Primary Currency'
,T1.[DiscPrcnt] AS 'Discount'
,'' AS 'Source Price'
,T1.[Price] AS 'Price after Discount'
FROM ORDR T0
INNER JOIN RDR1 T1 ON T0.[DocEntry] = T1.[DocEntry]
WHERE T0.[DocNum] = '1207006'
AND T1.[DiscPrcnt] > 0
AND T1.[ItemCode] <> 'ONEOFF'
AND T1.[ItemCode] NOT IN (
SELECT T2.[ItemCode]
FROM OSPP T2
WHERE T2.[CardCode] = 'C001174'
);
感谢您的帮助。
亲切问候 安迪
答案 0 :(得分:0)
我从头开始重新编写了此代码,它似乎在第二轮工作了,它一定是某些奇怪的格式错误或引起该问题的某种原因。 它现在正在工作。
谢谢
答案 1 :(得分:0)
SAP Business One记录集,对吧?
请勿使用“;”在查询结束时...就是这样。
记录集将在查询中删除“用于输出”的连接(不知道为什么)。