7.28.2 DEFINE の使用例

RDMLプログラムで内部使用する作業/カウンター・フィールド#Iを定義する

内部使用するための作業/カウンター・フィールド#Iを定義する

#ORDERと同じ属性を持つ#LASTORDERというフィールドを定義する

#ORDERと異なる属性を持つ#LASTORDERというフィールドを定義する

有効桁数が#QTYより3桁多い#TOTQTYというフィールドを定義する

#QTYとは異なる属性を持つ#TOTQTYというフィールドを定義する

フィールド#LONGと同様の属性を持つ#SHORTというフィールドを定義する

#LONGと同様の属性を持つ#SHORTというフィールドを定義する

別のフィールドに基づいて数値フィールドを定義する

RDMLプログラムで内部使用する作業/カウンター・フィールド#Iを定義する

DEFINE FIELD(#I) TYPE(*DEC) LENGTH(7) DECIMALS(0)
 

内部使用するための作業/カウンター・フィールド#Iを定義する

RDMLプログラム内で、ファンクションの実行開始時に作業/カウンター・フィールドの値が2になるよう定義します。

DEFINE FIELD(#I) TYPE(*DEC) LENGTH(7) DECIMALS(0) DEFAULT(2)
 

#ORDERと同じ属性を持つ#LASTORDERというフィールドを定義する

フィールド#LASTORDERの属性が、LANSAデータ・ディクショナリに定義されているフィールド#ORDERとまったく同じになるよう定義します。

DEFINE FIELD(#LASTORDER) REFFLD(#ORDER)
 

#ORDERと異なる属性を持つ#LASTORDERというフィールドを定義する

フィールド#LASTORDERの属性が、記述、ラベル、および欄見出しを除き、フィールド#ORDERとまったく同じになるよう定義します。

DEFINE FIELD(#LASTORDER) REFFLD(#ORDER) DESC('Last Order Number') LABEL('Last Order') COLHDG('Last' 'Order' 'Number')
 

有効桁数が#QTYより3桁多い#TOTQTYというフィールドを定義する

フィールド#TOTQTYの属性が、フィールド#QTYより有効桁数が3桁多い以外は#QTYとまったく同じになるよう定義します。

DEFINE FIELD(#TOTQTY) REFFLD(#QTY) LENGTH(*REFFLD *PLUS 3)
 

#QTYとは異なる属性を持つ#TOTQTYというフィールドを定義する

フィールド#TOTQTYの属性が、#QTYより有効桁数がフィールド3桁多く、小数点以下桁数が2桁多い以外は#QTYとまったく同じになるよう定義します。

DEFINE FIELD(#TOTQTY) REFFLD(#QTY) LENGTH(*REFFLD *PLUS 5) DECIMALS(*REFFLD *PLUS 2)
 

フィールド#LONGと同様の属性を持つ#SHORTというフィールドを定義する

#SHORTの文字数が正確に10文字になるよう定義します。

DEFINE FIELD(#SHORT) REFFLD(#LONG) LENGTH(10)
 

#LONGと同様の属性を持つ#SHORTというフィールドを定義する

#SHORTの属性が、フィールド#LONGより10文字少ない以外は#LONGとまったく同じになるよう定義します。

DEFINE FIELD(#SHORT) REFFLD(#LONG) LENGTH(*REFFLD *MINUS 10) 
 

別のフィールドに基づいて数値フィールドを定義する

数値フィールドにSキーボード・シフトを定義し、編集コードJで表示できるようにします。

DEFINE FIELD(#SHIFTY) REFFLD(#SHIFTS) EDIT_CODE(J) SHIFT(Y)