ユーザー定義情報の値のインポート
ユーザー定義情報 (UDA) の値をテキスト ファイルからモデルにインポートできます。 たとえば、製作済みまたは確認済みの製品のリストをインポートできます。 また、属性インポートを通じて、既存のユーザー定義情報の値をクリアすることもできます。
Tekla Structures モデル オブジェクト、図面、および一部の参照モデル オブジェクト (構成されている場合。「参照モデルでの UDA の追加」を参照) に属性値をインポートできます。 入力ファイルで属性インポートに一致基準を定義できるほか、インポートの範囲をモデル内で選択したオブジェクトまたは参照モデル オブジェクトに制限することもできます。
入力ファイルとして、次のファイルを使用できます。
-
他のソフトウェアからエクスポートしたファイル。
-
メモ帳などの標準のテキスト エディターを使用して手動で作成したファイル。
-
Microsoft Excel の [名前を付けて保存] コマンドで [テキスト (タブ区切り) (*.txt)] 形式を指定してファイルを保存することで作成したファイル。
-
部材 GUID とユーザー定義情報を含む簡単な Tekla Structures レポート。
他にもユーザー定義情報にデータをインポートする方法があります。 たとえば、IFC オブジェクトをインポートし、ネイティブの Tekla Structures オブジェクトに変換する際に、ユーザー定義情報が入力される場合があります。 また、Tekla Warehouse には、ユーザー定義情報のデータを変更できる複数の拡張機能があります。
入力ファイル構造
区切り文字
区切り文字は、同じ行の異なるフィールドを区切る文字です。インポートする属性の名前や値には表示されない ASCII 文字を使用してフィールドを区切ることができます。同じ入力ファイルに複数の代替区切り文字を使用することができます。共通の区切り文字には、コンマ、タブ、セミコロン、およびスペースなどがあります。
フィールドおよび値の定義
入力ファイルは、1 行目が見出しです。見出しは、入力ファイルの残りのフィールドを定義します。入力ファイルの他のすべての行には、1 行目で指定したフィールドの値が含まれます。
1 行目には、モデル オブジェクトや図面を特定する 1 つ以上のキー フィールド、および新しい値のインポート先となるユーザー定義情報のフィールドを特定する 1 つ以上のユーザー定義情報名が含まれている必要があります。フィールドの多くでは、その名前が、ユーザー インターフェイスに表示されるフィールドのラベルとは異なることに注意してください。ユーザー定義情報名は、モデルに適用される objects.inp ファイル で定義されます (ファイルの読み取り方法に関する項を参照してください)。
設定ファイル import_macro_data_types.dat (後述) は、属性インポートで使用できるフィールド、および各属性のデータ タイプを定義しています。キー フィールドは追加または変更できませんが、ユーザー定義情報のセットは編集できます。値は、import_macro_data_types.dat ファイルの属性に異なるデータ タイプが定義されている場合を除き、文字列 (テキスト) としてインポートされます。
使用可能なキー フィールド
モデル オブジェクトのキー フィールドを以下に示します。
キーフィールド |
例 |
実行 |
---|---|---|
|
|
入力ファイルのこの行のユーザー定義情報は、 |
or
|
|
入力ファイルのこの行のユーザー定義情報は、 含める製品ごとにこの行を繰り返します。 |
|
|
入力ファイルのこの行のユーザー定義情報は、 このオプションと共に、 |
図面オブジェクトのキー フィールドを以下に示します。
キーフィールド |
例 |
実行 |
---|---|---|
|
|
入力ファイルのこの行のユーザー定義情報は、 入力ファイルで両方のキーフィールドを使用します。 |
|
|
入力ファイルのこの行のユーザー定義情報は、 |
空の値
入力ファイルには、属性フィールドのすべてに値が入っていない行がある場合があります (値と値の間に連続した 2 つ以上の区切り文字がある場合があります)。こうした空の値は、インポートの際にユーザー定義情報を一切変更することなくスキップするか、モデルの既存のユーザー定義情報の値を消去するために使用できます。デフォルトでは、空の値はスキップされます。一方、既存の値をクリアするには、ini ファイルで詳細設定 XS_ERASE_UDA_VALUE_WITH_ATTRIBUTE_IMPORT_NULL_AND_BLANK
を TRUE
に設定します。
読み込み順序
Tekla Structures では、1 行目から順番に入力ファイルが読み込まれます。続く行でキー フィールドに重複がある場合、最初に読み込まれたものだけがインポートされます。
データ ファイル (import_macro_data_types.dat)
ユーザー定義情報に値をインポートするには、フィールド名とデータ タイプが import_macro_data_types.dat データ ファイルで正しく定義されている必要があります。データがインポートされたユーザー定義情報フィールドを追加、編集、および削除することができます。ファイルのキー フィールド セクションを編集しないでください。新しいキー フィールドは追加できません。
ファイルの場所
デフォルトのデータ ファイルは、環境フォルダーの system フォルダー (例: C:\ProgramData\Trimble\Tekla Structures\<version>\environments\common\system) にあります。ご使用の環境に、ローカライズされたバージョンのファイルがある場合もあります。
デフォルト ファイルを変更しないでください。代わりに、ファイルのコピーを作成して、企業フォルダ や、モデル フォルダーにある attributes フォルダーなど、異なる場所に保存します。こうすることで、Tekla Structures を再インストールしたりアップグレードしたりしても、変更が上書きされません。ファイルが複数の場所にある場合は、デフォルトのフォルダー検索順序 に従って、読み取られた最初のファイルのみが使用されます。
ファイルの内容
import_macro_data_types.dat ファイルはプレーン テキストです。ファイルは、メモ帳などの標準のテキスト エディターを使用して変更できます。
ファイルの各行はフィールドの定義であり、以下の属性を次の順序で記載します。
User-defined attribute name,Data type,Conversion factor,Comments
-
User-defined attribute name
.objects.inp ファイルのフィールドに対して定義されたものと同じ内部フィールド名を書き込みます。たとえば、objects.inp 定義
attribute("USER_FIELD_1", "j_user_field_1", string, "%s", no, none, "0.0", "0.0")
では、ユーザー定義情報名は USER_FIELD_1 です。 Data type
.値として使用できるものは次のとおりです。
INT
(整数)、STRING
(テキスト)、FLOAT
(小数)、またはDATE
(カレンダー ウィジェットの日付フィールド)値が見つからないか、正しくない場合、値はデフォルトのSTRING
になります。値のタイプが一致していなくてもデータはインポートされますが、データやフィールドによっては、結果が正しいとは限らない場合があります。たとえば、データ タイプが
DATE
ではない場合、日付フィールドが正しく設定されないことがあります。他方、整数データ タイプの数字はテキスト フィールドに問題なくインポートできます。オプション リストのフィールドは、
INT
値タイプの数値フィールドとして定義されています。たとえば、オブジェクト ロックは [いいえ]、[はい]、[組織] (入力ファイルの数値 0、1、2 に対応) に設定できます。-
Conversion factor
(オプション、FLOAT
のみ)。フィート・インチ環境において、フィート・インチ値をメートル値に変換する際に使用されます。注:変換係数の誤差が生じないように、
FLOAT
値を確認することをお勧めします。 Comment
(オプション)。上記の定義に従う文字は無視され、コメントを書くために使用できます。ただし、以下で説明するように、ほとんどのコメントは別の行に書いた方がファイルが読みやすくなるため、このコメントは控え目に使用してください。
ダブル スラッシュ (//
) で始まる行はコメントとして扱われ、ファイルの読み取り時に無視されます。
例:
//Regular attributes
R1_ISSUED_FOR_APPRL, STRING
R1_DATE_APPROVED, DATE
//Attribute with conversion factor and comment
shear1, FLOAT, 4448.2222, For kips
入力ファイルの例
部材の入力ファイルの例
この入力ファイルは、タブ区切りです。
ASSEMBLY_POS
と PHASE
がキー フィールドです。ASSEMBLY_POS
列と PHASE
列に示されている値と一致する値を持つ製品に、ユーザー定義情報がいくつか追加されます。
たとえば、ASSEMBLY_POS
(製品マーク) が フェーズ 1 の B5 である製品には、以下のユーザー定義情報が設定されます。
STATUS
:3
USER_PHASE
:6
USER_ISSUE
:3/25/2019
ASSEMBLY_POS PHASE STATUS USER_PHASE USER_ISSUE
B1 1 7 3 3/25/2019
B2 1 7 3 3/25/2019
B3 1 7 3 3/25/2019
B4 1 7 3 3/25/2019
B5 1 3 6 3/25/2019
B1 1 3 5 3/26/2019
B2 2 3 4 3/26/2019
この入力ファイルには、B1 のエントリが 2 つあります。この場合、ログ ファイルに「>入力ファイルに重複したデータがある。」というメッセージが書き込まれ、最初のエントリのみがファイルにインポートされます。したがってこの例では、B1 は属性インポート後、以下のユーザー定義情報を持つようになります。
STATUS
:7
USER_PHASE
:3
USER_ISSUE
:3/25/2019
図面の入力ファイルの例
この入力ファイルは、タブ区切りです。
TYPE
と NAME
がキー フィールドです。TYPE
列と NAME
列に示されている値と一致する値を持つ図面に、ユーザー定義情報 User field 4
の値が追加されます。
たとえば、TYPE A
(製品図)のNAME
がB.2の図面には、User field 4
の値4が割り当てられます。
TYPE NAME DRAWING_USERFIELD_4
A B.1 3
A B.2 4
A C.1 1
A C.2 2
入力ファイルの処理
デフォルトでは、空の値はスキップされます。一方、既存の値をクリアするには、ini ファイルで詳細設定 XS_ERASE_UDA_VALUE_WITH_ATTRIBUTE_IMPORT_NULL_AND_BLANK
を TRUE
に設定します。