---
order: 4
navTitle: 程序流节点变量
---
# 程序流节点变量{#aflnode-properties}

<!-- AUTO-GENERATED: npm run build:meta-docs -->

本文列出程序流节点在表达式中可读取的变量。表达式编辑器中通常显示中文名称。

## 使用方式{#usage}

在程序流表达式中引用节点变量时，先选择节点，再选择变量。例如“HTTP请求”节点的“状态码”变量可写成：

```text
[HTTP请求].[状态码]
```

不同节点可读取的变量不同。通用变量来自程序流节点能力，特殊变量来自节点自己的属性配置。

## 通用节点变量{#common-vars}

所有程序流节点都可以读取以下通用变量。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$id` | 组件ID | 唯一标识一个组件，如程序流中的一个节点、页面中的一个可视化组件。<br><br>也用作数据行的下级变量，表示当前行的标识值。行标识值并非固定字段，而是根据<br>计算区域的查询类型动态推断：<br><br>- 分组查询：值为维度成员值，即分组字段的聚合键。<br>- 层次展开的明细查询：值为层次路径值，表示当前行在层次树中的位置。<br>- 纯明细查询：值为行主键值。<br>- 单行计算区域：无行标识，返回 undefined。 |
| `$name` | 名称 | 如输入组件的标题、字段的名称（不是物理字段名）、程序流节点的标题…… |
| `$type` | 类型 | 一个字符串，表示组件的类型。<br><br>如程序流节点的类型、可视化组件的类型…… |
| `$success` | 成功 | 一个布尔值，表示如程序流节点最后一次是否成功运行了。<br><br>为false表示没有运行或运行错误了 |
| `$errorCode` | 错误状态码 | 如果没有错误此属性为空，此属性默认等于`$error`的errCode子属性。 |
| `$errorMessage` | 错误信息 | 如果没有错误此属性为空，此属性默认等于`$error`的message子属性。 |
| `$error` | 错误对象 | 通过 `程序流节点.$error` 可以访问节点执行过程中发生的错误信息。<br><br>下级变量定义详见 `$error.md` 文档。<br><br>实现说明：<br>- 变量类：`ExpVar_$error`（实现 `IExpVar` 接口）<br>- 结果类：`$Error`（实现 `IExpressionAccessible` 接口）<br>- 变量接收基础对象`Error` |
| `$runCount` | 运行次数 | 一个整形，表示如程序流节点运行过几次，在循环中可能会有多次。 |
| `$startTime` | 开始时间 | 如果节点可能在循环中多次执行，那么表示最后一次执行的开始时间。 |
| `$elapsedTime` | 运行时长(ms) | 运行时长，单位毫秒。<br><br>如程序流节点运行耗费了多长时间。 |
| `$endTime` | 结束时间 | 如果节点可能在循环中多次执行，再开始执行时此属性会设置为0，执行完成后表示最后一次执行的结<br>束时间。 |
| `$outPort` | 出口 | 表示程序流节点执行过程中从哪个输出端口出去了。 |

## 文件{#aflnode-group-file}

### 读取文件元数据{#aflnode-read-file-meta-data}

类型值：`readFileMetaData`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$result` | 结果数据 | 表示某些节点的结果数据，例如执行SQL节点的查询结果、HTTP请求节点的响应数据等。<br><br>执行sql节点查询的结果集返回的是一个"Column Named"二维数组，可以通过数组函数访问。 |
| `$exists` | 是否存在 | 比如程序流节点“读取文件信息”，标识文件是否存在。 |
| `$files` | 子文件列表 | 读取文件元数据时，可能文件有子文件，可以通过此变量来获取子文件元数据信息，值是子文件<br>元数据数组 |

### 读取文件内容{#aflnode-read-file-content}

类型值：`readFileContent`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$result` | 结果数据 | 表示某些节点的结果数据，例如执行SQL节点的查询结果、HTTP请求节点的响应数据等。<br><br>执行sql节点查询的结果集返回的是一个"Column Named"二维数组，可以通过数组函数访问。 |

## 输出{#aflnode-group-output}

### 脚本输出文件{#aflnode-action-script-output}

类型值：`actionScriptOutput`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$result` | 结果数据 | 表示某些节点的结果数据，例如执行SQL节点的查询结果、HTTP请求节点的响应数据等。<br><br>执行sql节点查询的结果集返回的是一个"Column Named"二维数组，可以通过数组函数访问。 |

## 对话框{#aflnode-group-dialog}

### 显示确认对话框{#aflnode-show-confirm-dialog}

类型值：`showConfirmDialog`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$result` | 结果数据 | 表示某些节点的结果数据，例如执行SQL节点的查询结果、HTTP请求节点的响应数据等。<br><br>执行sql节点查询的结果集返回的是一个"Column Named"二维数组，可以通过数组函数访问。 |
| `$confirmed` | 是否确认 | 确认对话框的属性，表示是否已确认。 |

## 数据{#aflnode-group-data}

### 删除数据{#aflnode-delete-data}

类型值：`deleteData`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$affectedRowCount` | 影响数据行数 | 表示程序流节点执行过程中，影响的数据行数，如删除数据。 |

### 复制数据{#aflnode-copy-data}

类型值：`copyData`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$affectedRowCount` | 影响数据行数 | 表示程序流节点执行过程中，影响的数据行数，如删除数据。 |

### 导入数据{#aflnode-import-data}

类型值：`importData`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$file` | 交互上传文件 | 表示前端交互过程中直接上传得到的临时上传文件 ID，供后续服务端节点读取上传文件。 |
| `$affectedRowCount` | 影响数据行数 | 表示程序流节点执行过程中，影响的数据行数，如删除数据。 |

