データ登録設定ファイル(config-entry.xml)
データ登録ユーティリティがデータ登録する際の登録先とのマッピング定義を行うファイルです。
基本情報、記述形式、定義内容、記述例などについて説明します。
<目次>
ファイルの基本情報
項目 | 内容 |
---|---|
ファイル名 | 任意 既定の設定を以下に示します。
|
ファイル保管先 | 任意(既定はconfigフォルダ) |
フォーマット | XML形式ファイル |
文字コード | UTF-8(BOMなし) |
改行コード | CR+LF, CR, LF |
ファイル反映のタイミング | データ登録ユーティリティ起動時 |
記述形式
<config> <register-setting /> <path-setting /> <mapping-info /> <escapeInput /> </config>
XML 形式ファイルです。全体を <config> タグで囲みます。
パラメータを省略する場合には、属性を削除するか値を空白にします。
定義内容
以下のタグごとに、タグ内に記述する属性について説明します。
<register-setting>タグ
<path-setting>タグ
<mapping-info>タグ
<escapeInput>タグ
<register-setting>タグ
<register-setting>タグ内に以下の属性を記述します。
属性 | 説明 | 省略可否 | 省略値 |
---|---|---|---|
batchSize | まとめて処理するCSVデータのレコード数を指定します。1 ~ 200 までが指定できます。 例:batchSize='10' | ○ | 200 |
nameSpace | 登録先の名前空間を指定します。 この値は変更せず、そのまま使用します。 例:nameSpace='SMOC__' | × | |
objectName | 登録先の対象オブジェクトを指定します。
例:objectName='SMOC__ox_obj_event__c' | × | |
useTrigger | データ登録時にApexトリガを起動するかを指定します。
登録後にワークフローを使用したい場合には、trueを指定します。 例:useTrigger='true' trueを指定した場合、使用するプロファイルの[既存ワークフロー制御フラグ]について、項目レベルセキュリティの設定を[参照可能]に設定する必要があります。設定については、この表したの設定例を参照してください。 | ○ | true |
register-mode | データ登録で、新規登録と更新処理のどちらを行うかを指定します。
例:register-mode='insert' update実行時、キー項目に該当するデータが複数存在する場合、最初の1件のみupdateされます。 | × | |
csvTotalCols | CSVの1レコードあたりの総項目数を指定します。 例:csvTotalCols='5' | × | |
csvKeyCols | キー項目となるCSV ファイルの列番号を指定します。 複数キーが存在する場合は、カンマ区切りで指定します。最大5項目指定できます。 省略した場合は無視します。 例:csvKeyCols='1' Update実行時に、キー項目に、シングルクオート(‘)、¥マークを含むデータを使用することはできません。 | ○ | |
sfKeyCols | キー項目のAPI参照名を指定します。 複数キーが存在する場合は、カンマ区切りで指定します。最大5項目指定できます。 省略した場合は無視します。 通常は以下のように指定します。
例:sfKeyCols='SMOC__ox_txt_ name __c' | ○ | |
useHeader | CSVファイルのヘッダーの有無を指定します。
例:useHeader=’true’ | ○ | ’true’ |
file-encoding | CSVファイルの文字コードを指定します。 通常は以下のように指定します。
例:file-encoding=’MS932’ | ○ | ’MS932’ |
newline-code | CSVファイルの改行コードを指定します。省略値は’¥r¥n’です。 通常は以下のように指定します。
例:newline-code=’¥r¥n’ | ○ |
「useTrigger=true」としている場合、使用するプロファイルの[既存ワークフロー制御フラグ]について、項目レベルセキュリティの設定を[参照可能]に設定する必要があります。
以下に、プロファイルが「システム管理者」、対象オブジェクトが「イベント管理」の場合の操作方法を示します。
管理メニューを表示します。 管理メニューを表示する操作については、「コンフィグレーションに使用するメニュー(Classic)」を参照してください。
管理メニューで、[ユーザの管理]‐[プロファイル]をクリックします。
[システム管理者]をクリックします。
[項目レベルセキュリティ]-[カスタム項目レベルセキュリティ]で、[イベント管理]の[参照]をクリックします。
[編集]ボタンをクリックします。
[既存ワークフロー制御フラグ]の[参照アクセス権]チェックボックスをチェックします。
[保存]ボタンをクリックします。
<path-setting>タグ
<path-setting>タグ内に以下の属性を記述します。
属性 | 説明 | 省略可否 | 省略値 |
---|---|---|---|
log | 実行ログファイルの出力フォルダをフルパスで指定します。 例:log='log/event' | × | |
registeredCsv | 登録済みフォルダ(登録済みデータCSVファイルの出力フォルダ)をフルパスで指定します。 省略した場合、CSVファイルは出力しません。 例:registeredCsv='monitor/event/result/success' | ○ | |
unRegisteredCsv | 未登録フォルダ(未登録データCSVファイルの出力フォルダ)をフルパスで指定します。 省略した場合、CSVファイルは出力しません。 例:unRegisteredCsv='monitor/event/result/error' | ○ |
<mapping-info>タグ
<mapping-info>タグ内に、必要な数だけ<column>タグを記述します。
CSVの列データごとに<column>タグ内に以下の属性を記述します。<column>タグは、必要な数だけ繰り返し記述できます。
属性 | 説明 | 省略可否 | 省略値 |
---|---|---|---|
no | 登録するデータのCSVでの列番号を指定します。 noに’A’を指定した場合、CSVに含まれていない内容も固定値として登録できます。 例1:no='1' 例2:no=’A’ data=’1’ | × | |
name | 登録先項目のAPI参照名を指定します。 例:name='SMOC__ox_sel_ntfFrom__c' | × | |
type | Salesforceのデータ型を指定します。 例:type='picklist' | × | |
key | 入力データのフォーマットを指定します。 例1:key='0,1,2' 上記は、typeに'picklist'を指定した場合の指定例です。 例2:key=”yyyy-MM-dd HH:mm:ss” 上記は、typeに'datetime'を指定した場合の指定例です。 例3:key=”yyyy-MM-dd” 上記は、typeに'date'を指定した場合の指定例です。 | × | |
value | keyで指定した値を、valueで指定した値に置換します。 例1:value='ユーザ,システム,ツール' 上記は、typeに'picklist'を指定した場合の指定例です。 例2:value=’ yyyy-MM-dd HH:mm:ss’ 上記は、typeに'datetime'を指定した場合の指定例です。 例3:key=”yyyy-MM-dd” 上記は、typeに'date'を指定した場合の指定例です。 | × | |
lookup | 入力されたデータを基にLMIS上のデータを検索します。 検索対象のオブジェクト、取得する値、検索対象項目を以下の形式で指定します。 指定形式: lookup=’検索対象オブジェクト名, 取得する値, 検索対象項目’ 例: lookup=’SMOC__ox_obj_software__c,id,SMOC__ox_txt_name__c’ 上記の場合、入力されたデータとソフトウェア名の一致するレコードのIDを取得します。 | ○ | |
nullupdate | 入力データのカラム値がNULLの場合、NULLでUPDATEをするかを指定します。
例:nullupdate=’false’ | ○ | ’true’ |
readonly | データを読み込む際、登録を実行するかを指定します。
例:readonly=’true’ | ○ | ’false’ |
オブジェクトの各項目のAPI参照名とデータ型については、「API参照名一覧」を参照してください。
<escapeInput>タグ
<escapeInput>タグ内に以下の属性を記述します。
エスケープ文字ごとにエスケープルールを指定できます。必要な数だけ繰り返し記述できます。
属性 | 説明 | 省略可否 | 省略値 |
---|---|---|---|
key | エスケープを実施する文字を指定します。 例:key=’¥¥¥¥n’ | ○ | |
value | keyで指定した値を、valueで指定した値に置換します。 例:value=’¥n’ | ○ |
定義例
イベント管理の場合とハードウェアの場合の定義例を示します。
イベント管理の場合
<?xml version="1.0" encoding="UTF-8"?> <config> <register-setting batchSize='2' nameSpace='SMOC__' objectName='SMOC__ox_obj_event__c' useTrigger='true' register-mode='insert' csvTotalCols='3' csvKeyCols='' sfKeyCols='' useHeader='false' file-encoding ='UTF-8' newline-code='¥r¥n' /> <path-setting log='log/event' registeredCsv='monitor/event/result/success' unRegisteredCsv='monitor/event/result/error' /> <mapping-info> <column no='1' name='SMOC__ox_txt_subject__c' type='string'/> <column no='2' name='SMOC__ox_sel_category__c' type='picklist' key='0,1,2' value='情報,警告,異常' nullupdate='true' readonly='false'/> <column no='A' name='SMOC__ox_sel_ntfFrom__c' data='システム' type='picklist' key='ユーザ,システム,ツール' value='ユーザ,システム,ツール'/> <column no='3' name='SMOC__ox_ltx_content__c' type='string' lookup='SMOC__ox_obj_software__c,SMOC__ox_txt_version__c,SMOC__ox_txt_name__c' /> </mapping-info> <escapeInput key='¥¥¥¥n' value='¥n' /> <escapeInput key='^%' value='%' /> </config>
ハードウェアの場合
<?xml version="1.0" encoding="UTF-8"?> <config> <register-setting batchSize='2' nameSpace='SMOC__' objectName='SMOC__ox_obj_hardware__c' useTrigger='true' register-mode='insert,update' csvTotalCols='2' csvKeyCols='1' sfKeyCols='SMOC__ox_txt_name__c' useHeader='false' file-encoding ='UTF-8' newline-code='¥r¥n' /> <path-setting log='log/hardware' registeredCsv='monitor/hardware/result/success' unRegisteredCsv='monitor/hardware/result/error' /> <mapping-info> <column no='1' name='SMOC__ox_txt_name__c' type='string'/> <column no='2' name='RecordTypeID' type='string' lookup='RecordType,id,Name' /> </mapping-info> <escapeInput key='¥¥¥¥n' value='¥n' /> <escapeInput key='^%' value='%' /> </config>
注意事項
定義例からのコピー&ペーストは行わないでください。文字コードが崩れやエラーとなる場合があるためです。