weaver-e10-builder 1.5.11 → 1.5.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +212 -189
- package/assets/image-style-observation.schema.json +1355 -0
- package/assets/layout-spec.schema.json +52 -0
- package/dist/commands/designer-common.d.ts.map +1 -1
- package/dist/commands/designer-common.js +91 -0
- package/dist/commands/designer-common.js.map +1 -1
- package/dist/commands/form-add-detail-table.d.ts.map +1 -1
- package/dist/commands/form-add-detail-table.js +97 -1
- package/dist/commands/form-add-detail-table.js.map +1 -1
- package/dist/commands/form-field-linkage.d.ts +55 -0
- package/dist/commands/form-field-linkage.d.ts.map +1 -1
- package/dist/commands/form-field-linkage.js +1026 -12
- package/dist/commands/form-field-linkage.js.map +1 -1
- package/dist/commands/form-formula-linkage.d.ts +36 -0
- package/dist/commands/form-formula-linkage.d.ts.map +1 -1
- package/dist/commands/form-formula-linkage.js +107 -7
- package/dist/commands/form-formula-linkage.js.map +1 -1
- package/dist/commands/form-formula.d.ts.map +1 -1
- package/dist/commands/form-formula.js +21 -4
- package/dist/commands/form-formula.js.map +1 -1
- package/dist/commands/form-layout-restore.d.ts +3 -0
- package/dist/commands/form-layout-restore.d.ts.map +1 -0
- package/dist/commands/form-layout-restore.js +217 -0
- package/dist/commands/form-layout-restore.js.map +1 -0
- package/dist/commands/form-layout.d.ts.map +1 -1
- package/dist/commands/form-layout.js +11 -1
- package/dist/commands/form-layout.js.map +1 -1
- package/dist/commands/form-obj-meta.d.ts +12 -0
- package/dist/commands/form-obj-meta.d.ts.map +1 -0
- package/dist/commands/form-obj-meta.js +116 -0
- package/dist/commands/form-obj-meta.js.map +1 -0
- package/dist/commands/form-validate.d.ts.map +1 -1
- package/dist/commands/form-validate.js +167 -35
- package/dist/commands/form-validate.js.map +1 -1
- package/dist/commands/form.d.ts.map +1 -1
- package/dist/commands/form.js +359 -27
- package/dist/commands/form.js.map +1 -1
- package/dist/commands/menu.d.ts.map +1 -1
- package/dist/commands/menu.js +5 -3
- package/dist/commands/menu.js.map +1 -1
- package/dist/commands/wf-form.d.ts.map +1 -1
- package/dist/commands/wf-form.js +215 -13
- package/dist/commands/wf-form.js.map +1 -1
- package/dist/commands/workflow.d.ts.map +1 -1
- package/dist/commands/workflow.js +18 -4
- package/dist/commands/workflow.js.map +1 -1
- package/dist/core/client.d.ts +2 -1
- package/dist/core/client.d.ts.map +1 -1
- package/dist/core/client.js +4 -2
- package/dist/core/client.js.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/services/actionflow/calendar_mapper.d.ts.map +1 -1
- package/dist/services/actionflow/calendar_mapper.js +34 -14
- package/dist/services/actionflow/calendar_mapper.js.map +1 -1
- package/dist/services/actionflow/components/document_actions.d.ts.map +1 -1
- package/dist/services/actionflow/components/document_actions.js +113 -4
- package/dist/services/actionflow/components/document_actions.js.map +1 -1
- package/dist/services/actionflow/components/eb_get_data_by_id.d.ts.map +1 -1
- package/dist/services/actionflow/components/eb_get_data_by_id.js +18 -1
- package/dist/services/actionflow/components/eb_get_data_by_id.js.map +1 -1
- package/dist/services/actionflow/components/index.d.ts.map +1 -1
- package/dist/services/actionflow/components/index.js +2 -1
- package/dist/services/actionflow/components/index.js.map +1 -1
- package/dist/services/actionflow/components/schedule_create.d.ts.map +1 -1
- package/dist/services/actionflow/components/schedule_create.js +22 -6
- package/dist/services/actionflow/components/schedule_create.js.map +1 -1
- package/dist/services/actionflow/components/workflow_actions.d.ts +1 -0
- package/dist/services/actionflow/components/workflow_actions.d.ts.map +1 -1
- package/dist/services/actionflow/components/workflow_actions.js +31 -6
- package/dist/services/actionflow/components/workflow_actions.js.map +1 -1
- package/dist/services/actionflow/context_preflight.d.ts +5 -0
- package/dist/services/actionflow/context_preflight.d.ts.map +1 -1
- package/dist/services/actionflow/context_preflight.js +88 -34
- package/dist/services/actionflow/context_preflight.js.map +1 -1
- package/dist/services/actionflow/document_source.d.ts +5 -0
- package/dist/services/actionflow/document_source.d.ts.map +1 -1
- package/dist/services/actionflow/document_source.js +16 -0
- package/dist/services/actionflow/document_source.js.map +1 -1
- package/dist/services/actionflow/filter_rules.d.ts.map +1 -1
- package/dist/services/actionflow/filter_rules.js +9 -8
- package/dist/services/actionflow/filter_rules.js.map +1 -1
- package/dist/services/actionflow/formula_service.d.ts +2 -1
- package/dist/services/actionflow/formula_service.d.ts.map +1 -1
- package/dist/services/actionflow/formula_service.js +52 -22
- package/dist/services/actionflow/formula_service.js.map +1 -1
- package/dist/services/actionflow/preflight_service.d.ts +5 -0
- package/dist/services/actionflow/preflight_service.d.ts.map +1 -1
- package/dist/services/actionflow/preflight_service.js +128 -3
- package/dist/services/actionflow/preflight_service.js.map +1 -1
- package/dist/services/actionflow/save_workflow_draft.d.ts +7 -0
- package/dist/services/actionflow/save_workflow_draft.d.ts.map +1 -1
- package/dist/services/actionflow/save_workflow_draft.js +1 -1
- package/dist/services/actionflow/save_workflow_draft.js.map +1 -1
- package/dist/services/actionflow/workflow_compiler.d.ts.map +1 -1
- package/dist/services/actionflow/workflow_compiler.js +51 -13
- package/dist/services/actionflow/workflow_compiler.js.map +1 -1
- package/dist/services/form-formula-linkage.d.ts +4 -0
- package/dist/services/form-formula-linkage.d.ts.map +1 -1
- package/dist/services/form-formula-linkage.js +3 -1
- package/dist/services/form-formula-linkage.js.map +1 -1
- package/dist/services/form-layout-io.d.ts +18 -0
- package/dist/services/form-layout-io.d.ts.map +1 -0
- package/dist/services/form-layout-io.js +89 -0
- package/dist/services/form-layout-io.js.map +1 -0
- package/dist/services/form-layout-source/artifact.d.ts +8 -0
- package/dist/services/form-layout-source/artifact.d.ts.map +1 -0
- package/dist/services/form-layout-source/artifact.js +52 -0
- package/dist/services/form-layout-source/artifact.js.map +1 -0
- package/dist/services/form-layout-source/binding.d.ts +10 -0
- package/dist/services/form-layout-source/binding.d.ts.map +1 -0
- package/dist/services/form-layout-source/binding.js +43 -0
- package/dist/services/form-layout-source/binding.js.map +1 -0
- package/dist/services/form-layout-source/compile.d.ts +7 -0
- package/dist/services/form-layout-source/compile.d.ts.map +1 -0
- package/dist/services/form-layout-source/compile.js +262 -0
- package/dist/services/form-layout-source/compile.js.map +1 -0
- package/dist/services/form-layout-source/creation.d.ts +18 -0
- package/dist/services/form-layout-source/creation.d.ts.map +1 -0
- package/dist/services/form-layout-source/creation.js +42 -0
- package/dist/services/form-layout-source/creation.js.map +1 -0
- package/dist/services/form-layout-source/excel-extractor.d.ts +7 -0
- package/dist/services/form-layout-source/excel-extractor.d.ts.map +1 -0
- package/dist/services/form-layout-source/excel-extractor.js +342 -0
- package/dist/services/form-layout-source/excel-extractor.js.map +1 -0
- package/dist/services/form-layout-source/image-border.d.ts +9 -0
- package/dist/services/form-layout-source/image-border.d.ts.map +1 -0
- package/dist/services/form-layout-source/image-border.js +128 -0
- package/dist/services/form-layout-source/image-border.js.map +1 -0
- package/dist/services/form-layout-source/image-observation.d.ts +14 -0
- package/dist/services/form-layout-source/image-observation.d.ts.map +1 -0
- package/dist/services/form-layout-source/image-observation.js +90 -0
- package/dist/services/form-layout-source/image-observation.js.map +1 -0
- package/dist/services/form-layout-source/image-review.d.ts +32 -0
- package/dist/services/form-layout-source/image-review.d.ts.map +1 -0
- package/dist/services/form-layout-source/image-review.js +266 -0
- package/dist/services/form-layout-source/image-review.js.map +1 -0
- package/dist/services/form-layout-source/image-style.d.ts +16 -0
- package/dist/services/form-layout-source/image-style.d.ts.map +1 -0
- package/dist/services/form-layout-source/image-style.js +539 -0
- package/dist/services/form-layout-source/image-style.js.map +1 -0
- package/dist/services/form-layout-source/json.d.ts +3 -0
- package/dist/services/form-layout-source/json.d.ts.map +1 -0
- package/dist/services/form-layout-source/json.js +33 -0
- package/dist/services/form-layout-source/json.js.map +1 -0
- package/dist/services/form-layout-source/presentation.d.ts +23 -0
- package/dist/services/form-layout-source/presentation.d.ts.map +1 -0
- package/dist/services/form-layout-source/presentation.js +174 -0
- package/dist/services/form-layout-source/presentation.js.map +1 -0
- package/dist/services/form-layout-source/preview.d.ts +4 -0
- package/dist/services/form-layout-source/preview.d.ts.map +1 -0
- package/dist/services/form-layout-source/preview.js +49 -0
- package/dist/services/form-layout-source/preview.js.map +1 -0
- package/dist/services/form-layout-source/schema.d.ts +20 -0
- package/dist/services/form-layout-source/schema.d.ts.map +1 -0
- package/dist/services/form-layout-source/schema.js +149 -0
- package/dist/services/form-layout-source/schema.js.map +1 -0
- package/dist/services/form-layout-source/source-grid.d.ts +8 -0
- package/dist/services/form-layout-source/source-grid.d.ts.map +1 -0
- package/dist/services/form-layout-source/source-grid.js +61 -0
- package/dist/services/form-layout-source/source-grid.js.map +1 -0
- package/dist/services/form-layout-source/types.d.ts +242 -0
- package/dist/services/form-layout-source/types.d.ts.map +1 -0
- package/dist/services/form-layout-source/types.js +2 -0
- package/dist/services/form-layout-source/types.js.map +1 -0
- package/dist/services/form-layout-source/verify.d.ts +14 -0
- package/dist/services/form-layout-source/verify.d.ts.map +1 -0
- package/dist/services/form-layout-source/verify.js +226 -0
- package/dist/services/form-layout-source/verify.js.map +1 -0
- package/dist/services/form-linkage-condition.d.ts +15 -0
- package/dist/services/form-linkage-condition.d.ts.map +1 -1
- package/dist/services/form-linkage-condition.js +19 -10
- package/dist/services/form-linkage-condition.js.map +1 -1
- package/dist/services/form-obj-meta.d.ts +72 -0
- package/dist/services/form-obj-meta.d.ts.map +1 -0
- package/dist/services/form-obj-meta.js +103 -0
- package/dist/services/form-obj-meta.js.map +1 -0
- package/dist/services/form-sub-detail.d.ts +25 -0
- package/dist/services/form-sub-detail.d.ts.map +1 -1
- package/dist/services/form-sub-detail.js +64 -0
- package/dist/services/form-sub-detail.js.map +1 -1
- package/dist/services/validate-help.d.ts +25 -0
- package/dist/services/validate-help.d.ts.map +1 -0
- package/dist/services/validate-help.js +29 -0
- package/dist/services/validate-help.js.map +1 -0
- package/dist/services/workflow-operator.d.ts +12 -5
- package/dist/services/workflow-operator.d.ts.map +1 -1
- package/dist/services/workflow-operator.js +41 -16
- package/dist/services/workflow-operator.js.map +1 -1
- package/package.json +3 -1
- package/skill-docs/SKILL.md +38 -165
- package/skill-docs/_catalog.md +4 -1
- package/skill-docs/actionflows/references/components/document/DocumentSave.md +17 -17
- package/skill-docs/actionflows/references/components/workflow/ApproveCompletelyDelete.md +29 -0
- package/skill-docs/actionflows/references/components/workflow/ApproveDelete.md +1 -1
- package/skill-docs/assets/schemas/image-style-observation.schema.json +1355 -0
- package/skill-docs/references/coding/guide-page-code.md +2 -0
- package/skill-docs/references/coding/ref-compile-rules.md +2 -0
- package/skill-docs/references/common/capability-boundaries.md +15 -0
- package/skill-docs/references/common/guide-install.md +44 -0
- package/skill-docs/references/common/guide-plan-template.md +167 -164
- package/skill-docs/references/common/map.md +9 -0
- package/skill-docs/references/common/ref-cli-commands.md +650 -635
- package/skill-docs/references/form/guide-create-form.md +2 -0
- package/skill-docs/references/form/guide-field-linkage.md +185 -58
- package/skill-docs/references/form/guide-form-formula-functions.md +354 -343
- package/skill-docs/references/form/guide-form-layout-planning.md +6 -0
- package/skill-docs/references/form/guide-form-layout-source.md +366 -0
- package/skill-docs/references/form/guide-form-linkage.md +56 -66
- package/skill-docs/references/form/guide-form-view.md +1 -1
- package/skill-docs/references/form/guide-formula-linkage.md +44 -1
- package/skill-docs/references/workflow/guide-workflow.md +1 -1
|
@@ -192,6 +192,8 @@ EBuilder 关联字段在创建时指定目标表单 `objId` 和显示字段:
|
|
|
192
192
|
|
|
193
193
|
## 执行创建
|
|
194
194
|
|
|
195
|
+
需要还原图片或 XLSX 源样式时,可在普通创建完成后使用[源样式还原命令链](guide-form-layout-source.md),或同时传 `--layout-source @source.json --layout-spec @spec.json --layout-artifact-out artifact.json`。该入口先验证源文件,继续使用原字段创建链,最后在高级属性、公式和分组重排结束后保存精确布局。失败保留已有 objId/formId,重试只处理该对象,不重复建表。
|
|
196
|
+
|
|
195
197
|
```bash
|
|
196
198
|
e10-cli form create <appId> "采购合同" --fields @fields.json --layout EXCEL
|
|
197
199
|
```
|
|
@@ -2,33 +2,68 @@
|
|
|
2
2
|
|
|
3
3
|
## 概述
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
本指南汇总字段值的带出与赋值:关联 EBuilder 字段直接带出、HRM 属性带出,以及跨表查询赋值(`FormDataLinkage`)。先按来源选择配置方式,再看对应命令。
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
其中 `FormDataLinkage` 可按触发字段值查询另一张表,把结果赋给本表主表或明细字段;背后由 ESB FieldLinkage 动作流执行,CLI 自动完成创建和绑定。支持两种方式:快捷配置(`--condition` / `--assign`,任意条件、多查询字段与多赋值)和旧单跳/多跳(`--source-form` / `--query-field` / `--hops`,固定按数据 ID 过滤)。
|
|
8
8
|
|
|
9
|
-
##
|
|
9
|
+
## 选择带出方式
|
|
10
10
|
|
|
11
|
-
|
|
|
12
|
-
|
|
13
|
-
|
|
|
14
|
-
|
|
|
15
|
-
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
| 关系 | — | — | **字段联动是关联表带出的进阶版** |
|
|
11
|
+
| 需求 | 配置方式 | 命令或入口 |
|
|
12
|
+
|---|---|---|
|
|
13
|
+
| 关联 EBuilder 记录后直接复制该记录的一个字段 | 字段级 `ffRelateField` | 建表时 `relateFrom`;建表后 `form edit-field --relate-from` |
|
|
14
|
+
| 人员或部门字段变化后带出 HRM 属性 | 字段级 `ffRelateField` | `form relate` |
|
|
15
|
+
| 按条件查询另一张表,单跳或多跳赋值 | `FormDataLinkage`,由 ESB 动作流实现 | `form field-linkage`(快捷配置或旧单跳/多跳) |
|
|
16
|
+
|
|
17
|
+
这些都改变字段**值**。按条件改变隐藏、只读、必填等**显示属性**,使用 `form linkage`,见 [显示属性联动指南](guide-form-linkage.md)。
|
|
19
18
|
|
|
20
19
|
> 本文讲的是**跨表**带出。本表字段之间用公式互相计算赋值的是**函数联动**(eb 表 `form formula-linkage`、流程表单 `wf-form formula-linkage`),见 `guide-formula-linkage.md` —— 两者 `linkageType` 不同(`excel` vs `template`),`form field-linkage list/delete` 看不到也删不掉函数联动。
|
|
21
20
|
|
|
22
|
-
##
|
|
21
|
+
## 关联 EBuilder 字段直接带出(`ffRelateField`)
|
|
22
|
+
|
|
23
|
+
当 EBuilder 关联字段选中某条记录后,自动将该记录的一个字段值复制到当前字段。例如:选客户后带出联系人;选合同后带出合同金额。
|
|
24
|
+
|
|
25
|
+
### 建表时配置
|
|
26
|
+
|
|
27
|
+
`form create --fields` 里用 `relateFrom` 定义,CLI 在创建字段后配置 `ffRelateField`:
|
|
28
|
+
|
|
29
|
+
```json
|
|
30
|
+
{ "componentKey": "Text", "fieldName": "联系人",
|
|
31
|
+
"relateFrom": { "ebuilderField": "关联客户", "sourceFieldId": "1296220571782152194" } }
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
### 建表后补配
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
e10-cli form edit-field <objId> <appId> <fieldId> \
|
|
38
|
+
--relate-from <EBuilder字段名> \
|
|
39
|
+
--relate-from-source <目标表单源字段fieldId>
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
`sourceFieldId` 和 `--relate-from-source` 必须是关联目标表单中源字段的数字 `fieldId`,不能写字段名。先用 `form read <目标表objId> --app-id <appId>` 查实际 ID。`--relate-from` 是本表单中的 EBuilder 关联字段名。
|
|
43
|
+
|
|
44
|
+
## HRM 属性带出(`form relate`)
|
|
45
|
+
|
|
46
|
+
本表单的人员或部门字段变化后,自动向目标字段填入 HRM 属性。源字段必须是 Employee 或 Department 类型。Employee 源的 `ffRelateField` 带 `module:"hrm"`,Department 源不带。
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
# 申请人(Employee)变化 → 向申请人工号填入邮箱
|
|
50
|
+
e10-cli form relate <appId> <objId> 申请人工号 --from 申请人 --key email
|
|
51
|
+
|
|
52
|
+
# 所属部门(Department)变化 → 向申请人工号填入部门编号
|
|
53
|
+
e10-cli form relate <appId> <objId> 申请人工号 --from 所属部门 --key code
|
|
54
|
+
```
|
|
23
55
|
|
|
24
|
-
|
|
56
|
+
| 参数 | 说明 |
|
|
57
|
+
|---|---|
|
|
58
|
+
| `<targetField>` | 被填充的目标字段,名称或 `fieldId` |
|
|
59
|
+
| `--from <field>` | 表单中的源字段,必须是 Employee 或 Department 类型 |
|
|
60
|
+
| `--key <key>` | 带出的 HRM 属性;默认 Employee=`department`、Department=`name`;不传 `--title` 时自动取属性中文名 |
|
|
25
61
|
|
|
26
|
-
|
|
27
|
-
|------|------|------|
|
|
28
|
-
| 带出字段是 EBuilder(存 ID)→ 目标也是 EBuilder | 单跳 | 关联合同→查合同信息表→带出关联客户(ID→EBuilder 字段) |
|
|
29
|
-
| 带出字段存 ID → 目标是 Text(要名称) | **多跳** | 关联客户→查客户信息表→客户类型(ID)→查客户类型表→类型名称(Text)→填 Text 字段 |
|
|
62
|
+
`--key` 从平台 `listBusinessField` 清单校验。Employee 属性包括 `username` 姓名、`email` 邮箱、`superior` 上级、`mobile` 手机、`jobNum` 工号、`hiredate` 入职时间、`department` 部门、`position` 岗位、`grade` 职级、`allSuperiors` 所有上级等。Department 属性包括 `name` 部门名称、`code` 部门编号、`parent` 上级部门、`fullname` 部门全称、`department.coadjutant` 协办人、`deptEmployee` 部门人员。
|
|
30
63
|
|
|
31
|
-
|
|
64
|
+
目标字段类型与带出属性不匹配时,命令只提示警告、不阻止;例如 `deptEmployee` 通常应填入 Employee 字段。
|
|
65
|
+
|
|
66
|
+
## 跨表查询赋值(`FormDataLinkage`)
|
|
32
67
|
|
|
33
68
|
## CLI 命令
|
|
34
69
|
|
|
@@ -42,82 +77,174 @@ e10-cli form field-linkage read <appId> <objId> <linkageId>
|
|
|
42
77
|
# 查源表可带出字段
|
|
43
78
|
e10-cli form field-linkage fields <appId> <formId>
|
|
44
79
|
|
|
80
|
+
# 可用触发动作
|
|
81
|
+
e10-cli form field-linkage events <appId> <objId> [--effect formLayout|workFlow|includeNode]
|
|
82
|
+
|
|
45
83
|
# 删除(批量)
|
|
46
84
|
e10-cli form field-linkage delete <appId> <objId> <linkageId...>
|
|
47
85
|
```
|
|
48
86
|
|
|
49
|
-
|
|
87
|
+
## 快捷配置(add)
|
|
50
88
|
|
|
51
|
-
**单跳**(一次直接带出):
|
|
52
89
|
```bash
|
|
53
90
|
e10-cli form field-linkage add <appId> <objId> \
|
|
54
|
-
--trigger
|
|
55
|
-
--source-form
|
|
56
|
-
--
|
|
57
|
-
--
|
|
91
|
+
--trigger <本表触发字段名> \
|
|
92
|
+
--source-form <查询目标表 objId> \
|
|
93
|
+
--condition "源表字段:算子:值" \
|
|
94
|
+
--query-fields "源表字段1,源表字段2" \
|
|
95
|
+
--assign "源表查询字段=本表目标字段"
|
|
58
96
|
```
|
|
59
97
|
|
|
60
|
-
|
|
98
|
+
### 查询条件(`--condition`)
|
|
99
|
+
|
|
100
|
+
可重复,多个为「且」。写法 `源表字段:算子:值`,算子与动作流筛选共用同一套:
|
|
101
|
+
|
|
102
|
+
| 类别 | 算子 |
|
|
103
|
+
|---|---|
|
|
104
|
+
| 比较 | 等于 / 不等于 / 大于 / 大于等于 / 小于 / 小于等于 |
|
|
105
|
+
| 文本 | 包含 / 不包含 / 开头包含 / 开头不包含 / 结尾包含 / 结尾不包含 |
|
|
106
|
+
| 集合 | 属于 / 不属于 / 被包含于 |
|
|
107
|
+
| 无值 | 为空 / 不为空(可不写冒号和值) |
|
|
108
|
+
| 区间 | 区间(写 `起始~结束`) |
|
|
109
|
+
|
|
110
|
+
值写 `@本表字段名` 表示引用本表字段;否则按字面值。示例:
|
|
111
|
+
|
|
61
112
|
```bash
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
113
|
+
--condition "测试字段C:eq:11111"
|
|
114
|
+
--condition "测试字段C:等于:@测试字段A"
|
|
115
|
+
--condition "日期字段A:区间:2026-10-20~2026-10-21"
|
|
116
|
+
--condition "备注:不为空"
|
|
66
117
|
```
|
|
67
118
|
|
|
68
|
-
|
|
119
|
+
### 查询字段(`--query-fields`)
|
|
69
120
|
|
|
70
|
-
|
|
121
|
+
逗号分隔的源表字段名。不给时会自动并入 `--assign` 的源字段和明细依据字段。
|
|
71
122
|
|
|
72
|
-
###
|
|
123
|
+
### 赋值(`--assign`)
|
|
73
124
|
|
|
125
|
+
可重复,`源表查询字段=本表目标字段`:
|
|
126
|
+
|
|
127
|
+
- 主表字段直接写字段名
|
|
128
|
+
- 明细表字段写 `明细表名.字段名`
|
|
129
|
+
|
|
130
|
+
```bash
|
|
131
|
+
--assign "测试字段C=测试字段A"
|
|
132
|
+
--assign "测试字段C=明细表1.明细字段1"
|
|
74
133
|
```
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
134
|
+
|
|
135
|
+
### 明细行依据(`--basis`)
|
|
136
|
+
|
|
137
|
+
`明细表名=源表字段名`。决定写入明细表时按哪一列匹配/生成行。不给则取该明细表第一个赋值的源字段;当被赋值的源字段正好是依据值时,设计器里显示为「依据值本身」。
|
|
138
|
+
|
|
139
|
+
```bash
|
|
140
|
+
--basis "明细表1=测试字段C"
|
|
79
141
|
```
|
|
80
142
|
|
|
143
|
+
### 明细配置(三个开关)
|
|
144
|
+
|
|
145
|
+
| 参数 | 取值 | 对应设计器 |
|
|
146
|
+
|---|---|---|
|
|
147
|
+
| `--detail-mode` | `add`(默认)/ `cover` / `update` | 主表联动明细表时:添加明细 / 覆盖明细 / 更新明细 |
|
|
148
|
+
| `--detail-add` | `override`(默认)/ `append` | 明细表添加行时:删除已联动出的明细再添加 / 累计添加明细 |
|
|
149
|
+
| `--fission` | `on`(默认)/ `off` | 联动出的值继续触发联动 |
|
|
150
|
+
|
|
151
|
+
### 触发动作(`--event`)
|
|
152
|
+
|
|
153
|
+
可重复,写法同函数联动:事件名或 type,可带 `类型:字段,字段`。默认 `changeField`(值改变时),字段取 `--trigger`。
|
|
154
|
+
|
|
81
155
|
```bash
|
|
82
|
-
|
|
83
|
-
|
|
156
|
+
--event changeField
|
|
157
|
+
--event onLoadForm
|
|
158
|
+
--event "changeField:测试字段A"
|
|
84
159
|
```
|
|
85
160
|
|
|
86
|
-
|
|
161
|
+
表单级 / 流程级事件(载入时、创建数据时…)不需要触发字段。流程事件(提交/批准、转发、保存…)需要配合 `--effect workFlow|includeNode`。
|
|
87
162
|
|
|
163
|
+
### 生效维度(`--effect`)
|
|
164
|
+
|
|
165
|
+
`form`(默认,当前表单)/ `formLayout`(表单布局,可配 `--layout-id`)/ `workFlow`(当前工作流)/ `includeNode`(选择节点,配 `--workflow-id` 与 `--node`)。
|
|
166
|
+
|
|
167
|
+
### 启用状态(`--state`)
|
|
168
|
+
|
|
169
|
+
`on`(默认)/ `off`。
|
|
170
|
+
|
|
171
|
+
### 赋值前提(`--precondition`)
|
|
172
|
+
|
|
173
|
+
满足前提时才执行赋值。可重复,多个为「且」:
|
|
174
|
+
|
|
175
|
+
```bash
|
|
176
|
+
--precondition "rlytest:不为空"
|
|
177
|
+
--precondition "测试字段C:包含:@rlytest" # @ 先查查询结果字段
|
|
178
|
+
--precondition "日期字段A:包含:@测试字段A" # 查不到再按本表字段
|
|
88
179
|
```
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
180
|
+
|
|
181
|
+
前提条件保存在 ESB 条件服务里,开关它等价于重新保存动作流设计。
|
|
182
|
+
|
|
183
|
+
## 修改(update)
|
|
184
|
+
|
|
185
|
+
```bash
|
|
186
|
+
e10-cli form field-linkage update <appId> <objId> <linkageId> \
|
|
187
|
+
[--name <名称>] [--state on|off] \
|
|
188
|
+
[--event <事件...>] [--trigger <字段...>] [--effect <维度>] \
|
|
189
|
+
[--detail-mode add|cover|update] [--detail-add override|append] [--fission on|off] \
|
|
190
|
+
[--precondition <条件...>] [--clear-precondition]
|
|
93
191
|
```
|
|
94
192
|
|
|
193
|
+
- 不给 `--event` / `--trigger` 时原样沿用现有触发动作
|
|
194
|
+
- 只改启停时走专用接口,不重发整套联动报文
|
|
195
|
+
- 赋值前提不属于联动记录,由 CLI 读回动作流设计后只改 Output 节点再保存
|
|
196
|
+
|
|
197
|
+
## 旧单跳 / 多跳(兼容保留)
|
|
198
|
+
|
|
199
|
+
**单跳**:按「数据ID = 触发字段值」过滤。
|
|
200
|
+
|
|
95
201
|
```bash
|
|
96
202
|
e10-cli form field-linkage add <appId> <objId> \
|
|
97
|
-
--trigger
|
|
98
|
-
--
|
|
203
|
+
--trigger <触发字段名> \
|
|
204
|
+
--source-form <目标表objId> \
|
|
205
|
+
--query-field <目标表带出字段名> \
|
|
206
|
+
--target <本表目标字段名>
|
|
99
207
|
```
|
|
100
208
|
|
|
101
|
-
|
|
209
|
+
**多跳**:`--hops "objId:字段名,objId:字段名"`,前一跳的带出值作为下一跳的过滤值。
|
|
102
210
|
|
|
103
|
-
|
|
211
|
+
**何时用多跳**:目标字段是 Text(要名称)而源表存的是 ID(EBuilder/Select)时,需要多跳一次到名称表取名称;目标字段本身存 ID 则单跳即可。
|
|
104
212
|
|
|
105
|
-
|
|
213
|
+
## 示例
|
|
106
214
|
|
|
107
|
-
|
|
215
|
+
**单跳(快捷配置)**:
|
|
108
216
|
|
|
109
217
|
```bash
|
|
110
|
-
|
|
111
|
-
|
|
218
|
+
e10-cli form field-linkage add <appId> <objId> \
|
|
219
|
+
--trigger 关联合同 \
|
|
220
|
+
--source-form <合同信息表objId> \
|
|
221
|
+
--condition "关联合同:等于:@关联合同" \
|
|
222
|
+
--query-fields "关联客户" \
|
|
223
|
+
--assign "关联客户=关联客户"
|
|
112
224
|
```
|
|
113
225
|
|
|
114
|
-
|
|
226
|
+
**主表联动明细表(多值写入 + 赋值前提)**:
|
|
227
|
+
|
|
228
|
+
```bash
|
|
229
|
+
e10-cli form field-linkage add <appId> <objId> \
|
|
230
|
+
--trigger 客户编号 \
|
|
231
|
+
--source-form <订单表objId> \
|
|
232
|
+
--condition "客户编号:等于:@客户编号" \
|
|
233
|
+
--query-fields "订单号,金额" \
|
|
234
|
+
--assign "订单号=订单明细.订单号" \
|
|
235
|
+
--assign "金额=订单明细.金额" \
|
|
236
|
+
--basis "订单明细=订单号" \
|
|
237
|
+
--detail-mode add --detail-add override --fission on \
|
|
238
|
+
--precondition "订单号:不为空"
|
|
239
|
+
```
|
|
115
240
|
|
|
116
241
|
## 注意事项
|
|
117
242
|
|
|
118
|
-
1.
|
|
119
|
-
2.
|
|
120
|
-
3.
|
|
121
|
-
4.
|
|
122
|
-
5.
|
|
123
|
-
6.
|
|
243
|
+
1. **三种明细模式**:添加/覆盖/更新由 `--detail-mode` 决定;「删除再添加 / 累计添加」是另一个开关 `--detail-add`。
|
|
244
|
+
2. **明细行依据**决定行匹配:写入明细表时,依据值相同的行按模式处理。
|
|
245
|
+
3. **赋值前提引用字段**:`@字段名` 先按查询结果字段解析(`source` = 查询节点),找不到再按本表字段(`source` = 触发事件)。
|
|
246
|
+
4. **算子与动作流筛选同源**:按字段类型族校验,不支持的算子会直接报错。
|
|
247
|
+
5. **FormData 引用格式**:本表字段 `FormData.<本表formId>.<字段id>`;查询结果 `FormData.<源表objId>[].field_<字段id>`。
|
|
248
|
+
6. **--source-form 的 objId 是表单 objId**(不是 formId),CLI 内部自动解析。
|
|
249
|
+
7. **联动名称**:不传 `--name` 时自动生成 `<本表名>.<触发字段>→<源表名>.<条件字段>`。
|
|
250
|
+
8. **SQL 联动类型尚未覆盖**:只支持「动作流联动」(`linkageType=template`);设计器里的「SQL可视化配置 / SQL联动」两条支路尚未实现。
|