起動時にPython起動

起動時にPython起動

何回かにわたり記事を書いてきましたが、今回で一区切りです。
今回は起動時にPythonを起動する方法をご紹介します。

Python連携
Pythonスクリプトの入出力
閾値を超えた場合にメール送信
基準値の変更時にスクリプトを実行

SpotfireのPythonは「ボタンを押す」「プロパティ変更時」などのタイミングで起動しますが、ファイルを開いたときに起動するオプションはありません。

しかし、いくつかの機能を組み合わせることで実現可能です。

前回プロパティからPythonを起動させました。なので、起動時にプロパティを変更する事ができれば良いですね。

起動時に実行可能なスクリプトとしてはTERRがあります。
TERRからプロパティを変更する事ができるので、連携でPythonを実行します。

<全体のイメージ図>
9

TERRによるプロパティの更新

まずはプロパティを設定します。
curTimeというDatatime型のプロパティを作成し、メール送信スクリプトを設定しました。

2

このプロパティが変更される度にPythonスクリプトが実行されます。
TERRスクリプトは起動時に実行されるので、データロード時にチェック操作を行うことが可能です。

データ関数の登録

TERRスクリプトはデータ関数として登録します。
「ツール」→「データ関数の登録」で

名前はGetCurTimeとし

スクリプトは

print ( sysdate ) 
OutCurTime <- Sys.time()

sysdateを受け取って、OutCurTimeを返すスクリプトです。

3

パラメータの入力でDatatime型のsysdateを設定
4

出力パラメータでOutCurTimeを設定します。
5

右上のアイコンから実行します。
6

実行パラメータ

TERRの引数と戻り値を設定します。
入力のsysdateは引数として「式」でDateTimeNow()を指定します。

これでシステム日付けを渡しています。
7

出力は
OutCurTimeを文章のプロパティでcurTimeとして受け取るよう設定します。
「関数を自動的に更新」チェックボックスもONにしておいてくださいね。
8

これでDXPファイルを開く時にスクリプトが実行されます。