intra-mart Accel Platform 設定ファイルリファレンス 第34版 2024-04-01

ViewCreator/TableMaintenance エンティティメタデータ定義設定

概要

ViewCreator/TableMaintenance でデータベースのエンティティを扱う場合に付与するメタデータを定義します。

モジュール ViewCreator/TableMaintenance 共通ライブラリ
フォーマットファイル(xsd) WEB-INF/schema/vctm-database-entity-metadata-config.xsd
設定場所 WEB-INF/conf/vctm-database-entity-metadata-config.xml

<?xml version="1.0" encoding="UTF-8"?>
<vctm-database-entity-metadata-config xmlns="http://jp/co/intra-mart/system/vctm/config"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jp/co/intra-mart/system/vctm/config jp/co/intra-mart/system/vctm/config/vctm-database-entity-metadata-config.xsd ">
  <data-source>
    <target-data-source-condition>
      <shared-database-condition>
        <connect-id>connectId</connect-id>
      </shared-database-condition>
    </target-data-source-condition>
    <entity-set>
      <entity>
        <target-entity-condition>
          <entity-name>
            <pattern>.*</pattern>
            <case-sensitive>true</case-sensitive>
          </entity-name>
        </target-entity-condition>
        <entity-configuration>
          <allowed-data-operation>READ</allowed-data-operation>
        </entity-configuration>
      </entity>
    </entity-set>
  </data-source>
  <data-source>
    <target-data-source-condition>
      <shared-database-condition>
        <database-product-name>
          <pattern>.*postgre*</pattern>
          <case-sensitive>true</case-sensitive>
        </database-product-name>
      </shared-database-condition>
    </target-data-source-condition>
    <entity-set>
      <entity>
        <target-entity-condition>
          <entity-name>
            <pattern>.*</pattern>
            <case-sensitive>true</case-sensitive>
          </entity-name>
        </target-entity-condition>
        <entity-configuration>
          <allowed-data-operation>READ</allowed-data-operation>
        </entity-configuration>
      </entity>
    </entity-set>
  </data-source>
  <data-source>
    <target-data-source-condition>
      <tenant-database-condition>
        <tenant-id>default</tenant-id>
      </tenant-database-condition>
    </target-data-source-condition>
    <entity-set>
      <entity>
        <target-entity-condition>
          <entity-name>
            <pattern>.*</pattern>
            <case-sensitive>true</case-sensitive>
          </entity-name>
        </target-entity-condition>
        <entity-configuration>
          <allowed-data-operation>READ</allowed-data-operation>
        </entity-configuration>
      </entity>
    </entity-set>
  </data-source>
</vctm-database-entity-metadata-config>

リファレンス

データソース設定

タグ名 data-source
メタデータを付与するデータソースを設定します。

【設定項目】

<vctm-database-entity-metadata-config>
  <data-source>
    ・・・・・
  </data-source>
</vctm-database-entity-metadata-config>

必須項目 ×
複数設定
設定値・設定する内容 なし
単位・型 なし
省略時のデフォルト値 なし
親タグ vctm-database-entity-metadata-config

適用対象データソース条件設定

タグ名 target-data-source-condition
メタデータを付与するデータソースの適用条件を設定します。

【設定項目】

<vctm-database-entity-metadata-config>
  <data-source>
    <target-data-source-condition>
      ・・・・・
    </target-data-source-condition>
  </data-source>
</vctm-database-entity-metadata-config>

必須項目
複数設定 ×
設定値・設定する内容 なし
単位・型 なし
省略時のデフォルト値 なし
親タグ data-source

エンティティセット設定

タグ名 entity-set
メタデータを付与するエンティティセットを設定します。

【設定項目】

<vctm-database-entity-metadata-config>
  <data-source>
    <entity-set>
      ・・・・・
    </entity-set>
  </data-source>
</vctm-database-entity-metadata-config>

必須項目
複数設定 ×
設定値・設定する内容 なし
単位・型 なし
省略時のデフォルト値 なし
親タグ data-source

