掲示板一覧   -   トピック一覧
   EA ソースコード生成・コード生成テンプレート
     ソースコードの生成での別名の利用


フラット表示 前のトピック | 次のトピック
投稿者 トピック
sugimoto
投稿日時: 2008-3-31 12:04
EA Administrator
投稿: 1895

Re: ソースコードの生成での別名の利用

ご質問について、詳細な情報ありがとうございます。

追加の回答に記載させていただきましたように、ご連絡いただいたような
ケースでは、フィールド置換マクロにて、別名を表示することが、
現状はできません。

機能マクロEXEC_ADD_INを利用する必要がございます。

属性の分類子に別名がある場合に、その情報を返却するアドインを作成しておき、
このEXEC_ADD_INにてそのアドインを呼ぶという流れになります。

以下は、アドイン、およびコード生成テンプレートの対応例になります。

[アドイン例]
public string GetAttributeTypeAlias(EA.Repository repository, object args)
{
  /// 引数の情報取得
  object[] param = (object[])args;
  string attGUID = (string)param.GetValue(0);

  /// 属性の情報を取得
  EA.Attribute att = repository.GetAttributeByGuid(attGUID);

  /// 属性に分類子がある場合、その別名を返却
  if (att.ClassifierID != 0)
  {
    EA.Element elm = repository.GetElementByID(att.ClassifierID);
    if (elm.Alias != "")
    {
      return elm.Alias;
    }
    else
    {
      return "";
    }
  }
  return "";
}

[コード生成テンプレート例:Attribute Declaration]
$result = %EXEC_ADD_IN("getAlias","GetAttributeTypeAlias",attGUID)%
%if $result != ""%
$result
%else%
%attType=="" ? "int" : value%
%endIf%


お手数をお掛けしておりますが、
上記内容について、ご確認のほど、よろしくお願いいたします。
フラット表示 前のトピック | 次のトピック

題名 投稿者 日時
   ソースコードの生成での別名の利用 sugimoto 2007-7-24 17:48
     Re: ソースコードの生成での別名の利用 未登録ゲスト 2008-3-28 21:40
       Re: ソースコードの生成での別名の利用 sugimoto 2008-3-31 9:59
         Re: ソースコードの生成での別名の利用 sugimoto 2008-3-31 10:19
         Re: ソースコードの生成での別名の利用 未登録ゲスト 2008-3-31 10:31
         » Re: ソースコードの生成での別名の利用 sugimoto 2008-3-31 12:04