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

SaveCheckLoad、または Delete メソッドの実行後に発生したエラー (*) のコレクションを取得します。
(*) GeneXus によって自動的にチェックされるものと、Transaction オブジェクトで定義されている Msg ルールと Error ルールに従ってチェックされるものがあります。

構文

&messages=&VarBasedOnBC.GetMessages()

入力値の説明:
&messages
     GeneXus オブジェクトに定義された変数であり、GeneXus によってすべてのナレッジベース内に自動的に定義される Messages 構造化データタイプに基づきます:
     イメージ:23254.png

&VarBasedOnBC
      GeneXus オブジェクトに定義された変数であり、ビジネスコンポーネントに基づきます。

次のトランザクションをビジネスコンポーネントとして定義する ([ Business Component ] プロパティを True に設定する) とします:
Customer
{
  CustomerId*     ( [ Autonumber ]  プロパティ = True)
  CustomerName
  CustomerAddress
  CustomerPhone
  CustomerEmail
  CustomerAddedDate
  CustomerTotalMiles
}
Customer のルールは次のとおりです:
Default(CustomerAddedDate,&today);
Error("マイルが残っているため、この顧客情報を削除できません") if delete and CustomerTotalMiles>0;
この場合、Customer トランザクションのビジネス コンポーネント データ タイプがナレッジベースに自動的に作成され、作成された新しいタイプの変数を任意のオブジェクトで定義できます。そのため、Customer タイプに基づいて &Customer 変数を定義できます。
同じオブジェクトで次の 2 つの変数も指定します:
&Messages: Messages データタイプのコレクション
&oneMessage: Messages.Message データタイプであり、コレクション内の 1 つのエレメント
その後、オブジェクト (プロシージャーの [ Source ] など) 内で次のコードを指定します:
&Customer.Load(18)
&Customer.Delete()
if &Customer.success()
   commit
else
   &Messages = &customer.GetMessages()
   for &oneMessage in &Messages
       msg(&oneMessage.Description)
   endfor   
endif

参考情報

ビジネスコンポーネントのエラー処理
ビジネスコンポーネントのメソッド











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