400上产生报表后是否能发EMAILWindows系统 -电脑资料

电脑资料 时间:2019-01-01
【www.unjs.com - 电脑资料】

    不知道?在AS400上所产生的报表能不能发送到Email的邮箱里呢?请指教,

400上产生报表后是否能发EMAILWindows系统

。 谢谢! xuguopeng 回复于:2004-10-29 14:03:27 能我见过晚上我找找资料去可能要配置SMTP等等的东西 qingzhou 回复于:2004-10-29 14:40:41 guopeng不用找了,我手头上有关于这方面的实

    不知道?在AS400上所产生的报表能不能发送到Email的邮箱里呢?请指教。

    谢谢!

    xuguopeng 回复于:2004-10-29 14:03:27能 我见过 晚上我找找资料去 可能要配置SMTP等等的东西

    qingzhou 回复于:2004-10-29 14:40:41guopeng不用找了,我手头上有关于这方面的实施例子。

    1。先参考这个帖子的配置方法配置你的本地AS/400系统:

    《【分享】如何实现直接从AS/400发送信息到指定的邮箱.》

    [url]http://www.chinaunix.net/jh/10/372109.html[/url]

    2。然后请参照如下实施例子:

    【转帖】如何將報表(Spooled File) 使用 e-mail 傳輸至使用者?(工具:ESPLF)

    由於 E-mail 的普及,所以常會有 AS/400 報表下載至 PC 並利用 outlook 傳輸,甚為麻煩,所以我將之整合至 AS/400 中,直接利用 AS/400 的 SMTP 功能即可直接傳送報表。SMTP設定方式請參考指令 ESPLF 的原始檔說明。

    此程式預設是轉換 繁體中文 "*BG5",若是簡體中文,請將 ESPLFC 中 指令 CPYTOPCD 參數 TRNIGC 值改為 "*SCGS",即可轉換簡體。

    File  :QCLSRC

    Member: ESPLFC

    Type  : CLP

    Usage : CRTCLPGM ESPLFC

    OS Version: V4R1(含)以後

    [code:1:3830743b0b]

    /**================================================================**/

    /* ESPLF ** EMAIL SPOOL FILE                                        */

    /* Compile: CRTCLPGM PGM(QGPL/ESPLFC)                               */

    /**================================================================**/

    PGM        PARM(&FILE &EMAIL &QJOB &SPLNBRD)

    DCL        VAR(&QJOB) TYPE(*CHAR) LEN(26) /* job name */

    DCL        VAR(&FILE) TYPE(*CHAR) LEN(10) /* spool file +

    name */

    DCL        VAR(&SPLNBRD) TYPE(*DEC) LEN(5 0) /* spool +

    file number */

    DCL        VAR(&EMAIL) TYPE(*CHAR) LEN(40) /* to email +

    address */

    DCL        VAR(&JOB)  TYPE(*CHAR) LEN(10)

    DCL        VAR(&USER) TYPE(*CHAR) LEN(10)

    DCL        VAR(&NBR)  TYPE(*CHAR) LEN(6)

    DCL        VAR(&SPLNBR) TYPE(*CHAR) LEN(6) /* spool +

    file number */

    DCL        VAR(&FNAME)  TYPE(*CHAR) LEN(12)

    MONMSG     MSGID(CPF0000) EXEC(GOTO CMDLBL(ERROR))

    /**================================================================**/

    /* Translate JOB special values                                     */

    /**================================================================**/

    IF         COND(&QJOB = '*') THEN(RTVJOBA JOB(&JOB) +

    USER(&USER) NBR(&NBR))

    ELSE       CMD(DO)

    CHGVAR     VAR(&JOB)  value(%SST(&QJOB 1 10))

    CHGVAR     VAR(&USER) value(%SST(&QJOB 11 10))

    CHGVAR     VAR(&NBR)  value(%SST(&QJOB 21 6))

    ENDDO

    /**================================================================**/

    /* Translate SPLNBR special values                                  */

    /**================================================================**/

    IF         COND(&SPLNBRD = -1) THEN(CHGVAR VAR(&SPLNBR) +

    value('*ONLY'))

    ELSE       CMD(IF COND(&SPLNBRD = -2) THEN(CHGVAR +

    VAR(&SPLNBR) value('*LAST')))

    ELSE       CMD(CHGVAR VAR(&SPLNBR) value(&SPLNBRD))

    /**================================================================**/

    /* E-mail                                                           */

    /**================================================================**/

    CHKOBJ     OBJ(QTEMP/ESPLF) OBJTYPE(*FILE)

    MONMSG     MSGID(CPF9801) EXEC(CRTPF FILE(QTEMP/ESPLF) +

    RCDLEN(198) IGCDTA(*YES) SIZE(*NOMAX))

    CPYSPLF    FILE(&FILE) TOFILE(QTEMP/ESPLF) +

    JOB(&NBR/&USER/&JOB) SPLNBR(&SPLNBR) +

    MBROPT(*REPLACE)

    CHGVAR   VAR(&FNAME) value(%SST(&FILE 1 8) *TCAT '.TXT')

    CPYTOPCD   FROMFILE(QTEMP/ESPLF) TOFLR('temp') +

    TODOC(&FNAME) REPLACE(*YES) +

    TRNTBL(*NONE) TRNIGC(*BG5)

    SNDDST     TYPE(*DOC) TOINTNET((&EMAIL)) DSTD(&FILE) +

    LONGMSG(&FILE) DOC(&FNAME) FLR('temp') +

    SUBJECT(&FILE *BCAT 'TESTED' )

    DLTDLO     DLO(&FNAME) FLR('temp')

    SNDPGMMSG  MSGID(CPF9898) MSGF(QCPFMSG) MSGDTA('Spooled +

    file' |> &FILE |> 'sent to' |> &EMAIL)

    RETURN

    /**================================================================**/

    /* Global exception handler                                         */

    /**================================================================**/

    ERROR:      CALL       PGM(QMHRSNEM) PARM('    ' X'00000000')

    MONMSG     MSGID(CPF0000)

    SNDPGMMSG  MSGID(CPF9898) MSGF(QCPFMSG) +

    MSGDTA('Error(s) oclearcase/" target="_blank" >ccured, see previously +

    listed messages') MSGTYPE(*ESCAPE)

    ENDPGM[/code:1:3830743b0b]

    File  : QCMDSRC

    Member: ESPLF

    Type  : CMD

    Usage : CRTCMD CMD(ESPLFC) PGM(ESPLFC)

    OS Version: V4R1(含)以後

    [code:1:3830743b0b]/* sample: ESPLF FILE(QPJOBLOG) EMAIL(support@yahoo.com) */

    /* V4R1 or later is required.   */

    /*You must create a temporary folder using the command CRTFLR FLR(TEMP) */

    /* 1.Using CFGTCP, Option 10=Work with TCP/IP host table entries,   */

    /*  verify your mail server name is in the table (add if necessary). */

    /*  ADD TWN6CPD  145.172.2.11  MAIL SERVER                           */

    /*  ADD WTWNAS01 145.172.1.1   LOCAL AS/400 HOST                     */

    /* 2. Ping mail server                                               */

    /* 3. CHGSMTPA, verify AUTOSTART(*YES) and MAILROUTER(mail-svr-name) */

    /* 4. ADDDIRE USRID(INTERNET SMTPRTE)   +                          */

    /*       USRD('Internet SMTP gateway') SYSNAME(INTERNET)   +       */

    /*       PREFADR(NETUSRID *IBM ATCONTXT)                           */

    /*    CHGDSTA SMTPRTE(INTERNET SMTPRTE)                            */

    /* 5. STRTCPSVR *SMTP                                              */

    /*    If you changed the mail server address, you need restart SMTP*/

    /* 6. Test : SNDDST TYPE(*LMSG) TOINTNET(E-mail address)    +      */

    /*                  DSTD('Test message') LMSG('Test message')      */

    /*    use the Work with Directory Entries (WRKDIRE) command to     */

    /*    enroll you in the system directory.                          */

    /*                                                                   */

    /* preventing large e-mail messages from splitting                   */

    /*           CHGPOPA MSGSPLIT(*NOMAX)                               */

    /*                            *DFT size is 128k                     */

    CMD        PROMPT('E-mail Spooled File')

    PARM       KWD(FILE) TYPE(*NAME)MIN(1) PROMPT('Spooled +

    file')

    PARM       KWD(EMAIL) TYPE(*CHAR) LEN(40) MIN(1) +

    PROMPT('To e-mail address')

    PARM       KWD(JOB) TYPE(JOB) DFT(*) SNGVAL((*)) +

    PROMPT('Job name')

    PARM       KWD(SPLNBR) TYPE(*DEC) LEN(4) DFT(*ONLY) +

    SPCVAL((*ONLY -1) (*LAST -2)) +

    PROMPT('Spooled file number')

    JOB:        QUAL       TYPE(*NAME) DFT(*)

    QUAL       TYPE(*NAME) PROMPT('User')

    QUAL       TYPE(*CHAR) LEN(6) RANGE(000000 999999) +

    PROMPT('Number')[/code:1:3830743b0b]

    qingzhou 回复于:2004-10-29 14:42:48存档备用,便于以后有相关需求的朋友参考,

电脑资料

400上产生报表后是否能发EMAILWindows系统》(https://www.unjs.com)。。。

    abcas400 回复于:2004-10-29 15:36:08非常谢谢!

    我立马就试试看。

    祝周未愉快!

    jamesten 回复于:2004-10-29 15:48:13我们公司应该也是直接从AS/400中产生文件,然后转换成EXCEL发到用户的LOUTS邮箱中去的.

    qingzhou 回复于:2004-10-29 16:41:12[quote:eeddf3d6d5="jamesten"]我们公司应该也是直接从AS/400中产生文件,然后转换成EXCEL发到用户的LOUTS邮箱中去的.[/quote:eeddf3d6d5]

    原理是一样的吗?

    如果方便的话就拿出来参考一下,想到有时自己公司业务方面的确需要如此,我也想在本地环境具体测试一下。

    hsiang_wang 回复于:2004-10-30 21:09:26有谁试过吗?

    qingzhou 回复于:2004-10-30 21:27:02[quote:6cfbe8a3dd="hsiang_wang"]有谁试过吗?[/quote:6cfbe8a3dd]

    第1步骤我目前在使用,所以没问题的。

    第2步骤关键也是要配置好第1步骤作为前提,其实我们就是改第一步骤的SNDDST命令TYPE参数为TYPE(*DOC)类型,然后稍微写些代码就可以实现了。

    我想这个PGM是可行的,改天我拿到我本地环境测试一下,正好要在公司的生产系统上实现这个机能。

    你有时间自己也测试一下,感受会更深些。。。

    ★附加说明:

    1.此功能须要 OS/400 V4R1 以后才可使用。

    2.若欲传中文,只能以附件方式 SNDDST TYPE(*DOC) 传送;

    故须先将信息或 Data 复制到档案夹(Folder);

    CRTFLR FLR(TEMP) (指令 CPYTOPCD 参数 DBCS code page : *BG5);

    CPYTOPCD FROMFILE(XXXX) TOFLR(TEMP) FROMMBR(XXX) +

    TODOC(XXXX.TXT) TRNTBL(*NONE) TRNIGC(*BG5)

    3.SNDDST TYPE(*DOC) TOINTNET(E-mail address)    +

    DSTD(‘Test message’) DOC(XXXX.TXT) FLR(TEMP)

    magket 回复于:2004-10-31 20:16:55有没有谁试过自动转EXCEL的。

   

    原文转自:http://www.ltesting.net

最新文章