EASYPROCLIBEasytrieve Report GeneratorEasytrieve Report Generator for Common Services
Issue/Introduction
Question データをビット単位で扱うには?
Environment
z/OS, MSP, VOS3, IBM, FUJITSU, HITACHI
Resolution
Answer EASYPLUSではデータ属性としてビット・タイプは持っていません。 A, N, P, U, Bのいずれかで定義します。代入や条件比較は16進数を使用して行います。 ビット・データの操作として、次のような機能があります。 ・フィールドのビット処理における条件比較 ・代入ステートメントでの論理演算
[フィールド定義の記述] フィールド名 スタート位置 フィールド長 属性
[条件比較の記述] IF フィールド名-1 関係演算子 フィールド 名-2 16進リテラル
※関係演算子 : [NOT] ON、OFF いずれかの指定
[論理演算の記述] フィールド名-1 = フィールド名-2 論理演算子 フィールド名-3
※ 論理演算子 : AND、OR、XOR いずれかの指定
記述例 (例) ビット操作により、金額の符合の変換を行う
FILE FILEA CHIKU 1 3 N KIN 4 2 P 0 MASK HEX WーKIN W 2 P 0 MASK HEX * JOB IF CHIKU = 401 W-KIN = KIN AND X'FFFE' ELSE W-KIN = KIN OR X'OOOF' END-IF PRINT * REPORT NODATE NOPAGE TITLE 01 '符合変換テスト' LINE 01 CHIKU KIN W-KIN