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

# XML Map 配置

> XML Map 端口的所有可配置属性。

export const Message = () => <>
    <p><em>消息设置确定端口如何搜索消息并在处理后管理它们。</em></p>
    <p><strong>注意：</strong>以下设置已弃用，默认处于隐藏状态。只有先前已启用这些设置或将其配置为非默认值的端口才会显示它们。若要保留成功处理的文件副本，请在工作流中右键单击该端口，选择<strong>显示成功路径</strong>，然后将成功路径连接到 <a href="/26.3/self-hosted/zh/connectors/file">File 端口</a>。</p>
    <table>
      <thead>
        <tr><th>设置</th><th>描述</th></tr>
      </thead>
      <tbody>
        <tr>
          <td><strong>保存到已发送文件夹</strong>（已弃用）</td>
          <td>将端口处理的文件复制到 Sent 文件夹。默认禁用。保存到 Sent 文件夹中的文件不受<a href="/26.3/self-hosted/zh/getting-started/administration/settings/encryption-at-rest">静态加密</a>保护。</td>
        </tr>
        <tr>
          <td><strong>已发送文件夹方案</strong>（已弃用）</td>
          <td>按所选时间间隔对 <strong>Sent</strong> 文件夹中的文件进行分组。仅在启用<strong>保存到已发送文件夹</strong>时适用。</td>
        </tr>
      </tbody>
    </table>
  </>;

export const MiscConnector = () => <>
    <p><em>特殊设置适用于特定用例。</em></p>
    <table>
      <thead>
        <tr>
          <th>设置</th>
          <th>描述</th>
        </tr>
      </thead>
      <tbody>
        <tr>
          <td><strong>其他设置</strong></td>
          <td>允许在以分号分隔的列表中配置隐藏的端口设置，例如 <code>setting1=value1;setting2=value2</code>。正常的端口用例和功能不需要使用这些设置。</td>
        </tr>
      </tbody>
    </table>
  </>;

export const Logging = () => <>
    <p><em>用于管理日志创建和存储的设置。</em></p>
    <table>
      <thead>
        <tr>
          <th>设置</th>
          <th>描述</th>
        </tr>
      </thead>
      <tbody>
        <tr>
          <td><strong>日志级别</strong></td>
          <td>指定要记录在端口日志目录中的信息类型：
            <ul>
              <li><b>None</b> - 不创建任何日志。</li>
              <li><b>Error</b> - 仅当端口遇到错误时才创建日志。</li>
              <li><b>Warning</b> - 仅当端口发出警告时才创建日志。</li>
              <li><b>Info</b> - 记录工作流的一般信息，包括任何错误和警告（如果适用）。</li>
              <li><b>Debug</b> - 记录成功和失败工作流的详细调试信息。</li>
              <li><b>Trace</b> - 记录成功和失败工作流的详细跟踪信息。</li>
            </ul>
            <strong>请注意：</strong><strong>Debug</strong> 和 <strong>Trace</strong> 级别的日志可能会记录敏感信息，包括消息内容和 SSL 证书。尽管连接属性（例如密码）被屏蔽了，但在与您的组织外部共享它们之前，请查看此级别的日志以避免泄漏敏感信息。</td>
        </tr>
        <tr>
          <td><strong>日志文件夹结构</strong></td>
          <td>指示端口根据选定的时间间隔将日志文件夹中的文件分组。例如，<strong>Weekly</strong> 选项指示端口每周创建一个新的子文件夹，并将该周的所有日志存储在该文件夹中。空白设置告诉端口将所有日志直接保存在日志文件夹中。对于处理许多事务的端口，使用子文件夹有助于保持日志的有序性并提高性能。</td>
        </tr>
        <tr>
          <td><strong>保留消息副本</strong></td>
          <td>指示端口在日志目录中保存最新消息副本的切换。请注意，端口每个子文件夹只保留一个消息，并且端口在再次运行时会覆盖以前保存的消息。</td>
        </tr>
      </tbody>
    </table>
  </>;

export const NameDescription = ({extraRows}) => <table>
    <thead>
      <tr>
        <th>设置</th>
        <th>描述</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><strong>端口 Id</strong></td>
        <td>端口的静态、唯一标识符。</td>
      </tr>
      <tr>
        <td><strong>端口类型</strong></td>
        <td>显示端口类型及其用途的描述。</td>
      </tr>
      <tr>
        <td><strong>端口描述</strong></td>
        <td>一个可选字段，用于提供端口及其在流中的角色的自由格式描述。</td>
      </tr>
      {extraRows}
    </tbody>
  </table>;

## XML Map 选项卡

使用此选项卡上传源和目标模板文件，并构建映射。有关如何使用映射编辑器的详细说明，请参阅[映射](../../mapping/mapping)文档中的[配置映射](../../mapping/mapping-config)。

## 设置选项卡

### 端口配置

与端口核心操作相关的设置。

<NameDescription />

## 高级选项卡

### AI

| 设置         | 说明                                                                |
| ---------- | ----------------------------------------------------------------- |
| 自定义 AI 提示词 | 勾选后，可覆盖 AI 辅助映射用于创建源文档与目标文档映射关系的默认系统提示词和用户提示词。首次启用时，文本框中会显示默认提示词。 |

### 高级设置

高级文件处理设置。

