パラメーターとして受け取った JSON 文字列から、
構造化データタイプ (SDT) または
ビジネスコンポーネントに基づいた変数をロードします。
[ &Boolean = ] &var
.FromJson(&String [ , &Messages ]
)
入力値の説明:
&String
JSON コンテンツの項目属性または変数の文字列です。
&var
SDT またはビジネスコンポーネントに基づく変数です。
&Messages
GeneXus の Messages データタイプに基づく変数です。エラーが発生した場合は、エラー情報が含まれます。このパラメーターはオプションです。
戻されるタイプ:
ブール値です。
エラーが発生した場合は False、そうでない場合は True を返します。戻り値の代入はオプションです。
オブジェクト: Procedure、
Transaction、
Web Panel、
Panel
ジェネレーター: .NET Framework、
.NET、
Java
FromJson メソッドは、&var 構造を &String 変数の内容からロードします。変数の JSON 形式 (&String) は、SDT またはビジネスコンポーネント構造 (&var) に基づき、変数に適合する必要があります。
以下のように定義された構造化データタイプがあるとします:
SDT1
{
NumericMember: Numeric
CharacterMember: Character
GeoPointMember: GeoPoint
}
以下のコードを定義します (たとえば
プロシージャーソースまたは
Web パネル /
パネルイベント内で):
&VarBasedOnSDT1.FromJson(' [ {"NumericMember": 0,"CharacterMember":"ValueCharacter","GeoPointMember":"POINT(-56.10 -33.01)"} ] ')
上記のコードは &VarBasedOnSDT1 変数を初期化します。
GeoPointMember は、WellKnownText 形式 (WKT) で値を受け取ることに注意してください。Android 用に生成する場合にのみ使用できるもう 1 つの方法は、以下のように
Geolocation ドメイン形式をパラメーターとして渡すことです:
&VarBasedOnSDT1.FromJson(' [ {"NumericMember": 0,"CharacterMember":"VallueCharacter","GeoPointMember":"57.10, 68.9"} ] ')
データタイプのマッピング
GeneXus の基本データタイプは、JSON データタイプに次のようにマッピングされます:
- Character、VarChar、LongVarChar → JSON の String
- Boolean → JSON の Boolean
- Numeric → JSON の Number
- Collections → 順番に並んだ値。値をコンマで区切り、大括弧で囲みます。
SDT の無視されるプロパティ
SDT を JSON にシリアル化するときに、次のプロパティが無視されます:
ToJson メソッド
Structured Data Type (SDT) オブジェクト