適用対象テナントデータベース条件設定

タグ名 tenant-database-condition
メタデータを付与するテナントデータベースの適用条件を設定します。

【設定項目】

<vctm-database-entity-metadata-config>
  <data-source>
    <target-data-source-condition>
      <tenant-database-condition>
        ・・・・・
      </tenant-database-condition>
    </target-data-source-condition>
  </data-source>
</vctm-database-entity-metadata-config>

必須項目 × ※「適用対象テナントデータベース条件設定」と「適用対象シェアードデータベース条件設定」のどちらかを設定する必要があります。両方を設定することはできません。
複数設定 ×
設定値・設定する内容 なし
単位・型 なし
省略時のデフォルト値 なし
親タグ target-data-source-condition

テナントID設定

タグ名 tenant-id
メタデータを付与するテナントデータベースの適用条件としてテナントIDを設定します。

【設定項目】

<vctm-database-entity-metadata-config>
  <data-source>
    <target-data-source-condition>
      <tenant-database-condition>
        <tenant-id>default</tenant-id>
      </tenant-database-condition>
    </target-data-source-condition>
  </data-source>
</vctm-database-entity-metadata-config>

必須項目 × ※「テナントID設定」と「データベース製品名設定」のどちらかを設定する必要があります。両方を設定することはできません。
複数設定 ×
設定値・設定する内容 テナントID
単位・型 文字列
省略時のデフォルト値 なし
親タグ tenant-database-condition

適用対象シェアードデータベース条件設定

タグ名 shared-database-condition
メタデータを付与するシェアードデータベースの適用条件を設定します。

【設定項目】

<vctm-database-entity-metadata-config>
  <data-source>
    <target-data-source-condition>
      <shared-database-condition>
        ・・・・・
      </shared-database-condition>
    </target-data-source-condition>
  </data-source>
</vctm-database-entity-metadata-config>

必須項目 × ※「適用対象テナントデータベース条件設定」と「適用対象シェアードデータベース条件設定」のどちらかを設定する必要があります。両方を設定することはできません。
複数設定 ×
設定値・設定する内容 なし
単位・型 なし
省略時のデフォルト値 なし
親タグ target-data-source-condition

接続ID設定

タグ名 connect-id
メタデータを付与するシェアードデータベースの適用条件として接続IDを設定します。

【設定項目】

<vctm-database-entity-metadata-config>
  <data-source>
    <target-data-source-condition>
      <shared-database-condition>
        <connect-id>connectId</connect-id>
      </shared-database-condition>
    </target-data-source-condition>
  </data-source>
</vctm-database-entity-metadata-config>

必須項目 × ※「接続ID設定」と「データベース製品名設定」のどちらかを設定する必要があります。両方を設定することはできません。
複数設定 ×
設定値・設定する内容 接続ID
単位・型 文字列
省略時のデフォルト値 なし
親タグ shared-database-condition

データベース製品名設定

タグ名 database-product-name
メタデータを付与するデータベースの適用条件としてデータベース製品名を正規表現で設定します。

【設定項目】

<vctm-database-entity-metadata-config>
  <data-source>
    <target-data-source-condition>
      <tenant-database-condition>
        <database-product-name>
          ・・・・・
        </database-product-name>
      </tenant-database-condition>
    </target-data-source-condition>
  </data-source>
</vctm-database-entity-metadata-config>

<vctm-database-entity-metadata-config>
  <data-source>
    <target-data-source-condition>
      <shared-database-condition>
        <database-product-name>
          ・・・・・
        </database-product-name>
      </shared-database-condition>
    </target-data-source-condition>
  </data-source>
</vctm-database-entity-metadata-config>

必須項目 × ※「データベース製品名設定」を設定しない場合、「テナントID設定」または「接続ID設定」を設定する必要があります。
複数設定 ×
設定値・設定する内容 なし
単位・型 なし
省略時のデフォルト値 なし
親タグ tenant-database-condition, shared-database-condition

