新規投稿 記事一覧 ホーム
●ご利用方法,ご利用に際しての規約はこちらをお読みください。
こちらからの投稿は、先頭に表示されているコメントへの返信になります。
RE:FTP転送処理について どん さん [ 10月24日(金) 17時57分 ]

    伊集院博 さん
    ご返信ありがとうございます。

    印刷データをFTP転送しているのですが、
    WSID毎の作成する必要性は処理端末毎に印刷プリンタが違う為です。

    >転送記述をメンバーに書出すプログラムを用意して、
    >転送の度に毎回作成してあげたらどうでしょうか。
    >(上記の場合ですとTESTLB/QFTPIN(FTPCMDXXX)のメンバーを
    >物理ファイルを読込んで、作成してからFTP転送を行う感じです。)

    まさに上記のイメージです。
    物理ファイルに転送記述を持たせて、実行WSIDで検索をかけて処理をしたい。

    ただそのイメージを形にする為に調べてみてはしましたが。。。

    IKDさんからも返信をいただいたのですが、
    折角の回答を理解できずで。(まずはAPIというものを学習中)

    宜しくお願い致します。

    API使わなくてもできますよ 伊集院博 さん [ 10月24日(金) 19時20分 ]

      私もAPIのやり方は良く分かりません。
      弊社の場合、転送先のファイル名の一部を置換えるだけなので
      FTP転送記述のメンバーの一部をRPGにて書き換えて更新しています。
      何をやっているか解り難いかも知れませんが、
      弊社のソースを掲載します。参考になれば...

      AS/400の監査ログを定期的にPCサーバにFTP転送する為の転送記述です。
      H DATEDIT(*YMD/)                                                       
       *==============================================================*      
       *                     ファイル仕様                             *      
       *==============================================================*      
       * FTP転送記述テンプレート                                          
      FAUDFTP    UF   E             DISK    EXTFILE('MYLIB/QTXTSRC')         
      F                                     EXTMBR('AUDFTP')                 
      F                                     RENAME(QTXTSRC:AUDFTPR)          
      DSRCDTA           DS                                                   
      D  @REC                   1    108A                                    
      D  DATE1                 17     22A                                    
      D  DATE2                 33     38A                                    
       *==============================================================*      
       *#            メ イ ン 処 理                               *      
       *==============================================================*      
       *                                                                     
      C                   MOVE      *DATE         W@DATE            6 0      
      C                   DO        *HIVAL        I                 2 0      
      C                   READ      AUDFTPR                                90
      C   90              LEAVE                                              
      C                   SELECT                                             
      C                   WHEN      I >= 2  AND I <= 15                      
      C                   MOVE      W@DATE        DATE1                      
      C                   UPDATE    AUDFTPR                                  
      C                   WHEN       I >= 17 AND I <= 28                     
      C                   MOVE      W@DATE        DATE2                      
      C                   UPDATE    AUDFTPR                                  
      C                   ENDSL                                              
      C                   ENDDO                                              
       *                                                                     
      C                   SETON                                        LR    
      C                   RETURN                                             

      (説明)
      MYLIB/QTXTSRC(AUDFTP)のFTP転送記述のテンプレートとなるものを
      予め用意しています。
      メンバーを1レコードずつ読込み、2行目〜15行目と
      17行目〜28行目の転送記述のファイル名に日付を組み込んで
      更新しています。
      もっと簡単な方法があるかも知れませんが、
      私のレベルではこれが精一杯でした。

      RE:API使わなくてもできますよ どん さん [ 10月28日(火) 15時4分 ]

        お世話になっております。
        ご教授いただいた内容でご確認させていただきたいのですが

        > FAUDFTP    UF   E             DISK    EXTFILE('MYLIB/QTXTSRC')
        > F                               EXTMBR('AUDFTP')    
        > F                               RENAME(QTXTSRC:AUDFTPR)
        →MYLIB/QTXTSRC(AUDFTP)は転送記述のTEXTソースで、
        OBJを指定しているものではない。
        という理解で宜しいでしょうか?

        以下の様なレコードを持っていて、このRPGで修正するという事でしょうか?
        XXXXXXXX XXXXXXXX                          
        CD XXXX                                 
        CD XXXX/XXXX                      
        LTYPE C 932                            
        PUT    QTEMP/TESTPF   TESTPF.CSV     
        QUIT                               

        宜しくお願い致します。        

        RE:API使わなくてもできますよ 伊集院博 さん [ 10月28日(火) 16時39分 ]

          OKです。認識は間違っていないと思います。

          > FAUDFTP    UF   E             DISK    EXTFILE('MYLIB/QTXTSRC')
          > F                               EXTMBR('AUDFTP') 
          > F                               RENAME(QTXTSRC:AUDFTPR)
          上記は、TEXTソースで存在しているメンバー(ソース)を読込み、更新します。
          このRPGの上位にCLを用意して
          OVRDBF FILE(AUDFTP) TOFILE(MYLIB/QTXTSRC) MBR(AUDFTP)
          とするのと同じ意味です。
          ちなみに、ソースメンバーもAS/400の世界ではOBJ(オブジェクト)になります。

          解決:御礼 どん さん [ 10月31日(金) 13時56分 ]

            伊集院博 さん
            ご教授いただいた内容で解決できました。

            IKD さん
            APIにつきましても、今後学んで行きたいと思います。

            ありがとうございました。

お名前
パスワード
e-mailアドレス
タイトル
ホームページ
アドレス