DIAdem Data Portalにデータをロードした際にイベントを発生させる

更新しました May 11, 2021

環境

ソフトウェア

  • DIAdem 2019 SP1

DIAdemにおいて特定の動作を行った際にイベントを発生させる場合、ユーザコマンドを作成し、登録する必要があります。ここではData Portalにデータをロードした際に、ロードしたデータのファイル名をメッセージボックスで表示する方法を確認します。

1. DIAdemを起動し、スクリプトを作成します。
DIAdem上で特定の動作に対して発生させるイベントはVBScriptで指定・作成します。DIAdemのScriptを開き、新規の*.VBSファイルに下記のスクリプトをコピーします。このスクリプトに名前を付けて保存します。
 
01OnloadedScript.png

上記のスクリプトは下記の物を使用しています。
 
Option Explicit   'スクリプト内のすべての変数の明示的な宣言を強制します。
Call AddUserCommandToEvent("Navigator.Events.OnLoaded","MyOnLoaded")

Sub MyOnLoaded()
  Dim Txt, Element
  Txt = ""
  For Each Element in LoadedElementList
    Txt = Txt & "Loaded Element: " & Element.Name & VbCrLf
  Next
  Call MsgBoxDisp(Txt)
End Sub

AddUserCommandToEventでNavigator.Events.OnLoadedが発生した際にMyOnLoadedを実行するように指定しています。Navigator.Events.OnLoadedはデータがData Portalにロードされたタイミングで発生します。


2. ユーザコマンドの登録
作成したスクリプトをユーザコマンドとして登録するには設定 >> 拡張 >> ユーザコマンドと進み、追加を選択します。ここで先ほど作成したスクリプトを選択するとユーザコマンドの登録が完了します。
 
02UserCommand.png

3. ユーザコマンドの動作確認
ここで作成したユーザコマンドはデータをData Portalにロードする際にメッセージボックスでデータの名前を表示する物となっています。Data Portalの内部データを削除し、DIAdemのサンプルデータをロードすると、下記の様にユーザコマンドの動作を確認できます。
 
3test.png

上級検索の結果をData Portalにロードする場合などでもこのユーザコマンドは使用する事ができます。
 
04adv.png