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

# Finalize コネクタ

> Finalize コネクタは、後続のフローが成功した後に保留中のソースメッセージを完了し、ソースコネクタが安全にクリーンアップを実行できるようにします。

Finalize コネクタは、保留中のソースメッセージを完了します。フローの成功パスの末尾に配置することで、フローがファイルを正常に処理したことを確認し、ファイルを受信したコネクタがソースファイルの削除などの後処理を実行できるようにします。Finalize コネクタはCData Arcに含まれており、個別のライセンスを必要としません。

> [!NOTE]
>
> 完了処理を保留できるのは[File コネクタ](https://docs.arc.cdata.com/26.4/self-hosted/ja/connectors/file.md)のみです。他のソースコネクタはこの機能をサポートしていません。

## 主な機能

* ソースファイルのクリーンアップを保留し、後続のフローが成功するまで受信済みファイルが削除されないようにします
* タイムアウトを自動的に処理し、ソースファイルを削除することなく保留中のファイルを再度受信可能な状態に戻します
* メッセージ自体にソースコネクタを特定するための情報が含まれているため、ソースコネクタへのリンクに設定は不要です
* メッセージを完了できない場合に、明確なエラーメッセージを表示します

## 概要

デフォルトでは、File コネクタなどのソースコネクタは、ファイルを受信するとすぐにメッセージを完了します。ソースフォルダからのファイルの削除などの後処理はすぐに実行されるため、後続のフローが後で失敗した場合でも、その処理は行われてしまいます。

File コネクタで**受信ファイルの完了処理を保留**を有効にすると、コネクタは受信した各ファイルを保留状態で保持するようになります。Finalize コネクタは、残りのフローが成功した後に保留中のファイルを完了します。

メッセージがFinalize コネクタに到達すると、コネクタは次の処理を行います。

1. メッセージが保持している保留中のソース情報を読み取ります。
2. ファイルを受信したソースコネクタを特定します。
3. ソースコネクタにファイルの完了を指示します。これにより、ソースコネクタに設定されたクリーンアップ処理（例えば、\*\*ファイルを削除（受信後）\*\*が有効な場合のファイルの削除）がトリガーされます。

Finalize コネクタにはアウトプットがありません。[フロー](https://docs.arc.cdata.com/26.4/self-hosted/ja/flows/flows.md)内の最後のコネクタとしてのみ使用できます。

## コネクタの設定

このセクションでは、設定可能なすべてのコネクタプロパティについて説明します。

### 設定タブ

*コネクタの基本的な設定に関連する設定です。*

<table><thead><tr><th>設定</th>
<th>説明</th></tr></thead>
<tbody><tr><td>**Connector Id**</td>
<td>コネクタの静的で一意の識別子です。</td></tr>
<tr><td>**Connector Type**</td>
<td>コネクタ名とその機能の説明を表示します。</td></tr>
<tr><td>**Connector Description**</td>
<td>コネクタおよびフロー内でのその役割について自由形式の説明を提供するためのオプションフィールドです。</td></tr></tbody></table>

### 高度な設定タブ

#### その他の設定

| 設定 | 説明 |
| - | - |
| **処理の遅延** | **トランザクション**タブに配置されたファイルの処理を遅延させる時間（秒）。これは旧式の設定です。代替として、ローカルファイルシステムの管理には[File コネクタの使用](https://docs.arc.cdata.com/26.4/self-hosted/ja/flows/designing-a-flow.md#ローカルファイルシステムとのやり取り)がベストプラクティスです。 |

#### ロギング

*ログの作成と保存を制御する設定です。*

<table><thead><tr><th>設定</th>
<th>説明</th></tr></thead>
<tbody><tr><td>**Log Level**</td>
<td>コネクタが生成するログの詳細度です。サポートを依頼する際は、これを**Debug** に設定してください。</td></tr>
<tr><td>**Log Subfolder Scheme**</td>
<td>選択した間隔に従って、コネクタがLogs フォルダ内のファイルをグループ化するよう指示します。**Weekly** オプション（デフォルト）は、コネクタが毎週新しいサブフォルダを作成し、その週のすべてのログをそのフォルダに保存するよう指示します。この設定を空白のままにすると、コネクタはすべてのログをLogs フォルダに直接保存します。多数のトランザクションを処理するコネクタでは、サブフォルダを使用することでログを整理しやすくなり、パフォーマンスが向上します。</td></tr>
<tr><td>**Log Messages**</td>
<td>処理したファイルのログエントリにファイル自体のコピーを含めるには、これをオンにします。これを無効にすると、**Transactions** タブからファイルのコピーをダウンロードできなくなる場合があります。</td></tr></tbody></table>

#### その他

*Miscellaneous 設定は、特定のユースケース向けの設定です。*

<table><thead><tr><th>設定</th>
<th>説明</th></tr></thead>
<tbody><tr><td>**Other Settings**</td>
<td>非表示のコネクタ設定をセミコロン区切りのリストで設定できます（例：`setting1=value1;setting2=value2`）。通常のコネクタのユースケースや機能では、これらの設定の使用は必要ありません。</td></tr></tbody></table>

### オートメーションタブ

#### オートメーション設定

*コネクタによるファイルの自動処理に関連する設定です。*

| 設定 | 説明 |
| - | - |
| **送信** | ファイルの準備が整った際に、コネクタが自動的に送信するよう指示するトグルです。 |
| **再試行間隔** | 送信に失敗した場合に、コネクタが再試行するまで待機する間隔です。 |
| **最大試行回数** | コネクタがメッセージの送信を試行する回数です。この値を*1*に設定すると、コネクタは再試行を行わず、最初の送信試行のみを行います。コネクタは各試行の間、**再試行間隔**で指定された時間だけ待機します。 |

#### パフォーマンス

*コネクタへのリソースの割り当てに関する設定です。*

<table><thead><tr><th>設定</th>
<th>説明</th></tr></thead>
<tbody><tr><td>**Max Workers**</td>
<td>このコネクタでファイルを処理するためにスレッドプールから消費されるワーカースレッドの最大数です。設定すると、[Advanced Settings](https://docs.arc.cdata.com/26.4/self-hosted/ja/getting-started/administration/settings/advanced-settings.md) ページの[Performance Settings](https://docs.arc.cdata.com/26.4/self-hosted/ja/getting-started/administration/settings/performance-settings.md) 部分にあるデフォルト設定が上書きされます。</td></tr>
<tr><td>**Max Files**</td>
<td>コネクタに割り当てられた各スレッドが送信するファイルの最大数です。設定すると、[Advanced Settings](https://docs.arc.cdata.com/26.4/self-hosted/ja/getting-started/administration/settings/advanced-settings.md) ページの[Performance Settings](https://docs.arc.cdata.com/26.4/self-hosted/ja/getting-started/administration/settings/performance-settings.md) 部分にあるデフォルト設定が上書きされます。</td></tr></tbody></table>

### アラートタブ

*アラートの設定に関する設定です。*

サービスレベルアグリーメント（SLA）を実行する前に、通知用のメールアラートをセットアップする必要があります。デフォルトでは、Arc は[Alerts](https://docs.arc.cdata.com/26.4/self-hosted/ja/getting-started/administration/settings/alerts.md) タブのグローバル設定を使用します。このコネクタに別の設定を使用するには、**Override global setting** をオンに切り替えます。

デフォルトではエラーアラートが有効になっており、エラーが発生するたびにメールが送信されます。これをオフにするには、**Enable** チェックボックスのチェックを外します。

**Subject**（必須）を入力します。**Allow ArcScript in Subject** をチェックすると、**Subject** フィールドでArcScript を使用できます。これを選択すると、**ArcScript エディタ**ボタンが表示されます（![arcscript editor button](https://docs.arc.cdata.com/26.4/images/rest_arcscript_editor.png)）。

必要に応じて**Recipient** のメールアドレスをカンマ区切りのリストで入力します。

### SLA タブ

*サービスレベルアグリーメント（SLA）の設定に関する設定です。*

SLA を使用すると、フロー内のコネクタが送受信すると見込まれるボリュームを設定し、そのボリュームを達成すると見込まれる期間を設定できます。CData Arc は、SLA が達成されない場合にユーザーへ警告するメールを送信し、SLA を*At Risk* としてマークします。これは、SLA が間もなく達成されない場合に*Violated* としてマークされることを意味します。これにより、ユーザーは介入してSLA が達成されない理由を特定し、適切な対応を取る機会を得られます。At Risk 期間の終了時点でもSLA が達成されない場合、SLA はviolated としてマークされ、ユーザーに再度通知されます。

SLA が*At Risk* または*Violated* に移行したことも[アプリケーションログ](https://docs.arc.cdata.com/26.4/self-hosted/ja/getting-started/administration/activity.md#アプリケーションログ)に書き込まれるため、Application Performance Monitoring（APM）やログ収集ツールでもアラートを設定できます。

SLA を定義するには、**Expected Volume** をオンに切り替え、**Settings** タブをクリックします。

![SLA Empty](https://docs.arc.cdata.com/26.4/images/sla_empty.png)
<ul><li>コネクタに送信と受信の個別のアクションがある場合は、ラジオボタンを使用してSLA がどちらの方向に適用されるかを指定します。</li>
<li>ウィンドウの**Expect at least** 部分で、次を設定します。
<ul><li>処理を見込む最小トランザクション数（ボリューム）を設定します。</li>
<li>**Every** フィールドを使用して期間を指定します。</li>
<li>SLA を有効にするタイミングを指定します。**Starting on** を選択した場合は、日付および時刻フィールドを入力します。</li>
<li>SLA を有効にしたい曜日のチェックボックスをオンにします。必要に応じて、ドロップダウンで**Everyday** を選択します。</li></ul></li>
<li>ウィンドウの**Set status to 'At Risk'** 部分で、SLA をAt Risk としてマークするタイミングを指定します。
<ul><li>デフォルトでは、SLA が違反状態になるまで通知は送信されません。これを変更するには、**Send an 'At Risk' notification** をオンにします。</li></ul></li></ul>

次の例は、月曜日から金曜日まで毎日1000 件のファイルを受信すると見込むコネクタ向けに設定されたSLA を示しています。1000 件のファイルが受信されていない場合、期間の終了の1時間前にAt Risk 通知が送信されます。

![SLA Configuration Example](https://docs.arc.cdata.com/26.4/images/sla_defined.png)

> [!NOTE]
>
> 必要に応じてSLA アラートをオフにすることができます。これはメンテナンスウィンドウ中に役立ちます。navbar で**Settings** をクリックし、**Alerts > General Alerts** に移動します。タブレットと鉛筆のアイコンをクリックして編集し、**SLA Alerts** 設定のチェックを外します。

### トランザクションタブ

このタブには、コネクタに関連するすべてのメッセージが一覧表示されます。検索バーを使用して特定のメッセージを検索するか、ファネルアイコンをクリックしてフィルタを適用します。時間、メッセージの方向、ステータスでフィルタできます。

## Finalize コネクタをFile コネクタと組み合わせて使用する

受信したファイルの削除をフローが成功するまで遅延させるには、次の手順に従います。

1. ファイルを受信するFile コネクタで**受信ファイルの完了処理を保留**を有効にし、ソースファイルを削除したい場合は\*\*ファイルを削除（受信後）\*\*も有効にします。詳しくは、[Receive](https://docs.arc.cdata.com/26.4/self-hosted/ja/connectors/file.md#receive)を参照してください。
2. ファイルを処理する残りのフローを構築します。
3. Finalize コネクタを追加し、ファイルを処理する最後のコネクタの**成功パス**に接続します。

例えば、File コネクタでファイルを受信し、X12 コネクタで変換し、SQL Server にデータをアップサートしてから完了処理を行うフローは、次のように構成します。

![A flow with a File connector, an X12 connector, a SQL Server connector, and a Finalize connector](https://mintcdn.com/cdata-arc/yfA3o6U6SThtnLN0/26.4/images/finalize-flow.png?fit=max\&auto=format\&n=yfA3o6U6SThtnLN0\&q=85\&s=c5714d55ee8a25aa6bae5c676cb5d908)

1. File コネクタが設定されたパスからファイルを受信し、保留状態で保持します。
2. X12 コネクタがファイルをXML に変換します。
3. SQL Server コネクタがXML データをSQL Server にアップサートします。
4. SQL Server コネクタの**成功パス**がFinalize コネクタに接続されており、保留中のファイルを完了します。

完了処理を保留できるのは、フローの先頭でファイルを受信するFile コネクタのみです。フローの後段でファイルをフォルダに送信するFile コネクタは何も保留しませんが、その場合もフローの末尾にFinalize コネクタを配置して、元のファイルを完了させることができます。

ファイルは、次のいずれかが発生するまで保留状態のままとなり、再度受信されることはありません。

* **ファイルがFinalize コネクタに到達する。** File コネクタがファイルを完了し、設定されたクリーンアップ処理を実行します。
* **保留タイムアウトに達する。** File コネクタの[オートメーションタブ](https://docs.arc.cdata.com/26.4/self-hosted/ja/connectors/file.md#automation-settings)にある\*\*受信保留タイムアウト（分）\*\*設定がこのタイムアウトを制御します。メッセージにはPending Timeout エラーが記録され、ソースファイルは削除されず、ファイルは再び受信できる状態に解放されます。

> [!NOTE]
>
> 完了処理の保留が有効なコネクタから送られていないメッセージは完了できません。通常のメッセージをFinalize コネクタに送信すると、エラーになります。

### ソースファイルの変更

ソースファイルが受信されてから完了処理が行われるまでの間に変更された場合、コネクタはそのファイルを削除しません。アプリケーションログには、次のメッセージが記録されます。ここで `{0}` はファイル名です。

`Source file '{0}' changed after it was received. Deferred finalization will not delete it.`

### 保留タイムアウト

File コネクタの**オートメーション**タブにある\*\*受信保留タイムアウト（分）\*\*設定は、受信したファイルが保留状態のままになる時間を制御します。デフォルトは10分で、0に設定するとファイルは無期限に保留されます。タイムアウトが経過するまでに保留中のメッセージが完了しなかった場合は、次のようになります。

* アプリケーションログに、メッセージが完了処理を待っている間に保留タイムアウトを超過したことが記録されます。
* 件名**Send Failure: Pending Timeout**のエラー通知が送信されます。
* メッセージにはPending Timeout エラーが記録されます。これは**トランザクション**タブに**Error**として表示されます。
* ソースファイルは削除されず、ファイルは再び受信可能な状態になります。

保留メッセージのチェックは、**Check Pending** オートメーションアクションとして実行されます。**Debug** [ログレベル](https://docs.arc.cdata.com/26.4/self-hosted/ja/getting-started/administration/activity.md#ログレベル)では、[オートメーションログ](https://docs.arc.cdata.com/26.4/self-hosted/ja/getting-started/administration/activity.md#オートメーションログ)に各チェックと、処理されたタイムアウトメッセージの数が記録されます。

### 保留メッセージの情報

完了処理が保留されているファイルには、メッセージヘッダーに追加情報が含まれます。ヘッダーを確認するには、File コネクタの**トランザクション**タブでメッセージを開き、**詳細**タブに移動します。

| ヘッダー | 説明 |
| - | - |
| **File-Deferred-Source** | 完了処理を待っているソースファイルのパスです。 |
| **Defer-Finalize** | 完了処理のチェーンの一部となるワークスペース、コネクタ、およびメッセージId です。Finalize コネクタはこのヘッダーを使用して、ソースコネクタと完了すべき保留中のメッセージを特定します。 |
| **Processed** | メッセージを処理した各コネクタとそのステータスを一覧表示します。完了処理が保留されているFile コネクタは、メッセージが完了するまで**Pending**として表示されます。 |

## トラブルシューティング

Finalize コネクタは、メッセージを完了できない場合に次のエラーを報告します。

| エラー | 原因と解決策 |
| - | - |
| メッセージに保留元の系統情報がありません。 | メッセージが、完了処理の保留が有効なコネクタから送られていません。フローの先頭にあるFile コネクタで**受信ファイルの完了処理を保留**を有効にしてください。確認するには、メッセージの詳細に**Defer-Finalize**ヘッダーが含まれているかをチェックします。 |
| 保留元の系統情報が無効であるか、すでに完了しています。 | ソースメッセージを識別する情報が不正な形式であるか、メッセージがすでに完了処理されています。同じメッセージが複数回Finalize に送信されていないか、フローを確認してください。 |
| 保留元のソースコネクタ`{workspace}:{connector}`が存在しません。 | ファイルを受信した後に、ソースコネクタが削除または名前変更されました。コネクタを復元するか、ソースからファイルを再処理してください。 |
| 保留元のソースコネクタ`{workspace}:{connector}`がビジー状態です。 | ソースコネクタが他の処理を実行中です。ソースコネクタの処理が完了した後に、送信を再試行してください。 |
| 保留中のソースメッセージ`{id}`が`{workspace}:{connector}`内に存在しません。 | 保留中のメッセージがFinalize コネクタに到達する前にタイムアウトしました。これが頻繁に発生する場合は、フローの完了にFile コネクタの\*\*受信保留タイムアウト（分）\*\*より長い時間がかかっていないかを確認し、必要に応じてタイムアウトを延長してください。 |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.