PDA

View Full Version : DDS SST Funktion



KingofKning
06-03-20, 12:53
Hallo *all,
ich möchte gerne die substring Funktion im DDS benutzen.



***************** Datenanfang ************************************
A*
A* UNIQUE
A R DAT021SATZ TEXT('ARTIKELSTAMM')
PFILE(RPTRADE/DAT015)
A ARTIKELNR
A* MATER00003 SST(MATER00001 1 16)
EANNUMMER
K MATER00003


Dann gibt der Sausack mir aber folgnede Fehlermeldung:



700 A ARTIKELNR
800 A* MATER00003 A SST(MATER00001 1 16)
CPD7926-********** .
CPD7552-*
900 EANNUMMER

* CPD7552 20 1 Nachricht . . . : Schlüsselwort oder Wert für Feldart oder Konstantenfeld nicht gültig.
* CPD7926 30 1 Nachricht . . . : Feld nicht gefunden.




Nehme ich den selben Namen, sagt er mir: * CPD7552 20 1 Nachricht . . . : Schlüsselwort oder Wert für Feldart oder Konstantenfeld nicht gültig.

Kann es sein das es sst unter V6R1 nicht gibt? Kann doch eigentlich nicht sein.

Was mach ich dann falsch?

BTW, wenn ich das Teil mit sql erstellen würde, könnte ich dann mit Cobol per Index darauf zugreifen? Weil SQL macht mir ja nur eine View ohne Index den müßte ich ja separat mit cretae Index anlegen. Nur wie würde er dann in Cobol angesprochen?

GG 4103

Doku ist ja diese hier: https://www.ibm.com/support/knowledgecenter/ssw_ibm_i_71/rzakb/rzakbmsttdsst.htm

Fuerchau
06-03-20, 14:43
Du kannst nur Felder verwenden, die in dem Format mit aufgenommen wurden.
Füge also das Feld hinzu, dann klappt auch SST.

Ansonsten kannst du auch einen Create Index machen:
https://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_72/db2/rbafzxcindx.htm

Beispiel:
<code data-clipboard-id="codeblock2">CREATE INDEX DEPT_TYPE
ON DEPARTMENT (SUBSTR(DEPTNO,2,2))

Indexe kannst du wieder ganz normal mit Cobol verwenden.
</code>

KingofKning
06-03-20, 14:51
Jo danke,
bei den ganzen Tests hatte ich eine Kleinigkeit übersehen, schlußendlich war es das I was an der falschen Stelle stand.

GG