外部コマンド・外部プログラムとのインタフェースについて
以下は Build 077 時点での仕様です。
外部コマンドの呼び出し
設定ファイルを配置することで、RaQuest のメインメニュー->ツールのところに、外部ツール呼び出しメニューを設定可能。
設定
インストールフォルダの下にフォルダを作り(名前は何でも良い)その下に、拡張子 ini のファイルを作る。
iniファイルの内部のフォーマットは以下。
MENUNAME=メニュー名
EXECFILE=コマンドフルパス
ARGUMENT=コマンド引数
EXECDIR=コマンド実行時ディレクトリ
SHORTCUT=表示順(ショートカットキー)
DESKTOP=Enterprise Architectデスクトップ版と組み合わせのときの動作
SHOWWINDOW=動作時のWindow状態
- ARGUMENT は引数
- $f プロジェクトのファイルパスまたは接続文字列
- $k 選択している要素の種類
- $g 選択している要素のGUID
- $e 選択している要素のEAID
- $p プロジェクトのGUID
- $%id% など 選択している要素が要求のときの属性値
($%(ユーザ定義属性名)% など)
引数の数を合わせるために、"(ダブルクオート) で囲む必要がありましたら、囲む。
- EXECDIR は省略可(省略した場合は、ini ファイルがあるフォルダ)
- SHORTCUT は 1から10 まで。省略可能
ショートカットキーは CTRL+F1 から CTRL+F10 で対応。
- DESKTOP は省略可 CLOSE/NG/OK が選択肢
CLOSE は、Enterprise Architectデスクトップ版 だと一旦クローズ(デフォルト)
NG は Enterprise Architectデスクトップ版 だと実行不可
OK は Enterprise Architectデスクトップ版 でも実行
- SHOWWINDOW は省略可(省略した場合は、通常表示)
0 は非表示
1 は通常表示
例:
MENUNAME=メニュー名
EXECFILE=C:\test.bat
ARGUMENT="$f" $g
EXECDIR=C:\
SHORTCUT=1
DESKTOP=CLOSE
SHOWWINDOW=1
上記の場合:
- メニューには「メニュー名」で表示
- 実行ファイルは C:\test.bat
- 引数は、現在開いているプロジェクトファイル($f)と現在選択している要素のGUID($g)
- 実行時ディレクトリは、 C:\
- ショートカットキーは CTRL+F1
- EAデスクトップ版との組み合わせは、プロジェクトを一旦閉じて、実行終了後、開きなおす。
- 画面は通常表示
外部プログラムからの要求の選択/更新
ライブラリ(インストールディレクトリの RaQuestMessageLib.dll(32ビット)/RaQuestMessageLib64.dll(64ビット)) を利用する
ライブラリの関数
- SetTargetProjectGUID:メッセージ送信対象プロジェクトを指定
- FindTargetInstance:指定した対象プロジェクトを開いているRaQuestを検索
- UpdateRequirement:要求の更新メッセージ送信
- SelectRequirement:要求の選択メッセージ送信
- CloseMessage:メッセージ送信終了
サンプルプログラム
外部コマンド呼び出しサンプル
RaQuest インストールディレクトリの下にフォルダを作り、ダウンロードした zip ファイルを解凍して出来たファイルを移動してください。
外部コマンド呼び出しサンプル
サンプル外部コマンド(外部プログラムからメッセージなし)
RaQuest から呼び出され、データを変更する、外部コマンドのサンプル。
このサンプルでは、要求の'要再検討'属性がTrue となっている場合、要求と実現関係で結ばれたUML要素のブックマークをつける。
(要求の状態をUML要素へ反映するサンプル)
要求の'要再検討'状態をUML要素のブックマークへ反映するサンプル(EA-API利用/32ビット版)
要求の'要再検討'状態をUML要素のブックマークへ反映するサンプル(EA-API利用/64ビット版)(準備中)
要求の'要再検討'状態をUML要素のブックマークへ反映するサンプルソース(VC6)(EA-API利用版)(サポートユーザのみ)
サンプル外部コマンド(外部プログラムからメッセージあり)
RaQuest から呼び出され、要求データを変更し、RaQuestにメッセージを送信する、外部コマンドのサンプル。
このサンプルでは、ブックマークがついているUML要素と実現関係で結ばれた要求の'要再検討'属性をTrue とし、変更した要求の表示を更新するようにメッセージを送る。
(UML要素の状態を要求へ反映するサンプル)
UML要素のブックマークを要求の'要再検討'状態へ反映するサンプル
UML要素のブックマークを要求の'要再検討'状態へ反映するサンプルソース(VC6)(サポートユーザのみ)