Mit dem Makroaufruf NCOPYSYN können Sie Dateien oder Bibliothekselemente synchron übertragen. Der Rechner, in dem das Programm abläuft, kann dabei Sender oder Empfänger der Datei sein. Der Funktionsumfang entspricht dem Kommando TRANSFER-FILE-SYNCHRONOUS (FTSCOPY). NCOPYSYN unterscheidet sich vom Makro NCOPY in folgenden Punkten:
keine lokaler Folgeverarbeitung
keine Ergebnislisten
keine Jobvariablen
keine Prioritäten und keine Angabe von Start- und Abbruchzeitpunkt.
Format des Makros NCOPYSYN (LIST-Form/Standardform)
Name | Operation | Operanden |
|
|
|
Format des Makros NCOPYSYN (DSECT-Form)
Name | Operation | Operanden |
|
|
|
Das Präfix xxx (Standardwert YNY) darf 1 bis 3 Zeichen lang sein. Er muss Namen erzeugen, die in ASSEMBLER erlaubt sind. Folgende ASSEMBLER-Befehle werden abgesetzt:
xxxNCOPY DSECT xxxHCOP FHDR MF=(C,&P) xxxDMSCO DS A DMS-FEHLERCODE xxxPART DS A A(PARTNER-NAME) xxxPARTL DS XL2 L(PARTNER-NAME) xxxLFILL DS XL2 L(FILE-NAME) xxxLFIL DS AL4 A(FILE-NAME) ORG xxxLFILL xxxLLIBL DS XL2 L(LIBRARY-NAME) xxxLLIB DS AL4 A(LIBRARY-NAME) xxxLEL DS AL4 A(ELEMENT-NAME) xxxLELL DS XL2 L(ELEMENT-NAME) xxxLEVL DS XL2 L(ELEMENT-VERSION) xxxLEV DS AL4 A(ELEMENT-VERSION) xxxLETY DS AL4 A(ELEMENT-TYPE) xxxLETYL DS XL2 L(ELEMENT-TYPE) xxxLFPAL DS XL2 L(FILE-PASSWORD) xxxLFPA DS AL4 A(FILE-PASSWORD) xxxLTUS DS AL4 A(USER-ID/TRANS) xxxLTUSL DS XL2 L(USER-ID/TRANS) xxxLTACL DS XL2 L(USER-ACC/TRANS) xxxLTAC DS AL4 A(USER-ACC/TRANS) xxxLTPA DS AL4 A(USER-PASSWORD/TRANS) xxxLTPAL DS XL2 L(USER-PASSWORD/TRANS) * xxxRFIL DS AL4 A(FILE-NAME) xxxRFILL DS XL2 L(FILE-NAME) xxxRLIBL DS XL2 L(LIBRARY-NAME) xxxRLIB DS AL4 A(LIBRARY-NAME) xxxREL DS AL4 A(ELEMENT-NAME) xxxRELL DS XL2 L(ELEMENT-NAME) xxxREVL DS XL2 L(ELEMENT-VERSION) xxxREV DS AL4 A(ELEMENT-VERSION) xxxRETY DS AL4 A(ELEMENT-TYPE) xxxRETYL DS XL2 L(ELEMENT-TYPE) xxxRFPAL DS XL2 L(FILE-PASSWORD) xxxRFPA DS AL4 A(FILE-PASSWORD) xxxRTUS DS AL4 A(USER-ID/TRANS) xxxRTUSL DS XL2 L(USER-ID/TRANS) xxxRTACL DS XL2 L(USER-ACC/TRANS) xxxRTAC DS AL4 A(USER-ACC/TRANS) xxxRTPA DS AL4 A(USER-PASSWORD/TRANS) xxxRTPAL DS XL2 L(USER-PASSWORD/TRANS) xxxRPUSL DS XL2 L(USER-ID/PROC) xxxRPUS DS AL4 A(USER-ID/PROC) xxxRPAC DS AL4 A(USER-ACC/PROC) xxxRPACL DS XL2 L(USER-ACC/PROC) xxxRPPAL DS XL2 L(USER-PASSWORD/PROC) xxxRPPA DS AL4 A(USER-PASSWORD/PROC) xxxRSUC DS AL4 A(SUCCESS-PROCESSING) xxxRSUCL DS XL2 L(SUCCESS-PROCESSING) xxxRFAIL DS XL2 L(FAILURE-PROCESSING) xxxRFAI DS AL4 A(FAILURE-PROCESSING) * xxxTRID DS AL4 A(TRANS-ID) xxxTRIDL DS XL2 L(TRANS-ID) xxxTRDIR DS XL1 TRANSFER DIRECTION xxxCOMP DS XL1 COMPRESSION xxxWRMOD DS XL1 WRITE-MODE xxxDATYP DS XL1 DATA-TYPE xxxRSYN DS XL1 REMOTE SYNTAX DS 0H xxxLTADL DS AL2 L(LOCAL TRANSFER-ADMISSION) xxxLTAD DS AL4 A(LOCAL TRANSFER-ADMISSION) xxxRTAD DS AL4 A(REMOTE TRANSFER-ADMISSION) xxxRTADL DS AL2 L(REMOTE TRANSFER-ADMISSION) * xxxSTACL DS XL2 L(STORAGE-ACCOUNT) xxxSTAC DS AL4 A(STORAGE-ACCOUNT) xxxLQF DS AL4 A(LEGAL-QUALIFICATION) xxxLQFL DS XL2 L(LEGAL-QUALIFICATION) * xxxAVAIL DS XL1 FILE-AVAIL.: NONE / IMMED / DEFER xxxISTAC DS XL1 STORAGE-ACCOUNT: NONE xxxILQF DS XL1 LEGAL-QUALIFICATION: UNCHG * xxxACCES DS XL1 ACCESS-MODE : NONE / PAR xxxREADF DS XL1 READ-FILE: NO / YES xxxREPLF DS XL1 REPLACE-FILE: NO / YES xxxEXTDF DS XL1 EXTEND-FILE: NO / YES xxxREADA DS XL1 READ-ATTRIBUTES: NO / YES xxxCHNGA DS XL1 CHANGE-ATTRIBUTES: NO / YES xxxDELF DS XL1 DELETE-FILE: NO / YES xxxINSDU DS XL1 INSERT-DATA-UNIT: NO / YES xxxERADU DS XL1 ERASE-DATA-UNIT: NO / YES * DS 0H xxxRCPAL DS XL2 L(CREATE-PASSWORD) xxxRCPA DS AL4 A(CREATE-PASSWORD) * xxxRSIZE DS XL4 RECORD-SIZE: *NOT-SPEC / 1..32756 * xxxRID DS XL4 REQUEST ID xxxFUD DS AL4 A(FURTHER DETAILS) xxxLFUD DS XL2 L(FURTHER DETAILS) xxxASYMG DS XL1 ASYNCHRONOUS END MESSAGE xxxSCSET DS XL1 CHARACTER SET xxxRFORM DS XL1 RECORD FORMAT = STD/VAR/FIX/UNDEF * xxxTABEX DS XL1 TABULATOR EXPANSION xxxLCCSL DS XL2 L(LOCAL-CODE-CHARACTER-SET) xxxLCCS DS AL4 A(LOCAL-CODE-CHARACTER-SET) xxxRCCS DS AL4 A(REMOTE-CODE-CHARACTER-SET) xxxRCCSL DS XL2 L(REMOTE-CODE-CHARACTER-SET) xxxTFF DS XL1 TARGET-FILE-FORMAT xxxTRF DS XL1 TARGET-RECORD-FORMAT xxxMDATE DS XL1 MODIFICATION-DATE xxxFNCM DS XL1 FNCMODE = TRANS/CHAR * xxxLNCO EQU *-xxxNCOPY * xxxTRDTO EQU X'01' TRANSFER DIRECTION = TO xxxTRDFR EQU X'00' TRANSFER DIRECTION = FROM xxxCOMBY EQU X'80' COMPRESSION = BYTE xxxCOMZI EQU X'40' COMPRESSION = ZIP xxxCOMNO EQU X'00' COMPRESSION = NONE xxxMSP EQU X'03' REMOTESYNTAX= MSP xxxBS2 EQU X'01' REMOTESYNTAX= BS2 xxxANY EQU X'02' REMOTESYNTAX= ANY xxxNEW EQU X'01' WRITE-MODE = NEW FILE xxxEXT EQU X'04' WRITE-MODE = EXTEND xxxRPL EQU X'02' WRITE-MODE = REPLACE xxxCHRS EQU X'88' DATA TYPE = CHARACTER(TRANS=STD) xxxBINS EQU X'84' DATA TYPE = BINARY(TRANS=STD) xxxCHR EQU X'08' DATA TYPE = CHARACTER xxxBIN EQU X'04' DATA-TYPE = BINARY xxxNOTSP EQU X'02' DATA-TYPE = NOT-SPECIFIED xxxUSER EQU X'01' DATA-TYPE = USER xxxSTDLC EQU X'0' LELVER = STD BEI BS2/LOCAL xxxSAME EQU X'0' RELVER = SAME BEI BS2/REMOTE xxxSTDRE EQU X'FF' RELVER = STD BEI BS2/REMOTE xxxNONE EQU X'0' RELVER = NONE BEI *ANY xxxNSPEC EQU X'FF' RFIL/LPUS/RPUS = NOT-SPECIFIED xxxCNES EQU X'01' COMPRESSION = NONE/ENCRYPTION = YES xxxCZES EQU X'41' COMPRESSION = ZIP/ENCRYPTION = YES xxxCBES EQU X'81' COMPRESSION = BYTE/ENCRYPTION = YES xxxCNOD EQU X'02' COMPRESSION = NONE/ENCRYPTION = ODI xxxCZOD EQU X'42' COMPRESSION = ZIP/ENCRYPTION = ODI xxxCBOD EQU X'82' COMPRESSION = BYTE/ENCRYPTION = ODI xxxRFSTD EQU X'00' RFORM = STD xxxRFVAR EQU X'1A' RFORM = VAR xxxRFFIX EQU X'1B' RFORM = FIX xxxRFUND EQU X'1C' RFORM = UNDEF xxxTFFSA EQU X'00' TARGET-FILE-FORMAT = SAME xxxTFFBL EQU X'01' TARGET-FILE-FORMAT = BLOCK xxxTFFSQ EQU X'02' TARGET-FILE-FORMAT = SEQUENTIAL xxxTRFSA EQU X'00' TARGET-RECORD-FORMAT = SAME xxxTRFUN EQU X'01' TARGET-RECORD-FORMAT = UNDEFINED xxxMSTD EQU X'00' MODIFICATION-DATE = STD xxxMSAME EQU X'01' MODIFICATION-DATE = SAME xxxFNCMT EQU X'00’ FNCMODE = TRANSPARENT xxxFNCMC EQU X'01' FNCMODE = CHARACTER
Soll ein Operand nicht versorgt werden, so muss der Wert des Adressfeldes und des Längenfeldes auf binär Null gesetzt werden.
Soll für den Parameter FILE-NAME des fernen Systems der Wert *NOT-SPECIFIED angegeben werden, so ist in das Wertefeld für den Dateinamen (Länge 1) der im Equate xxxNSPEC festgelegte Wert zu schreiben.
Soll dieser Wert für die PROCESSING-ADMISSION des fernen Systems angegeben werden, so ist er in das Wertefeld für die jeweilige USER-ID zu schreiben.
Bedeutung der Felder
Mit dem Makroaufruf NCOPYSYN stehen Ihnen dieselben Möglichkeiten offen wie mit dem Kommando TRANSFER-FILE (NCOPY) bis auf die auf "NCOPYSYN - Datei synchron übertragen" aufgelisteten Ausnahmen. Die folgende Tabelle ordnet die Parameter im Makroaufruf NCOPYSYN den Operanden des Kommandos zu.
Operand | Adressfeld | Bedeutung im Kommando |
TRANS | TRDIR | TRANSFER-DIRECTION |
PARTNER | PART | PARTNER-NAME |
LFILE | LFIL | FILE-NAME in LOCAL-PARAMETER |
LLIB | LLIB | LIBRARY in LOCAL-PARAMETER |
LEL | LEL | ELEMENT in LOCAL-PARAMETER |
LELVER | LEV | VERSION in LOCAL-PARAMETER |
LLIBTYP | LETY | TYPE in LOCAL-PARAMETER |
LFPASS | LFPA | FILE-PASSWORD in LOCAL-PARAMETER |
LTUSER | LTUS | USER-IDENTIFICATION in lokaler TRANSFER-ADMISSION |
LTACC | LTAC | ACCOUNT in lokaler TRANSFER-ADMISSION 1 |
LTPASS | LTPA | PASSWORD in lokaler TRANSFER-ADMISSION |
LTAD | LTAD | TRANSFER-ADMISSION (lokal) |
LCCNS | LCCS | CODED-CHARACTER-SET in LOCAL-PARAMETER |
RSYNTAX | RSYN | REMOTE-PARAMETER |
RFILE | RFIL | FILE-NAME in REMOTE-PARAMETER |
RLIB | RLIB | LIBRARY in REMOTE-PARAMETER |
REL | REL | ELEMENT in REMOTE-PARAMETER |
RELVER | REV | VERSION in REMOTE-PARAMETER |
RLIBTYP | RETY | TYPE in REMOTE-PARAMETER |
RFPASS | RFPA | FILE-PASSWORD in REMOTE-PARAMETER |
RTUSER | RTUS | USER-IDENTIFICATION in ferner TRANSFER-ADMISSION |
RTACC | RTAC | ACCOUNT in ferner TRANSFER-ADMISSION |
RTPASS | RTPA | PASSWORD in ferner TRANSFER-ADMISSION |
RTAD | RTAD | TRANSFER-ADMISSION (fern) |
RPUSER | RPUS | USER-IDENTIFICATION in ferner PROCESSING-ADMISSION |
RPACC | RPAC | ACCOUNT in ferner PROCESSING-ADMISSION |
RPPASS | RPPA | PASSWORD in ferner PROCESSING-ADMISSION |
RSUCC | RSUC | SUCCESS-PROCESSING in REMOTE-PARAMETER |
RFAIL | RFAI | FAILURE-PROCESSING in REMOTE-PARAMETER |
RCCNS | RCCS | CODED-CHARACTER-SET in REMOTE-PARAMETER |
FAVAIL | AVAIL | FILE-AVAILABILITY |
STORACC | STAC | STORAGE-ACCOUNT |
ACCMOD | ACCES | ACCESS-MODE |
READF | READF | READ-FILE in der Struktur ACCESS-MODE |
INSDU | INSDU | INSERT-DATA-UNIT in der Struktur ACCESS-MODE |
REPLF | REPLF | REPLACE-FILE in der Struktur ACCESS-MODE |
EXTDF | EXTDF | EXTEND-FILE in der Struktur ACCESS-MODE |
ERADU | ERADU | ERASE-DATA-UNIT in der Struktur ACCESS-MODE |
READA | READA | READ-ATTRIBUTES in der Struktur ACCESS-MODE |
CHNGA | CHNGA | CHANGE-ATTRIBUTES in der Struktur ACCESS-MODE |
DELF | DELF | DELETE-FILE in der Struktur ACCESS-MODE |
LQUAL | LQF | LEGAL-QUALIFICATION |
RCPASS | RCPA | CREATE-PASSWORD in REMOTE-PARAMETER |
COMP | COMP | COMPRESS |
WRITE | WRMOD | WRITE-MODE |
DATA | DATYP | DATA-TYPE |
TRANSP | DATYP | TRANSPARENT |
DATENCR | COMP | DATA-ENCRYPTION |
TRANSID | TRID | |
RSIZE | RSIZE | RECORD-SIZE |
RFORM | PFORM | RECORD-FORMAT |
TFF | TFF | TARGET-FILE-FORMAT |
TRF | TRF | TARGET-RECORD-FORMAT |
MODDATE | MDATE | MODIFICATION-DATE |
FNCMODE | FNCM | FNC-MODE |
Im Feld für TRANS-ID bzw. TRANSID wird nach einem erfolgreichen NCOPYSYN-Makroaufruf die TRANSFER-ID hinterlegt (dezimal abdruckbar, linksbündig rechts mit Leerzeichen aufgefüllt). Das Feld muss >= 10 Byte sein bzw. 0, wenn die TRANSFER-ID nicht hinterlegt werden soll.
Im Feld FUD (Further Details) kann nach einem fehlerhaften NCOPYSYN-Makroaufruf eine Zusatzinformation (genaue Fehlerursache) zur eigentlichen Fehlermeldung zurückgeliefert werden. Das Feld muss <= 64 Byte sein oder Null, wenn die Zusatzinformationen im Feld FUD nicht hinterlegt werden sollen.
Wenn Sie aus einem ASSEMBLER-Programm mit einem FTAM- oder FTP-Partner File Transfer betreiben, bestehen natürlich dieselben Funktionseinschränkungen wie an der Kommandoschnittstelle. Sie können keine Bibliothekselemente übertragen, die im fernen System vorliegen, keine Folgeverarbeitung für das ferne System angeben und keine Dateien in komprimierter Form übertragen. Näheres finden Sie in der Beschreibung des TRANSFER-FILE(NCOPY)-Kommandos im Handbuch "openFT (BS2000) - Kommandoschnittstelle".