Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

13.4.6 非表示フィールド属性と選択フィールド属性

属性

説明

*HIDE 
*HIDDEN

この2つの属性は、同義です。

この属性を使用すると、フィールドは「非表示」になり、画面に表示されません。 

この属性の主な目的は、フィールドをブラウズ・リストに追加するが、そのフィールドを実際には画面に表示しないようにすることです。リストとリスト処理の詳細については、DEF_LISTコマンドを参照してください。

*SEL 
*SELECT

この2つの属性は、同義です。

この属性を使用すると、フィールドを使用してリストからエントリーを「選択」することができます。この属性が指定されたフィールドは、表示モードに関係なく入力可能になります。リストとリスト処理の詳細については、DEF_LISTコマンドとSELECTLISTコマンドを参照してください。

例:

次のRDMLプログラムでは、*HIDDEN属性と*SELECT属性を使用して、ユーザーに顧客の総称名を入力するよう要求しています。入力条件に一致する顧客名がすべて表示され、その顧客名を選択すると、詳細を表示することができます。

...

  • 実行可能コマンドの最初のブロックでは、ユーザーに顧客名を入力するよう要求し、総称的に一致する名前を持つ全顧客のリストを作成します。
  • 最初のDISPLAYコマンドでは、コードの最初のブロックによって作成されたリストを表示します。リストは、次のように表示されます。

                Sel     Customer name

                 _      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX     

                 _      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX     

                 _      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX     

"Sel"列が入力可能であることに注意してください。これは、フィールド#CHOOSEに*SELECT属性を割り当てているためです。 

また、フィールド#CUSTNOが画面に表示されないことに注意してください。これは、フィールド#CUSTNOに属性*HIDDENが指定されているためです。このフィールドは表示されていませんが、各リスト・エントリーの一部であり、詳細を表示するのに必要な顧客レコードを取り込むために最終ループで使用されます。

...

  • 最初の例と同様に、コマンドは、「納期」を入力するよう要求します。関連するすべての受注のリストが作成され、表示されます。リストは、次のように表示されます。

                Sel     Order     Date Due

                 _     9999999     99/99/99     

                 _     9999999     99/99/99     

                 _     9999999     99/99/99     

                 _     9999999     99/99/99     

  • SELECTLIST/ENDSELECTループは、フィールド#CHOOSE内でブランク以外の値を持つリスト内の全エントリーを処理するよう要求しています。また、ループは、フィールド#CHOOSEの内容にも作用するため、受注に関する顧客、明細、支払い履歴、状況が表示されます。