スクリプトの作成と実行:例

以下の例では、スクリプトの作成方法、インストール内の保存場所、実行方法を示します。この例は、次の 3 つのスクリプトで構成されます。

  1. スクリプト関連の UI を Package & Display Designer に追加する(このスクリプトボタンを収容する特別なタブが作成されます)
  2. 図面を PDF、DXF、CF2 形式のファイルにエクスポートする
  3. 通知 E メールを送信する

注記:

スクリプト

重要:Package & Display Designer でスクリプトを実行するには、インストール内のホスティングフォルダを参照する必要があります(図)。そのため、スクリプトとスクリプトボタンの画像がある場所を、スクリプト内に記述することが重要です。スクリプトの場所を参照する方法については、以下の例で説明します。

  1. 実行が必要なタスクに従って、スクリプトを記述します。Package & Display Designer の スクリプト作成に必要な API オブジェクトを参照してください。

スクリプト 1(Startup.js): スクリプトの UI 要素の追加


//Init() がある場合、これは CAD システムの起動時に実行される関数です。これで必要な UI 要素(ボタンやツールバー)をセットアップします。

function Init()

{

// UI に[スクリプト]タブを追加し、さらに ITabItem のインスタンスを返します。

var d = AutoAppUI.TabControlBar.AddCustomTab("Scripts");

// 追加した ITabItem にボタンを追加し、さらに IAutoCustomButton のインスタンスを返します。

// "JScript" は実行するスクリプトの言語です。

// "SampleScript" はスクリプトのネームスペースです。このパラメータは、..\Scripts\JScript\ の下のフォルダ名と、かならず一致していなければなりません。

// この例では、スクリプトは .\Scripts\JScript\SampleScript\startup.js にあり、

// この「ネームスペース」に基づいています。スクリプトエンジンは、実装スクリプト matchexport.js と sendreport.js を探します。

// "BatchExport" は実行する関数名です。

// "./Big/Export.png" は、ボタン画像のファイル名です。

// "Batch export" はボタンのツールチップです。

// "Execute batch-export to multiple formats"(batch-export を複数のフォーマットで実行)は、マウスをボタンに合わせた時に、ボタンの左下端に表示される文章です。

var c = d.AddMacrosButton("JScript", "SampleScript", "BatchExport", "./Big/Export.png", "Batch export", "Execute batch-export to multiple formats");

var c = d.AddMacrosButton("JScript", "SampleScript", "SendPrintReport", "./Big/Report.png", "Send form to mail", "Generate a print-report and send it to an e-mail");

}

使用するアイコン画像に関する注記:スクリプトのコードは、ボタンのアイコン画像への参照を含みます(上記スクリプトコードの var c を参照)。このアイコンは、使用するアイコンのテーマに合わせてデザインされています。Package Designer には、Big(大)と Small(小)という 2 種類のアイコンのテーマがあります。アイコンのテーマを変更する場合は、それぞれのボタンアイコンへのパスをかならず変更してください。

スクリプト 2(batchexport.js):図面を PDF、DXF、CF2 形式に一括エクスポート


function BatchExport() {

// 以下のスクリプトでは、現在の図面を指定されたパスに指定されたファイル形式でエクスポートします。

AutoDrawing.ExportToFormat("c:\\EngViewWork7\\Test.pdf", "pdf");

AutoDrawing.ExportToFormat("c:\\EngViewWork7\\Test.dxf", "dxf");

AutoDrawing.ExportToFormat("c:\\EngViewWork7\\Test.cff", "cf2");

}

スクリプト 3:印刷図面を作成して E メール通知を送信


function SendPrintReport()

// IPrintDrawingBuilder インターフェイスのインスタンスを作成

// システム内での印刷図面(デザインフレーム)の操作に使用

var builder = AutoProject.MakePrintDrawingBuilder();

// 印刷図面の作成に使用するテンプレートをロード。テンプレートが保存されている Settings フォルダで名前を検索します。

builder.LoadTemplate("A3 Landscape OneUp.evf");

// ロードされたテンプレートで OneUp1 プレースホルダーを検索し、プロパティをセットアップ

var placeholder1=builder.ItemByName("OneUp1");

// プレースホルダー OneUp1 で測定ラインをオンに

placeholder1.ShowML=true;

// 設定されたテンプレートから印刷図面を構築

builder.Apply();

// 生成された印刷図面を PDF でエクスポート

builder.PrintDrw.ExportToFormat("c:/EngViewWork7/DesignFrame.pdf", "pdf");

// このようにして別のアプリケーションにある COM インターフェイスのインスタンスを取得

// この例では最後に E メールを送信するので Outlook を使用注:これは一般的な方法です。

var outlookApp = new ActiveXObject("Outlook.Application");

var theMailItem = outlookApp.CreateItem(0);

theMailItem.to = "baba@gmail.com";

theMailItem.Subject = "SUBJECT HERE";

theMailItem.Body = "BODY";

theMailItem.Attachments.add("c:/EngViewWork7/Test.cff");//the path to the file to attach.

theMailItem.display();

}

  1. 参照するディレクトリにスクリプトを保存します(サンプルファイルでは、SampleScript となっています)。

Package & Display Designer でのサンプルスクリプト実行


  1. Package & Display Designer を閉じていることを確認してください。
  2. インストールのファイル構造で、スクリプトがある場所へ移動し、次のようにファイルの拡張子を EXAMPLE から JS に変更します。

  1. プログラムを起動します。
  2. スクリプトを使用するには、[ヘルプ]メニューで[登録]をクリックします。

登録]ダイアログボックスが表示されます。

  1. API モジュールを選択します(図)。

重要:使用しているライセンス(ネットワークまたはローカル保護)でこれらのモジュールを使用できない場合は、support@engview.com までご連絡ください。

  1. OK]をクリックします。

スクリプトを使用するためにプログラムの再起動が必要であるというメッセージが表示されます。

  1. OK]をクリックしてメッセージを閉じ、プログラムを再起動させます。

プログラムを再起動すると、スクリプトファイルがロードされます。スクリプトのアイコンが、別のスクリプトツールバーに表示されます。

  1. ボタンをクリックしてスクリプトを実行します。