掲示板一覧   -   トピック一覧
   Enterprise Architect 全般
     コード生成の際の引数の参照


スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 トピック
未登録ゲスト
投稿日時: 2007-6-29 10:59

コード生成の際の引数の参照

お世話になります
いきなり初歩的な質問で恐縮です
市販のドキュメント生成ツールを使用して関数仕様書を作成するために
コード生成のテンプレートをカスタマイズして関数ヘッダの出力を試み
ているのですが関数の引数の展開がうまく行きません

対象テンプレートは、Operation Notes Impl です
以下のような書式で指定しています

%if genOptGenComments != "T" or genOptCPPGenMethodNotesInBody != "T"%
%endTemplate%

%PI=""%
$wrapLen = %genOptWrapComment%
$style = %genOptCPPCommentStyle%

%if $style == "XML.NET"%
%XML_COMMENT($wrapLen)%
%elseIf $style == "JavaDoc"%
%JAVADOC_COMMENT($wrapLen)%
%else%
//------------------------------------------------------------------------------\n
// 1.日本語名\n
// %opAlias%\n
// 2.パラメタ説明\n
// %paramType% %paramName% :[%paramKind%]%paramNotes%\n
// 3.概要\n
// %opNotes%\n
// 4.機能説明\n
// %opNotes%\n
// 5.戻り値\n
// %opReturnType%\n
// 6.備考\n
// \n
//------------------------------------------------------------------------------
%endIf%

パラメータのフィールド置換マクロだけが展開されません
カスタマイズ方法をお教え願えないでしょうか?

尚、バグかもしれませんがテンプレートを編集後、保存ボタンを押下しても
編集内容が保存されないことがたびたびありました

以上、宜しくお願い致します
sugimoto
投稿日時: 2007-6-29 11:22
EA Administrator
投稿: 1895

Re: コード生成の際の引数の参照

引用:

// 2.パラメタ説明\n
// %paramType% %paramName% :[%paramKind%]%paramNotes%\n


ご指摘はこの部分と思います。
1つの操作に対して、パラメータは複数が存在する場合がありますが、
このような場合は、操作に1つのみ存在する情報(例えば、opAlias)
と同じ記述方法では、情報は出力されません。

複数存在する情報を出力する場合、例えば、Operation Declaration
にてパラメータを表示するときは、以下のようにlistを用いて、
Parameterテンプレートを呼びます。
%opName%(%list="Parameter" @separator=", "%)

今回の場合も、ノート欄に表示したいパラメータの情報を返却する
Parameterの新たなテンプレートを作成し、それをlistを使って
呼ぶ必要があります。

ご確認のほど、よろしくお願いいたします。


引用:

尚、バグかもしれませんがテンプレートを編集後、保存ボタンを押下しても
編集内容が保存されないことがたびたびありました


ご迷惑お掛けしており、申し訳ございません。

現在、お使いのEnterprise Architectのバージョンはいくつでしょうか?
また、保存されない問題が発生する際の、条件など情報がありましたら、
お寄せいただけますと助かります。
未登録ゲスト
投稿日時: 2007-6-29 12:57

Re: コード生成の際の引数の参照

早速回答いただき有難うございます

引用:

ご指摘はこの部分と思います。
1つの操作に対して、パラメータは複数が存在する場合がありますが、
このような場合は、操作に1つのみ存在する情報(例えば、opAlias)
と同じ記述方法では、情報は出力されません。

複数存在する情報を出力する場合、例えば、Operation Declaration
にてパラメータを表示するときは、以下のようにlistを用いて、
Parameterテンプレートを呼びます。
%opName%(%list="Parameter" @separator=", "%)

今回の場合も、ノート欄に表示したいパラメータの情報を返却する
Parameterの新たなテンプレートを作成し、それをlistを使って
呼ぶ必要があります。

ご確認のほど、よろしくお願いいたします。


上記記述で希望通りの結果が得られました
有難うございます

引用:

ご迷惑お掛けしており、申し訳ございません。

現在、お使いのEnterprise Architectのバージョンはいくつでしょうか?
また、保存されない問題が発生する際の、条件など情報がありましたら、
お寄せいただけますと助かります。


バージョンは 6.5.805 です
特に再現方法はありません
(テンプレートを編集して保存を押下するだけです)
発生しないときはほとんど発生しません
(逆に発生するときは、2回に1回は発生しました、と言うよりか2回保存ボタンを押下しないと保存されないようでした)
sugimoto
投稿日時: 2007-6-29 13:13
EA Administrator
投稿: 1895

Re: コード生成の際の引数の参照

パラメータの出力がご希望の結果になったようで、安心いたしました。


また、コード生成テンプレートが保存されない件につきまして、
情報をお寄せいただきありがとうございます。

特に再現方法はなく、2回保存ボタンを押さないと保存されない場合が
あるということで、弊社でも再現確認を行って参ります。

保存されない件について、また何か情報がありましたらお寄せいただけますと
助かります。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