データソース
自動挿入
When this option is selected, if a user enters a value that is not found in the list associated with the object, this value is automatically added to the list stored in memory.
When the automatic insertion option is not set (default), the value entered is stored in the form object but not in the list in memory.
This property is supported by:
- Combo box and list box column form objects associated to a choice list.
- Combo box form objects whose associated list is filled by their array or object datasource.
たとえば、"France, Germany, Italy" という値を含む選択リストが "Countries" というコンボボックスに関連付けられていた場合を考えます。自動挿入 のオプションがチェックをされていて、ユーザーが "Spain" という値を入力すると、"Spain" という値が自動的にメモリー内のリストに追加されます:
If the choice list was created from a list defined in Design mode, the original list is not modified.
JSON 文法
名 | データタイプ | とりうる値 |
---|---|---|
automaticInsertion | boolean | true, false |
対象オブジェクト
選択リスト
選択リストをフォームオブジェクトに関連づけます。 指定できるのは選択リスト名 (リストの参照) またはデフォルト値のコレクションです。
You can also associate choice lists to objects using the OBJECT SET LIST BY NAME or OBJECT SET LIST BY REFERENCE commands.
JSON 文法
名 | データタイプ | とりうる値 |
---|---|---|
choiceList | リスト、コレクション | 選択可能な値のリスト |
list | リスト、コレクション | 選択可能な値のリスト (階層リストのみ) |
対象オブジェクト
ドロップダウンリスト - コンボボックス - 階層リスト - リストボックス列
選択リスト (静的リスト)
タブコントロールオブジェクトのラベルとして使用する静的な値のリスト。
JSON 文法
名 | データタイプ | とりうる値 |
---|---|---|
labels | リスト、コレクション | タブコントロールラベルに使用する値のリスト。 |
対象オブジェクト
カレントの項目
コレクションまたはエンティティセレクションリストボックス
ユーザーによって選択されたコレクション要素/エンティティが割り当てられる変数あるいは式を指定します。 オブジェクト変数あるいはオブジェクトを受け入れる割り当て可能な式を使用する必要があります。 ユーザーが何も選択しなかった場合、あるいはスカラー値のコレクションを使用した場合、Null 値が割り当てられます。
このプロパティは「読み取り専用」であり、リストボックスにおけるユーザーアクションに基づいて自動的に更新されます。 この値を編集してリストボックスの選択状態を変更することはできません。
JSON 文法
名 | データタイプ | とりうる値 |
---|---|---|
currentItemSource | string | オブジェクト型の式 |
対象オブジェクト
カレントの項目の位置
コレクションまたはエンティティセレクションリストボックス
ユーザーによって選択されたコレクション要素/エンティティの位置を表す倍長整数が割り当てられる変数あるいは式を指定します。
- 要素/エンティティが選択されていない場合、変数あるいは式は 0 を受け取ります。
- 単一の要素/エンティティが選択されている場合、変数あるいは式はその位置を受け取ります。
- 複数の要素/エンティティが選択されている場合、変数あるいは式は最後に選択された要素/エンティティの位置を受け取ります。
このプロパティは「読み取り専用」であり、リストボックスにおけるユーザーアクションに基づいて自動的に更新されます。 この値を編集してリストボックスの選択状態を変更することはできません。
JSON 文法
名 | データタイプ | とりうる値 |
---|---|---|
currentItemPositionSource | string | 数値型の式 |
対象オブジェクト
Data Type (expression type)
Defines the data type for the displayed expression. This property is used with:
- List box columns of the selection and collection types.
- Drop-down lists associated to objects or arrays.
See also Expression Type section.
JSON 文法
名 | データタイプ | とりうる値 |
---|---|---|
dataSourceTypeHint | string |
対象オブジェクト
Drop-down Lists associated to objects or arrays - List Box column
Data Type (list)
Defines the type of data to save in the field or variable associated to the drop-down list. This property is used with:
- Drop-down lists associated to a choice list.
- Drop-down lists associated to a hierarchical choice list.
次の値が提供されています:
- List reference: declares that the drop-down list is hierarchical. It means that the drop-down list can display up to two hierarchical levels and its contents can be managed by the 4D language commands of the Hierarchical Lists theme.
- Selected item value (default): the drop-down list is not hierarchical and the value of the item chosen in the list by the user is saved directly. たとえば、ユーザーが "Blue" という値を選択した場合、この値がフィールドに保存されます。
- Selected item reference: the drop-down list is not hierarchical and the reference of the choice list item is saved in the object. This reference is the numeric value associated with each item either through the itemRef parameter of the
APPEND TO LIST
orSET LIST ITEM
commands, or in the list editor. このオプションにより、メモリーを節約することができます。フィールドに数値を保存するのは文字列を保存するより容量が軽いからです。 また、これによりアプリケーションの翻訳が簡単になります。同じ項目の参照値を持つ、異なる言語で書かれた複数のリストを用意しておいて、アプリケーションの言語に応じたリストをロードするだけで多言語に対応できるからです。
Using the Selected item reference option requires compliance with the following principles:
- 参照を保存するには、データソースのフィールドまたは変数は、数値型である必要があります (リスト内に表示されている値の型とは関係ありません)。 The expression property is automatically set.
- リストの項目には有効かつ固有の参照が関連付けられている必要があります。
- The drop-down list must be associated with a field or a variable.
JSON 文法
名 | データタイプ | とりうる値 |
---|---|---|
saveAs | string | "value", "reference" |
Setting only
"dataSourceTypeHint" : "integer"
with a"type": "dropdown"
form object will declare a hierarchical drop-down list.
対象オブジェクト
Drop-down Lists associated to lists
デフォルト値
配列型リストボックスにおいて、リストボックス列のデフォルト値として使用される値のリストです。 これらの値は自動で、フォームを実行したときにその列に割り当てられた 配列変数 に代入されます。 この配列を参照することで、ランゲージを使ってオブジェクトを管理することができます。
このプロパティと、新規レコードのフィールド値を定義するのに使える入力オブジェクトの デフォルト値 を混同しないようにしてください。
デフォルト値のリストを入力します。 フォームエディター上で専用のダイアログが開き、改行で区切られた値を入力することができます。
リストボックス列に 選択リスト を定義することもできます。 選択リストは列の各行において選択可能な値の候補として使用されますが、デフォルト値のリストはカラムの各行に上から順に割り当てられます。
JSON 文法
名 | データタイプ | とりうる値 |
---|---|---|
values | collection | デフォルト値 (文字列) のコレクション。例: "a", "b", "c", "d" |
対象オブジェクト
式
セレクション型 および コレクション/エンティティセレクション型 リストボックスのプロパティです。 変数あるいは式 の章も参照ください。
列に割り当てる 4D式です。 以下のものを指定できます:
単純な変数 (この場合、コンパイル用に明示的に型宣言されている必要があります)。 BLOB と配列型以外のどんな型の変数も使用することができます。 変数の値は通常
On Display Detail
イベントで計算されます。標準の [Table]Field シンタックスを使用した フィールド (セレクション型リストボックス のみ) 例:
[Employees]LastName
。 以下の型のフィールドを使用できます:- 文字列
- 数値
- 日付
- 時間
- ピクチャー
- ブール
マスターテーブルおよび他のテーブルのフィールドを指定できます。
4D式 (単純な式、フォーミュラ、または 4Dメソッド)。 式は値を返す必要があります。 値は
On Display Detail
およびOn Data Change
イベントで評価されます。 式の結果は、アプリケーションモードでフォームを実行すると自動で表示されます。 式は、セレクション型リストボックスではマスターテーブルの (カレントまたは命名) セレクションの各レコードごとに、コレクション型リストボックスではコレクションの各要素ごとに、エンティティセレクション型リストボックスではセレクションのエンティティごとに評価されます。 空の場合、列には何も表示されません。
以下の型の式がサポートされています:- 文字列
- 数値
- 日付
- ピクチャー
- ブール
コレクション/エンティティセレクション型リストボックスにおいては、Null あるいはサポートされない型は空の文字列として表示されます。
コレクションあるいはエンティティセレクションを使用する場合、カラムに割り当てられた要素プロパティ/エンティティ属性は、通常 This を含む式を用いて宣言します。 このThis
は現在処理中の要素への参照を返す、専用の 4Dコマンドです。 たとえば、This.<propertyPath> (ここでの<propertyPath> はコレクションのプロパティパス、あるいはエンティティ属性パス) を使用することで、各要素/エンティティのカレントの値にアクセスすることができます。
スカラー値のコレクションを使用した場合、4D は各コレクション要素に対して、単一のプロパティ (名前は "value") を持つオブジェクトを作成し、それに要素の値を格納します。 この場合、This.value を式として使用します。代入不可な式 (例:
[Person]FirstName+" "+[Person]LastName
など) を使用した場合、入力可 オプションが選択されていても、その列に値を入力することはできません。
フィールド、変数、あるいは代入可能な式 (例: Person.lastName) を使用した場合、入力可 プロパティの設定に基づき列への入力可/不可が決定されます。
JSON 文法
名 | データタイプ | とりうる値 |
---|---|---|
dataSource | string | 4D変数、フィールド名、あるいは任意のランゲージ式 |
対象オブジェクト
マスターテーブル
カレントセレクションリストボックス
使用するカレントセレクションが属するテーブルを指定します。 このテーブルとそのカレントセレクションが、リストボックスの列に割り当てられたフィールドの参照を形成します (フィールド参照やフィールドを含む式)。 ある列が他のテーブルのフィールドを参照しているとしても、表示される行の数はマスターテブルのカレントレコード数となります。
すべてのデータベーステーブルが利用できます。フォームがテーブルに属しているか (テーブルフォームの場合) あるいは属していないか (プロジェクトフォーム) は関係ありません。
JSON 文法
名 | データタイプ | とりうる値 |
---|---|---|
table | number | テーブル番号 |
対象オブジェクト
関連付け
このプロパティは以下の場合に表示されます:
- オブジェクトに対して 選択リスト が割り当てられている
- 入力 および リストボックス列 の場合には、ユーザーがリスト内の値のみ入力できるように、オブジェクトに対して 指定リスト も定義されている (通常は両方のオプションで同じリストを使用しているはずです)。
このプロパティは、選択リストに関連付けされたフィールドまたは変数において、フィールドに保存する内容の型を指定します:
- リスト項目の値 (デフォルトのオプション): ユーザーによって選択された項目の値が直接保存されます。 たとえば、ユーザーが "Blue" という値を選択した場合、この値がフィールドに保存されます。
- リスト項目の参照番号: 選択リスト項目の参照がオブジェクトに保存されます。 This reference is the numeric value associated with each item either through the itemRef parameter of the
APPEND TO LIST
orSET LIST ITEM
commands, or in the list editor.
このオプションにより、メモリーを節約することができます。フィールドに数値を保存するのは文字列を保存するより容量が軽いからです。 また、これによりアプリケーションの翻訳が簡単になります。同じ項目の参照値を持つ、異なる言語で書かれた複数のリストを用意しておいて、アプリケーションの言語に応じたリストをロードするだけで多言語に対応できるからです。
リスト項目の参照番号の使用の際には、以下の点に注意する必要があります:
- 参照を保存するには、データソースのフィールドまたは変数は、数値型である必要があります (リスト内に表示されている値の型とは関係ありません)。 The expression property is automatically set.
- リストの項目には有効かつ固有の参照が関連付けられている必要があります。
JSON 文法
名 | データタイプ | とりうる値 |
---|---|---|
saveAs | string | "value", "reference" |
対象オブジェクト
選択された項目
コレクションまたはエンティティセレクションリストボックス
ユーザーによって選択されている一つ以上のコレクション要素/エンティティが割り当てられる変数あるいは式を指定します。
- コレクションリストボックスにおいては、コレクション変数あるいはコレクションを受け入れる割り当て可能な式を使用する必要があります。
- エンティティセレクションリストボックスにおいては、エンティティセレクションオブジェクトがビルドされます。 オブジェクト変数あるいはオブジェクトを受け入れる割り当て可能な式を使用する必要があります。
このプロパティは「読み取り専用」であり、リストボックスにおけるユーザーアクションに基づいて自動的に更新されます。 この値を編集してリストボックスの選択状態を変更することはできません。
JSON 文法
名 | データタイプ | とりうる値 |
---|---|---|
selectedItemsSource | string | コレクション式 |
対象オブジェクト
命名セレクション
命名セレクションリストボックス
使用する命名セレクションを指定します。 有効な命名セレクションの名前を入力しなければなりません。 使用できるのはプロセスあるいはインタープロセス命名セレクションです。 リストボックスの内容はこのセレクションに基づきます。 選択された命名セレクションは、リストボックスが表示される時点で存在し、有効でなければなりません。そうでない場合、リストボックスは空で表示されます。
命名セレクションはソート済みのレコードリストです。 これはセレクション中のカレントレコードと並び順をメモリーに保持するために使用されます。 詳細は、4Dランゲージリファレンス マニュアル の 命名セレクション を参照してください。
JSON 文法
名 | データタイプ | とりうる値 |
---|---|---|
namedSelection | string | 命名セレクションの名前 |