データベース製品名パターン文字列設定

タグ名 pattern
メタデータを付与するデータベースの適用条件としてデータベース製品名の正規表現パターン文字列を設定します。
データベース製品名は java.sql.DatabaseMetaData#getDatabaseProductName() から取得した値を使用します。

【設定項目】

<vctm-database-entity-metadata-config>
  <data-source>
    <target-data-source-condition>
      <tenant-database-condition>
        <database-product-name>
          <pattern>.*</pattern>
        </database-product-name>
      </tenant-database-condition>
    </target-data-source-condition>
  </data-source>
</vctm-database-entity-metadata-config>

<vctm-database-entity-metadata-config>
  <data-source>
    <target-data-source-condition>
      <shared-database-condition>
        <database-product-name>
          <pattern>.*</pattern>
        </database-product-name>
      </shared-database-condition>
    </target-data-source-condition>
  </data-source>
</vctm-database-entity-metadata-config>

必須項目
複数設定 ×
設定値・設定する内容 正規表現パターン文字列
単位・型 文字列
省略時のデフォルト値 なし
親タグ database-product-name

データベース製品名パターン文字列ケースセンシティブ設定

タグ名 case-sensitive
メタデータを付与するデータベースの適用条件としてデータベース製品名の正規表現について、アルファベットの大文字と小文字を区別するかどうかを設定します。

【設定項目】

<vctm-database-entity-metadata-config>
  <data-source>
    <target-data-source-condition>
      <tenant-database-condition>
        <database-product-name>
          <case-sensitive>true</case-sensitive>
        </database-product-name>
      </tenant-database-condition>
    </target-data-source-condition>
  </data-source>
</vctm-database-entity-metadata-config>

<vctm-database-entity-metadata-config>
  <data-source>
    <target-data-source-condition>
      <shared-database-condition>
        <database-product-name>
          <case-sensitive>true</case-sensitive>
        </database-product-name>
      </shared-database-condition>
    </target-data-source-condition>
  </data-source>
</vctm-database-entity-metadata-config>

必須項目 ×
複数設定 ×
設定値・設定する内容 true(区別する)/ false(区別しない)
単位・型 真偽値
省略時のデフォルト値 true
親タグ database-product-name

エンティティ設定

タグ名 entity
メタデータを付与するエンティティを設定します。

【設定項目】

<vctm-database-entity-metadata-config>
  <data-source>
    <entity-set>
      <entity>
        ・・・・・
      </entity>
    </entity-set>
  </data-source>
</vctm-database-entity-metadata-config>

必須項目
複数設定
設定値・設定する内容 なし
単位・型 なし
省略時のデフォルト値 なし
親タグ entity-set

適用対象エンティティ条件設定

タグ名 target-entity-condition
メタデータを付与するエンティティの適用条件を設定します。

【設定項目】

<vctm-database-entity-metadata-config>
  <data-source>
    <entity-set>
      <entity>
        <target-entity-condition>
          ・・・・・
        </target-entity-condition>
      </entity>
    </entity-set>
  </data-source>
</vctm-database-entity-metadata-config>

必須項目
複数設定 ×
設定値・設定する内容 なし
単位・型 なし
省略時のデフォルト値 なし
親タグ entity

エンティティメタデータ設定

タグ名 entity-configuration
エンティティに付与するメタデータを設定します。

【設定項目】

<vctm-database-entity-metadata-config>
  <data-source>
    <entity-set>
      <entity>
        <entity-configuration>
          ・・・・・
        </entity-configuration>
      </entity>
    </entity-set>
  </data-source>
</vctm-database-entity-metadata-config>

必須項目
複数設定 ×
設定値・設定する内容 なし
単位・型 なし
省略時のデフォルト値 なし
親タグ entity

適用対象エンティティ名条件設定

タグ名 entity-name
メタデータを付与するエンティティの適用条件をエンティティ名で設定します。

