Cobol-Routine aus SAS aufrufen
Verfasst von bezNika am 2 Dezember, 2009 - 14:46
Hallo, wie kann man eine Cobol-Routine aus SAS aufrufen?
Ich habe folgenden Beispiel, mit dem es angeblich gehen soll:
filename sascbtbl '&&temp' DISP=(NEW,DELETE) UNIT=SYSDA
SPACE=(TRK,(1,1)) LRECL=80 RECFM=FB;
data _null_;
file sascbtbl;
input;
put _infile_;
datalines4;
routine cobolpgm minarg=1 maxarg=1 ;
arg 1 char update format=$char20.;
;;;;
SPACE=(TRK,(1,1)) LRECL=80 RECFM=FB;
data _null_;
file sascbtbl;
input;
put _infile_;
datalines4;
routine cobolpgm minarg=1 maxarg=1 ;
arg 1 char update format=$char20.;
;;;;
data _null_;
length ptrval $20 thedata $12;
call module('*i','cobolpgm',ptrval);
run;
folgende Parameter sagen mir aber gar nichts:
'&&temp' DISP=(NEW,DELETE) UNIT=SYSDA
SPACE=(TRK,(1,1)) LRECL=80 RECFM=FB;
____________________________________________
put _infile_;
datalines4;
____________________________________________
minarg=1 maxarg=1 ;
arg 1 char update format=$char20.;
eine für mich verständliche Beschreibung finde ich im Netz auch nicht...
kann mir vielleicht jemand helfen und die Sachen kurz erläutern?
Danke im Voraus!
»
- Anmelden oder Registrieren um Kommentare zu schreiben

Hallo, ich selbst habe das
Hallo,
ich selbst habe das noch nicht benötigt/gemacht, ein paar Anmerkungen helfen Ihnen vielleicht weiter.
Unter
http://support.sas.com/onlinedoc/913/getDoc/en/lrdict.hlp/a000471253.htm
wird die CALL MODULE Funktion/Call Routine beschrieben.
Die Angaben
'&&temp' DISP=(NEW,DELETE) UNIT=SYSDA SPACE=(TRK,(1,1)) LRECL=80 RECFM=FB;
sind Job Control Language (JCL), die auf IBM Mainfraimes (z/OS, OS/390) verwendet wird.
Es handelt sich hier um Angaben, wie eine Datei auf dem Host allokiert werden soll.
Sie arbeiten anscheinend auf einer solchen Maschine?!?
&&temp => DSNAME für ein temporäres data set
DISP=(NEW,DELETE) => 1. Parameter bei DISP: initiale Disp des Files. NEW bedeutet Neuanlage (default) und exklusive Nutzung
2. Parameter: optional, Disposition bei normalem Job-Ende
3. Parameter: optional, Disposition bei abnormalem Job-Ende
UNIT: welches Device (Platte, Tape etc) verwendet werden soll (SYSDA ist glaube ich Standard)
SPACE: Wieviel Platz allokiert werden soll. TRK(1,1)=> 1 Track mit einem Track bei Erweiterung.
LRECL: Logical Record Length (nomen est omen)
RECFM=FB: Record Format Fixed Blocked -> Feste Satzlänge, geblockt
Hilft das etwas weiter?
Gruß
Tim_Taylor
vielen Dank, Tim_Taylor! es
vielen Dank, Tim_Taylor!
es hat mir sehr-sehr viel weiter geholfen :-)