自動翻訳によりレイアウトの一部が崩れます

生産スケジューラと生産計画のフレクシェ > サポート > 開発者向け情報 > FLEXSCHEスクリプト雛形生成ツールの利用

FLEXSCHEスクリプト雛形生成ツールの利用

FLEXSCHEのWSCスクリプトを作成するために、タイプライブラリや参照設定など、さまざまな情報をWSCファイルに書き込まなくてはなりません。また正しいXMLファイルになっていないと実行することはできないので、ゼロからスクリプトを作成するのはかなり難易度の高い作業です。

そこでFLEXSCHEにはFLEXSCHEスクリプト雛形生成ツール(以下、WSCGen)が標準で付属しています。これを利用すれば、

を作成するための雛形(テンプレート)を素早く確実に作成することができます。スクリプト開発者はスクリプト本体の実装だけに集中することができます。

WSCGenの画面

[スタート]-[FLEXSCHE]-[ツール]-[スクリプト雛形生成ツール]からWSCGenを起動します。

「モジュール名」に任意の名前(英数字が望ましい)を与えます。これがファイル名になり、スクリプトを識別するものになるので、完全にユニークな文字列にしてください。

「エラーメッセージ」をチェックすると、実行時にスクリプト中にエラーを見つけたときにエラーメッセージを表示するようになります。「デバッグ」をチェックすると、エラー発生時などにスクリプトデバッガを起動できるようになります。

これらの設定は、生成されるWSCファイルの<?component?>インストラクションのerror属性、debug属性を書き換えることで、後から変更することもできます。

「フォルダを開く」ボタンを押すと、スクリプトファイルの保存先フォルダをエクスプローラで開きます。これは、FLEXSCHE GUIの[環境設定]-[全般]-[AppDataフォルダ]と同じ場所です。

すでにアドイン等が追加されている状態で「編集」ボタンを押すと、選択されている項目の内容を変更するためのダイアログが表示されます。

「設定」ボタンを押すと、次のダイアログが表示されます。

「生成後に編集する」をチェックしておくと、WSCGenからスクリプト雛形を生成して終了する際に、自動的にスクリプトをテキストエディタで開きます。テキストエディタの実行ファイルパスを指定しておくとそれを利用して開き、指定が無い場合はメモ帳notepad)で開きます。

エラーメッセージに表示される行番号の情報を活用するために、行番号を表示できるエディタのご利用をお奨めします。

「スクリプト言語」として"VBScript"か"JScript"を選択することができます。

このダイアログの設定内容は設定ファイル(AppDataフォルダのwscgen.xml)に保存されます。

生成される雛形の構造

WSCGenから生成されるファイルは次のような構造になっています。

スクリプト開発者が編集するのは「ここから」と「ここまで」の間がほとんどです。特にSelfRegistration以外の実装本体部分が編集対象となりますが、アドインの登録内容を変更したり追加したりする場合はSelfRegistrationの中を編集することもあります。

また、<?component?>の属性を変更する場合や、エントリー関数などを手動で追加する場合は「ここまで」より下を編集する場合もありますが、適切に記述しないとスクリプト全体が機能しなくなることがあるので、十分な知識を必要とします。

雛形のさらに詳しい内容については「WSCの表記内容」をご覧ください。

アドイン等の追加

アドインの追加

「アドイン追加」ボタンを押すと、次のダイアログが表示されます。

アドイン名はスクリプト内でユニークな名前です。実際のアドインのアドイン名は、モジュール名とこれを結合したものになります。

アドインを実行したいタイミング(トリガー)をアドインキーで指定してください。詳しくは『アドインキー』をご覧ください。

サブキーの指定を必要とするアドインを選択すると、「サブキー」を入力することができます。アドインキーによってはコンボボックスから選択する場合と、直接文字入力する場合とがあります。

メニューアドインやコンテクストメニューを使うイベントアドインでは「メニュー文字列」を指定します。「UIエントリー」をチェックすると、メニュー項目の状態(無効、非表示、チェック表示など)を制御するためのエントリー関数も併せて生成されます。

「順序」を指定すると、同一アドインキーを持つアドイン内での実行順序やメニュー内での表示の順番を制御することができます。

外部メソッドの追加

「外部メソッド追加」ボタンを押すと、次のダイアログが表示されます。

任意のエントリー名を与えます。これはスクリプト内でユニークな名前でなくてはなりません。ここで設定したエントリー名とスクリプトのクラス名(生成された外部メソッドエントリーにコメントとして書き出されています)をスケジューリングルールの「外部メソッド呼び出しメソッド」に設定してください。

外部ファンクションの追加

「外部ファンクション追加」ボタンを押すと、次のダイアログが表示されます。

任意のエントリー名を与えます。これはスクリプト内でユニークな名前でなくてはなりません。ここで設定したエントリー名とスクリプトのProgID(生成された外部メソッドエントリーにコメントとして書き出されています)をtakt計算式中の外部ファンクション呼び出しファンクションの引数に指定してください。例えばモジュール名が"MyModule"、エントリー名が"MyFunction"、引数が2つの文字列であれば、整数型を返す外部ファンクションを呼び出すためのtakt計算式は次のようになります。

Long.External( "MyModule.Manager", "MyFunction", "str1",
"str2" )

このようなExternal関数呼び出しを式ライブラリとして定義しておくと、より使いやすくなります。

フォームの追加

「フォーム追加」ボタンを押すと、次のダイアログが表示されます。

任意のフォーム名を与えます。これはスクリプト内でユニークな名前でなくてはなりません。生成されるすべてのハンドラにはこの文字列が含まれることになります。

WSCの登録と登録解除

WSCGenでスクリプトファイルを生成した時点で、そのスクリプトのCOM情報はシステム(レジストリ)に登録されます。これを手動で登録するためには、エクスプローラ上でそのファイルのコンテクストメニューから「登録」を実行します。

登録されたスクリプトファイルが不要になったときには、ファイルを削除する前に登録解除する必要があります。さもないと、レジストリ上にゴミが残ってしまうため、これが大量に蓄積するとシステムに無駄なオーバーヘッドが生じることにもなりかねません。登録解除するためには登録と同様にエクスプローラーのコンテクストメニューから「登録解除」を実行します。

ただしWindows Vistaにおいては、ユーザー権限の制約によりそれらのメニュー項目が表示されません。

そのような場合は、WSCGenのショートカットアイコンか起動済みのWSCGenのメイン画面にWSCファイル(複数可)をドラッグ&ドロップしてください。次のようなダイアログが表示されます。

ボタンを押すことで登録や登録解除ができます。「スクリプトを登録解除してファイルを削除する」を押すと、登録解除をしてから、ファイル自体を削除します。このダイアログへWSCファイルをドロップして対象ファイルを追加することもできます。