4D v16.3OB SET |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16.3
OB SET
OB SET
OB SETコマンドは、 object 引数で指定したランゲージオブジェクトの中に、一つ以上の プロパティ/値 のペアを作成もしくは変更します。 object で指定するオブジェクトは、 C_OBJECT コマンドを使用して作成されている、あるいはオブジェクトフィールドが選択されている必要があります。 注: このコマンドは (WP SET ATTRIBUTESコマンドと同様に) 4D Write Pro objects に定義されている属性をサポートします (例題10を参照ください)。しかしながら、WP SET ATTRIBUTESとは異なり、OB SET はピクチャー変数やフィールドを属性値として直接扱うことはできません。 property 引数には、作成または修正したいプロパティのラベル(名前)を渡して下さい。object 内に指定されたプロパティが存在する場合、その値は指定した値で上書きされます。プロパティが存在しない場合、新たにプロパティが作成されます。 value 引数には、プロパティに設定したい値を渡して下さい。渡せる値としては複数の型がサポートされています。渡す際には以下のことに注意して下さい:
オブジェクトを作成し、テキスト型のプロパティを追加する場合を考えます: C_OBJECT($Object) オブジェクトを作成し、ブール型のプロパティを追加する場合を考えます: C_OBJECT($Object) プロパティを修正する場合: // $Object = {"FirstName":"John","LastName":"Smith"} プロパティを追加する場合: // $Object = {"FirstName":"John","LastName":"Smith"} プロパティの名前を変更する場合: C_OBJECT($Object) ポインターを使用する場合: // $Object = {"FirstName":"Paul","LastName":"Smith"} オブジェクトを使用する場合: C_OBJECT($ref_smith) 値をプログラム実行中に変えることもできます: OB SET($ref_smith ;"name";"Smyth") [Rect]Desc フィールドがオブジェクトフィールドとして定義されているとき、以下のように記述することができます: CREATE RECORD([Rect]) 変換された4D date を含む JSON形式のデータを書き出したい場合を考えます。変換が起きるのは日付がオブジェクトに保存されたときなので、 OB SETコマンドが呼び出される前に SET DATABASE PARAMETERコマンドを使用する必要があることに注意して下さい: C_OBJECT($o) 4D Write Proエリアを含むフォームメソッド内に、以下のように書く事ができます: If(Form event=On Validate) ドキュメントのカスタム属性を読み出す事もできます: vAttrib:=OB Get([MyDocuments]My4DWP;"myatt_Last edition by")
参照
|
プロパティ
プロダクト: 4D 履歴
初出: 4D v14 ARTICLE USAGE
ランゲージリファレンス ( 4D v16) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||