+ Reply to Thread
Results 1 to 3 of 3

Thread: FTP form AS/400 to Windows 95

  1. #1
    Guest.Visitor Guest

    Default FTP form AS/400 to Windows 95

    Francessco, Is the IP address of the WIN/95 client in the Host Table of the source AS/400? All work stations have to exist in the Host Table if you want to send anything to them. We have no problems sending data to connected work stations regardless of what they are running.Yes, I have a FTP batch command and CL I got from somewhere about 2 yrs ago. I'll try to paste it in here and hope I get the attributes right (I'm going to try Joe). That is as soon as I find the instructions again.Later today.Regards. Jack McGuigan - MIS Manager - American Life Ins. Co.

  2. #2
    Guest.Visitor Guest

    Default FTP form AS/400 to Windows 95

    You also need an FTP Server application running on the Win/95 PC. Regards,
    href="mailto:jonerickson@vikingindustries.com">Jon A. Erickson* Viking Industries, Inc.

    On Thursday, April 16, 1998, 06:10 AM, Jack McGuigan wrote: Francessco, Is the IP address of the WIN/95 client in the Host Table of the source AS/400? All work stations have to exist in the Host Table if you want to send anything to them. We have no problems sending data to connected work stations regardless of what they are running. Yes, I have a FTP batch command and CL I got from somewhere about 2 yrs ago. I'll try to paste it in here and hope I get the attributes right (I'm going to try Joe). That is as soon as I find the instructions again. Later today. Regards. Jack McGuigan - MIS Manager - American Life Ins. Co.

  3. #3
    Guest.Visitor Guest

    Default FTP form AS/400 to Windows 95

    Francesco (and anyone else who thinks it's usable), Ok. Here as promised is the CMD and CL code for Batch FTP. I had to hunt it down. Note: I am not the author. I added this to my machines about 2 yrs ago, and I'm not sure where it came from. I think from a book describing new features available on the RISC 400 platforms (which someone walked off with). It included a diskette with some 400 utilities, and I think this code came from it. Also, not sure if this was ever tested. *************** Beginning of data *************************************

    /* ************************************************** ************** */

    /* TCP/IP FTP FILE TRANSFER COMMAND */

    /* */

    /* */

    /* * Compile instructions: */

    /* 1). CRTCMD CMD(OPERATIONS/TFRFTPF) PGM(OPERATIONS/FTPTFRCL) + */

    /* SRCFILE(OPERATIONS/QCMDSRC) */

    /* */

    /* */

    /* ---------------------------------------------------------------- */

    /* Modifications: */

    /* ************************************************** ************** */

    CMD PROMPT('TRANSFER FTP FILE')

    PARM KWD(FTPOPR) TYPE(*CHAR) LEN(4) +

    RSTD(*YES) VALUES(*PUT *GET) MIN(1) +

    PROMPT('FTP OPERATION' 1)

    PARM KWD(LCLF) TYPE(QUAL1) MIN(1) PROMPT('LOCAL +

    FILE NAME' 4)

    QUAL1: QUAL TYPE(*NAME)

    QUAL TYPE(*NAME) DFT(*LIBL) SPCVAL((*LIBL)) +

    PROMPT('LIBRARY NAME')

    PARM KWD(PASSWORD) TYPE(*CHAR) LEN(10) MIN(1) +

    CASE(*MIXED) DSPINPUT(*NO) +

    PROMPT('PASSWORD' 11)

    PARM KWD(APPEND) TYPE(*CHAR) LEN(4) RSTD(*YES) +

    DFT(*NO) VALUES(*NO *YES) PMTCTL(PUT) +

    PROMPT('APPEND TO REMOTE FILE/MBR' 2)

    PUT: PMTCTL CTL(FTPOPR) COND((*EQ *PUT))

    PARM KWD(REPLACE) TYPE(*CHAR) LEN(4) RSTD(*YES) +

    DFT(*NO) VALUES(*NO *YES) PMTCTL(GET) +

    PROMPT('REPLACE LOCAL FILE/MBR' 2)

    GET: PMTCTL CTL(FTPOPR) COND((*EQ *GET))

    PARM KWD(TFRTYPE) TYPE(*CHAR) LEN(7) RSTD(*YES) +

    DFT(*TEXT) VALUES(*TEXT *BINARY) +

    PROMPT('TRANSFER TYPE' 3)

    PARM KWD(LCLMBR) TYPE(*NAME) DFT(*LCLF) +

    SPCVAL((*LCLF)) +

    PROMPT('LOCAL MEMBER' 5)

    PARM KWD(RMTF) TYPE(*CHAR) LEN(10) +

    DFT(*LCLF) SPCVAL((*LCLF)) CASE(*MIXED) +

    PROMPT('REMOTE FILE NAME' 6)

    PARM KWD(RMTMBR) TYPE(*CHAR) LEN(10) +

    DFT(*LCLMBR) SPCVAL((*LCLMBR)) MIN(0) +

    CASE(*MIXED) +

    PROMPT('REMOTE MEMBER' 7)

    PARM KWD(RMTSYS) TYPE(*CHAR) LEN(32) CASE(*MIXED) +

    PROMPT('REMOTE SYSTEM' 8)

    PARM KWD(RMTSYSDIR) TYPE(*CHAR) LEN(32) +

    CASE(*MIXED) DSPINPUT(*YES) +

    PROMPT('REMOTE SYSTEM DIRECTORY' 9)

    PARM KWD(USER) TYPE(*CHAR) LEN(10) DFT(*CURRENT) +

    SPCVAL((*CURRENT)) MIN(0) CASE(*MIXED) +

    DSPINPUT(*YES) PROMPT('USER ID' 10)

    PARM KWD(PRTLOG) TYPE(*CHAR) LEN(4) DFT(*NO) +

    RSTD(*YES) VALUES(*NO *YES) +

    PROMPT('PRINT FTP LOG' 12)

    ****************** End of data ****************************************

    *

    *************** Beginning of data *************************************

    /* ************************************************** ************** */

    /* PROGRAM FOR COMMAND TFRFTPF */

    /* TRANSFER FILES USING TCP/IP FTP */

    /* */

    /* * Compile instructions: */

    /* CRTCLPGM PGM(OPERATIONS/FTPTFRCL) SRCFILE(OPERATIONS/ + */

    /* QCLSRC) LOG(*NO) */

    /* */

    /* ************************************************** ************** */

    PGM PARM(&FTPOPR &QLCLF &PASSWORD &APPEND &REPLACE &TFRTYPE +

    &LCLMBR &RMTF &RMTMBR &RMTSYS &RMTDIR &USER &PRTLOG)

    DCL &FTPOPR *CHAR 4

    DCL &QLCLF *CHAR 20

    DCL &PASSWORD *CHAR 10

    DCL &APPEND *CHAR 4

    DCL &REPLACE *CHAR 4

    DCL &TFRTYPE *CHAR 7

    DCL &LCLMBR *CHAR 10

    DCL &RMTF *CHAR 10

    DCL &RMTMBR *CHAR 10

    DCL &RMTSYS *CHAR 32

    DCL &RMTDIR *CHAR 32

    DCL &USER *CHAR 10

    DCL &PRTLOG *CHAR 4

    DCL &CMD *CHAR 80

    DCL &ERROR *CHAR 1 VALUE('Y')

    DCL &FRSTCYC *CHAR 1 VALUE('Y')

    DCL &MSGDTA *CHAR 512

    DCL &MSGID *CHAR 7

    DCL &SIGNON *CHAR 21

    DCL &SRCSTR *CHAR 37 VALUE('FILE TRANSFER COMPLETED +

    SUCCESSFULLY')

    DCL &SRCSTR2 *CHAR 37 VALUE('TRANSFER COMPLETE')

    DCL &SRCHRSLT *DEC LEN(3 0)

    DCL &SRCSTRLEN *DEC LEN(3 0) VALUE(37)

    DCL &STRLEN *DEC LEN(3 0) VALUE(80)

    DCL &STRPOS *DEC LEN(3 0) VALUE(1)

    DCL &TFRCMD *CHAR 6

    DCLF FILE(QGPL/QCLSRC)

    MONMSG CPF0000 EXEC(GOTO CMDLBL(ERROR))

    IF COND(&FTPOPR *EQ '*PUT') THEN(CHKOBJ +

    OBJ(%SST(&QLCLF 11 10)/%SST(&QLCLF 1 10)) +

    OBJTYPE(*FILE))

    IF COND(&LCLMBR *EQ '*LCLF') THEN(CHGVAR +

    VAR(&LCLMBR) VALUE(%SST(&QLCLF 1 10)))

    IF COND(&USER *EQ '*CURRENT') THEN(RTVJOBA +

    USER(&USER))

    CHGVAR VAR(&SIGNON) VALUE(&USER *BCAT &PASSWORD)

    IF COND(&RMTF *EQ '*LCLF') THEN(CHGVAR +

    VAR(&RMTF) VALUE(%SST(&QLCLF 1 10)))

    IF COND(&RMTMBR *EQ '*LCLMBR') THEN(CHGVAR +

    VAR(&RMTMBR) VALUE(&LCLMBR))

    IF COND(&FTPOPR *EQ '*PUT') THEN(DO)

    IF COND(&APPEND *EQ '*YES') THEN(CHGVAR +

    VAR(&TFRCMD) VALUE('APPEND'))

    ELSE CMD(CHGVAR VAR(&TFRCMD) VALUE('PUT'))

    IF COND(&RMTDIR *NE ' ') THEN(CHGVAR VAR(&CMD) +

    VALUE(&TFRCMD *BCAT %SST(&QLCLF 11 10) +

    *TCAT '/' *TCAT %SST(&QLCLF 1 10) *TCAT +

    '.' *CAT &LCLMBR *BCAT &RMTDIR *TCAT '/' +

    *TCAT &RMTF *TCAT '.' *CAT &RMTMBR))

    ELSE CMD(CHGVAR VAR(&CMD) +

    VALUE(&TFRCMD *BCAT %SST(&QLCLF 11 10) +

    *TCAT '/' *TCAT %SST(&QLCLF 1 10) *TCAT +

    '.' *CAT &LCLMBR *BCAT &RMTF *TCAT '.' +

    *CAT &RMTMBR))

    ENDDO

    ELSE CMD(DO)

    CHGVAR VAR(&TFRCMD) VALUE('GET')

    CHGVAR VAR(&CMD) VALUE(&TFRCMD *BCAT &RMTDIR *TCAT +

    '/' *TCAT &RMTF *TCAT '.' *CAT &RMTMBR +

    *BCAT %SST(&QLCLF 11 10) *TCAT '/' *TCAT +

    %SST(&QLCLF 1 10) *TCAT '.' *CAT &LCLMBR)

    IF COND(&REPLACE *EQ '*YES') THEN(CHGVAR +

    VAR(&CMD) VALUE(&CMD *BCAT '(REPLACE'))

    ENDDO

    CRTSRCPF FILE(QTEMP/FTPCMD) MBR(*FILE)

    MONMSG CPF0000 EXEC(CLRPFM FILE(QTEMP/FTPCMD))

    CRTSRCPF FILE(QTEMP/FTPLOG) MBR(*FILE)

    MONMSG CPF0000 EXEC(CLRPFM FILE(QTEMP/FTPLOG))

    WRTSRC SRCFILE(QTEMP/FTPCMD) MBR(FTPCMD) STMT(&SIGNON)

    IF COND(&TFRTYPE *EQ '*BINARY') THEN(WRTSRC +

    SRCFILE(QTEMP/FTPCMD) MBR(FTPCMD) STMT('BINARY'))

    WRTSRC SRCFILE(QTEMP/FTPCMD) MBR(FTPCMD) STMT(&CMD)

    WRTSRC SRCFILE(QTEMP/FTPCMD) MBR(FTPCMD) STMT('QUIT')

    WRTSRC SRCFILE(QTEMP/FTPCMD) MBR(FTPCMD) ACTION(*END)

    OVRDBF FILE(INPUT) TOFILE(QTEMP/FTPCMD) MBR(*FIRST)

    OVRDBF FILE(OUTPUT) TOFILE(QTEMP/FTPLOG) MBR(*FIRST)

    OVRDBF FILE(QCLSRC) TOFILE(QTEMP/FTPLOG) LVLCHK(*NO)

    STRTCPFTP RMTSYS(&RMTSYS)

    DLTOVR FILE(INPUT OUTPUT)

    RCVF: RCVF

    MONMSG CPF0864 EXEC(GOTO CMDLBL(DONE))

    IF COND(&FRSTCYC *EQ 'Y') THEN(DO)

    PRINT ACTION(*OPN) SPCAFT(2) TITLE('SEND FTP FILE +

    (SNDFTPF) COMMAND LOG') SPLFNAM(FTPLOG)

    ENDDO

    IF COND(&FRSTCYC *EQ 'N') THEN(DO)

    PRINT LINE(&SRCDTA) ACTION(*PRT) SPCAFT(1)

    ENDDO

    CHGVAR VAR(&FRSTCYC) VALUE('N')

    CALL PGM(QCLSCAN) PARM(&SRCDAT &STRLEN &STRPOS +

    &SRCSTR &SRCSTRLEN '' '' '' &SRCHRSLT)

    IF COND(&SRCHRSLT *GT 0) THEN(CHGVAR +

    VAR(&ERROR) VALUE('N'))

    CALL PGM(QCLSCAN) PARM(&SRCDAT &STRLEN &STRPOS +

    &SRCSTR2 &SRCSTRLEN '' '' '' &SRCHRSLT)

    IF COND(&SRCHRSLT *GT 0) THEN(CHGVAR +

    VAR(&ERROR) VALUE('N'))

    GOTO CMDLBL(RCVF)

    DONE: PRINT ACTION(*CLO)

    IF COND(&ERROR *EQ 'Y') THEN(SNDPGMMSG +

    MSGID(CPF9897) MSGF(QCPFMSG) MSGDTA('FTP SEND FAILED. +

    EXAMINE FTP LOG IN SPOOLED FILE FTPLOG.') +

    MSGTYPE(*ESCAPE))

    IF COND(&PRTLOG *EQ '*NO') THEN(DLTSPLF +

    FILE(FTPLOG) SPLNBR(*LAST))

    GOTO CMDLBL(ENDPGM)

    ERROR: RCVMSG MSGTYPE(*EXCP) MSGDTA(&MSGDTA) MSGID(&MSGID)

    SNDPGMMSG MSGID(&MSGID) MSGF(QCPFMSG) MSGDTA(&MSGDTA) +

    MSGTYPE(*ESCAPE)

    ENDPGM: ENDPGM

    ****************** End of data ****************************************

    *

    Regards. Jack McGuigan - MIS Manager - American Life Ins. Co.

+ Reply to Thread

Similar Threads

  1. Free form SQL in RPG
    By PatLandrum in forum RPG
    Replies: 6
    Last Post: 08-15-2007, 05:12 AM
  2. Free Form
    By R.Daugherty in forum RPG
    Replies: 43
    Last Post: 01-13-2007, 02:50 PM
  3. Free Form RPG
    By Guest.Visitor in forum RPG
    Replies: 4
    Last Post: 07-25-2003, 08:19 PM
  4. Form letters
    By Guest.Visitor in forum Application Software
    Replies: 1
    Last Post: 02-15-2000, 02:37 AM
  5. Library Registration Form
    By Guest.Visitor in forum Programming
    Replies: 0
    Last Post: 01-01-1995, 02:00 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts