【JPIERE-0438】テーブルとカラムインポート

テーブルとカラムのインポートプロセスです。

テーブルとカラムインポートテーブル

- テーブル

テーブルのフィールドグループでは、テーブルの設定がまとめられています。

更新時に既に入力されているフィールドの値を空欄にしたい場合は、"Blank"(※大文字/小文字のどちらでも可)と入力しておくと空欄にする事ができます。

テーブルのフィールドグループ
テーブルのフィールドグループ

◆DBテーブル名称(TableName)

この値から、テーブル(AD_Table_ID)を逆引きします。逆引きできない場合は、テーブルを新規作成します。

◆テーブル(AD_Table_ID)

DBテーブル名称(TableName)から逆引きされます。

◆テーブル(UU)(AD_Table_UU)

テーブルのUUIDを設定する事ができます。これはテーブルとカラムをインポートした後でも、2Packを使用する事ができるようにするためです。このフィールドがブランクであれば、UUIDは自動採番されます。このフィールドに値が入力されている場合は、UUIDはその値になります。

◆テーブル(名称)(JP_Table_Name)

AD_TableテーブルのNameカラムに代入される値を設定します。テーブルの新規作成時に入力が無い場合は、DBテーブル名称(TableName)の値が代入されます。

◆テーブルの説明(JP_Table_Description)

AD_TableテーブルのDescriptionカラムに代入される値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆テーブルのコメント(JP_Table_Help)

AD_TableテーブルのHelpカラムに代入される値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆データアクセスレベル(AccessLevel)

AD_TableテーブルのAccessLevelカラムに代入される値を設定します。リストの検索キーの値を設定して下さい。テーブルの新規作成時に入力が無い場合は、"全部(7)"が自動設定されます。

◆ビュー(IsView)

AD_TableテーブルのIsViewカラムに代入される値を設定します。"Y"か"N"、もしくは空欄のいずれかの値を設定します。テーブルの新規作成時に入力が無い場合は、デフォルト値となる"N"が自動設定されます。

◆削除可能(IsDeleteable)

AD_TableテーブルのIsDeleteableカラムに代入される値を設定します。"Y"か"N"、もしくは空欄のいずれかの値を設定します。テーブルの新規作成時に入力が無い場合は、デフォルト値となる"N"が自動設定されます。

◆大量データ(IsHighVolume)

AD_TableテーブルのIsHighVolumeカラムに代入される値を設定します。"Y"か"N"、もしくは空欄のいずれかの値を設定します。テーブルの新規作成時に入力が無い場合は、デフォルト値となる"N"が自動設定されます。

◆テーブルのエンティティタイプ(JP_Table_EntityType)

テーブルのエンティティタイプを設定します。テーブルの新規作成時にエンティティタイプが設定されていない場合は自動的に"User maintained(U)"が設定されます。エンティティタイプがDictionary(D)の場合は、更新する事はできません。

- エレメント

エレメントのフィールドグループではエレメントの設定がまとめられています。

エレメントの名称等を更新する場合は、空欄にしておくか変更前の値と同じ値を入れておくと更新処理の対象外となります。そして、更新時に既に入力されているフィールドの値を空欄にしたい場合は、"Blank"(※大文字/小文字のどちらでも可)と入力しておくと空欄にする事ができます。

エレメントフィールドグループ
エレメントフィールドグループ

◆DBカラム名称(ColumnName)

この値から、エレメント(AD_Element_ID)を逆引きします。逆引きできない場合は、エレメントを新規作成します。

◆エレメント(AD_Element_ID)

DBカラム名称(ColumnName)から逆引きされます。

◆エレメント(UU)(AD_Element_UU)

AD_Element_UUの値を変更する事ができます。これは2Pack対応のためです。

◆エレメントの名称(JP_Element_Name)

エレメントの名称(Name)の値を設定します。新規作成時に入力が無い場合は、DBカラム名称(ColumnName)と同じ値が代入されます。

◆エレメントの印刷テキスト(JP_Element_PrintName)

エレメントの印刷テキスト(PrintName)の値を設定します。新規作成時に入力が無い場合は、エレメントの名称(Name)と同じ値が代入されます。

◆エレメントの説明(JP_Element_Description)

エレメントの説明(Description)の値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆エレメントのコメント(JP_Element_Help)

エレメントのコメント(Help)の値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆エレメントの購買-名称(JP_Element_PO_Name)

エレメントの購買-名称(PO_Name)の値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆エレメントの購買-印刷テキスト(JP_Element_PO_PrintName)

エレメントの購買-印刷テキスト(PO_PrintName)の値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆エレメントの購買-説明(JP_Element_PO_Description)

エレメントの購買-説明(PO_Description)の値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆エレメントの購買-コメント(JP_Element_PO_Help)

エレメントの購買-説明(PO_Help)の値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆エレメントのプレースホルダ(JP_Element_Placeholder)

エレメントのプレースホルダ(Placeholder)の値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆エレメントのエンティティタイプ(JP_Element_EntityType)

エレメントのエンティティタイプを設定します。テーブルの新規作成時にエンティティタイプが設定されていない場合は自動的に"User maintained(U)"が設定されます。エンティティタイプがDictionary(D)の場合は、更新する事はできません。

- エレメントの翻訳

エレメント翻訳のフィールドグループに値を入力しておくと、選択した言語のエレメントの翻訳も更新する事ができます。そして、更新時に既に入力されているフィールドの値を空欄にしたい場合は、"Blank"(※大文字/小文字のどちらでも可)と入力しておくと空欄にする事ができます。

エレメントの翻訳フィールドグループ
エレメントの翻訳フィールドグループ

◆言語(AD_Language)

翻訳データの言語を設定します。言語設定がされていない場合は、翻訳データはインポートされません。

◆エレメント翻訳(UU)(AD_Element_Trl_UU)

AD_Element_Trl_UUの値を変更する事ができます。これは2Pack対応のためです。

◆エレメントの名称(翻訳)(JP_Element_Trl_Name)

エレメントの翻訳の名称(Name)の値を設定します。新規作成時に入力が無い場合は、DBカラム名称(ColumnName)と同じ値が代入されます。

◆エレメントの印刷テキスト(翻訳)(JP_Element_Trl_PrintName)

エレメントの翻訳の印刷テキスト(PrintName)の値を設定します。新規作成時に入力が無い場合は、エレメントの名称(Name)と同じ値が代入されます。

◆エレメントの説明(翻訳)(JP_Element_trl_Description)

エレメントの翻訳の説明(Description)の値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆エレメントのコメント(翻訳)(JP_Element_Trl_Help)

エレメントの翻訳のコメント(Help)の値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆エレメントの購買-名称(翻訳)(JP_Element_Trl_PO_Name)

エレメントの翻訳の購買-名称(PO_Name)の値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆エレメントの購買-印刷テキスト(翻訳)(JP_Element_Trl_PO_PrintName)

エレメントの翻訳の購買-印刷テキスト(PO_PrintName)の値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆エレメントの購買-説明(翻訳)(JP_Element_PO_Trl_Description)

エレメントの翻訳の購買-説明(PO_Description)の値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆エレメントの購買-コメント(翻訳)(JP_Element_Trl_PO_Help)

エレメントの翻訳の購買-説明(PO_Help)の値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆エレメントのプレースホルダ(翻訳)(JP_Element_Trl_Placeholder)

エレメントの翻訳のプレースホルダ(Placeholder)の値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

- カラム

カラムのフィールドグループではカラムの設定がまとめられています。

カラムの設定を変更する場合は、空欄にしておくか変更前の値と同じ値を入れておくと更新処理の対象外となります。

カラムのフィールドグループ
カラムのフィールドグループ

◆カラム(AD_Column_ID)

DBカラム名称(ColumnName)から逆引きされます。逆引きできない場合は、新規作成されます。

◆カラム(UU)(AD_Column_UU)

AD_Column_UUの値を変更する事ができます。これは2Pack対応のためです。

◆カラムの名称(JP_Column_Name)

カラムの新規登録時に入力が無い場合は、エレメントの名称が自動入力されます。

◆カラムの説明(JP_Column_Description)

カラムの説明の値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆カラムのコメント(JP_Column_Help)

カラムのコメントの値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆SQLカラム(ColumnSQL)

SQLカラムの値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆バージョン(Version)

バージョンの値を設定します。

◆リファレンス名称(JP_Reference_Name)

リファレンス(AD_Reference_ID)を逆引きするのに使用します。

◆リファレンス名称(JP_Reference_Name)

リファレンス(AD_Reference_ID)を逆引きするのに使用します。

◆リファレンスキー(名称)(JP_Reference_Value_Name)

リファレンスキー(AD_Reference_Value_ID)を逆引きするのに使用します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆リファレンスキー(AD_Reference_Value_ID)

リファレンスキー(名称)(JP_Reference_Value_Name)から逆引きして設定する事ができます。

◆ダイナミックバリデーション(名称)(JP_Val_Rule_Name)

ダイナミックバリデーション(AD_Val_Rule_ID)を逆引きするのに使用します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆ダイナミックバリデーション(AD_Val_Rule_ID)

ダイナミックバリデーション(名称)(JP_Val_Rule_Name)から逆引きして設定する事ができます。

◆長さ(FieldLength)

カラムの長さ(FieldLength)の値を設定します。

◆キーカラム(IsKey)

キーカラムに設定する値をリストで選択します。"Y"か"N"、もしくは空欄のいずれかの値を設定します。

◆リンクカラム(IsParent)

リンクカラムに設定する値をリストで選択します。"Y"か"N"、もしくは空欄のいずれかの値を設定します。

◆必須(IsMandatory)

必須に設定する値をリストで選択します。"Y"か"N"、もしくは空欄のいずれかの値を設定します。

◆更新可能(IsUpdateable)

更新可能に設定する値をリストで選択します。"Y"か"N"、もしくは空欄のいずれかの値を設定します。

◆常時更新可能(IsAlwaysUpdateable)

常時更新可能に設定する値をリストで選択します。"Y"か"N"、もしくは空欄のいずれかの値を設定します。

◆識別子(IsIdentifier)

識別子に設定する値をリストで選択します。"Y"か"N"、もしくは空欄のいずれかの値を設定します。

◆シーケンスNo(SeqNo)

シーケンスNoに設定する値を入力します。

◆検索カラム(IsSelectionColumn)

検索カラムに設定する値をリストで選択します。"Y"か"N"、もしくは空欄のいずれかの値を設定します。

◆検索カラムシーケンスNo(SeqNoSelection)

検索カラムシーケンスNoに設定する値を入力します。

◆値フォーマット(VFormat)

値フォーマットに設定する値を入力します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆フォーマットパターン(FormatPattern)

フォーマットパターンに設定する値を入力します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆最小値(ValueMin)

最小値に設定する値を入力します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆最大値(ValueMax)

最大値に設定する値を入力します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆プロセス(検索キー)(JP_Process_Value)

プロセス(AD_Process_ID)を逆引きするのに使用します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆プロセス(AD_Process_ID)

プロセス(検索キー)(JP_Process_Value)から逆引きして設定する事ができます。

◆チャート(名称)(JP_Chart_Name)

チャート(AD_Chart_ID)を逆引きするのに使用します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆チャート(AD_Chart_ID)

チャート(名称)(AD_Chart_Name)から逆引きして設定する事ができます。

◆ダッシュボートガジェット(名称)(JP_DashboardContent_Name)

ダッシュボードガジェット(JP_DashboadContent_ID)を逆引きするのに使用します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆ダッシュボードガジェット(PA_DashboardContent_ID)

ダッシュボードガジェット(名称)(PA_DashboadContent_Name)から逆引きして設定する事ができます。

◆カラムのプレースホルダ(JP_Column_Placeholder)

カラムのプレースホルダ(Placeholder)の値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆デフォルトロジック(DefaultValue)

デフォルトロジックの値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆読取専用ロジック(ReadOnlyLogic)

読取専用ロジックの値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆必須ロジック(MandatoryLogic)

必須ロジックの値を設定します。更新時に空欄にしたい場合は、"Blank"と入力します。

◆自動コンプリート(IsAutocomplete)

自動コンプリートに設定する値をリストで選択します。"Y"か"N"、もしくは空欄のいずれかの値を設定します。

◆コピー許可(IsAllowCopy)

コピー許可に設定する値をリストで選択します。"Y"か"N"、もしくは空欄のいずれかの値を設定します。

◆更新ログの取得を許可(IsAllowLogging)

更新ログの取得を許可に設定する値をリストで選択します。"Y"か"N"、もしくは空欄のいずれかの値を設定します。

◆安全コンテンツ(IsSecure)

安全コンテンツに設定する値をリストで選択します。"Y"か"N"、もしくは空欄のいずれかの値を設定します。

◆HTML(IsHTML)

HTMLに設定する値をリストで選択します。"Y"か"N"、もしくは空欄のいずれかの値を設定します。

◆翻訳済み(IsTranslated)

翻訳済みに設定する値をリストで選択します。"Y"か"N"、もしくは空欄のいずれかの値を設定します。

◆コールアウト(Callout)

コールアウトに設定する値をリストで選択します。"Y"か"N"、もしくは空欄のいずれかの値を設定します。

◆カラムのエンティティタイプ(JP_Column_EntityType)

カラムのエンティティタイプを設定します。テーブルの新規作成時にエンティティタイプが設定されていない場合は自動的に"User maintained(U)"が設定されます。エンティティタイプがDictionary(D)の場合は、更新する事はできません。

カラム同期

次の条件に合致する時には、カラム同期プロセスが実行されます。

  • 新規に登録したカラム
  • 長さ(FieldLength)カラムが更新された時
  • 必須(IsMandotory)カラムが更新された時
  • 外部参照キー制約タイプ(FKConstraintType)カラムが更新された時

インポートフォーマット

サンプルのインポートフォーマットとして、JPiere Table and Columnというインポートフォーマットを用意してあります。

【JPIERE-0439】テーブルとカラム一覧レポート からダウンロードしたデータをそのままインポートできるように考えています。

カスタマイズ情報

テーブル

◆I_TableColumnJP

クラス

◆jpiere.base.plugin.org.adempiere.process.JPiereImportTableAndColumn

更新情報

2019年10月10日:プロセスの実行パラメーターに「エレメント更新」フラグの追加

既存のエレメントが存在している場合に、更新処理を行うかどうかの判定パラメーターを追加しました。OFFの場合でも、エレメントの新規登録は実行されます。

インポートするカラムのデータに、フィールドの翻訳を含めているようなケースで、エレメント上では翻訳を変えたくないようなケースで利用する事を想定しています。