【設定項目】

<vctm-database-entity-metadata-config>
  <data-source>
    <entity-set>
      <entity>
        <target-entity-condition>
          <entity-name>
            ・・・・・
          </entity-name>
        </target-entity-condition>
      </entity>
    </entity-set>
  </data-source>
</vctm-database-entity-metadata-config>

必須項目
複数設定 ×
設定値・設定する内容 なし
単位・型 なし
省略時のデフォルト値 なし
親タグ target-entity-condition

エンティティ名パターン文字列設定

タグ名 pattern
メタデータを付与する適用条件としてエンティティ名の正規表現パターン文字列を設定します。

【設定項目】

<vctm-database-entity-metadata-config>
  <data-source>
    <entity-set>
      <entity>
        <target-entity-condition>
          <entity-name>
            <pattern>.*</pattern>
          </entity-name>
        </target-entity-condition>
      </entity>
    </entity-set>
  </data-source>
</vctm-database-entity-metadata-config>

必須項目
複数設定 ×
設定値・設定する内容 正規表現パターン文字列
単位・型 文字列
省略時のデフォルト値 なし
親タグ entity-name

エンティティ名パターン文字列ケースセンシティブ設定

タグ名 case-sensitive
エンティティ名パターン文字列設定について、アルファベットの大文字と小文字を区別するかどうかを設定します。

【設定項目】

<vctm-database-entity-metadata-config>
  <data-source>
    <entity-set>
      <entity>
        <target-entity-condition>
          <entity-name>
            <case-sensitive>true</case-sensitive>
          </entity-name>
        </target-entity-condition>
      </entity>
    </entity-set>
  </data-source>
</vctm-database-entity-metadata-config>

必須項目 ×
複数設定 ×
設定値・設定する内容 true(区別する)/ false(区別しない)
単位・型 真偽値
省略時のデフォルト値 true
親タグ entity-name

許可されたデータ操作設定

タグ名 allowed-data-operation
エンティティに対して許可するデータ操作を設定します。
target-data-source-condition や target-entity-condition で指定された条件に合致しないエンティティについては、EDIT が適用されます。
READ に設定されたエンティティは TableMaintenance の各機能において以下の操作ができません。
また、特定のエンティティについて、READ と EDIT が両方適用条件を満たした場合、EDIT が優先的に適用されます。
  • レコードの新規作成/更新/削除
  • インポート

【設定項目】

<vctm-database-entity-metadata-config>
  <data-source>
    <entity-set>
      <entity>
        <entity-configuration>
          <allowed-data-operation>READ</allowed-data-operation>
        </entity-configuration>
      </entity>
    </entity-set>
  </data-source>
</vctm-database-entity-metadata-config>

必須項目
複数設定 ×
設定値・設定する内容 READ(読み取り専用) / EDIT(編集可能)
単位・型 文字列
省略時のデフォルト値 なし
親タグ entity-configuration

コラム

設定例

以下は、接続IDが「sharedId」のシェアードデータベースについて、エンティティ名に「sample」を含むエンティティを読み取り専用にする設定例です。
<vctm-database-entity-metadata-config xmlns="http://jp/co/intra-mart/system/vctm/config"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jp/co/intra-mart/system/vctm/config jp/co/intra-mart/system/vctm/config/vctm-database-entity-metadata-config.xsd ">
  <data-source>
    <target-data-source-condition>
      <shared-database-condition>
        <connect-id>sharedId</connect-id>
      </shared-database-condition>
    </target-data-source-condition>
    <entity-set>
      <entity>
        <target-entity-condition>
          <entity-name>
            <pattern>.*sample.*</pattern>
            <case-sensitive>false</case-sensitive>
          </entity-name>
        </target-entity-condition>
        <entity-configuration>
          <allowed-data-operation>READ</allowed-data-operation>
        </entity-configuration>
      </entity>
    </entity-set>
  </data-source>
</vctm-database-entity-metadata-config>