### 执行SQL{#aflnode-execute-sql}

类型值：`executeSql`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$result` | 结果数据 | 表示某些节点的结果数据，例如执行SQL节点的查询结果、HTTP请求节点的响应数据等。<br><br>执行sql节点查询的结果集返回的是一个"Column Named"二维数组，可以通过数组函数访问。 |
| `$resultJson` | 查询结果数据json | 1. 执行查询sql时是一个JSON数组对象，形如`[{"column1":"value1","column2":"value2"},...]`<br>2. 执行大模型对象时，如果设置了json返回格式，那么此变量可以获取以对应格式的json |
| `$affectedRowCount` | 影响数据行数 | 表示程序流节点执行过程中，影响的数据行数，如删除数据。 |

### 插入数据{#aflnode-insert-data}

类型值：`insertData`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$affectedRowCount` | 影响数据行数 | 表示程序流节点执行过程中，影响的数据行数，如删除数据。 |
| `$generatedKey` | 自动设置的主键值 | 程序流插入节点生成的自增长主键变量值 |

### 更新数据{#aflnode-update-data}

类型值：`updateData`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$affectedRowCount` | 影响数据行数 | 表示程序流节点执行过程中，影响的数据行数，如删除数据。 |

## 调用{#aflnode-group-invoke}

### HTTP请求{#aflnode-http-request}

类型值：`httpRequest`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$result` | 结果数据 | 表示某些节点的结果数据，例如执行SQL节点的查询结果、HTTP请求节点的响应数据等。<br><br>执行sql节点查询的结果集返回的是一个"Column Named"二维数组，可以通过数组函数访问。 |
| `$headers` | 请求头 | 此变量代表http请求头部信息，数据格式为`J`，程序流httpRequest节点使用此变<br>量记录请求头部信息。 |
| `$statusCode` | 状态码 | 此变量代表http请求结果中的状态码，数据格式为`I`，程序流httpRequest节点使<br>用此变量记录请求结果状态码。 |

### 发起工作流{#aflnode-start-work-flow}

类型值：`startWorkFlow`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$result` | 工作流启动结果 | 工作流启动结果对象，当前只包含 `instance` 流程实例信息。任务列表等细节尚未作为节点变量暴露。 |

### 大模型对话{#aflnode-llm-chat}

类型值：`llmChat`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$result` | 结果数据 | 表示某些节点的结果数据，例如执行SQL节点的查询结果、HTTP请求节点的响应数据等。<br><br>执行sql节点查询的结果集返回的是一个"Column Named"二维数组，可以通过数组函数访问。 |
| `$resultJson` | 查询结果数据json | 1. 执行查询sql时是一个JSON数组对象，形如`[{"column1":"value1","column2":"value2"},...]`<br>2. 执行大模型对象时，如果设置了json返回格式，那么此变量可以获取以对应格式的json |

### 执行前端脚本{#aflnode-execute-browser-script}

类型值：`executeBrowserScript`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$result` | 结果数据 | 表示某些节点的结果数据，例如执行SQL节点的查询结果、HTTP请求节点的响应数据等。<br><br>执行sql节点查询的结果集返回的是一个"Column Named"二维数组，可以通过数组函数访问。 |

### 执行后端程序流{#aflnode-execute-action-flow}

类型值：`executeActionFlow`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$result` | 结果数据 | 表示某些节点的结果数据，例如执行SQL节点的查询结果、HTTP请求节点的响应数据等。<br><br>执行sql节点查询的结果集返回的是一个"Column Named"二维数组，可以通过数组函数访问。 |

### 执行后端脚本{#aflnode-execute-action-script}

类型值：`executeActionScript`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$result` | 结果数据 | 表示某些节点的结果数据，例如执行SQL节点的查询结果、HTTP请求节点的响应数据等。<br><br>执行sql节点查询的结果集返回的是一个"Column Named"二维数组，可以通过数组函数访问。 |

### 执行工作流{#aflnode-execute-work-flow}

类型值：`executeWorkFlow`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$result` | 工作流执行结果 | 工作流执行结果对象，当前只包含 `instance` 流程实例信息。任务列表等细节尚未作为节点变量暴露。 |

### 执行程序流组件{#aflnode-execute-embed-action-flow}

类型值：`executeEmbedActionFlow`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$result` | 结果数据 | 表示某些节点的结果数据，例如执行SQL节点的查询结果、HTTP请求节点的响应数据等。<br><br>执行sql节点查询的结果集返回的是一个"Column Named"二维数组，可以通过数组函数访问。 |

## 组件{#aflnode-group-component-action}

### 弹出对话框{#aflnode-show-dialog}

类型值：`showDialog`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$result` | 对话框返回值 | 对话框关闭时返回的结果。常见为按钮 ID，例如 `ok`、`cancel`、`close`；页面目标<br>或自定义弹窗也可能返回业务数据，具体以弹窗配置和关闭动作返回值为准。 |

### 执行命令{#aflnode-execute-command}

类型值：`executeCommand`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$result` | 结果数据 | 表示某些节点的结果数据，例如执行SQL节点的查询结果、HTTP请求节点的响应数据等。<br><br>执行sql节点查询的结果集返回的是一个"Column Named"二维数组，可以通过数组函数访问。 |

### 检查修改{#aflnode-check-save}

类型值：`checkSave`。

| 变量 | 名称 | 说明 |
| :--- | :--- | :--- |
| `$result` | 结果数据 | 表示某些节点的结果数据，例如执行SQL节点的查询结果、HTTP请求节点的响应数据等。<br><br>执行sql节点查询的结果集返回的是一个"Column Named"二维数组，可以通过数组函数访问。 |
