ARRAY TO COLLECTION
ARRAY TO COLLECTION ( ...collection ; ...array {; ...propertyName} )
| 引数 | 型 | 説明 | |
|---|---|---|---|
| collection | Collection | ← | 配列のデータを受け取るコレクション | 
| array | Array | → | コレクションにコピーする配列。propertyName引数指定時はコレクションのpropertyNameの値にコピーする配列。 | 
| propertyName | Text | → | 配列の要素を値として格納するオブジェクトのプロパティ名 | 
説明
ARRAY TO COLLECTION コマンドはarray 引数で指定した一つあるいはそれ以上の配列を、collection 引数で指定したコレクションの要素、あるいはpropertyName 引数で指定したプロパティの値にコピーします*。*
このコマンドは値を格納しているcollection に対して使用することもできますし、オブジェクトを格納しているcollection に対して使用することもできます。後者の場合にはpropertyName 引数は必須になります。
- 引数を省略した場合、コマンドは全てのarray の要素をcollection へとコピーします。collection が空でない場合、既存の要素は置き換えられ、array のサイズがcollection のlength より大きい場合には新しい要素が追加されます。コマンド実行後、collection のlength はarray のサイズと同一になります。
- 一つあるいはそれ以上のpropertyName 引数を渡す場合、コマンドはオブジェクトをcollection の要素として作成あるいは上書きします。それぞれのオブジェクトには引数で名前を指定したプロパティと、対応する配列の要素が値として格納されます。collection が空でない場合、既存の要素は置き換えられ、array のサイズがcollection のlength より大きい場合には新しい要素が追加されます。コマンド実行後、collection のlength はarray うち最大の配列のサイズと同一になります。
例題 1
テキスト配列をコレクションへとコピーしたい場合を考えます:
 var $colFruits : Collection
 $colFruits:=New collection
 ARRAY TEXT($artFruits;4)
 $artFruits{1}:="Orange"
 $artFruits{2}:="Banana"
 $artFruits{3}:="Apple"
 $artFruits{4}:="Grape"
 ARRAY TO COLLECTION($colFruits;$artFruits)
  //$colFruits[0]="Orange"
  //$colFruits[1]="Banana"
  //...
例題 2
フィールドの値を、配列を通してオブジェクトのコレクションへとコピーしたい場合を考えます:
 var $col : Collection
 $col:=New collection
 ARRAY TEXT($artCity;0)
 ARRAY LONGINT($arLZipCode;0)
 SELECTION TO ARRAY([Customer]City;$artCity)
 SELECTION TO ARRAY([Customer]Zipcode;$arLZipCode)
 ARRAY TO COLLECTION($col;$artCity;"cityName";$arLZipCode;"Zip")
  //$col[0]={"cityName":"Cleveland","Zip":35049}
  //$col[1]={"cityName":"Blountsville","Zip":35031}
  //...
例題 3
テキスト配列を共有コレクションへとコピーしたい場合を考えます:
 ARRAY TEXT($at;1)
 
 APPEND TO ARRAY($at;"Apple")
 APPEND TO ARRAY($at;"Orange")
 APPEND TO ARRAY($at;"Grape")
 
 var $sharedCol : Collection
 $sharedCol:=New shared collection
 
 Use($sharedCol)
    ARRAY TO COLLECTION($sharedCol;$at)
 End use
参照
COLLECTION TO ARRAY
コレクションと4D配列間での型の変換
プロパティ
| コマンド番号 | 1563 | 
| スレッドセーフである | ✓ |