XML のカスタマイズの演習
推定所要時間
Creo Elements/Direct Model Manager のクラスおよびバージョン文字列は、企業や組織の命名規則に合わせてカスタマイズできます。
この演習では、Model Manager の XML ファイルをカスタマイズする方法について学習します。
説明:
5 分
演習:
20 分
説明
Creo Elements/Direct Model Manager は、起動時に 2 つの XML ファイル (wmconf.xml ともう 1 つの XML ファイル) を読み込みます。もう 1 つの XML ファイルのデフォルトは custom.xml で、これにはサーバに関する情報が含まれています。custom.xml は編集可能です。また、新しい XML ファイルを作成することもできます。wmconf.xml は編集しないでください。Creo Elements/Direct Model Manager が wmconf.xml を上書きするため、変更した内容は失われます。
Creo Elements/Direct Model Manager は、最初に wmconf.xml を読み込んだ後、もう 1 つの XML ファイルを読み込みます。つまり、もう 1 つの XML ファイルをカスタマイズしておくと、wmconf.xml 内のデフォルト定義を上書きできます。
extends 文節
以前のバージョンの Creo Elements/Direct Model Manager では、クラスをカスタマイズする際に、そのクラス定義全体を XML ファイルにコピーしたうえで修正する必要がありました。一部のクラス定義は非常に長いことから、このプロセスは面倒なうえ、エラーの原因にもなっていました。また、カスタマイズされた定義によってデフォルトの定義全体が上書きされるため、カスタマイズを変更してクラス定義への追加を組み込む必要がありました。
CoCreate Model Manager 2005 で extends 文節が追加されたことにより、XML のカスタマイズが格段に容易になりました。wmconf.xml ファイルには、基本クラスの定義が含まれています。リーフ クラスは基本クラスを拡張したもので、データベースのクラス名に一致する名前を持っています。それぞれの基本クラスの定義は、クラスの名前を含む行を 1 つ持ちます。これにより、基本クラスの定義を XML ファイルにコピーして、修正対象の属性をカスタマイズするだけで、クラスを拡張できるようになっています。
この方法は、ユーザ独自のクラスでも使用できます。
属性の順序
Creo Elements/Direct Model Manager のユーザインターフェイスの一部では、属性がアルファベット順で一覧表示されます。以前のリリースでは、属性は XML ファイル内での設定順にリストされていました。extends 文節を使用すると 1 つのクラスの属性を 2 つの XML ファイルに分割できるため、変更が必要でした。
Index タグを使用すると、「DB プロパティ」ダイアログボックスの「属性」タブ、およびワークスペースの「検索」タブの「属性」パネルでの属性の表示順序を変更できます。Index タグでは、フロートを使用して、より詳細に順序を設定できます。このタグを持つ属性がリストの最初に表示され、その後、残りの属性がアルファベット順に並べられます。
バージョン文字列
Creo Elements/Direct Model Manager および Creo Elements/Direct Drawing Manager に表示されるバージョン文字列は、MAJOR_REV 擬似属性と MINOR_REV 擬似属性を連結し、ピリオドで区切って作成されます。MAJOR_REV および MINOR_REV の初期値と 2 番目の値をカスタマイズすることで、ユーザの企業や組織で使用しているバージョン命名規則を導入できます。
MAJOR_REV および MINOR_REV は、wmconf.xml ファイルで定義します。カスタム xml ファイルでクラスを拡張することにより、これらの値をカスタマイズできます。
以下の演習を活用し、XML を使用して Creo Elements/Direct Model Manager をカスタマイズする方法について学習してください。
演習
この演習では、extends 文節を使用して Creo Elements/Direct Model Manager クラスをカスタマイズする方法、およびメジャーバージョン文字列をカスタマイズする方法について学習します。
この演習は、基本的なカスタマイズと配布の演習が終了していることを前提としています。
データベースが Data Management スキーマと Desktop スキーマのどちらを使用しているかを知る必要があります。データベースのスキーマを確認するには、以下を実行します。
1. 「検索」タブをクリックします。「何を検索しますか?」ペインの「詳細」をクリックします。
2. 検索対象の下の下向き矢印をクリックして、一覧をスクロールします。
選択肢に MODEL_3D が含まれている場合、Data Management スキーマを使用しています。
選択肢に me_model が含まれている場合、Desktop スキーマを使用しています。
この演習の主な手順は以下のとおりです。
モデルの作成
演習で使用する簡単なモデルを作成します。
1. Creo Elements/Direct Modeling で、立方体などの簡単なパーツを 1 つ作成します。
2. パーツの名前を変更します (xxx_cube など)。
3. Creo Elements/Direct Model Manager を実行していない場合は、Creo Elements/Direct Modeling の「アプリケーション」 > 「モジュール」メニューで有効にします。
4. 構造一覧でパーツを選択し、右クリックして、「Model Manager」 > 「3D 保存」の順に選択します。保存ダイアログが開きます。
5. メジャー リビジョン オプションを表示します。出荷時の Creo Elements/Direct Model Manager では、オプションで「メジャーリビジョン」の初期値として 1、01、または A を選択できます。
6. 1 を選択し、保存をクリックします。
7. Creo Elements/Direct Model Manager で、モデル名のフォーマットをメモします。
8. Creo Elements/Direct Model Manager を終了します。
クラス名のフォーマットの変更
extends 文節を使用して、ワークスペースでのクラス名の表示方法を変更します。
1. NetBeans を開き、基本的なカスタマイズと配布の演習で作成したプロジェクトを開きます。
2. NetBeans エディタで acme.xml ファイルを開きます。
3. acme.xml ファイルの </WMServerInfo></WMConfig> タグの間に、以下のコードを追加します。
Data Management スキーマ:
<ClassDefs>
<Class extends="DMModel, DMReleaseProcess">
<Name catalog="awm_stda" msg_num="258">MODEL_3D</Name>
<NameFormat>%DB_UNIQUE_ID_STRING%</NameFormat>
</Class>
</ClassDefs>
Desktop スキーマ:
<ClassDefs>
<Class extends="DTModel, DTReleaseProcess">
<Name catalog="awm_stda" msg_num="10">me_model</Name>
<NameFormat>%DB_UNIQUE_ID_STRING%</NameFormat>
</Class>
</ClassDefs>
このコードは、データベースから取得した、Creo Elements/Direct Model Manager のクラスの一意的な識別子の属性を表示します。
英語および英語以外のデータベースで使用できるよう、メッセージ カタログ情報が Name タグに追加されます。英語のデータベースのみを使用する場合は、これらの属性を省略できます。各タグの catalog 情報および msg_num 情報は、wmconf.xml ファイルにあります。
% 記号で囲むことにより、任意のデータベース属性を使用できます。DB_ を属性名の前に追加すると属性がローカライズされます。ただし、これはカスタム属性では機能しない場合があります。
変更を acme.xml に保存します。
4. プロジェクトをビルドします (「主プロジェクトを構築」をクリックします)。
5. Creo Elements/Direct Modeling から Creo Elements/Direct Model Manager を起動します。「構成の選択」が要求されたら、acme を選択します。
6. Creo Elements/Direct Model Manager の「構造」列で、クラス名文字列のフォーマットをオリジナルのフォーマットと比較します。
フォーマットが変更されていない場合は、コードの入力に誤りがあるか (大文字/小文字の違いなど)、データベースが別のスキーマを使用しています。
7. Creo Elements/Direct Model Manager を終了します。
メジャー リビジョンおよびマイナー リビジョンのカスタマイズ
1. acme.xml ファイル内の名前フォーマットのカスタマイズコードを、以下のコードに置き換えます。
Data Management スキーマ:
<ClassDefs>
<Class extends="DMModel, DMReleaseProcess">
<Name catalog="awm_stda" msg_num="258">MODEL_3D</Name>
<Attribute>
MAJOR_REV
<DisplayName>Major Rev</DisplayName>
<AttributeEditorClass>com.osm.datamgmt.editor.MajorRevAttributeEditor</AttributeEditorClass>
<Visible>true</Visible>
<IncludeInLayoutManager>true</IncludeInLayoutManager>
<Searchable>false</Searchable>
<InitialRev>A</InitialRev>
<SecondRev>B</SecondRev>
</Attribute>
<Attribute>
MINOR_REV
<DisplayName>Minor Rev</DisplayName>
<AttributeEditorClass>com.osm.datamgmt.editor.MinorRevAttributeEditor</AttributeEditorClass>
<Visible>true</Visible>
<IncludeInLayoutManager>true</IncludeInLayoutManager>
<Searchable>false</Searchable>
<InitialRev>0</InitialRev>
<SecondRev>1</SecondRev>
<NumericOnly>true</NumericOnly>
</Attribute>
</Class>
</ClassDefs>
Desktop スキーマ:
<ClassDefs>
<Class extends="DTModel, DTReleaseProcess">
<Name catalog="awm_stda" msg_num="10">me_model</Name>
<Attribute>
MAJOR_REV
<DisplayName>Major Rev</DisplayName>
<AttributeEditorClass>com.osm.datamgmt.editor.MajorRevAttributeEditor</AttributeEditorClass>
<Visible>true</Visible>
<IncludeInLayoutManager>true</IncludeInLayoutManager>
<Searchable>false</Searchable>
<InitialRev>A</InitialRev>
<SecondRev>B</SecondRev>
</Attribute>
<Attribute>
MINOR_REV
<DisplayName>Minor Rev</DisplayName>
<AttributeEditorClass>com.osm.datamgmt.editor.MinorRevAttributeEditor</AttributeEditorClass>
<Visible>true</Visible>
<IncludeInLayoutManager>true</IncludeInLayoutManager>
<Searchable>false</Searchable>
<InitialRev>0</InitialRev>
<SecondRev>1</SecondRev>
<NumericOnly>true</NumericOnly>
</Attribute>
</Class>
</ClassDefs>
このコードを使用すると、メジャー リビジョンは「A」から始まり、以降は大文字のアルファベットが順番に使用されます。マイナー リビジョンは「0」から始まり、以降は整数のみが順番に使用されます。
変更を acme.xml に保存します。
2. 変更をテストするには、このバージョンを配布する必要があるため、sds.host (dev.properties 内) にご使用のマシンの完全修飾ホスト名が設定されていることを確認します。プロジェクトの構築とパッケージ化スクリプトを実行します。
Creo Elements/Direct Model Manager の再起動
Creo Elements/Direct Model Manager を再起動します。新しい設定が読み込まれます。
1. Creo Elements/Direct Modeling の「アプリケーション」 > 「モジュール」ダイアログで、「Model Manager」の選択を解除します。
2. Creo Elements/Direct Model Manager タスクバーのアイコンがモノクロになるまで待ちます。アイコンをモノクロにするには、モジュール ダイアログを閉じることが必要な場合があります。
3. Creo Elements/Direct Modeling の「アプリケーション」 > 「モジュール」ダイアログで、「Model Manager」を選択します。アップグレードを実行するかどうか尋ねられます。「構成の選択」が要求されたら、acme を選択します。
構成の選択または Creo Elements/Direct Model Manager のアップグレードが要求されない場合は、Creo Elements/Direct Modeling を再起動してから Model Manager を有効にしてください。
マルチバイトエラーが発生する場合は、このチュートリアルからコードの一部を NetBeans にカットアンドペーストした際に、画面に表示されない余分な文字が xml ファイルに入ってしまった可能性があります。XML コードを手動で入力してみてください。
カスタマイズしたバージョン文字列オプションの検証
簡単なモデルを作成して保存した後、カスタマイズしたバージョン文字列を確認します。
1. Creo Elements/Direct Modeling で、円柱などの簡単なモデルを作成します。
2. Creo Elements/Direct Model Manager のタスクバーの「保存」アイコンをクリックし、円柱を選択します。保存ダイアログが開きます。
3. メジャー リビジョン オプションを表示します。メジャーリビジョンには「A」のみを、マイナーリビジョンには「0」のみを選択できることを確認します。
4. 「保存」をクリックします。
5. Creo Elements/Direct Modeling でモデルを編集し、再度保存して、<SecondRev> カスタマイズの効果を確認します。
6. 保存タイプすべての項目のメジャーリビジョンに変更します。メジャーリビジョンに使用できる値が「B」のみであることを確認します。
7. 「保存タイプの設定」「編集された項目のマイナーリビジョン」に変更します。メジャーリビジョンは「A」、マイナーリビジョンは「1」に増えていることを確認します。
8. 「保存」をクリックします。
9. Creo Elements/Direct Model Manager の「最近使ったリスト」で、先ほど保存したモデルを選択します。
10. 「ホーム」をクリックして、「編集」グループの「テーブル編集」をクリックします。
11. メジャー リビジョンとマイナー リビジョンをレイアウトに追加します。値を変更できないことを確認します。
12. テーブル エディタを閉じます。
Index タグの追加
次に、Index タグを使用して Creo Elements/Direct Model Manager ユーザインターフェイスのパーツに表示される属性の順序を変更する方法を確認します。
1. ワークスペースで円柱を選択します。右クリックして「DB プロパティ」 > 「属性」の順に選択します。以下のように、属性はアルファベット順に表示されます。
2. acme.xml ファイルのメジャーリビジョン (Major Rev) およびマイナーリビジョン (Minor Rev) に、以下のように Index タグを追加します。
Data Management スキーマ:
<ClassDefs>
<Class extends="DMModel, DMReleaseProcess">
<Name catalog="awm_stda" msg_num="258">MODEL_3D</Name>
<Attribute>
MAJOR_REV
<DisplayName>Major Rev</DisplayName>
<Index>1</Index>
<AttributeEditorClass>com.osm.datamgmt.editor.MajorRevAttributeEditor</AttributeEditorClass>
<Visible>true</Visible>
<IncludeInLayoutManager>true</IncludeInLayoutManager>
<Searchable>false</Searchable>
<InitialRev>A</InitialRev>
<SecondRev>B</SecondRev>
</Attribute>
<Attribute>
MINOR_REV
<DisplayName>Minor Rev</DisplayName>
<Index>1.1</Index>
<AttributeEditorClass>com.osm.datamgmt.editor.MinorRevAttributeEditor
</AttributeEditorClass>
<Visible>true</Visible>
<IncludeInLayoutManager>true</IncludeInLayoutManager>
<Searchable>false</Searchable>
<InitialRev>0</InitialRev>
<SecondRev>1</SecondRev>
<NumericOnly>true</NumericOnly>
</Attribute>
</Class>
</ClassDefs>
Desktop スキーマ:
<ClassDefs>
<Class extends="DTModel, DTReleaseProcess">
<Name catalog="awm_stda" msg_num="10">me_model</Name>
<Attribute>
MAJOR_REV
<DisplayName>Major Rev</DisplayName>
<Index>1</Index>
<AttributeEditorClass>com.osm.datamgmt.editor.MajorRevAttributeEditor</AttributeEditorClass>
<Visible>true</Visible>
<IncludeInLayoutManager>true</IncludeInLayoutManager>
<Searchable>false</Searchable>
<InitialRev>A</InitialRev>
<SecondRev>B</SecondRev>
</Attribute>
<Attribute>
MINOR_REV
<DisplayName>Minor Rev</DisplayName>
<Index>1.1</Index>
<AttributeEditorClass>com.osm.datamgmt.editor.MinorRevAttributeEditor</AttributeEditorClass>
<Visible>true</Visible>
<IncludeInLayoutManager>true</IncludeInLayoutManager>
<Searchable>false</Searchable>
<InitialRev>0</InitialRev>
<SecondRev>1</SecondRev>
<NumericOnly>true</NumericOnly>
</Attribute>
</Class>
</ClassDefs>
3. 編集した acme.xml ファイルを保存して、プロジェクトをビルドします。
4. Creo Elements/Direct Model Manager を再起動します。
5. モデルで「DB プロパティ」 > 「属性」を表示します。今度は、メジャーリビジョンとマイナーリビジョンがリストの先頭に表示されます。
6. ワークスペースで別のタブやダイアログを表示して、Index タグの影響を受けているものと受けていないものを確認します。
カスタマイズした XML ファイルの配布
NetBeans 環境のビルドツールを使用して、カスタム xml ファイルを配布します。
1. カスタム xml ファイル (acme.xml など) が作業ディレクトリ (C:\users\custom など) の最上位にあることを確認します。
2. dev.properties を次のように編集します。
mm.force.updatetrue に設定
sds.host を、ご使用のマシンの完全修飾名 (mypc.acme.com など) に設定
3. プロジェクトの構築とパッケージ化スクリプトを実行します。ローカルマシンでビルドとパッケージのインストールが行われます。
4. Windows の「スタート」メニューから、Creo Elements/Direct Model Manager を起動します。Creo Elements/Direct Model Manager により更新のチェックが行われます。更新版をダウンロードします。設定の選択を求めるメッセージが表示された場合は、カスタマイズした設定を選択します (例: acme)。
これは役に立ちましたか?