ARRAY TO COLLECTION
ARRAY TO COLLECTION ( collection ; array {; propertyName}{; array2 ; propertyName2 ; ... ; arrayN ; propertyNameN} )
引数 | 型 | 説明 | |
---|---|---|---|
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 |
スレッドセーフである | ✓ |