| 设置     | 说明                                                                                                        |
| ------ | --------------------------------------------------------------------------------------------------------- |
| XML 声明 | 指定是否在生成的 XML 文件中包含 XML 声明。                                                                                |
| 缓存内容   | 指定解析器是否缓存每个 XML 元素的原始内容，以便映射期间通过 `xsubtree` 获取。该设置会增加内存使用，但允许原样复制子树。详情请参阅[复制 XML 子树](#复制-xml-子树xsubtree)。 |
| 本地文件方案 | 为连接器输出消息分配文件名的方案。可以使用宏在文件名中动态加入标识符和时间戳。                                                                   |
| 处理延迟   | 连接器处理文件前等待的时间（秒）。                                                                                         |

### 消息

<Message />

### 日志

<Logging />

#### 杂项

<MiscConnector />

## 自动化选项卡

### 自动化设置

与端口自动处理文件相关的设置。

| 设置 | 说明                     |
| -- | ---------------------- |
| 发送 | 指示端口在文件准备就绪后自动发送文件的开关。 |

#### 性能

| 设置      | 说明              |
| ------- | --------------- |
| 最大工作线程数 | 从线程池消耗的最大工作线程数。 |
| 最大文件数   | 每个线程发送的最大文件数。   |

## 警报选项卡

在执行服务级别协议 (SLA) 之前，需要设置用于通知的电子邮件警报。默认情况下，知行之桥使用[警报](../../getting-started/administration/settings/settings-page#alerts)选项卡上的全局设置。若要对此端口使用其他设置，请开启 **覆盖全局设置**。

默认情况下，错误警报处于启用状态，这意味着每当发生错误时都会发送电子邮件。若要关闭它们，请取消勾选 **启用** 复选框。

输入 **主题**（必填），然后可选择输入以逗号分隔的 **收件人** 邮箱列表。

## SLA 选项卡

SLA 允许配置工作流中端口预期发送或接收的数量，并设置期望达到该数量的时间范围。当 SLA 未满足时，知行之桥会发送电子邮件警告用户，并将 SLA 标记为 *At Risk*，这意味着如果 SLA 很快仍未满足，它将被标记为 *Violated*。

若要定义 SLA，请开启 **预期数量**，然后点击 **设置** 选项卡。

* 如果端口有单独的发送和接收操作，请使用单选按钮指定 SLA 适用的方向。
* 在窗口的 **至少预期** 部分，设置期望处理的最小交易数，使用 **每** 字段指定时间范围，指明 SLA 应何时生效，并勾选一周中的相应日期。
* 在窗口的 **将状态设置为 'At Risk'** 部分，指定 SLA 应何时标记为有风险。勾选 **发送 'At Risk' 通知** 可在违约前接收通知。

<Note>可以在维护窗口期间关闭 SLA 警报。点击导航栏上的 **设置**，然后导航到 **警报 > 常规警报**。点击平板和铅笔图标进行编辑，并取消勾选 **SLA 警报** 设置。</Note>

## 复制 XML 子树（xsubtree）

[xsubtree](../../scripting/value-formatters/function-formatters#xsubtree-xpath) 格式化程序会将源元素的原始 XML 内容原样复制到目标，保留完整子树结构，不经过映射引擎重新序列化。需要让源文档的一部分在不知道内部结构的情况下保持不变时，这十分有用。

首先在[高级选项卡](#高级选项卡)中启用**缓存内容**，使解析器保留各元素的原始内容。该设置的内存用量会随源文档大小增加。

随后在目标节点的[自定义脚本](./xml-map-advanced#自定义脚本)中使用：

```text theme={null}
[xsubtree(ElementName)]
```

其中 `ElementName` 是要复制的源元素名称或相对 XPath。

### 示例

源文档：

```xml theme={null}
<Items>
  <Item><Sub><X>1</X><Y>2</Y></Sub></Item>
  <Item><Sub><A>Hello</A><B>World</B></Sub></Item>
  <Item><Sub><Name>Test</Name></Sub></Item>
</Items>
```

对 `/Items/Item` 使用 Foreach，并在目标节点使用 `[xsubtree(Sub)]`，会生成：

```xml theme={null}
<Out xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Result><Sub><X>1</X><Y>2</Y></Sub></Result>
  <Result><Sub><A>Hello</A><B>World</B></Sub></Result>
  <Result><Sub><Name>Test</Name></Sub></Result>
</Out>
```

每个 `Sub` 元素及其全部子元素都会按源文档原样复制。

<Note>如果源中不存在指定元素，`xsubtree` 返回空结果。</Note>

## 宏

| 宏             | 说明                     |
| ------------- | ---------------------- |
| ConnectorID   | 端口的 Connector ID。      |
| Ext           | 文件扩展名（例如 `xml`、`csv`）。 |
| Filename      | 消息的原始文件名。              |
| FilenameNoExt | 不带文件扩展名的消息原始文件名。       |
| MessageId     | 分配给消息的唯一标识符。           |
| RegexFilename | 根据原始文件名上的正则表达式派生出的文件名。 |
| Header        | 按名称引用的消息头值。            |
| LongDate      | 长格式的当前日期/时间。           |
| ShortDate     | 短格式的当前日期/时间。           |
| DateFormat    | 自定义格式的当前日期/时间。         |
| Vault         | 按名称引用的保管库条目值。          |
