変数に格納されているデータを、
トランザクション項目属性ごとにタグを持つ XML 構造に変換します。各トランザクション項目属性に、以前の値を持つ Tag_Z が作成されます。
&VarStr =
&VarBasedOnBC.
ToXml()
入力値の説明:
&varStr
GeneXus オブジェクトに定義された変数であり、文字データタイプに基づきます。
&varBasedOnBC
GeneXus オブジェクトに定義された変数であり、ビジネスコンポーネントに基づきます。
次のトランザクションをビジネスコンポーネントとして定義する (
[ Business Component ] プロパティを True に設定する) とします:
Customer
{
CustomerId* ( [ Autonumber ] プロパティ = True)
CustomerName
CustomerAddress
CustomerPhone
CustomerEmail
CustomerAddedDate
}
Customer のルールは次のとおりです:
Default(CustomerAddedDate,&today);
この場合、Customer トランザクションのビジネス コンポーネント データ タイプが
ナレッジベースに自動的に作成され、作成された新しいタイプの変数を任意のオブジェクトで定義できます。
そのため、Customer タイプに基づいて、任意の
Web Panel オブジェクトで &Customer 変数を定義できます。
この Web パネルの目的は、ユーザーが顧客 ID の値を入力できるようにすることです。次に、ボタンを押すことで、そのボタンに関連付けられたイベントによって、ユーザーが入力した顧客 ID に関連する、データベースに格納された顧客データがメモリー (&Customer ビジネスコンポーネント変数内) にロードされます。続いて、この顧客データを XML 形式に変換するために、&Customer 変数に ToXml メソッドが適用されます。このデータは、
Web パネルの [ Web Layout ] エレメントに表示されます。
そのためには、Web パネル内に次の変数も定義する必要があります:
&CustomerId: CustomerId 項目属性に基づく
&xml: Character(200)
また、次のような Web パネル画面を設計します:

Web パネルのボタンには次のコードが関連付けられます:
Event 'ToXml'
&Customer.Load(&CustomerId)
&xml=&Customer.ToXml()
Endevent
実行時に、次の値を入力したとします: &CustomerId 変数に値 1 を入力し、ボタンを押します。顧客データが &Customer 変数にロードされ、次の画像のような XML 形式に変換されます:
<Customer xmlns=“knowledgeBase”>
<CustomerId>1</CustomerId>
<CustomerName>Jack Smith </CustomerName>
<CustomerAddress>2300 East Avenue </CustomerAddress>
<CustomerPhone>12103110700 </CustomerPhone>
<CustomerEmail>jsmith@gmail.com</CustomerEmail>
<CustomerAddedDate>2020-02-04</CustomerAddedDate>
<Mode>UPD</Mode>
<Initialized>0</Initialized>
<CustomerId_Z>1</CustomerId_Z>
<CustomerName_Z> Jack Smith </CustomerName_Z>
<CustomerAddress_Z>2300 East Avenue </CustomerAddress_Z>
<CustomerPhone_Z>12103110700 </CustomerPhone_Z>
<CustomerEmail_Z>jsmith@gmail.com</CustomerEmail_Z>
<CustomerAddedDate_Z>2020-02-04</CustomerAddedDate_Z>
</Customer>
ビジネスコンポーネント変数のメソッド