最初のページに戻ります。

総合の目次があるページに戻ります。

よく使うマニュアルです

Wiki

updated on 2004.06.23

19.1.API数字編集(編集コード)

[ HOME ] [ Upper ] [ Next ]


使用上の注意

  1. HF仕様書はありません。不要ですので。
  2. 一応、外サブの形式になっていますが、取りあえず、動きがわかりやすいようにするための、工夫です。部分的に、コピーしてしまえば、組み込みもできるのと思います。
  3. *ENTRYのパラメータ PIINTLとPIDECLは、2桁文字です。もし、ここに一桁の数字をい与える場合は、先行0を必ずつけてください。たとえば 5ではなく、05という形です。
  4. PONTYP(10)には、通常は、*ZONEDですが、ファイル上のデータを切り出して、ここにそのままセットする場合は、数字タイプにより、パックなら*PACKED,バイナリならば*BINARYを与えてください。この場合、たぶん、データを持つファイルは、内部記述で、I仕様書で、文字として、切り出すことになるでしょう。
  5. パラメータPIINTLは数字全体の桁数です。
  6. APIでエラーがあると、???????が戻ります。b_upd.gif (283 バイト)
  7. 注意:編集コードXは使用できません。APIのスペックです。b_upd.gif (283 バイト)

RPGコード(桁は正しいので、画面コピーできます)

     I******************************************************
     I*     D E F I N E    D A T A  - S T R U C T U R E    *
     I******************************************************
     I            DS
     I I            0                     B   1   40PIMKLN
     I I            0                     B   5   80PBRVLN
     I I            0                     B   9  120POITLN
     I I            0                     B  13  160POPTLN
     I I            0                     B  17  200POMKLN
     IPBERR       DS
     I I            116                   B   1   40BYTPRV
     I I            0                     B   5   80BYTAVA
     I                                        9  15 ERRID
     I                                       16  16 ERR###
     I                                       17 116 INSDTA
     C******************************************************
     C*     DEFINITION  MODULE  ( PLIST   FIELD   KLIST )  *
     C******************************************************
     C*                                                    :
     C*  DEFINE ENTRY                                      :
     C*                                                    :
     C           *ENTRY    PLIST                           :
     C                     PARM           PIEDCD  1        :編集コード
     C                     PARM           PIFIGR 30        :数字
     C                     PARM           PIINTL  2        :整数+小数長さ
     C                     PARM           PIDECL  2        :小数部長さ
     C                     PARM           POEDTD256        :編集済み数字
     C******************************************************
     C*             M A I N -  R O U T I N E                
     C******************************************************
     C*                                                    :
     C                     MOVE PIINTL    POITLN           :
     C                     MOVE PIDECL    POPTLN           :
     C                     MOVE PIEDCD    POEDCD           :
     C*編集マスクの受取                                  :
     C                     CALL 'QECCVTEC'             31  :
     C                     PARM *BLANK    PIMASK256        :編集マスク
     C                     PARM           PIMKLN           :編集マスク長さ
     C                     PARM           PBRVLN           :レシーバ長さ
     C                     PARM           PIZRSP  1        :ゼロ平衡充填
     C                     PARM           POEDCD  1        :編集コード
     C                     PARM *BLANK    POSYBL  1        :浮動通貨表示
     C                     PARM           POITLN           :整数+小数長さ
     C                     PARM           POPTLN           :小数以下桁数
     C                     PARM           PBERR            :エラーコード
     C*                                                    :
B001 C           BYTAVA    IFEQ 0                          ;
 001 C*                                                    :
 001 C*数字の編集                                        :
 001 C*                                                    :
 001 C                     MOVE PIMASK    POMASK256        :
 001 C                     MOVE PIMKLN    POMKLN           :
 001 C                     MOVE PIZRSP    POZRSP  1        :
 001 C*                                                    :
 001 C                     MOVE *BLANK    PIEDTD256        :
 001 C                     MOVEL'*ZONED ' PONTYP 10 P      :
 001 C** SELECT ***        MOVEL'*BINARY' PONTYP 10 P      :
 001 C** SELECT ***        MOVEL'*PACKED' PONTYP 10 P      :
 001 C*                                                    :
 001 C                     CALL 'QECEDT'               90  :
 001 C           POEDTD    PARM           PIEDTD256        :受取変数
 001 C                     PARM           PBRVLN           :受取変数長
 001 C                     PARM PIFIGR    POFIGR 30        :ソース変数
 001 C                     PARM           PONTYP           :変数クラス
 001 C                     PARM           POITLN           :整数+小数長さ
 001 C                     PARM           POMASK           :編集マスク
 001 C                     PARM           POMKLN           :編集マスク長
 001 C                     PARM           POZRSP           :ゼロ平衡充填
 001 C                     PARM           PBERR            :エラー
 001 C*                                                    :
E001 C                     END                             :
     C*                                                    :
B001 C           BYTAVA    IFNE 0                          ;
 001 C                     MOVE *ALL'?'   POEDTD           :編集済み数字
E001 C                     END                             :
     C*                                                    :
     C                     MOVE *ON       *INLR            :
     C                     RETRN                           :                    

テスト画面

edd1.gif (13436 バイト)edd2.gif (9743 バイト)


[ HOME ] [ Upper ] [ Next ]

You are at K's tips-n-kicks of AS/400

 

SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送