PDA

View Full Version : SQL0104 - ?



sonicreducer
19-04-20, 07:41
Guten Morgen,

vielleicht kann mir jemand weiterhelfen. Folgendes SQL kann ich über ACS aufrufen, über RUNSQLSTM bekomme ich allerdings folgenden Fehler:

Satz *...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8
1 CREATE or REPLACE VIEW DB1/VERKKW1 AS
2 select
3 C.ASWBER as WB, sum(B.ARVKME) as Menge
4 from LAC001R100/DAK0PF X
5 left join LAC001R100/DAR0PF B on X.AKAUN7 = B.ARAUN7 and
6 X.AKAURE = B.ARAURE and X.AKAURA = B.ARAURA
7 left join LAC001R100/DAS0PF C on B.ARARTN = C.ASARTN and B.ARBTRA = C.ASBTRA
8 where
9 X.AKBTRK = 1 and
10 X.AKKZRH <> 'R' and B.ARARTN not like 'WB%'
11 and X.AKAUN7 BETWEEN '2000000' AND '2999999'
12 AND A.AKAUFS NOT IN ('Z', '9', 'K', 'W') and X.AKSTAT <> 9
13 AND char((year(current date)*100+week(current date))+1) = X.AKKAJW
14 group by C.ASWBER;

Satz *...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+..
MSG ID WTK SATZ TEXT
SQL0104 30 9 Position 8 Token X ungültig. Gültige Token: <ende
ANWEISUNG>. </ende>


Bin leider ratlos - vielen Dank,

LG,
Roman

B.Hauser
19-04-20, 09:58
So wie es aussieht hast Du über Position 80 rausgeschrieben.
Beim RUNSQLSTM musst Du die Spaltenbreite (Margins) entsprechend verändern, ansonsten wird der Quellcode bei Stelle 80 abgeschnitten.

Damit wird ist X in der Zeile 9 und Position 8 ungültig.


RUNSQLSTM SRCFILE(YourSchema/YourSrcFile)
SRCMBR(YourSrcMbr)
COMMIT(*NONE)
DATFMT(*ISO)
MARGINS(132)
DECMPT(*COMMA)

Die andere Alternative ist, den Source Code so umzubrechen, dass er nicht über Position 80 geht.

Fuerchau
19-04-20, 12:52
Alternativ wäre auch RUNSQL, das spart die zusätzliche Quelle;-).