ATEAPX

New documentation May 2016

xcall ATEAPX, hostspec, pcdir, pcfile, flags, status

ATEAPX.SBX transfers a file from application server to ATE client PC. It supports multiple protocols, pre/post verification, logging, etc.

Parameters

hostspec (String)  [in]

File spec of source file on server; AMOS-style or native; may contain embedded %env% variables)

pcdir  (String)  [in]

Destination directory on PC using Windows native syntax; default %ate%\dsk0\001004

pcfile  (String)  [in]

File.ext for destination. May be left blank to use same file.ext from source. May also contain complete path, in which case pcdir should be empty. Note that if pcdir blank, and pcfile contains format file.ext and file is longer than 10 characters, you should prepend a ".\" to eliminate ambiguity.

flags  (Num) ( [in]

One or more of the following options.

Symbol

Value

Description

APXF_BINARY

&h0000

binary transfer

APXF_ASCII

&h0002

ascii transfer

APXF_NULL

&h0004

'null' printer mode, always set; see Comments

APXF_FTP

&h0008

use FTP if server not Windows

APXF_NOPOSTVERIFY

&h0010

skip post-transfer verification

APXF_PREVERIFY

&h0020

pre-verify; skip transfer if destination already matches source

APXF_NOVER

&h0040

ignore version 0 when comparing versions

APXF_LOGCURDIR

&h0080

write ateapx.log entries to current ppn rather than opr: directory

Definition file: ashinc:ateapx.def

 

status (Signed Num) [out]

Value

Description

>0

file transferred / number of bytes transferred

0

File transfer not needed or applicable

-1

ATE required

-2

host file doesn't exist

-3

file transferred but failed to verify afterwards

-4

FTP transfer error

-98

A-Shell version on server not high enough for binary transfer

- 99

ATE version not high enough

 

Comments

If running in a local Windows environment—i.e. A-Shell/Windows standalone, P2P or remote desktop—then ATEAPX does nothing and returns status 0; file transfer not applicable.

If the APXF_PREVERIFY flag set, ATEAPX uses the MX_FILESTATS function to compare the source and destination files to determine if the transfer is actually needed. The small overhead of the pre-verification is almost always worth the chance to omit the transfer, except when the file to be transferred is very small or the chance of the destination matching the source is very slim.

If APXF_FTP flag set and the server is not Windows/ATSD, then ATEAPX first attempts to transfer the file using FTP protocol via the AG_FTP command sequence. If the FTP operation fails, it will retry one time before giving up and returning status -4.

If not using FTP, then instead it uses the existing ATE terminal channel to transfer the file—aka the 'null' auxiliary printer protocol.

The ateapx.log file in OPR: or the current directory, depending on the APXF_LOGCURDIR flag, provides useful information about the success or failure of transfers. To increase the level of detail in the log file, use SET DEBUG prior to the transfer.

See Also

•   ATSYNC.LIT to transfer/sync many files from server to client

•   AG_FTP: invoke FTP from client directly

•   FTPDLX.SBR or FTP2.SBR: invoke FTP from server directly

•   ATEGFK.SBR: retrieve file from ATE client via keyboard channel

•   Source, samples and related functions, including the source for ATEAPX, can be found in SOSLIB:[907,33].