PDA

View Full Version : Verwendung DTADCT im ILE-RPG



Seiten : [1] 2

Peet
03-06-08, 11:35
Hallo zusammen !
Ich muss Daten aus einer Betriebsübernahme aus S/36-Dateien übernehmen.
Die intern beschriebenen Dateien stehen in QS36F, es gibt auch eine DTADCT (Data Dictionary), in der die Dateien extern definiert sind.
Wenn ich einen DSPFD auf die Dateien in QS36F mache, sehe ich auch bei "Verbindung zu Datenverzeichnis = JA" und die Angabe des DtaDct.

Wie kann ich jetzt im ILE-RPG (oder anders) die Beschreibungen
aus dem DTADCT benutzen, denn sonst müsste ich für die Dateien aus der QS36F manuell die Eingabebestimmungen codieren ?

Vielen Dank im Voraus für Eure Hilfe !
Peet

Fuerchau
03-06-08, 11:39
Leider letzteres, da Data Dictonary von ILE nicht unterstützt wird.

Fuerchau
03-06-08, 12:27
Nachtrag:
Laut ILERPG-Reference können IDDU-beschriebene Dateien ganz normal als extern beschriebene Dateien verwendet werden.

Probiers einfach mal aus.

Peet
03-06-08, 16:07
Also, die Dateien, die namentlich mit "M." anfangen, lassen
sich nicht direkt in den F-Bestimmungen angeben. (qualifizierter
Name nicht zulässig).
Über das Schlüsselwort EXTFILE(M.Datei) lassen sich die Dateinamen zwar angeben, aber die Umwandlung schlägt fehl, der Compiler
scheint das EXTFILE zu ignorieren, er meldet nämlich, das er die
in den F-Bestimmungen angegebene Dateien nicht findet !

Ich habe im ILE-RPG Reference Handbuch nachgeschaut, habe aber gar nichts dazu gefunden.(sowohl im Reference als auch im Reference Summary)

Kannst Du mir sagen, welche Nummer das Handbuch hat, in dem Du etwas gefunden hast ? (SC oder SX...)

Erstmal vielen Dank !

Peet

Fuerchau
03-06-08, 16:18
Aus dem Handbuch SC09-2508-04, Seite 257:


File description specifications identify each file used by a program. Each file in a
program must have a corresponding file description specification statement.
A file can be either program-described or externally described. In
program-described files, record and field descriptions are included within the RPG
program (using input and output specifications). Externally described files have
their record and field descriptions defined externally using DDS, DSU, IDDU, or
SQL commands. (DSU is part of the CODE/400 product.)

Möglicherweise kommt ILE aber mit dem Punkt im Namen nicht zurecht.

B.Hauser
03-06-08, 17:05
Versuch doch mal die Datei in Gänsefüßchen zu setzen.

EXTFILE("M.DATEI")

Birgitta

Peet
04-06-08, 10:39
Aus dem Handbuch SC09-2508-04, Seite 257:


File description specifications identify each file used by a program. Each file in a
program must have a corresponding file description specification statement.
A file can be either program-described or externally described. In
program-described files, record and field descriptions are included within the RPG
program (using input and output specifications). Externally described files have
their record and field descriptions defined externally using DDS, DSU, IDDU, or
SQL commands. (DSU is part of the CODE/400 product.)

Möglicherweise kommt ILE aber mit dem Punkt im Namen nicht zurecht.


Danke, aber IDDU in diesem Zusammenhang ist nur für die Erstellung der externen Definition einer Datei erwähnt.
Die Datei lässt sich ehe, wie bereits beschrieben, nicht als "M.DATEI" in den F-Bestimmungen definieren.

Trotzdem vielen Dank, ich suche mal weiter, wenn ich etwas finde, stelle ich die Infos hier ein !

Peet

Peet
04-06-08, 10:41
Versuch doch mal die Datei in Gänsefüßchen zu setzen.

EXTFILE("M.DATEI")

Birgitta



Also, EXTFILE("M.DATEI") lässt sich erst gar nicht im Editor machen,
EXTFILE('M.DATEI') lässt sich editieren, die Umwandlung lässt das aber auch kalt, nach wie vor der Hinweis, DATEI (aus F-Bestimmung) nicht gefunden.

Ich suche mal weiter, und wenn ich die Lösung finden sollte,
stelle ich die Infos hier ein.

Trotzdem vielen Dank !

Peet

kuempi von stein
04-06-08, 11:19
Hello,

eventuell hilft ja ein OVR vor dem Call?
Habs gerade mal getestet:

OVRDBF FILE(TEST) TOFILE(M.TEST)

ergibt laut Jobanzeige:


5=Überschreibungsdetails anzeigen
</PRE>

Opt. Datei Stufe Art Schlüsselwortspezifikationen
</PRE>


TEST
</PRE>
4

</PRE>
DB

</PRE>
TOFILE(*LIBL/M.TEST)

</PRE>

k.

Fuerchau
05-06-08, 08:58
Überschreibungen helfen allerdings nicht dem Compiler.

Ggf. hilft für die Umwandlung folgender Weg:

CRTDUPOBJ in einen Namen ohne Punkt.
Diesen neuen Namen in den F-Bestimmungen angeben.
Zur Laufzeit dann halt den OVRDBF vor dem CALL absetzen.