機械翻訳について

福利厚生抽出のカスタム・レイアウトの例

実装者または開発者は、カスタム・レイアウトを作成して、抽出した福利厚生登録データの形式を特定の保険会社の仕様にあわせて変換できます。

このトピックの内容は次のとおりです。

  • カスタム・レイアウトを作成するために必要なタグの説明

  • 表の別名およびサンプルのカスタム・レイアウト

    カスタム・レイアウトは、プラン保険会社の抽出オプションをアップロードした後、プラン保険会社のデフォルト・レイアウトになります。

次のコードは、カスタム・レイアウト内のXMLタグの構造を示しています。

<Layout
 <Table
  Record Type
  <Field
   Name
   Source
   Width
   Padding
  Field>
 Table>
 <Table
  <Field
   Name
   Source
   Width
   Padding
  Field>
  -----------
  More fields
  -----------
 Table>
 <Table
  -----------
  More tables
  -----------
 Table>
Layout>

カスタム・レイアウトのフィールドのデータ・ソースには、次のものを使用できます。

  • 福利厚生抽出ステージング表の列

  • Sourceタグの説明にリストされている他のいずれかの表の列

  • 正確な値を入力する定数

ヒント:

表の列名を識別するには、Oracle BI Publisherでデータ・モデル問合せビルダーを使用します。 表名を検索し、列を表示します。

XMLタグの説明

このセクションでは、各XMLタグについて説明し、その属性、エレメント(サブタグ)および親タグをリストします。

Layout

説明: Rootタグ。

属性: なし

エレメント(サブタグ)

親タグ

Table

なし

Table

説明: データの抽出元となるデータベース表を指定します。

属性: 1. tableName: サポートされる値 = {BEN_EXTRACT_REQ_DETAILS,BEN_EXTRACT_REQUEST, DUAL,PER_ALL_PEOPLE_F,PER_PERSONS,PER_ALL_ASSIGNMENTS_M,PER_PEOPLE_LEGISLATIVE_F,BEN_PL_F,BEN_PL_TYP_F,BEN_OPT_F,BEN_PGM_F }

エレメント(サブタグ)

親タグ

1. RecordType

2. Field: Fieldタグの説明を参照してください

Layout

Record Type

説明: 抽出ファイル内のデータを区切る方法またはレイアウトする方法を指定します。

属性: サポートされる値: FIXEDWIDTH, CSV

ノート:

CSV以外はすべて、デフォルトでFIXEDWIDTHとして区切られます。

エレメント(サブタグ)

親タグ

なし

Table

フィールド

説明: 抽出された文書内の1つの列に対応します。 この列のテキストは、データベース表、SQL関数または定数をソースとします。

属性: なし

エレメント(サブタグ)

親タグ

  1. Name

  2. Source

  3. Width

  4. Padding

Table

Name

説明: フィールドの名前

属性: なし

エレメント(サブタグ)

親タグ

なし

フィールド

Source

説明: 現在のフィールドのデータのソースを指定します。

  • ソースが表の場合、渡される値は列名です。

  • 複数の表が関与する場合は、完全修飾列名を使用します。

許可される表のリストには、表の別名が含まれています。

列名のかわりのSQL関数: タイプがTABLEに設定されている場合、このタグの値は列名として扱われます。 列名は問合せの構築中に直接使用されるため、列でSQL関数を使用できます。

  • 例1

    <Source type="TABLE">GENDER_FLAG</Source>

  • 例2

    <Source type="TABLE">DECODE(GENDER_FLAG,'F',1,2)</Source>

