PDA

View Full Version : QCMDEXC



philsturm
26-10-12, 09:49
Hallo!

Nach stundelanger Suche habe ich keine Lösungsideen mehr und hoffe hier kann mit jemand weiterhelfen.


DQCMDEXC PR extpgm('QCMDEXC')
D CMD 255A options(*varsize)
D const
D CMDLEN 14 5 const


Dclearpf C const('clrpfm file(arbestap)')


/FREE
callp(e) qcmdexc (clearpf:%size(clearpf));
/END-FREE



Leider wird das clrpfm nicht ausgeführt. Woran kann das liegen?

Besten Dank!

Fuerchau
26-10-12, 09:51
Lass das "options(*varsize)" weg und nimm statt dessen "const".

*varsize übergibt 2-Byte Längeninformation vorneweg.

Und CMDLEN ist 15 5, auch hier kann "const" nicht schaden.


PS:
const hattestt du ja schon :)

philsturm
26-10-12, 09:56
Auch folgendes bringt leider keinen Erfolg.


DQCMDEXC PR extpgm('QCMDEXC')
D CMD 255A const
D CMDLEN 15 5 const

Fuerchau
26-10-12, 10:23
Schreib das Kommando bitte in Großbuchstaben!
QCMDEXC übersetzt nicht wie eine Kommandozeile.

Ansonsten schau mal ins Joblog.

philsturm
26-10-12, 10:34
Das joblog sagt das mit der Datei bereits gearbeitet wird.

Allerdings merkwürdig, da das clrpfm die erste Verarbeitung der Datei im Programm ist...?

Fuerchau
26-10-12, 10:55
Wenn du die Datei in den F-Bestimmungen nicht mit UC (Usropn) definiert hast, öffnet RPG direkt beim Start.

Robi
26-10-12, 10:56
Dann sagt das joblog aber auch, das der qcmdexc ausgeführt wurde!
Warum mit der Datei gearbeitet wird ist eine andere Baustelle
Robi

philsturm
26-10-12, 11:15
OK, Leute. Mit usropn klappts. Hätte man auch selbst drauf kommen können...

Schönes Wochenende!

camouflage
26-10-12, 12:37
Anstelle von QCMDEXC kannst Du auch mit system arbeiten


HDFTACTGRp(*no) bnddir('QC2LE')

FmyFile if E DISK usropn

*--- Call Commands
Dsystem PR 10I 0 EXTPROC('system')
* Commandstring
D * VALUE OPTIONS(*STRING)

C callp system('CLRPFM myFile')
C open myFile

....
C close myFile