最近のアクセス:
ビジネスコンポーネントの GetOldValues メソッド

ビジネスコンポーネントに基づく変数のプロパティの前の値をデータベースから取得します。

構文

&varBasedOnBC.PropertyName.Getoldvalue()

入力値の説明:
&varBasedOnBC
     GeneXus オブジェクトに定義された変数であり、ビジネスコンポーネントに基づきます。

説明

このメソッドをビジネスコンポーネントに基づく変数のプロパティに適用すると、そのプロパティに格納されている以前の値を取得できます。別の値が割り当てられたなど、プロパティの値がメモリー内で変更されていても、その値が取得されます。
このメソッドから返される結果は、変数に割り当てたり、Msg 関数を使用して表示したりできます。

Customer トランザクションをビジネスコンポーネントとして定義する ([ Business Component ] プロパティを True に設定する) とします:
Customer
{
  CustomerId*     ( [ Autonumber ]  プロパティ = True)
  CustomerName
  CustomerAddress
  CustomerPhone
  CustomerEmail
  CustomerAddedDate
  CustomerTotalMiles
}

ルール: 
Default(CustomerAddedDate,&today);
Error("マイルが残っているため、この顧客情報を削除できません") if delete and CustomerTotalMiles>0;
この場合、Customer トランザクションのビジネス コンポーネント データ タイプがナレッジベースに自動的に作成され、作成された新しいタイプの変数を任意のオブジェクトで定義できます。そのため、Customer タイプに基づいて、任意のオブジェクトで &Customer 変数を定義できます。たとえば、オブジェクト内に次のコードを定義できます (オブジェクトがプロシージャーの場合、コードはそのソースに含められます):
&Customer.Load(1)                  
&Customer.CustomerTotalMiles += 500
msg('この顧客が持っているマイルは' + str(&Customer.CustomerTotalMiles.Getoldvalue()) + ' です。新しく次のマイルを取得します: ' + str(&Customer.CustomerTotalMiles))
&Customer.Save()
commit


参考情報

ビジネスコンポーネント変数のメソッド
 





サブページ
Created: 15/01/07 22:49 by Admin Last update: 23/05/08 21:26 by Admin
カテゴリ
Powered by GXwiki 3.0