-
Zugriff auf Datei wo Keyfeld vom Typ variabler Länge
Hallo all,
Ich habe folgendes Problem in RPGiV:
Zugriff auf Datei mit Key-Feld vom TYP variabler Länge soll erfolgen :
DSFFD:
NUMBER2 CHAR 11 13 185 Beides NUMBER2
Feld mit variabler Län-- Zugeordnete Länge: Keine
Läßt den Nullwert zu
ID des codierten Zeichensatzes . . . . . : 273
Bei Umwandlung erhalte ich folgenden Fehler der Wertigkeit 30:
*RNF7073 30 883 052100 KFLD bei Folgenummer 481 hat eine Länge von 13. Das
Schlüsselfeld hat eine Länge von 13.
Code:
H DATEDIT(*DMY.) DECEDIT(*JOBRUN) CVTOPT(*VARCHAR) ALWNULL(*USRCTL)
H EXTBININT(*YES)
…
* CONTACT: logical File
FSUT5I5 IF E K DISK PREFIX(CO_)
…
* Contact-Key
C CONKEY KLIST
C KFLD *IN95 CO_NUMBER2
…
…
0521.00 C CONKEY CHAIN SUT5I5 94
Wo steckt der Fehler?
Dabke schon mal, Holger
-
Das Key-Feld muss mit dem Attribut VARLEN definiert werden.
Ggf. ist noch eine H-Zeile mit ALWNULL(*USRCTL) nötig.
-
Hallo Fuerchau,
ALWNULL(*USRCTL) ist drin siehe oben!
mit Atrribut VARLEN meinst Du da VARYING:
D ds1 DS
D CO_NUMBER2 13A VARYING
D NUM_len 5I 0 OVERLAY(CO_NUMBER2:1)
D NUM_data 11A OVERLAY(CO_NUMBER2:3) ??
Gruß Holger
-
Stimmt.
Durch Varying wird allerdings das Längenattribut automatisch verwaltet.
-
CvtOpt(*VARCHAR)
Hallo Holger,
Dein Problem liegt in der Verwendung des Schlüssel-Wortes CVTOPT(*VARCHAR) in den H-Bestimmungen. Durch die Angabe dieses Schlüssel-Wortes werden die Felder mit variabler Feldlänge aus externen Dateien in Felder mit fixer Feldlänge umgewandelt.
Damit stimmt die in RPG-verwendete Feldlänge (fix 13A) des Schlüssel-Feldes nicht mehr mit der tatsächlichen Länge des Schlüssel-Feldes (13A mit variabler Länge) überein. Das ist der Compile-Fehler!
Wird das Schlüssel-Wort CVTOPT nicht angegeben, oder mit CVTOPT(*NoVarChar) werden die Felder auch in RPG als Felder mit variabler Länge gehandelt.
Birgitta
-
![Zitat](images/misc/quote_icon.png) Zitat von B.Hauser
Hallo Holger,
Dein Problem liegt in der Verwendung des Schlüssel-Wortes CVTOPT(*VARCHAR) in den H-Bestimmungen. Durch die Angabe dieses Schlüssel-Wortes werden die Felder mit variabler Feldlänge aus externen Dateien in Felder mit fixer Feldlänge umgewandelt.
Damit stimmt die in RPG-verwendete Feldlänge (fix 13A) des Schlüssel-Feldes nicht mehr mit der tatsächlichen Länge des Schlüssel-Feldes (13A mit variabler Länge) überein. Das ist der Compile-Fehler!
Wird das Schlüssel-Wort CVTOPT nicht angegeben, oder mit CVTOPT(*NoVarChar) werden die Felder auch in RPG als Felder mit variabler Länge gehandelt.
Birgitta
@Birgitta,
Danke für die Antwort, aber das Schlüssel-Wort CVTOPT nicht angeben, oder mit CVTOPT(*NoVarChar) geht leider nicht, da ich Felder vom Typ Binär 2 Byte Länge habe, in die ich den Wert X'4000' also DEC 16384 zuweisen muß. Dies bringt bei *NOVARCHAR einen RPG-Fehler.
Habe die Sache aber gelöst: das Varying Keyfeld muß 2 Byte kürzer definiert werden als das Feld in der Datei, weil er die Längeninfo selbst wieder dazurechnet bei Varying.
Danke an alle
Gruß Holger
-
Die Länge eines Varying-Feldes wird mit der Builtin-Funktion %LEN gesetzt bzw. auch automatsch bei Zuweisung verändert:
/free
myvarfield = 'Dies ist der Text'; // Die Länge ist nun 17
%len(myvarfield) = 100; // Die Länge ist nun 100, mit Leerzeichen aufgefüllt
%len(myvarfield) = 10; // Die Länge ist 10, die Daten abgeschnitten
/end-free
Similar Threads
-
By marmart in forum IBM i Hauptforum
Antworten: 5
Letzter Beitrag: 25-09-07, 15:29
-
By schatte in forum NEWSboard Windows
Antworten: 7
Letzter Beitrag: 21-11-06, 11:37
-
By pwrdwnsys in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 07-11-06, 15:34
-
By WeKaSys in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 06-11-06, 17:34
-
By QSECOFR-1 in forum IBM i Hauptforum
Antworten: 0
Letzter Beitrag: 24-01-06, 16:29
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks