-
Ja das schon, aber mach mal einen DSPFD deiner Zieldatei an.
Wenn dort der Formatname, den du im Write angibst nicht vorhanden ist, wird der Write eben abgelehnt.
Dein Programm kann nicht mit DDS-beschriebenen Dateien arbeiten.
PS:
Mein SQLCPY arbeitet mit SQL und ist deshalb flexibler.
-
... also ich intepretiere den Text aus dem RPG Handbich so, dass bei programmbeschriebenen Dateien über eine zugeordnete Datenstruktur aktualisiert wird!
*...1....+....2....+....3....+....4....+....5....+ ....6....+....7...+....
CL0N01Factor1+++++++Opcode(E)+Factor2+++++++Result ++++++++Len++D+HiLoEq....
*
* The WRITE operation writes the fields in the data structure
* DS1 to the file, FILE1.
*
C WRITE FILE1 DS1
Figure 335. WRITE Operation
WRITE (Create New Records)
Chapter 23.
-
Schau ins Joblog!
Lass mal beim write(e) das "(e)" weg, damit du einen Fehler bekommst.
-
... ausserdem ist DUMMYFIL hier nicht der Formatname!
-
Der Unterschied zwischen Update/Delete und Write ist eben der, dass bei Update/Delete/Read/setll/setgt ein Dateiname erlaubt ist, beim Write ein Formatname erforderlich ist.
Bei intern beschriebenen Dateien ist der Formatname identisch und deshalb kein Problem.
Wenn du die Datei als intern beschrieben definierst, aber per OVRDBF auf eine extern beschrieben Datei verweist, gilt die Bedingung der Zieldatei.
In diesem Fall ist hier der korrekte Formatname erforderlich (was in RPGLE leider nicht dynamisierbar ist).
Der Compiler weiß ja nicht, was zur Laufzeit erforderlich sein wird.
Also schau doch bitte ins Joblog um den genauen Fehler festzustellen.
Ggf. ohne "(e)" testen, dann gibts eine CPF-Nachricht.
-
ich bekomme :
Nachrichten-ID . . . . : CPF4011 Bewertung . . . . . . : 10
Nachrichtenart . . . . : Diagnose
Sendedatum . . . . . . : 09.01.09 Sendezeit . . . . . . : 16:43:32
Nachricht . . . : Pufferlänge größer als Satz für Teildatei CBXDTAF.
Ursache . . . . : Die Dateisatzlänge für Teildatei CBXDTAF in Datei TDTA in
Bibliothek SU#RMT ist 23. Die Länge des Puffereintrags ist 32766. Der Rest
des Puffereintrags wird mit Leerzeichen aufgefüllt.
Fehlerbeseitigung: Falls erforderlich die im Programm angegebene Satzlänge
auf die Länge des längsten Satzes in der Teildatei ändern. Anschließend die
Anforderung wiederholen.
das sollte doch trotzdem funktionieren?
-
Es muss noch eine weitere Meldung (ggf. folgend) geben. Die Pufferlänge ist ja nur eine Warnung.
Welchen Fehler bekommst du wenn du "(e)" beim Write mal wegläßt ?
-
E/A-Fehler CPF5006 in Datei DUMMYFIL erkannt.
Funktionsprüfung. RNX1299 nicht überwacht durch PGMA bei Anweisung
0000000290, Instruktion X'0000'.
Similar Threads
-
By Stoeberl in forum NEWSboard Programmierung
Antworten: 8
Letzter Beitrag: 10-01-07, 11:58
-
By Stoeberl in forum NEWSboard Programmierung
Antworten: 11
Letzter Beitrag: 26-10-06, 11:07
-
By ChrisX in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 11-10-06, 16:31
-
By Flappes in forum IBM i Hauptforum
Antworten: 0
Letzter Beitrag: 06-10-06, 09:39
-
By timeless in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 24-05-06, 07:37
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