> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# ABBYYFlexiCapture アプリケーションのカスタマイズ

> データ型、データソース、データストア、定数、ナレッジセンター を作成して、サンプルの ABBYYFlexiCapture アプリケーションにレコード型を追加します。

サンプルの ABBYYFlexiCapture アプリケーションを変更すると、別の種類の文書を保存できるようになります。そのためには、新しいレコード型を作成し、さらにいくつかの変更を加える必要があります。

<div id="create-an-infrastructure-for-storing-and-displaying-data-in-appian">
  ## Appian でデータを保存・表示するためのインフラストラクチャを作成する
</div>

レコードタイプは、Tempo でデータストアの情報を表示します。

Appian で新しい種類のデータを保存・表示するには、次のタスクを順番に完了して、それを支えるインフラストラクチャを構築します。

1. [データベーステーブル (データ型) を作成する](#datatype)。
2. [データソースを作成する](#datasource)。
3. [データストアを作成する](#datastore)。
4. [レコードタイプを作成する](#recordtype)。
5. [データストアとデータ型を関連付けるため、「Data Store Entity」型の定数を作成する](#datastoreentity)。
6. [`AFC_GetDataTypeByRecordTypeName` ルールと `AFC_GetConstantDSEByRecordTypeName` ルールを編集する](#rulesedit)。
7. [ABBYY FlexiCapture から受信した処理済みファイルの保存先となる、「ナレッジセンター」型のフォルダーを作成する](#knowledgecenter)。

### <a id="datatype" />データ型を作成する

<Steps>
  <Step title="ABBYYFlexiCapture アプリケーションを開く">
    Appian Designer で ABBYYFlexiCapture アプリケーションを開き、**新規 → データ型** をクリックします。
  </Step>

  <Step title="データ型を作成する">
    **一から作成** を選択し、必須の **Name** field に入力して、**Create & Edit** をクリックします。
  </Step>

  <Step title="テーブルの field を追加する">
    開いたダイアログで、**New Field** ボタンをクリックしてデータベーステーブルの field を作成します。ABBYY FlexiCapture Connector for Appian によってこのテーブルにデータが入力され、その後、レコードがこのテーブルから Appian にデータをロードします。

    <Warning>
      テーブルには、`FolderId` という名前の、型が `Number(Integer)` の主キー field が必要です。この field は一意の主キーとして機能し、テーブル内のデータを ナレッジセンター フォルダーに関連付けます。
    </Warning>
  </Step>

  <Step title="テーブルの列用の補助データ型を追加する">
    1. Appian のデータ型テーブルで ABBYY FlexiCapture からのテーブルの行を受け取れるようにするには、まず、Document Definition のテーブルの列に対応する field 用の補助データ型を作成します。
    2. データ型に field を作成し、その型として補助データ型の名前を指定して、**Array** オプションを選択します。
  </Step>

  <Step title="データ型を保存する">
    テーブルに必要な変更をすべて加えたら、**Save** をクリックします。
  </Step>
</Steps>

### <a id="datasource" />データソースを作成する

<Steps>
  <Step title="Data Sourcesページを開く">
    Appian Administration Consoleを開き、左側の**Integration**セクションで**Data Sources**をクリックします。
  </Step>

  <Step title="新しいデータソースを作成する">
    開いた**Data Source Management**ページで、**New Data Source**をクリックします。
  </Step>

  <Step title="データソースのfieldを入力する">
    **Configure Data Source**ダイアログで、次の必須fieldを入力します。

    * **Name** – 新しいデータソースの名前 (例: `jdbc/Appian`)
    * **Type** – 新しいデータソースの種類 (例: `SQL Server`)
    * **Username/Password** – データベースユーザーの認証情報
    * **Connection String** – データベースへの接続に使用する文字列 (例: `jdbc:sqlserver://appian.company.com:1433;databaseName=appian_db`)
  </Step>

  <Step title="接続をテストして保存する">
    1. **Test Connection**をクリックし、入力した情報が正しいことを確認します。
    2. テストに成功したら、**Save**をクリックします。
  </Step>
</Steps>

### <a id="datastore" />データストアを作成する

<Steps>
  <Step title="ABBYYFlexiCapture アプリケーションを開く">
    Appian Designer で ABBYYFlexiCapture アプリケーションを開き、**New → Data Store** をクリックします。
  </Step>

  <Step title="データストアに名前を付ける">
    **Name** field に入力し、**Create & Edit** をクリックします。
  </Step>

  <Step title="Data Management タブでデータストアを設定する">
    Data Store エディターの **Data Management** タブで、次の操作を行います。

    1. データソースを選択します。
    2. **Add Entity** ボタンをクリックして、データ型を追加します。
    3. **Verify** ボタンをクリックして、データストアを検証します。
    4. **Save & Publish** をクリックします。
  </Step>
</Steps>

### <a id="recordtype" />レコード型を作成する

<Steps>
  <Step title="ABBYYFlexiCapture アプリケーションを開く">
    Appian Designer で ABBYYFlexiCapture アプリケーションを開き、**New → Record Type** をクリックします。
  </Step>

  <Step title="レコード型に名前を付ける">
    **Name** field と **Plural Name** field に入力し、**Create & Edit** をクリックします。
  </Step>

  <Step title="データと表示を設定する">
    開いたウィンドウで、次の操作を行います。

    1. **Data** セクションで **Data Store Entity** を選択し、データストアとデータ型を追加します。
    2. レコードリストの表示を設定します。詳細については、[レコードリストの設定](/ja/flexi-capture/connectors/appian/appian-rt-layout-modify#recordlistmodify)を参照してください。
    3. **Summary** タブの表示を設定します。詳細については、[レコードビューの設定](/ja/flexi-capture/connectors/appian/appian-rt-layout-modify#recordmodify)を参照してください。
  </Step>
</Steps>

### <a id="datastoreentity" />"Data Store Entity" 型の定数を作成する

この定数は、データストアをデータ型に関連付けます。新しいレコードが作成されると、この関連付けによってそのレコードのレコード型が決まります。

<Steps>
  <Step title="新しい定数を作成する">
    Appian Designer で ABBYYFlexiCapture アプリケーションを開き、**New → Constant** をクリックします。定数は新規作成され、既定の型は **Data Store Entity** です。
  </Step>

  <Step title="定数に名前を付ける">
    定数の名前を指定します。**Data Store** field と **Data Type** field には、前に作成したオブジェクトが設定されます。
  </Step>

  <Step title="定数を保存する">
    変更内容を既定の AFC Rules and Constants フォルダー、または任意のフォルダーに保存します。
  </Step>
</Steps>

### <a id="rulesedit" />ルールを編集する

新しいレコード型と定数を追加したら、新しいレコード型の条件を追加して、式ルールを更新します。

<Steps>
  <Step title="AFC_GetConstantDSEByRecordTypeName ルールを開く">
    1. Appian Designer で ABBYYFlexiCapture アプリケーションを開き、左側のペインで **Expression Rule** を選択します。
    2. `AFC_GetConstantDSEByRecordTypeName` ルールを見つけてクリックし、編集を開始します。
  </Step>

  <Step title="新しい定数の条件を追加する">
    Code Editor で、`null` を新しいレコード型と定数に対応する次の `if` 条件に置き換えます。

    ```text theme={null}
    if(ri!RecordTypeName == "Account Payable Records",
        cons!Constant_InvoiceProsessing_DSE,
        if(ri!RecordTypeName == "Credit Card Applications",
            cons!Constant_CreditApplication_DSE,
            if(ri!RecordTypeName == "New Records", /* RecordTypeName には、新しいレコード型の名前を複数形で指定します。 */
                cons!New_Constant, /* cons! の後に、前に作成した定数の名前を指定します。 */
                null
            )
        )
    )
    ```

    入力された `RecordTypeName` が保存済みのレコード型名 (複数形) と一致する場合は、data store とデータ型を関連付ける `DataStoreEntity` 定数が返されます。
  </Step>

  <Step title="AFC_GetDataTypeByRecordTypeName ルールを編集する">
    1. Appian Designer で ABBYYFlexiCapture アプリケーションを開き、左側のペインで **Expression Rule** を選択します。
    2. `AFC_GetDataTypeByRecordTypeName` ルールを見つけてクリックし、編集を開始します。
    3. Code Editor で、`null` を新しいレコード型とデータ型の完全名に対応する次の `if` 条件に置き換えます。

    ```text theme={null}
    if(ri!RecordTypeName == "Account Payable Records",
        'type!{urn:com:appian:types}Invoice_Header',
        if(ri!RecordTypeName == "Credit Card Applications",
            'type!{urn:com:appian:types}Credit_ApplicationMain',
            if(ri!RecordTypeName == "New Records", /* RecordTypeName には、新しいレコード型の名前を複数形で指定します。 */
                'type!{urn:com:appian:types}New_Data_Type', /* type! フィールドには、データ型の完全名と名前空間を指定します。 */
                null
            )
        )
    )
    ```

    入力された `RecordTypeName` が保存済みのレコード型名 (複数形) と一致する場合は、作成したデータ型の完全名を含む string が返されます。名前空間はデータ型のプロパティで確認できます。データ型のプロパティを表示するには、ABBYYFlexiCapture アプリケーションでそのデータ型を開きます。左上隅にあるデータ型名をクリックすると **Data Type Properties** ウィンドウが開き、そこで名前空間を確認できます。
  </Step>
</Steps>

### <a id="knowledgecenter" />ナレッジセンターを作成する

Appian に文書画像を保存するには、ナレッジセンターのフォルダーを作成します。

<Steps>
  <Step title="ABBYYFlexiCapture アプリケーションを開く">
    Appian Designer で ABBYYFlexiCapture アプリケーションを開き、**New → Folder** をクリックします。
  </Step>

  <Step title="Knowledge Center フォルダーを作成する">
    フォルダーの種類として **Knowledge Center** を選択し、**Knowledge Center Name** を入力して、**Create** をクリックします。
  </Step>
</Steps>

このフォルダーの ID は、ABBYY FlexiCapture Connector for Appian のエクスポート スクリプト設定の `Repository` field に渡されます。ABBYY FlexiCapture からデータがエクスポートされると、画像ファイルはこのフォルダーに保存されます。

```xml theme={null}
<!--DMSリポジトリ名-->
    <Repository>5995</Repository>
```

**Knowledge Center Properties** ダイアログの **Runtime Data** タブで、[ナレッジセンターのIDを確認できます](/ja/flexi-capture/connectors/appian/appian-fields-config#note-knowledgecenterid)。
