The macro NCOPY can be used to transfer a file or library member. The computer in which the program is running can be either sender or receiver of the file. The functionality corresponds to the command TRANSFER-FILE (NCOPY)
Format of the macro NCOPY (LIST format/default format)
Name | Operation | Operand |
|
|
|
Format of the macro NCOPY (DSECT format)
Name | Operation | Operand |
|
|
|
The prefix xxx (default value YNO) may be up to 3 characters long. It must generate names which are permitted in ASSEMBLER. The following ASSEMBLER instructions are generated:
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)
xxxLPUSL DS XL2 L(USER-ID/PROC)
xxxLPUS DS AL4 A(USER-ID/PROC)
xxxLPAC DS AL4 A(USER-ACC/PROC)
xxxLPACL DS XL2 L(USER-ACC/PROC)
xxxLPPAL DS XL2 L(USER-PASSWORD/PROC)
xxxLPPA DS AL4 A(USER-PASSWORD/PROC)
xxxLSUC DS AL4 A(SUCCESS-PROCESSING)
xxxLSUCL DS XL2 L(SUCCESS-PROCESSING)
xxxLFAIL DS XL2 L(FAILURE-PROCESSING)
xxxLFAI DS AL4 A(FAILURE-PROCESSING)
*
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)
*
xxxSTAR DS AL4 A(START)
xxxSTARL DS XL2 L(START)
xxxCANL DS XL2 L(CANCEL)
xxxCAN DS AL4 A(CANCEL)
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
xxxPRIO DS XL1 PRIORITY
xxxLIST DS XL1 LISTING
xxxRSYN DS XL1 REMOTE SYNTAX
DS 0H
xxxLJVNL DS AL2 L(JV-NAME)
xxxLJVN DS AL4 A(JV-NAME)
xxxLJVP DS AL4 A(JV-PASSW)
xxxLJVPL DS AL2 L(JV-PASSW)
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
xxxLISY EQU X'80' LISTING = SYSLST
xxxLISF EQU X'40' LISTING = LISTFILE
xxxLISYF EQU X'20' LISTING = SYSLST
* (ON-FAILURE-ONLY=YES)
xxxLISFF EQU X'10' LISTING = LISTFILE
* (ON-FAILURE-ONLY=YES)
xxxLISN EQU X'00' LISTING = 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
xxxNORM EQU X'00' PRIORITY = NORMAL
xxxHIGH EQU X'01' PRIORITY = HIGH
xxxLOW EQU X'02' PRIORITY = LOW
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
If an operand is not to be assigned, the value of the address field and the length field must be set to binary zero.
If the value *NOT-SPECIFIED is entered for the parameter FILE-NAME of the remote system, then the value set in the equate xxxNSPEC is to be written in the value field for the filename (length 1).
If this value is entered for the PROCESSING-ADMISSION of the local or remote system, then it is to be written in the value field for the corresponding USER-ID.
Meaning of the fields
The macro NCOPY offers you the same options as the command TRANSFER-FILE (NCOPY). Please refer to the command description. The following table shows how the parameters in the macro NCOPY correspond to the command operands.
Operand | Address field | Meaning in command |
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 local TRANSFER-ADMISSION |
LTACC | LTAC | ACCOUNT in local TRANSFER-ADMISSION 1 |
LTPASS | LTPA | PASSWORD in local TRANSFER-ADMISSION |
LTAD | LTAD | TRANSFER-ADMISSION (local) |
LCCNS | LCCS | CODED-CHARACTER-SET in LOCAL-PARAMETER |
LPUSER | LPUS | USER-IDENTIFICATION in local PROCESSING-ADMISSION |
LPACC | LPAC | ACCOUNT in local PROCESSING-ADMISSION 1 |
LPPASS | LPPA | PASSWORD in local PROCESSING-ADMISSION |
LSUCC | LSUC | SUCCESS-PROCESSING in LOCAL-PARAMETER |
LFAIL | LFAI | FAILURE-PROCESSING in LOCAL-PARAMETER |
LIST | LIST | LISTING in LOCAL-PARAMETER |
JVNAME | LJVN | MONJV in LOCAL-PARAMETER |
JVPASS | LJVP | JV-PASSWORD 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 remote TRANSFER-ADMISSION |
RTACC | RTAC | ACCOUNT in remote TRANSFER-ADMISSION |
RTPASS | RTPA | PASSWORD in remote TRANSFER-ADMISSION |
RTAD | RTAD | TRANSFER-ADMISSION (remote) |
RPUSER | RPUS | USER-IDENTIFICATION in remote PROCESSING- |
RPACC | RPAC | ACCOUNT in remote PROCESSING-ADMISSION |
RPPASS | RPPA | PASSWORD in remote 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 the structure ACCESS-MODE |
INSDU | INSDU | INSERT-DATA-UNIT in the structure ACCESS-MODE |
REPLF | REPLF | REPLACE-FILE in the structure ACCESS-MODE |
EXTDF | EXTDF | EXTEND-FILE in the structure ACCESS-MODE |
ERADU | ERADU | ERASE-DATA-UNIT in the structure ACCESS-MODE |
READA | READA | READ-ATTRIBUTES in the structure ACCESS-MODE |
CHNGA | CHNGA | CHANGE-ATTRIBUTES in the structure ACCESS-MODE |
DELF | DELF | DELETE-FILE in the structure 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 |
PRIO | PRIO | PRIORITY |
START | STAR | START |
CANCEL | CAN | CANCEL |
DATENCR | COMP | DATA-ENCRYPTION |
TRANSID | TRID | |
RSIZE | RSIZE | RECORD-SIZE |
RFORM | RFORM | RECORD-FORMAT |
TFF | TFF | TARGET-FILE-FORMAT |
TRF | TRF | TARGET-RECORD-FORMAT |
MODDATE | MDATE | MODIFICATION-DATE |
FNCMODE | FNCM | FNC-MODE |
VERSION | FCTV | (Type of return code output (old/new))2 |
2Depending on the value of the VERSION operand, the FUNCTION INTERFACE VERSION NUMBER is set in the header FHDR.
In the field for TRANS-ID or TRANSID, the TRANSFER-ID is entered after a successful NCOPY macro (printable in decimal notation, left justified, filled with blanks on the right). The field must be >= 10 bytes or 0, if the TRANSFER-ID is not to be entered.
After a defective NCOPY macro call, additional information (precise cause of the error) concerning the error message itself can be returned in the FUD (Further Details) field. The field must be <= 64 bytes or zero if the additional information is not to be stored in the FUD field.
If you run a file transfer with an FTAM or FTP partner from an ASSEMBLER program, the same function restrictions apply as at the command interface. You cannot transfer any library members which are in the remote system, specify follow-up processing for the remote system, or transfer files in compressed form. For more information, see the description of the command TRANSFER-FILE(NCOPY) in the manual "openFT (BS2000) - Command Interface ".
Format rules for START and CANCEL
The length field is at least 15 bytes long.
Contents:
y | y | - | m | m | - | d | d | h | h | : | m | m | ||
y | y | - | m | m | - | d | d | |||||||
T | O | D | A | Y | h | h | : | m | m | |||||
T | O | D | A | Y | ||||||||||
T | O | M | O | R | R | O | W | h | h | : | m | m | ||
T | O | M | O | R | R | O | W | |||||||
h | h | : | m | m |
If the first 8 bytes (1 to 8) are blank, DATE=TODAY is taken as the default value.
If the last 5 bytes (11 to 15) are blank, START-TIME=00:00 and CANCEL-TIME=23:59 will be taken as the default values.
Note:
In contrast to the command interface, the specification for year can only be two digits.