属性:

  1. type:

    • サポートされる値= {TABLE, CONSTANT}

      • TABLEは、データがデータベース表からのものであることを指定します。

      • CONSTANTは、データがこのタグの値列にあることを指定します。

  2. table: このタグは、目的の列がこのTableタグのtableName属性に指定された表からのものではない場合にのみ使用します。 このタグを使用しない場合、列はtableNameに指定された表で検索されます。

    • サポートされる値:

      • {BEN_EXTRACT_REQ_DETAILS

      • PER_ALL_PEOPLE_F

      • PER_PERSONS

      • PER_ALL_ASSIGNMENTS_M

      • PER_PEOPLE_LEGISLATIVE_F

      • BEN_PL_F

      • BEN_PL_TYP_F

      • BEN_OPT_F

      • BEN_PGM_F

エレメント(サブタグ)

親タグ

なし

フィールド

Width

説明: 抽出ファイル内のこのフィールドの目的の幅を指定します。 渡される数値は、ファイル上の文字スペースの数です。

属性: サポートされる値は、正の整数です。

エレメント(サブタグ)

親タグ

なし

フィールド

Padding

説明: 各列でのデータの配置を指定します。

属性: サポートされる値: {LEFT, RIGHT}

エレメント(サブタグ)

親タグ

なし

フィールド

表の別名

許可される表

別名

BEN_EXTRACT_REQ_DETAILS

REQ

PER_ALL_PEOPLE_F

PEO

PER_PERSONS

PER

PER_ALL_ASSIGNMENTS_M

ASG

PER_PEOPLE_LEGISLATIVE_F

LEG

BEN_PL_F

PLN

BEN_PL_TYP_F

TYP

BEN_OPT_F

OPT

BEN_PGM_F

PGM

サンプルのXMLレイアウト

<?xml version="1.0" encoding="utf-8"?>
<Layout> 
<Table tableName="DUAL"> 
  <RecordType>FIXEDWIDTH</RecordType> 
  <Field> 
    <Name>"Record Type"</Name> 
    <Source type="CONSTANT">001</Source> 
    <Width>3</Width> 
    <Padding>Left</Padding> 
  </Field> 
</Table> 
<Table tableName="BEN_EXTRACT_REQ_DETAILS"> 
  <RecordType>CSV</RecordType> 
  <Field> 
    <Name>"Last Name"</Name> 
    <Source type="TABLE">LAST_NAME</Source> 
    <Width>25</Width> 
    <Padding>Left</Padding> 
  </Field> 
  <Field> 
    <Name>"First Name"</Name> 
    <Source type="TABLE">FIRST_NAME</Source> 
    <Width>50</Width> 
    <Padding>Left</Padding> 
  </Field> 
  <Field> 
    <Name>"Filler"</Name> 
    <Source type="CONSTANT">XXXXXXXXXX</Source> 
    <Width>10</Width> 
    <Padding>None</Padding> 
  </Field> 
  <Field> 
    <Name>"Plan Name"</Name> 
    <Source type="TABLE">PLAN</Source> 
    <Width>70</Width> 
    <Padding>Left</Padding> 
  </Field> 
  <Field> 
    <Name>"Coverage Start Date"</Name> 
    <Source type="TABLE">COVERAGE_START_DATE</Source> 
    <Width>15</Width> 
    <Padding>Left</Padding> 
  </Field> 
  <Field> 
    <Name>"SSN"</Name> 
    <Source type="TABLE">NATIONAL_IDENTIFIER</Source> 
    <Width>12</Width> 
    <Padding>Left</Padding> 
  </Field> 
  <Field> 
    <Name>"Gender"</Name> 
    <Source type="TABLE">DECODE(GENDER_FLAG,'F',1,2)</Source> 
    <Width>1</Width> 
    <Padding>Left</Padding> 
  </Field> 
  <Field> 
    <Name>"Person Number"</Name> 
    <Source type="TABLE" table="PER_ALL_PEOPLE_F">PERSON_NUMBER</Source> 
    <Width>30</Width> 
    <Padding>Left</Padding> 
  </Field> 
  <Field> 
    <Name>"Country of Birth"</Name> 
    <Source type="TABLE" table="PER_PERSONS">COUNTRY_OF_BIRTH</Source> 
    <Width>30</Width> 
    <Padding>Left</Padding> 
  </Field> 
  <Field> 
    <Name>"Assignment type"</Name> 
    <Source type="TABLE" table="per_all_assignments_m">assignment_type</Source> 
    <Width>30</Width> 
    <Padding>Left</Padding> 
  </Field> 
  <Field> 
    <Name>"Legislation code"</Name> 
    <Source type="TABLE" table="per_people_legislative_f">LEG.LEGISLATION_CODE</Source> 
    <Width>30</Width> 
    <Padding>Left</Padding> 
  </Field> 
  <Field> 
    <Name>"Legislation code"</Name> 
    <Source type="TABLE" table="ben_pl_f">PLN.PL_ID</Source> 
    <Width>30</Width> 
    <Padding>Left</Padding> 
  </Field> 
</Table> 
<Table tableName="DUAL"> 
  <RecordType>FIXEDWIDTH</RecordType> 
  <Field> 
    <Name>"Record Type"</Name> 
    <Source type="CONSTANT">999</Source> 
    <Width>3</Width> 
    <Padding>Left</Padding> 
  </Field> 
  <Field> 
    <Name>"Record Type"</Name> 
    <Source type="SYSTEM">RECORDCOUNT</Source> 
    <Width>3</Width> 
    <Padding>Left</Padding> 
  </Field> 
</Table>
</Layout>