-
RTVOBJD PF-DTA / PF-SRC
Hallo zusammen
wenn ich ein RTVOBJD auf ein *FILE Objekt mache, so steht im PF-SRC Fall und im PF-DTA Fall immer nur PF in OBJATR.
Gibt es ein möglichkeit das zu unterscheiden?
Danke
Dietlinde Beck
-
Die Object-API's geben da auch nicht so viel her, da es sich um ein File-Attribut handelt.
In diesem Fall ist es RTVMBRD FILETYPE.
-
select FILE_TYPE from SYSTABLES where TABLE_SCHEMA = 'QGPL' and TABLE_NAME = 'QCLSRC'
-
Gut, und wie mache ich das im CLP?
-
Da man in CL kein direktes SQL (also mit SELECT INTO machen kann, sondern sich das (meines Wissens nach) nur über DCLF, RCVF und OVRDBF lösen lässt, wirst Du wohl oder übel auf das zurück greifen müssen oder Du schreibst dir ein Service Programm, welches du CALL-st und dir über Rückgabeparameter den Datei-Typus holst.
Hier ein Link zu einem Blogeintrag auf RPGPGM.COM: Read, write, and update a file in CL
Ich bin z.B. mit dem Set Lower Limit Code gut gefahren, habe allerdings "nur" einen SETLL auf eine logische Datei mit 1 von 2 Keys. Da der Nutzername eindeutig war, hat es bei mir geklappt. Wenn man allerdings mehr als 1 Schlüssel braucht, muss man das in CL(P) mit einer CL Datenstruktur machen.
Hoffe ich konnte helfen!
Lg Radinator
Edit: Da sich das Beispiel von Robert Mack auf SQL mit einer View aus QSYS2 bezieht, weiß ich nicht, ob das mit CL und dem RCVF geht. Ich denke mal es wäre ökonomischer, wenn Du das einfach mit einem SRVPGM machst.
-
Vielen Dank für die Antwort.
Allerdings war meine Frage eher scherzhaft gemeint.
Dass man Select-SQL mit HLL (RPG/COBOL/REXX) machen muss, war mir schon klar;-).
-
... gehen tut viel Unfug:
runsql ('create table as ...') und dann rcvf
aber wieso überhaupt CL? Das ist doch mittlerweile komplett überflüssig!
D*B
-
Hallo Dibe,
die gewünschte Info bekommst Du mit dem Befehl RTVMBRD.
LG
Hans-Joachim
zu spät gesehen, Fuerchau hatte es bereits geschrieben.
-
Zitat von Fuerchau
Gut, und wie mache ich das im CLP?
Vielleicht so...
PHP-Code:
PGM DCLF FILE(FILETYPE) MONMSG MSGID(CPF0000)
OVRDBF FILE(FILETYPE) TOFILE(SYSTABLES) SHARE(*YES) OPNQRYF FILE((SYSTABLES)) FORMAT(FILETYPE) + QRYSLT('NAME=''QCLSRC'' *AND + DBNAME=''QGPL''') OPNID(*FILE) RCVF SNDPGMMSG MSGID(CPF9897) MSGF(QCPFMSG) MSGDTA(&FILETYPE) CLOF OPNID(SYSTABLES) ENDPGM: ENDPGM
PHP-Code:
FILETYPE (DDS / PF) REF(SYSTABLES) R FILETYPE NAME R DBNAME R FILETYPE R
-
Meinst du das nun ernst;-)?
-
Sei bitte nachsichtig, Baldur
wenn man nur einen Hammer hat, sieht jedes Problem wie ein Nagel aus...
;-)
-
Aber nur bei sachgerechtem Gebrauch. Ansonsten, wie für jedes Werkkzeug, steht dem Missbrauch nichts im Wege;-).
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