Startseite
Downloads
Lexikon
Sonstiges
Links
Kontakt
Gästebuch
Statistics
Disclaimer
Syntax
rc = AllocIt( dsn, ddn[, disp] ) [;]
Beschreibung
Interne REXX-Prozedur zum Allokieren einer bereits existierenden MVS-Datei mit dem TSO-Befehl ALLOCATE.
Aufrufparameter
Parameter
Beschreibung
dsn
Dateiname nach TSO-Konventionen
ddn
DD-Name (File-Name) unter dem wird die Datei angesprochen
disp
Dispositionsparameter, der festlegt, wie die Datei verwendet wird. Diese 3 Möglichkeiten sind erlaubt:
  • SHR - die Datei kann gemeinsam mit anderen Benutzern verwendet werden. Im Falle des Schreibens wird sie überschrieben.
  • MOD - die Datei wird exklusiv verwendet. Im Falle des Schreibens wird sie fortgeschrieben (nur PS-Dateien).
  • OLD - die Datei wird exklusiv verwendet. Im Falle des Schreibens wird sie neugeschrieben (der alte Inhalt geht verloren).
Standardwerte
Parameter
Wert
disp
SHR
Rückgabewerte
Bedeutung
0
Erfolgreiche Allokierung (RC von ALLOCATE).
4
Parameter dsn nicht angegeben.
8
Parameter ddn nicht angegeben.
16
Allokierung fehlgeschlagen (RC von ALLOCATE).
Bemerkungen
Die Funktion liefert Return Codes des TSO-Befehls zurück. Zusätzlich gib sie Return Codes zurück, die über Fehler bei der Vergabe von Aufrufparametern informieren.

Disposition MOD darf nur an die Dateien mit der PS-Organization angewendet werden. Wenn sie an einen Member einer PO-Datei angewendet wird, endet das Program mit einem System-Abend, fall es versucht wird in die Datei zu schreiben.
Parameter dsn und ddn müssen angegeben werden.

Sourcecode

/*======( Alloc file if dsname available )======*/
AllocIt: Procedure
Parse Arg dsn, ddn, disp

If dsn = '' Then Return 4
If ddn = '' Then Return 8

If disp = '' Then disp = "SHR"

x = Outtrap( "msg." )
"ALLOCATE FI("ddn") DA("dsn")" disp "REUSE"
x = Outtrap( "OFF" )
If rc > 0 Then Do
  Do i = 1 To msg.0
    Say msg.i
  End
  Say "Allocation" dsn "to" ddn "failed. rc="rc
  Exit rc
End
Say Strip( dsn,, "'" ) "allocated to" ddn 

Return rc
/*** End AllocIt ***/

Beispiel 1

rc = AllocIt()
Say "RC="rc

Ergebnis 1

RC=4

Beispiel 2

dsnINP = "'USER01.REXX.EXEC'"
ddnINP = "EXECINDD"
rc = AllocIt( dsnINP, ddnINP )
Say "RC="rc 

Ergebnis 2

RC=0
Your privacy: This web site has no cookies, no advertising and does not provide access data to anyone for any reason.
Copyright © Janosch R. Kowalczyk 1999, 2010. All rights reserved.
Most recent revision on 25 Feb 2010 (56) - 13:21:21.
Jakoxx Logo