Hitachi

SEWB+/標準サブルーチン ライブラリリファレンス


LXRPIA25 英数字チェック/編集

サブルーチンID

機能分類

サブルーチン名

テーブル名

LXRPIA25

項目編集

英数字チェック/編集

LXRCIA25

〈このページの構成〉

インタフェース

入力(区分:INPUT-PARM=I,CONSTANT=C)

レベル

項目名

属性

説明および設定値

区分

03

I-LENG

P(3)

長さ

IL

03

I-STR

X(200)

文字列

I

03

I-CHK-PARM

X(50)

チェック条件パラメータ

C

'ENT=入力モード指定,CHK=(文字指定〔,文字指定〕)'

(詳細はLXRPIZ11およびLXRPIA27の補足説明を参照のこと)

03

I-EDIT-PARM

X(50)

編集条件パラメータ

C

'CHG=変換指定,SHT=シフト指定'

(詳細はLXRPIZ11およびLXRPIA27の補足説明を参照のこと)

出力(区分:OUTPUT-PARM=O,RTN-CODE=R)

レベル

項目名

属性

説明および設定値

区分

03

O-STR

X(200)

文字列

O

03

O-RTN-CD

X(10)

リターンコード

R

SPACE:正常終了

LXREA024:NUMERICエラー

LXREA020:入力長が範囲外

LXREA008:入力文字列がスペース

LXREA027:全桁満たされていない

LXREA030:指定以外の文字あり

処理基準

  1. 注意事項1.〜3.に従ってチェックする。

  2. I-STRを次のように変換した結果を作業領域W-STR-1,W-STR-2(ともにPIC X(200))にセットする。

    2.1 LOW-VALUEをSPACEに置き換えて,その結果をW-STR-1にセットする。

    2.2 さらに左詰め処理を行った結果をW-STR-2にセットする。

  3. W-STR-1に対してI-EDIT-PARMで指定した編集を行い,結果をO-STRにセットする。

  4. I-CHK-PARMに'ENT=MENT'または'ENT=MFILL'の指定があり,かつW-STR-1がSPACEの時,O-RTN-CDに'LXREA008'を返す。

  5. そのほかの時,次の処理を行う。

    5.1 I-CHK-PARMに'ENT=MFILL'の指定があり,かつI-LENGがW-STR-2の有効桁数より大きい

      時,O-RTN-CDに'LXREA027'を返す。

    5.2 そのほかの時,W-STR-2(1:有効桁数)に対してI-CHK-PARMのCHKパラメータで指定した

      チェックを行う。

     5.2.1 エラーの時,O-RTN-CDに'LXREA030'を返す。

     5.2.2 エラーでない時,O-RTN-CDにSPACEを返す。

例1

 I-LENG     :6
 I-STR      :'△A11△△'
 I-CHK-PARM :'CHK=(ALPHA,ALNUM)'
 I-EDIT-PARM:'SFT=LEFT'
 ↓
 O-STR      :'A11△△△'
 O-RTN-CD   :SPACE

例2

 I-LENG     :6
 I-STR      :'△a11△△'
 I-CHK-PARM :'CHK=CAPS,ENT=MENT'
 I-EDIT-PARM:'SET=LEFT,CHG=STOC'
 ↓
 O-STR      :'A11△△△'
 O-RTN-CD   :'LXREA030'

注意事項

  1. I-LENGについてNUMERICチェックを行い,数値でないときはリターンコードに'LXREA024'を返す。O-STRにはSPACEをそのまま返す。

  2. 1≦I-LENG≦200でなければリターンコードに'LXREA020'を返す。O-STRにはSPACEを返す。

  3. (パラメータ解析:LXRPIZ11)を呼び出してI-CHK-PARM,I-EDIT-PARMをチェックする。エラーの時は,リターンコードをそのまま返し,O-STRにはSPACEを返す。

  4. I-STRの中のLOW-VALUEは,半角空白と同様に扱う。

  5. このサブルーチンから,3.の他に(文字列左詰め:LXRPIA06),(文字列右詰め:LXRPIA07),(文字列有効桁数算出:LXRPIA09)を呼び出す。