今週のテクニカルTips: Table of Contents (TOC) フォルダービューの作成

ユーザーがAras InnovatorでTOC (Table of Contents)内のフォルダーをクリックしたときに表示されるビューを、作成することができます。これはシンプルなサマリーレポートやアイテム集積の計算結果を表示するのに便利です。

TOCフォルダービューを作成するには、TOCに表示されているフォルダーと同じ名前のフォームを作成します。ユーザーがTOCフォルダーをクリックすると、自動的にワークスペースウィンドウ枠にフォームが表示されます。
tech1

上記の例では、変更管理フォルダー内のECR数を、ライフサイクル状態別に表形式で表示しています。(変更管理フォルダーは、標準のプロデュースエンジアリングソリューションに含まれています。) 例を作成するには、データをフィールドに入力するJavaScriptメソッドと適切なコントロールを備えたフォームを新規作成する必要があります。

フォームの作成

新規フォームを作成し、Change Managementという名前をつけます。この例では、1つのタイトルラベル、1つのイメージと6つのテキスト入力フィールドがフォームに追加されています。

ラベルの追加

  1. 新しくラベルを追加するには、フォームツールバーからNew HTMLをクリックしてコントロールを追加します。
    tech2

 

  1. 新規コントロールをクリックし、名前とフィールドタイプを以下のように変更します。
    tech3

 

  1. フィールドラベルタブにアクセスし、要望に応じてタイトルとスタイルを変更します。
    tech4

 

イメージの追加

  1. 上記で述べたように新規HTMLコントロールを追加し、HTMLコードフィールドにアクセスします。するとHTMLタグでサーバー上のイメージファイルにアクセスできるようになります。
    tech5

 

テキスト入力フィールドの作成

  1. フォームツールバー内のNew Textをクリックし、6つのテキストフィールドを作成します。
    tech6

 

  1. JavaScript メソッドで取り込まれるデータを保持するコントロールに名前をつけます。この例では、New、Submitted、InReview、Cancelled、Totalという名前をつけました。要望に応じて各コントロールとスタイルにフィールドラベルをつけることもできます。
    tech7

 

  1. (オプション) フォーム編集のForm Bodyタブにアクセスして入力テキストフィールドのスタイルを定義したり、カスケーディング・スタイルシート属性を適用することもできます。
    tech8

 

メソッドの作成

フォームを入力可能にするため、JavaScriptメソッドアイテムを作成します。以下のJavaScriptコードで、上記で作成したフォームに入力することができるようになります。フォームテキストフィールド名はフォームで作成された要素名と同じである必要があり、大文字と小文字も区別されます。この例では、_Populate ECRFolderFormという名前を付けています。

var new_count=0, submit_count=0, review_count=0, cancel_count=0;
var release_count=0;
var current_item=null;
var current_state=“”;
//Get the ECR Collection
var items = top.aras.newIOMInnovator().newItem(“ECR”, “get”);
items.setAttribute(“select”, “state”);
var ecr_items = items.apply();
var total_count = ecr_items.GetItemCount();
//Loop through collection to obtain counts
for( i=0; i<total_count; i++)
{
current_item = ecr_items.getItemByIndex(i);
current_state = current_item.getProperty(“state”);
switch(current_state)
{
case “New”:
new_count++;
break;
case “Submitted”:
submit_count++;
break;
case “In Review”:
review_count++;
break;
case “Released”:
release_count++;
break;
case “Cancelled”:
cancel_count++;
break;
}
}
//Set Counts to Form elements
document.forms(0).New.value=new_count;
document.forms(0).Submitted.value=submit_count;
document.forms(0).InReview.value=review_count;
document.forms(0).Cancelled.value=cancel_count;
document.forms(0).Released.value=release_count;
document.forms(0).Total.value=total_count;

メソッドをフォームに追加

最後のステップでは、フォーム編集を使って、上記で作成したメソッドをフォームイベントに追加します。

  1. 変更管理フォームを編集のために開き、フォームイベントタブにアクセスします。

 

  1. 上記で作成した_Populate ECRFolderForm メソッドを選択し、フォームのonLoadイベントに関連付け、フォームへの変更を保存します。
    tech9

 

テスト

ECRアイテムを作成しサマリービューのテストを実行してみましょう。エラーが発生した場合、フォームテキスト入力フィールド名がJavaScriptメソッドで示されている名前と一致していることを確認してください。

次のステップ
Aras Innovator Object Model (IOM)や、メソッドを活用したデータアクセス方法についてもっと知りたい方は、Aras プログラマーズガイド をご覧ください。

テクニカルTipsに対するリクエストがございましたら、info@aras.jpまでご連絡ください。

Aras PLMの詳細・ダウンロードはこちらから
Aras_Logo_2013