概要
TDV Serverの設定情報はTDV Studioの管理 > 構成から設定・確認することができます。
TDVには、デフォルトで現時点のサーバーの設定情報を取得できるWebサービスgetServerAttributesとデフォルトのサーバーの設定情報を取得できるWebサービスgetServerAttributeDefsがあります。
本記事では、これらのWebサービスを使用して、TDV Serverの設定情報一覧とデフォルト値から変更されているかどうかを確認するビューを作成する方法を紹介します。
手順
任意のフォルダ上で右クリックし、新規 > 新しい変換を選択します。
本記事では、/shared/CustomUtils/ServerConfig で設定を行います。
XSLT変換を選択して、次へをクリックします。
コンポージットデータサービス > Webサービス > system > admin >server > operation > getServerAttributesを選択し、変換名をserverAttributes_xsltとして終了をクリックします。
ソースを展開し、データマップタブでnameを選択し、リンクとターゲットの作成を選択します。
そうするとターゲットにnameが追加されます。
同様にして、typeとvalueもターゲットに追加し、ビューを保存します。
同じフォルダ上で右クリックし、新規 > 新しい変換を選択し、XSLT変換を選択します。
コンポージットデータサービス > Webサービス > system > admin >server > operation > getServerAttributeDefsを選択し、変換名をserverAttributeDefs_xsltとして終了をクリックします。
以下のようにマッピングを行います。
同じフォルダに新しくビューを作成し、名前をserverAttributeDefsとします。
serverAttributeDefs_xsltをドラッグアンドドロップでserverAttributeDefsに移します。
入力値に以下のように変更し、OKをクリックします。
<server:getServerAttributeDefs xmlns:server="http://www.compositesw.com/services/system/admin/server">
<server:paths>
</server:paths>
<server:getAllAttributeDefs>true</server:getAllAttributeDefs>
</server:getServerAttributeDefs>
SQLタブを以下のように設定します。
SELECT
serverAttributeDefs_xslt.name,
serverAttributeDefs_xslt.displayName,
serverAttributeDefs_xslt."type",
serverAttributeDefs_xslt.annotation,
serverAttributeDefs_xslt.defaultValue,
serverAttributeDefs_xslt.minValue,
serverAttributeDefs_xslt.maxValue,
serverAttributeDefs_xslt.unitName,
CASE
WHEN serverAttributeDefs_xslt.annotation LIKE '%value is locally defined.%' THEN 'true'
ELSE 'false'
END isLocallyDefined,
serverAttributeDefs_xslt.visible
FROM /shared/CustomUtils/ServerConfig/serverAttributeDefs_xslt('<server:getServerAttributeDefs xmlns:server="http://www.compositesw.com/services/system/admin/server"><server:paths/><server:getAllAttributeDefs>true</server:getAllAttributeDefs></server:getServerAttributeDefs>') serverAttributeDefs_xslt
WHERE serverAttributeDefs_xslt."type" <> 'FOLDER'
ORDER BY serverAttributeDefs_xslt.name ASC
同じフォルダに新しくビューを作成し、名前をserverAttributesとします。
serverAttributes_xsltとserverAttributeDefsをドラッグアンドドロップでserverAttributesに移します。
serverAttributes_xsltの入力値は以下のように変更します。
<server:getServerAttributes xmlns:server="http://www.compositesw.com/services/system/admin/server">
<server:paths>
</server:paths>
<server:getAllAttributes>true</server:getAllAttributes>
</server:getServerAttributes>
SQLタブを以下のように設定します。
SELECT
serverAttributeDefs.name,
serverAttributeDefs.displayName,
serverAttributeDefs."type",
REGEXP_REPLACE(REGEXP_REPLACE(REGEXP_REPLACE(REGEXP_REPLACE(REGEXP_REPLACE(REGEXP_REPLACE(serverAttributeDefs.annotation, '<p>', ''), '<b>', ''), '</b>', ''), '</p>', ''), '<li>', ''), '<br>', '') annotation,
serverAttributeDefs.defaultValue,
serverAttributeDefs.minValue,
serverAttributeDefs.maxValue,
serverAttributeDefs.unitName,
serverAttributeDefs.isLocallyDefined,
serverAttributeDefs.visible,
serverAttributes_xslt."value",
CASE WHEN serverAttributeDefs.defaultValue IS NOT NULL
THEN CASE WHEN serverAttributes_xslt."value" = serverAttributeDefs.defaultValue
THEN 'false'
ELSE 'true'
END
ELSE ''
END isModified
FROM
/shared/CustomUtils/ServerConfig/serverAttributes_xslt('<server:getServerAttributes xmlns:server="http://www.compositesw.com/services/system/admin/server"><server:paths/><server:getAllAttributes>true</server:getAllAttributes></server:getServerAttributes>') serverAttributes_xslt INNER JOIN
/shared/CustomUtils/ServerConfig/serverAttributeDefs serverAttributeDefs
ON serverAttributes_xslt."type" = serverAttributeDefs."type" AND
serverAttributes_xslt.name = serverAttributeDefs.name
ORDER BY
serverAttributeDefs.name ASC
serverAttributesを実行すると設定情報がテーブル形式で出力されます。
カラムisModifiedで設定情報がデフォルト値から変更されているかどうかを確認することができます(falseの場合はデフォルトから変更されていないことを表します)。
作成したビューを公開することで、クライアントツールから確認することもできます。