weaver-e10-builder 1.1.9 → 1.2.2

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.
Files changed (431) hide show
  1. package/README.md +1 -1
  2. package/dist/commands/actionflow.d.ts.map +1 -1
  3. package/dist/commands/actionflow.js +32 -0
  4. package/dist/commands/actionflow.js.map +1 -1
  5. package/dist/commands/app.d.ts.map +1 -1
  6. package/dist/commands/app.js +17 -5
  7. package/dist/commands/app.js.map +1 -1
  8. package/dist/commands/auth.d.ts.map +1 -1
  9. package/dist/commands/auth.js +9 -2
  10. package/dist/commands/auth.js.map +1 -1
  11. package/dist/commands/designer.d.ts.map +1 -1
  12. package/dist/commands/designer.js +22 -1
  13. package/dist/commands/designer.js.map +1 -1
  14. package/dist/commands/form-field-props.d.ts +3 -0
  15. package/dist/commands/form-field-props.d.ts.map +1 -0
  16. package/dist/commands/form-field-props.js +242 -0
  17. package/dist/commands/form-field-props.js.map +1 -0
  18. package/dist/commands/form-layout-init.d.ts +0 -7
  19. package/dist/commands/form-layout-init.d.ts.map +1 -1
  20. package/dist/commands/form-layout-init.js +23 -39
  21. package/dist/commands/form-layout-init.js.map +1 -1
  22. package/dist/commands/form-serial-mark.d.ts.map +1 -1
  23. package/dist/commands/form-serial-mark.js +134 -42
  24. package/dist/commands/form-serial-mark.js.map +1 -1
  25. package/dist/commands/form-virtual.d.ts +3 -0
  26. package/dist/commands/form-virtual.d.ts.map +1 -0
  27. package/dist/commands/form-virtual.js +197 -0
  28. package/dist/commands/form-virtual.js.map +1 -0
  29. package/dist/commands/form.d.ts +3 -0
  30. package/dist/commands/form.d.ts.map +1 -1
  31. package/dist/commands/form.js +263 -57
  32. package/dist/commands/form.js.map +1 -1
  33. package/dist/commands/interface.js +1 -1
  34. package/dist/commands/interface.js.map +1 -1
  35. package/dist/commands/report-admin.d.ts +5 -0
  36. package/dist/commands/report-admin.d.ts.map +1 -0
  37. package/dist/commands/report-admin.js +420 -0
  38. package/dist/commands/report-admin.js.map +1 -0
  39. package/dist/commands/report-query.d.ts +3 -0
  40. package/dist/commands/report-query.d.ts.map +1 -0
  41. package/dist/commands/report-query.js +314 -0
  42. package/dist/commands/report-query.js.map +1 -0
  43. package/dist/commands/report-validate.d.ts +3 -0
  44. package/dist/commands/report-validate.d.ts.map +1 -0
  45. package/dist/commands/report-validate.js +719 -0
  46. package/dist/commands/report-validate.js.map +1 -0
  47. package/dist/commands/report.d.ts +12 -0
  48. package/dist/commands/report.d.ts.map +1 -0
  49. package/dist/commands/report.js +666 -0
  50. package/dist/commands/report.js.map +1 -0
  51. package/dist/commands/wf-form.d.ts +34 -0
  52. package/dist/commands/wf-form.d.ts.map +1 -1
  53. package/dist/commands/wf-form.js +303 -127
  54. package/dist/commands/wf-form.js.map +1 -1
  55. package/dist/commands/workflow-advanced.d.ts.map +1 -1
  56. package/dist/commands/workflow-advanced.js +109 -90
  57. package/dist/commands/workflow-advanced.js.map +1 -1
  58. package/dist/commands/workflow-auth-resp.d.ts +8 -0
  59. package/dist/commands/workflow-auth-resp.d.ts.map +1 -0
  60. package/dist/commands/workflow-auth-resp.js +568 -0
  61. package/dist/commands/workflow-auth-resp.js.map +1 -0
  62. package/dist/commands/workflow-condition.d.ts.map +1 -1
  63. package/dist/commands/workflow-condition.js +3 -1
  64. package/dist/commands/workflow-condition.js.map +1 -1
  65. package/dist/commands/workflow-create-auth-resp.d.ts +4 -0
  66. package/dist/commands/workflow-create-auth-resp.d.ts.map +1 -0
  67. package/dist/commands/workflow-create-auth-resp.js +204 -0
  68. package/dist/commands/workflow-create-auth-resp.js.map +1 -0
  69. package/dist/commands/workflow-node-overtime.d.ts.map +1 -1
  70. package/dist/commands/workflow-node-overtime.js +125 -92
  71. package/dist/commands/workflow-node-overtime.js.map +1 -1
  72. package/dist/commands/workflow-node-reject.d.ts +52 -0
  73. package/dist/commands/workflow-node-reject.d.ts.map +1 -1
  74. package/dist/commands/workflow-node-reject.js +134 -63
  75. package/dist/commands/workflow-node-reject.js.map +1 -1
  76. package/dist/commands/workflow-node-sign.d.ts.map +1 -1
  77. package/dist/commands/workflow-node-sign.js +14 -7
  78. package/dist/commands/workflow-node-sign.js.map +1 -1
  79. package/dist/commands/workflow-node-validate.d.ts +6 -0
  80. package/dist/commands/workflow-node-validate.d.ts.map +1 -1
  81. package/dist/commands/workflow-node-validate.js +143 -21
  82. package/dist/commands/workflow-node-validate.js.map +1 -1
  83. package/dist/commands/workflow-node.d.ts.map +1 -1
  84. package/dist/commands/workflow-node.js +359 -116
  85. package/dist/commands/workflow-node.js.map +1 -1
  86. package/dist/commands/workflow-numbering.d.ts.map +1 -1
  87. package/dist/commands/workflow-numbering.js +73 -34
  88. package/dist/commands/workflow-numbering.js.map +1 -1
  89. package/dist/commands/workflow-operator-sign.d.ts +10 -0
  90. package/dist/commands/workflow-operator-sign.d.ts.map +1 -1
  91. package/dist/commands/workflow-operator-sign.js +40 -53
  92. package/dist/commands/workflow-operator-sign.js.map +1 -1
  93. package/dist/commands/workflow-plan-range.d.ts +10 -0
  94. package/dist/commands/workflow-plan-range.d.ts.map +1 -1
  95. package/dist/commands/workflow-plan-range.js +15 -54
  96. package/dist/commands/workflow-plan-range.js.map +1 -1
  97. package/dist/commands/workflow-segment.d.ts.map +1 -1
  98. package/dist/commands/workflow-segment.js +22 -14
  99. package/dist/commands/workflow-segment.js.map +1 -1
  100. package/dist/commands/workflow.d.ts.map +1 -1
  101. package/dist/commands/workflow.js +13 -69
  102. package/dist/commands/workflow.js.map +1 -1
  103. package/dist/index.js +15 -0
  104. package/dist/index.js.map +1 -1
  105. package/dist/services/actionflow/build_workflow_draft.d.ts +6 -0
  106. package/dist/services/actionflow/build_workflow_draft.d.ts.map +1 -1
  107. package/dist/services/actionflow/build_workflow_draft.js +63 -4
  108. package/dist/services/actionflow/build_workflow_draft.js.map +1 -1
  109. package/dist/services/actionflow/calendar_mapper.d.ts +2 -2
  110. package/dist/services/actionflow/calendar_mapper.d.ts.map +1 -1
  111. package/dist/services/actionflow/calendar_mapper.js +33 -13
  112. package/dist/services/actionflow/calendar_mapper.js.map +1 -1
  113. package/dist/services/actionflow/components/action_eb_add.d.ts.map +1 -1
  114. package/dist/services/actionflow/components/action_eb_add.js +13 -1
  115. package/dist/services/actionflow/components/action_eb_add.js.map +1 -1
  116. package/dist/services/actionflow/components/action_eb_delete.js +2 -2
  117. package/dist/services/actionflow/components/action_eb_delete.js.map +1 -1
  118. package/dist/services/actionflow/components/action_eb_recover.js +2 -2
  119. package/dist/services/actionflow/components/action_eb_recover.js.map +1 -1
  120. package/dist/services/actionflow/components/action_eb_save_version.js +2 -2
  121. package/dist/services/actionflow/components/action_eb_save_version.js.map +1 -1
  122. package/dist/services/actionflow/components/action_eb_update.d.ts.map +1 -1
  123. package/dist/services/actionflow/components/action_eb_update.js +15 -3
  124. package/dist/services/actionflow/components/action_eb_update.js.map +1 -1
  125. package/dist/services/actionflow/components/action_eb_update_compiler.js +5 -5
  126. package/dist/services/actionflow/components/action_eb_update_compiler.js.map +1 -1
  127. package/dist/services/actionflow/components/approve_create.d.ts.map +1 -1
  128. package/dist/services/actionflow/components/approve_create.js +5 -2
  129. package/dist/services/actionflow/components/approve_create.js.map +1 -1
  130. package/dist/services/actionflow/components/approve_trigger.d.ts.map +1 -1
  131. package/dist/services/actionflow/components/approve_trigger.js +5 -0
  132. package/dist/services/actionflow/components/approve_trigger.js.map +1 -1
  133. package/dist/services/actionflow/components/date_trigger.d.ts.map +1 -1
  134. package/dist/services/actionflow/components/date_trigger.js +14 -1
  135. package/dist/services/actionflow/components/date_trigger.js.map +1 -1
  136. package/dist/services/actionflow/components/dml_execute.d.ts.map +1 -1
  137. package/dist/services/actionflow/components/dml_execute.js +18 -10
  138. package/dist/services/actionflow/components/dml_execute.js.map +1 -1
  139. package/dist/services/actionflow/components/document_actions.js +5 -5
  140. package/dist/services/actionflow/components/document_actions.js.map +1 -1
  141. package/dist/services/actionflow/components/eb_get_data_by_id.d.ts.map +1 -1
  142. package/dist/services/actionflow/components/eb_get_data_by_id.js +8 -6
  143. package/dist/services/actionflow/components/eb_get_data_by_id.js.map +1 -1
  144. package/dist/services/actionflow/components/enquiry_form.d.ts.map +1 -1
  145. package/dist/services/actionflow/components/enquiry_form.js +28 -9
  146. package/dist/services/actionflow/components/enquiry_form.js.map +1 -1
  147. package/dist/services/actionflow/components/hrm_actions.d.ts.map +1 -1
  148. package/dist/services/actionflow/components/hrm_actions.js +34 -13
  149. package/dist/services/actionflow/components/hrm_actions.js.map +1 -1
  150. package/dist/services/actionflow/components/index.js +3 -3
  151. package/dist/services/actionflow/components/index.js.map +1 -1
  152. package/dist/services/actionflow/components/inner_mq_send.d.ts.map +1 -1
  153. package/dist/services/actionflow/components/inner_mq_send.js +43 -4
  154. package/dist/services/actionflow/components/inner_mq_send.js.map +1 -1
  155. package/dist/services/actionflow/components/meeting_create.js +9 -9
  156. package/dist/services/actionflow/components/meeting_create.js.map +1 -1
  157. package/dist/services/actionflow/components/multiple_execution.d.ts.map +1 -1
  158. package/dist/services/actionflow/components/multiple_execution.js +83 -4
  159. package/dist/services/actionflow/components/multiple_execution.js.map +1 -1
  160. package/dist/services/actionflow/components/output.d.ts +3 -2
  161. package/dist/services/actionflow/components/output.d.ts.map +1 -1
  162. package/dist/services/actionflow/components/output.js +33 -0
  163. package/dist/services/actionflow/components/output.js.map +1 -1
  164. package/dist/services/actionflow/components/schedule_create.js +10 -10
  165. package/dist/services/actionflow/components/schedule_create.js.map +1 -1
  166. package/dist/services/actionflow/components/send_message.js +1 -1
  167. package/dist/services/actionflow/components/send_message.js.map +1 -1
  168. package/dist/services/actionflow/components/simple_scheduler.d.ts.map +1 -1
  169. package/dist/services/actionflow/components/simple_scheduler.js +42 -9
  170. package/dist/services/actionflow/components/simple_scheduler.js.map +1 -1
  171. package/dist/services/actionflow/components/time_batch_trigger.d.ts.map +1 -1
  172. package/dist/services/actionflow/components/time_batch_trigger.js +43 -13
  173. package/dist/services/actionflow/components/time_batch_trigger.js.map +1 -1
  174. package/dist/services/actionflow/components/workflow_actions.d.ts +0 -1
  175. package/dist/services/actionflow/components/workflow_actions.d.ts.map +1 -1
  176. package/dist/services/actionflow/components/workflow_actions.js +21 -27
  177. package/dist/services/actionflow/components/workflow_actions.js.map +1 -1
  178. package/dist/services/actionflow/context_preflight.d.ts +30 -1
  179. package/dist/services/actionflow/context_preflight.d.ts.map +1 -1
  180. package/dist/services/actionflow/context_preflight.js +175 -2
  181. package/dist/services/actionflow/context_preflight.js.map +1 -1
  182. package/dist/services/actionflow/design_client.d.ts +4 -0
  183. package/dist/services/actionflow/design_client.d.ts.map +1 -1
  184. package/dist/services/actionflow/design_client.js +10 -0
  185. package/dist/services/actionflow/design_client.js.map +1 -1
  186. package/dist/services/actionflow/dynamic_resources.d.ts.map +1 -1
  187. package/dist/services/actionflow/dynamic_resources.js +10 -3
  188. package/dist/services/actionflow/dynamic_resources.js.map +1 -1
  189. package/dist/services/actionflow/enrich_approve_trigger.d.ts.map +1 -1
  190. package/dist/services/actionflow/enrich_approve_trigger.js +18 -3
  191. package/dist/services/actionflow/enrich_approve_trigger.js.map +1 -1
  192. package/dist/services/actionflow/formula_service.d.ts +1 -1
  193. package/dist/services/actionflow/formula_service.d.ts.map +1 -1
  194. package/dist/services/actionflow/formula_service.js +135 -12
  195. package/dist/services/actionflow/formula_service.js.map +1 -1
  196. package/dist/services/actionflow/generation_service.d.ts.map +1 -1
  197. package/dist/services/actionflow/generation_service.js +18 -2
  198. package/dist/services/actionflow/generation_service.js.map +1 -1
  199. package/dist/services/actionflow/preflight_service.d.ts +1 -1
  200. package/dist/services/actionflow/preflight_service.d.ts.map +1 -1
  201. package/dist/services/actionflow/preflight_service.js +168 -5
  202. package/dist/services/actionflow/preflight_service.js.map +1 -1
  203. package/dist/services/actionflow/save_workflow_draft.d.ts +8 -0
  204. package/dist/services/actionflow/save_workflow_draft.d.ts.map +1 -1
  205. package/dist/services/actionflow/save_workflow_draft.js +6 -2
  206. package/dist/services/actionflow/save_workflow_draft.js.map +1 -1
  207. package/dist/services/actionflow/update_service.d.ts +6 -0
  208. package/dist/services/actionflow/update_service.d.ts.map +1 -1
  209. package/dist/services/actionflow/update_service.js +125 -7
  210. package/dist/services/actionflow/update_service.js.map +1 -1
  211. package/dist/services/actionflow/workflow_compiler.d.ts.map +1 -1
  212. package/dist/services/actionflow/workflow_compiler.js +17 -9
  213. package/dist/services/actionflow/workflow_compiler.js.map +1 -1
  214. package/dist/services/browser.d.ts +34 -0
  215. package/dist/services/browser.d.ts.map +1 -0
  216. package/dist/services/browser.js +57 -0
  217. package/dist/services/browser.js.map +1 -0
  218. package/dist/services/esb-interface/document-parser.d.ts +5 -0
  219. package/dist/services/esb-interface/document-parser.d.ts.map +1 -1
  220. package/dist/services/esb-interface/document-parser.js +117 -1
  221. package/dist/services/esb-interface/document-parser.js.map +1 -1
  222. package/dist/services/esb-interface/importer.d.ts.map +1 -1
  223. package/dist/services/esb-interface/importer.js +7 -2
  224. package/dist/services/esb-interface/importer.js.map +1 -1
  225. package/dist/services/field-props-data.d.ts +56 -0
  226. package/dist/services/field-props-data.d.ts.map +1 -0
  227. package/dist/services/field-props-data.js +732 -0
  228. package/dist/services/field-props-data.js.map +1 -0
  229. package/dist/services/form-edit-base.d.ts +45 -0
  230. package/dist/services/form-edit-base.d.ts.map +1 -0
  231. package/dist/services/form-edit-base.js +76 -0
  232. package/dist/services/form-edit-base.js.map +1 -0
  233. package/dist/services/form-field-drop.d.ts +41 -0
  234. package/dist/services/form-field-drop.d.ts.map +1 -0
  235. package/dist/services/form-field-drop.js +58 -0
  236. package/dist/services/form-field-drop.js.map +1 -0
  237. package/dist/services/form-style-template.d.ts +17 -0
  238. package/dist/services/form-style-template.d.ts.map +1 -0
  239. package/dist/services/form-style-template.js +102 -0
  240. package/dist/services/form-style-template.js.map +1 -0
  241. package/dist/services/form-virtual.d.ts +60 -0
  242. package/dist/services/form-virtual.d.ts.map +1 -0
  243. package/dist/services/form-virtual.js +331 -0
  244. package/dist/services/form-virtual.js.map +1 -0
  245. package/dist/services/report/analyze.d.ts +67 -0
  246. package/dist/services/report/analyze.d.ts.map +1 -0
  247. package/dist/services/report/analyze.js +173 -0
  248. package/dist/services/report/analyze.js.map +1 -0
  249. package/dist/services/report/build.d.ts +166 -0
  250. package/dist/services/report/build.d.ts.map +1 -0
  251. package/dist/services/report/build.js +520 -0
  252. package/dist/services/report/build.js.map +1 -0
  253. package/dist/services/report/constants.d.ts +145 -0
  254. package/dist/services/report/constants.d.ts.map +1 -0
  255. package/dist/services/report/constants.js +250 -0
  256. package/dist/services/report/constants.js.map +1 -0
  257. package/dist/services/report/dataset.d.ts +73 -0
  258. package/dist/services/report/dataset.d.ts.map +1 -0
  259. package/dist/services/report/dataset.js +185 -0
  260. package/dist/services/report/dataset.js.map +1 -0
  261. package/dist/services/report/fields.d.ts +80 -0
  262. package/dist/services/report/fields.d.ts.map +1 -0
  263. package/dist/services/report/fields.js +245 -0
  264. package/dist/services/report/fields.js.map +1 -0
  265. package/dist/services/report/forms.d.ts +70 -0
  266. package/dist/services/report/forms.d.ts.map +1 -0
  267. package/dist/services/report/forms.js +237 -0
  268. package/dist/services/report/forms.js.map +1 -0
  269. package/dist/services/report/guard.d.ts +73 -0
  270. package/dist/services/report/guard.d.ts.map +1 -0
  271. package/dist/services/report/guard.js +262 -0
  272. package/dist/services/report/guard.js.map +1 -0
  273. package/dist/services/report/http.d.ts +118 -0
  274. package/dist/services/report/http.d.ts.map +1 -0
  275. package/dist/services/report/http.js +159 -0
  276. package/dist/services/report/http.js.map +1 -0
  277. package/dist/services/report/lifecycle.d.ts +107 -0
  278. package/dist/services/report/lifecycle.d.ts.map +1 -0
  279. package/dist/services/report/lifecycle.js +323 -0
  280. package/dist/services/report/lifecycle.js.map +1 -0
  281. package/dist/services/report/permission.d.ts +59 -0
  282. package/dist/services/report/permission.d.ts.map +1 -0
  283. package/dist/services/report/permission.js +286 -0
  284. package/dist/services/report/permission.js.map +1 -0
  285. package/dist/services/report/query-checks.d.ts +124 -0
  286. package/dist/services/report/query-checks.d.ts.map +1 -0
  287. package/dist/services/report/query-checks.js +374 -0
  288. package/dist/services/report/query-checks.js.map +1 -0
  289. package/dist/services/report/query.d.ts +106 -0
  290. package/dist/services/report/query.d.ts.map +1 -0
  291. package/dist/services/report/query.js +278 -0
  292. package/dist/services/report/query.js.map +1 -0
  293. package/dist/services/report/render.d.ts +52 -0
  294. package/dist/services/report/render.d.ts.map +1 -0
  295. package/dist/services/report/render.js +138 -0
  296. package/dist/services/report/render.js.map +1 -0
  297. package/dist/services/report/reports.d.ts +110 -0
  298. package/dist/services/report/reports.d.ts.map +1 -0
  299. package/dist/services/report/reports.js +179 -0
  300. package/dist/services/report/reports.js.map +1 -0
  301. package/dist/services/report/safe-save.d.ts +57 -0
  302. package/dist/services/report/safe-save.d.ts.map +1 -0
  303. package/dist/services/report/safe-save.js +325 -0
  304. package/dist/services/report/safe-save.js.map +1 -0
  305. package/dist/services/report/sources.d.ts +48 -0
  306. package/dist/services/report/sources.d.ts.map +1 -0
  307. package/dist/services/report/sources.js +147 -0
  308. package/dist/services/report/sources.js.map +1 -0
  309. package/dist/services/report/types.d.ts +312 -0
  310. package/dist/services/report/types.d.ts.map +1 -0
  311. package/dist/services/report/types.js +2 -0
  312. package/dist/services/report/types.js.map +1 -0
  313. package/dist/services/report/validate.d.ts +169 -0
  314. package/dist/services/report/validate.d.ts.map +1 -0
  315. package/dist/services/report/validate.js +685 -0
  316. package/dist/services/report/validate.js.map +1 -0
  317. package/dist/services/report/verify.d.ts +72 -0
  318. package/dist/services/report/verify.d.ts.map +1 -0
  319. package/dist/services/report/verify.js +441 -0
  320. package/dist/services/report/verify.js.map +1 -0
  321. package/dist/services/report/workbook.d.ts +108 -0
  322. package/dist/services/report/workbook.d.ts.map +1 -0
  323. package/dist/services/report/workbook.js +471 -0
  324. package/dist/services/report/workbook.js.map +1 -0
  325. package/dist/services/rich-types.d.ts +39 -0
  326. package/dist/services/rich-types.d.ts.map +1 -1
  327. package/dist/services/rich-types.js +61 -30
  328. package/dist/services/rich-types.js.map +1 -1
  329. package/dist/services/workflow-node-layout.d.ts +214 -0
  330. package/dist/services/workflow-node-layout.d.ts.map +1 -0
  331. package/dist/services/workflow-node-layout.js +338 -0
  332. package/dist/services/workflow-node-layout.js.map +1 -0
  333. package/dist/services/workflow-operator.d.ts +47 -2
  334. package/dist/services/workflow-operator.d.ts.map +1 -1
  335. package/dist/services/workflow-operator.js +102 -5
  336. package/dist/services/workflow-operator.js.map +1 -1
  337. package/dist/services/workflow-overtime.d.ts +95 -0
  338. package/dist/services/workflow-overtime.d.ts.map +1 -0
  339. package/dist/services/workflow-overtime.js +207 -0
  340. package/dist/services/workflow-overtime.js.map +1 -0
  341. package/dist/services/workflow-plan-range.d.ts +18 -0
  342. package/dist/services/workflow-plan-range.d.ts.map +1 -0
  343. package/dist/services/workflow-plan-range.js +72 -0
  344. package/dist/services/workflow-plan-range.js.map +1 -0
  345. package/package.json +3 -2
  346. package/skill-docs/SKILL.md +277 -261
  347. package/skill-docs/_catalog.md +77 -66
  348. package/skill-docs/actionflows/SKILL.md +22 -14
  349. package/skill-docs/actionflows/references/components/calendar/MeetingCreate.md +17 -17
  350. package/skill-docs/actionflows/references/components/calendar/ScheduleCreate.md +17 -17
  351. package/skill-docs/actionflows/references/components/database/DMLExecute.md +3 -3
  352. package/skill-docs/actionflows/references/components/ebuilder/DateTrigger.md +32 -17
  353. package/skill-docs/actionflows/references/components/ebuilder/EbGetDataById.md +17 -17
  354. package/skill-docs/actionflows/references/components/ebuilder/EnquiryForm.md +6 -0
  355. package/skill-docs/actionflows/references/components/ebuilder/EventFormData.md +2 -0
  356. package/skill-docs/actionflows/references/components/ebuilder/TimeBatchTrigger.md +19 -17
  357. package/skill-docs/actionflows/references/components/logic/Output.md +28 -17
  358. package/skill-docs/actionflows/references/components/message/InnerMQSend.md +6 -2
  359. package/skill-docs/actionflows/references/components/personnel/AlterPersonStatus.md +30 -30
  360. package/skill-docs/actionflows/references/components/personnel/HrmEmployeeUpdate.md +32 -32
  361. package/skill-docs/actionflows/references/components/trigger/InnerMQListener.md +41 -40
  362. package/skill-docs/actionflows/references/components/trigger/SimpleScheduler.md +19 -17
  363. package/skill-docs/actionflows/references/components/workflow/ApproveCreate.md +17 -17
  364. package/skill-docs/actionflows/references/components/workflow/ApproveDelete.md +19 -17
  365. package/skill-docs/actionflows/references/components/workflow/ApproveEntrust.md +19 -17
  366. package/skill-docs/actionflows/references/components/workflow/ApproveSave.md +17 -17
  367. package/skill-docs/actionflows/references/components/workflow/ApproveTrigger.md +99 -84
  368. package/skill-docs/actionflows/references/dynamic_capability_matrix.md +39 -0
  369. package/skill-docs/references/common/guide-plan-template.md +251 -233
  370. package/skill-docs/references/common/ref-cli-commands.md +519 -373
  371. package/skill-docs/references/ebuilder-designer/guide-designer-components.md +1 -1
  372. package/skill-docs/references/ebuilder-designer/guide-designer-factory.md +460 -460
  373. package/skill-docs/references/ebuilder-designer/guide-designer.md +4 -4
  374. package/skill-docs/references/form/guide-create-form.md +232 -214
  375. package/skill-docs/references/form/guide-form-association.md +1 -1
  376. package/skill-docs/references/form/guide-form-view.md +318 -318
  377. package/skill-docs/references/form/guide-virtual-form.md +156 -0
  378. package/skill-docs/references/form/ref-form-fields.md +239 -100
  379. package/skill-docs/references/form/style-templates.md +80 -27
  380. package/skill-docs/references/report/add-dataset-registration-guide.md +139 -0
  381. package/skill-docs/references/report/ai-report-workflow.md +412 -0
  382. package/skill-docs/references/report/api-report-build-fast-path.md +275 -0
  383. package/skill-docs/references/report/app-datasource-lookup-guide.md +230 -0
  384. package/skill-docs/references/report/cell-config-echo-guide.md +163 -0
  385. package/skill-docs/references/report/cell-transform-guide.md +147 -0
  386. package/skill-docs/references/report/condition-format-guide.md +140 -0
  387. package/skill-docs/references/report/cross-dataset-filter-guide.md +304 -0
  388. package/skill-docs/references/report/dataset-query-filter-guide.md +235 -0
  389. package/skill-docs/references/report/dataset-sidebar-ops-guide.md +280 -0
  390. package/skill-docs/references/report/dataset-table-field-contract-guide.md +339 -0
  391. package/skill-docs/references/report/datasource-metadata-guide.md +365 -0
  392. package/skill-docs/references/report/datasource-selection-and-parent-filter-guide.md +148 -0
  393. package/skill-docs/references/report/date-range-query-reference.md +102 -0
  394. package/skill-docs/references/report/default-header-style-guide.md +70 -0
  395. package/skill-docs/references/report/designer-blank-prevention-guide.md +111 -0
  396. package/skill-docs/references/report/event-hreflink-guide.md +184 -0
  397. package/skill-docs/references/report/field-bind-exact-match-guide.md +208 -0
  398. package/skill-docs/references/report/formula-cell-api-guide.md +258 -0
  399. package/skill-docs/references/report/guide-report-build.md +131 -0
  400. package/skill-docs/references/report/guide-report-modify.md +100 -0
  401. package/skill-docs/references/report/guide-report-multisource.md +143 -0
  402. package/skill-docs/references/report/guide-report-query.md +98 -0
  403. package/skill-docs/references/report/hidden-row-and-header-merge-guide.md +100 -0
  404. package/skill-docs/references/report/layout-showlocation-freeze-guide.md +167 -0
  405. package/skill-docs/references/report/preaggregate-auto-disable-guide.md +107 -0
  406. package/skill-docs/references/report/query-condition-api-guide.md +890 -0
  407. package/skill-docs/references/report/ref-report-commands.md +122 -0
  408. package/skill-docs/references/report/ref-report-pitfalls.md +226 -0
  409. package/skill-docs/references/report/report-baseinfo-defaults-guide.md +117 -0
  410. package/skill-docs/references/report/report-building-guide.md +511 -0
  411. package/skill-docs/references/report/report-config-schema.md +445 -0
  412. package/skill-docs/references/report/report-create-modes-guide.md +182 -0
  413. package/skill-docs/references/report/report-data-model.md +447 -0
  414. package/skill-docs/references/report/report-delivery-contract.md +101 -0
  415. package/skill-docs/references/report/report-designer-feature-map.md +500 -0
  416. package/skill-docs/references/report/report-internal-error-guide.md +78 -0
  417. package/skill-docs/references/report/report-knowledge-base.md +389 -0
  418. package/skill-docs/references/report/report-lifecycle-api-guide.md +392 -0
  419. package/skill-docs/references/report/report-list-page-ops-guide.md +191 -0
  420. package/skill-docs/references/report/report-permission-guide.md +365 -0
  421. package/skill-docs/references/report/report-requirement-analysis-template.md +202 -0
  422. package/skill-docs/references/report/report-self-check-guide.md +164 -0
  423. package/skill-docs/references/report/safe-partial-save-guide.md +151 -0
  424. package/skill-docs/references/report/snowflake-id-precision-guide.md +84 -0
  425. package/skill-docs/references/report/spec-build-schema.md +291 -0
  426. package/skill-docs/references/report/targeted-fix-guide.md +97 -0
  427. package/skill-docs/references/report/user-request-scope-only-guide.md +82 -0
  428. package/skill-docs/references/workflow/guide-workflow-auth-resp.md +190 -0
  429. package/skill-docs/references/workflow/guide-workflow-node-layout.md +181 -0
  430. package/skill-docs/references/workflow/guide-workflow.md +7 -3
  431. package/skill-docs/actionflows/references/components/workflow/ApproveCompletelyDelete.md +0 -17
@@ -0,0 +1,139 @@
1
+ # addDataset 注册契约 · `field_` 前缀门禁(强制)
2
+
3
+ > **事故(已验证 · 报表 `1312765120721813505`)**
4
+ > 同一 `sourceId=972019393600233477`(轻资产信息):
5
+ > - **Agent/API 加的数据集** `1312765120721813506`:`type=form` + `sourceGroup=<appId>` → `fieldsKey.name` 业务字段为**裸雪花**(无 `field_`)
6
+ > - **设计器手动「+」加的数据集** `1312794545670627330`:`type=logic` + `sourceGroup=weaver-ebuilder-form-service` → `fieldsKey.name` 业务字段为 **`field_{雪花}`**
7
+ >
8
+ > **遗漏点不在「写 Field 时忘加 field_」**,而在 **`addDataset` 注册参数与设计器不一致**,导致权威 `fieldsKey` 本身就没有 `field_`。
9
+ > 后续若按设计器习惯臆造 `field_`,或绑错到「裸雪花」那份 dataset,会出现保存 500 / 取数失败 / 与用户手动数据集字段名对不齐。
10
+
11
+ ---
12
+
13
+ ## 一、两种注册形态(必须分清)
14
+
15
+ | 形态 | 典型 `addDataset` | `dataset/list` 特征 | 业务字段 `fieldsKey.name` | `tableName` 后缀 | 何时用 |
16
+ |------|-------------------|---------------------|---------------------------|------------------|--------|
17
+ | **A. 设计器默认(LOGIC)** | `sourceType=LOGIC`(或 `logic`)+ `sourceGroup=weaver-ebuilder-form-service` + `appid=<appId>` | `type:"logic"`,`sourceGroup:"weaver-ebuilder-form-service"` | **`field_{雪花}`** | **`(业务模块)`** | **普通应用表单(默认强制)** |
18
+ | **B. 共享表 / form 契约** | `sourceType=form` + `sourceGroup=<appId>` | `type:"form"`,`sourceGroup` 等于 appId | 常为**裸雪花** | **`(表单)`** | 仅「xxx-共享表」类应用且已验证必须用此契约时(见 MEMORY/共享表笔记) |
19
+
20
+ **禁止**:在普通应用里误用形态 B,再抱怨「没有 field_」——那是注册错了,不是 fieldsKey 坏了。
21
+
22
+ > ⚠️ **`tableName` 后缀必须与注册形态一致**:形态 A → `(业务模块)`,形态 B → `(表单)`。
23
+ > 后缀缺失或写错会导致左侧数据源不显示模块类型。
24
+ > 详见 **`dataset-table-field-contract-guide.md`**(含 `FieldCellType` 必需字段全表 + 落库门禁)。
25
+
26
+ ---
27
+
28
+ ## 二、设计器兼容的 addDataset(默认强制)
29
+
30
+ ```
31
+ POST /api/bs/edc/report/addDataset
32
+ Content-Type: multipart/form-data
33
+
34
+ reportId = {reportId}
35
+ sourceType = LOGIC
36
+ sourceIds = {sourceId} // 表单/数据源 ID
37
+ sourceName = {显示名} // **回显名强制**:`{表单名}(业务模块)`,如 `轻资产信息(业务模块)`;禁止只传裸表单名
38
+ appid = {appId} // 注意小写 appid(与设计器一致)
39
+ sourceGroup = weaver-ebuilder-form-service
40
+ ```
41
+ > **回显名(已验证)**:`sourceName` 写入 `edc_dataset_dev.name`,左侧回显应为 **`xxx(业务模块)`**。
42
+ > 只传 `轻资产信息` 会缺后缀;源合并后的 `tableText` 可能仍是 `轻资产信息(uf_xxx)`,与回显名不是同一字段——**以 `name`=sourceName 为准**。
43
+
44
+ 可选字段以设计器实际请求为准;**不得**把 `sourceGroup` 写成 appId,除非走 §一 形态 B。
45
+
46
+ `addDataset` **不返回** datasetId → 短轮询:
47
+
48
+ ```
49
+ GET /api/bs/edc/dataset/list?hasField=true&reportId={reportId}
50
+ ```
51
+
52
+ 按 **sourceId** 命中;若同 sourceId 多条,**优先选** `sourceGroup=weaver-ebuilder-form-service` / `type=logic` 那条。
53
+
54
+ ### 2.1 同源只挂一次(**强制 · 2026-09-11 事故**)
55
+
56
+ `spec_lib.resolveDataset()` 在 `addDataset` **之前**先查 `dataset/list`:
57
+
58
+ | 场景 | 行为 |
59
+ |------|------|
60
+ | 本报表已有同 `sourceId` 数据集 | **复用**(`datasetReused=true`),**不再 addDataset** |
61
+ | 发现同源 ≥2 条 | 回传 `datasetDuplicates[]` + WARN(左侧会出现重复分组) |
62
+ | 传了别的报表的 `datasetId` | 忽略 + WARN(禁止跨报表复用) |
63
+
64
+ > 事故:同一表单被 `addDataset` 挂载两次(`type=LOGIC` 与 `type=logic` 各一条),
65
+ > 且画布上两个单元格引用第二条 → 设计器左侧出现**两个同名数据源分组**。
66
+ > 未先去重就继续绑字段,会让「绑到哪一份数据源」变得不可预测。
67
+ > 清理顺序见 `dataset-sidebar-ops-guide.md §5.3`(**先改绑/清单元格 → 再 delDataset**)。
68
+
69
+ ---
70
+
71
+ ## 三、addDataset 后强制门禁(遗漏即本事故)
72
+
73
+ `fieldsAndOriginFields?isFront=true` 拿到 `fieldsKey` 后立刻检查:
74
+
75
+ ```javascript
76
+ const biz = fieldsKey.filter(
77
+ (f) => /^\d{15,}$/.test(f.name) || /^field_\d{15,}$/.test(f.name)
78
+ );
79
+ const withPrefix = biz.filter((f) => String(f.name).startsWith('field_')).length;
80
+ const bare = biz.filter((f) => /^\d{15,}$/.test(f.name)).length;
81
+
82
+ // 普通应用(非共享表 form 契约):业务字段应多数带 field_
83
+ if (!isSharedFormContract && biz.length > 0 && bare > withPrefix) {
84
+ throw new Error(
85
+ 'addDataset 注册错误:fieldsKey 业务字段为裸雪花(无 field_)。' +
86
+ '应使用 sourceType=LOGIC + sourceGroup=weaver-ebuilder-form-service;' +
87
+ 'delDataset 后重建,禁止在 Field 上凭记忆加 field_ 前缀凑数。'
88
+ );
89
+ }
90
+ ```
91
+
92
+ | 检查 | 通过标准 |
93
+ |------|----------|
94
+ | 普通应用 | 业务字段 `field_` 数量 **≥** 裸雪花数量(通常裸雪花应为 0) |
95
+ | 共享表 form 契约 | 允许裸雪花;**禁止**再擅自加 `field_` |
96
+ | 同 sourceId 已有手动 LOGIC 数据集 | **绑定/取 fieldsKey 必须用那条**;勿继续用旧的 form+appId 脏注册 |
97
+
98
+ 失败处理:
99
+
100
+ 1. `POST /api/bs/edc/report/delDataset` 删掉错误注册
101
+ - form:`reportId=<报表ID>` · **`sourceIds=<datasetId>`**(参数名历史遗留,**不是**表单 sourceId)
102
+ - 建议先 `GET /api/bs/edc/dataset/checkDataSetUsed?reportId=&datasetId=`;CLI:`e10-cli report dataset delete`
103
+ - 完整侧栏操作见 `dataset-sidebar-ops-guide.md`
104
+ 2. 按 §二 重新 `addDataset`
105
+ 3. 再拉 `fieldsKey`,确认出现 `field_*`
106
+ 4. 再写 Field / `saveReportDevInfo`
107
+
108
+ ---
109
+
110
+ ## 四、与「字段精确绑定」的关系
111
+
112
+ | 步骤 | 规则 |
113
+ |------|------|
114
+ | 1 注册 | 本指南:让 `fieldsKey` **先**变成设计器同款(含 `field_`) |
115
+ | 2 绑定 | `field-bind-exact-match-guide.md`:`name` **逐字等于** 当前 dataset 的 `fieldsKey.name` |
116
+ | 3 禁止 | 注册错了却在 cell 上「手工补 `field_`」;或注册对了却去前缀 |
117
+
118
+ **一句话**:`field_` 不是 Agent 写 Field 时发明的,是 **正确 addDataset 之后 fieldsKey 自带的**。
119
+
120
+ ---
121
+
122
+ ## 五、自检清单
123
+
124
+ - [ ] `addDataset` 使用 `sourceType=LOGIC` + `sourceGroup=weaver-ebuilder-form-service`(除非共享表契约)
125
+ - [ ] `dataset/list` 回读该条 `type/sourceGroup` 与设计器一致
126
+ - [ ] `fieldsKey` 业务字段已出现 `field_*`(普通应用)
127
+ - [ ] Field.`name` / fieldKey 末段 ∈ **该** dataset 的 fieldsKey(`verify_field_bind.js`)
128
+ - [ ] 同 sourceId 多实例时,未误绑到旧的 form+appId 裸雪花数据集
129
+
130
+ ---
131
+
132
+ ## 六、相关文档
133
+
134
+ | 文档 | 关系 |
135
+ |------|------|
136
+ | `field-bind-exact-match-guide.md` | 绑定名权威来源;前置依赖本指南的注册正确 |
137
+ | `api-report-build-fast-path.md` | 建表流程步骤 2 / 2.1 门禁 |
138
+ | `report-designer-feature-map.md` §六 | 设计器「+」对应 addDataset 参数 |
139
+ | `e10-cli report verify bind` | 交付校验;并对「裸雪花 fieldsKey」给出注册错误提示 |
@@ -0,0 +1,412 @@
1
+ # AI 报表生成工作流程
2
+
3
+ > **冷启动禁止通读**:见 `cold-start-scan-guide.md`。纯搭表走 `api-report-build-fast-path.md`,勿开场读本文。
4
+
5
+ ## 一、整体流程概览
6
+
7
+ ```
8
+ 用户输入(文本描述 / 图片效果 / 需求文件)
9
+ |
10
+ v
11
+ 1. 需求解析:理解报表类型、数据维度、指标、样式需求
12
+ |
13
+ v
14
+ 2. 字段分类:将需求中的字段映射为三类
15
+ - groupFields(分组/维度字段)
16
+ - listFields(列表/展示字段)
17
+ - targetFields(指标/度量字段)
18
+ |
19
+ v
20
+ 3. 报表类型判定:根据字段组合判断报表类型
21
+ - 简单列表(LIST)
22
+ - 分组表(GROUP)
23
+ - 交叉表/统计表(COUNT)
24
+ |
25
+ v
26
+ 4. 布局规划:确定单元格位置、扩展方向、父格关系
27
+ |
28
+ v
29
+ 5. 样式配置:主题选择、条件格式、字体样式
30
+ |
31
+ v
32
+ 6. 高级配置:查询条件、分页、打印、解析优化
33
+ |
34
+ v
35
+ 7. 输出配置:生成完整的 ReportProps JSON 配置
36
+ ```
37
+
38
+ ## 二、需求解析规则
39
+
40
+ ### 2.1 从文本描述解析
41
+
42
+ 识别以下关键信息:
43
+ - **报表名称**:用户提到的报表名称,如"客户信息报表"、"销售统计表"
44
+ - **数据源**:用户提到的数据表/表单名称,如"客户信息表"、"销售合同表"
45
+ - **分组维度**:用户提到"按...分组"、"按...统计"中的字段
46
+ - **指标度量**:用户提到"统计...数量"、"求和...金额"中的字段和聚合方式
47
+ - **列表字段**:用户提到"显示...信息"、"展示...详情"中的字段
48
+ - **查询条件**:用户提到"按...筛选"、"按...查询"中的字段
49
+ - **排序要求**:用户提到"按...排序"中的字段和方向
50
+ - **样式要求**:用户提到的主题颜色、条件格式等
51
+
52
+ ### 2.2 从图片效果解析
53
+
54
+ 分析报表截图中的以下要素:
55
+ - **报表布局**:表头结构、数据排列方式(分组/交叉/列表)
56
+ - **字段位置**:行维度字段、列维度字段、指标字段的位置
57
+ - **样式特征**:背景色、字体样式、交替行颜色
58
+ - **条件格式**:数据条、图标集、高亮规则
59
+ - **功能区域**:查询条件区域、工具栏按钮
60
+
61
+ ### 2.3 从需求文件解析
62
+
63
+ 支持的需求文件格式:
64
+ - **Word/Excel**:提取表格结构、字段列表、统计要求
65
+ - **JSON/YAML**:直接映射为报表配置
66
+ - **Markdown**:提取结构化的报表需求描述
67
+ - **图片**:同图片效果解析流程
68
+
69
+ ## 三、字段分类规则
70
+
71
+ ### 3.1 groupFields(分组/维度字段)
72
+
73
+ 判定条件:
74
+ - 用户提到"按...分组"、"按...分类"、"按...维度"
75
+ - 日期类字段且用户提到时间粒度(年/月/日)
76
+ - 报表中需要横向或纵向展开的分类字段
77
+
78
+ 配置示例:
79
+ ```json
80
+ {
81
+ "fieldName": "创建日期",
82
+ "groupType": "yearmonth" // 按年月分组
83
+ }
84
+ ```
85
+
86
+ groupType 中文到系统值映射:
87
+ - "年份" → `year`
88
+ - "年月" → `yearmonth`
89
+ - "月份" → `month`
90
+ - "年月日" → `yearmonthday`
91
+ - 无时间分组 → `none`
92
+
93
+ ### 3.2 listFields(列表/展示字段)
94
+
95
+ 判定条件:
96
+ - 用户提到"显示...信息"、"展示...字段"
97
+ - 不需要分组、不需要聚合的普通展示字段
98
+ - 报表中的明细数据列
99
+
100
+ 配置示例:
101
+ ```json
102
+ {
103
+ "fieldName": "客户名称",
104
+ "groupType": "none"
105
+ }
106
+ ```
107
+
108
+ ### 3.3 targetFields(指标/度量字段)
109
+
110
+ 判定条件:
111
+ - 用户提到"统计...数量"、"求和...金额"、"平均...值"
112
+ - 需要聚合计算的数字类型字段
113
+ - 报表中的数据值区域
114
+
115
+ 配置示例:
116
+ ```json
117
+ {
118
+ "fieldName": "合同金额",
119
+ "countType": "sum" // 求和
120
+ }
121
+ ```
122
+
123
+ countType 中文到系统值映射:
124
+ - "求和" → `sum`
125
+ - "最大值" → `max`
126
+ - "最小值" → `min`
127
+ - "平均值" → `avg`
128
+ - "计数" → `count`
129
+ - "去重计数" → `distinctcount`
130
+ - 默认 → `sum`
131
+
132
+ ## 四、报表类型判定与布局规则
133
+
134
+ ### 4.1 简单列表(LIST)
135
+
136
+ **触发条件**:只有 listFields 和/或 targetFields,没有 groupFields
137
+
138
+ **布局规则**:
139
+ - 所有字段纵向扩展(expandType = Vertical)
140
+ - 显示方式为排列(displayType = List)
141
+ - 左父格均为默认(leftParent = ["default", 0, 0])
142
+ - 无上父格(topParent = ["empty", 0, 0])
143
+
144
+ **单元格布局示例**:
145
+ ```
146
+ A1: 标题行(常量)
147
+ A2: 字段1(纵向扩展,排列) B2: 字段2(纵向扩展,排列) C2: 字段3(纵向扩展,排列)
148
+ ```
149
+
150
+ ### 4.2 分组表(GROUP)
151
+
152
+ **触发条件**:有 groupFields 但数量 < 2,或没有 targetFields
153
+
154
+ **布局规则**:
155
+ - 分组字段纵向扩展(expandType = Vertical),显示方式为分组(displayType = Group)
156
+ - 指标字段纵向扩展(expandType = Vertical),显示方式为汇总(displayType = Count)
157
+ - 左父格关系:指标字段的左父格默认依赖相邻的分组字段
158
+ - 无上父格
159
+
160
+ **单元格布局示例**:
161
+ ```
162
+ A1: 标题行(常量)
163
+ A2: 分组字段(纵向扩展,分组) B2: 指标字段(纵向扩展,汇总,求和)
164
+ ```
165
+
166
+ ### 4.3 交叉表/统计表(COUNT)
167
+
168
+ **触发条件**:groupFields >= 2 且有 targetFields
169
+
170
+ **布局规则**:
171
+ - 行维度 = groupFields 的最后一个(纵向扩展,分组)
172
+ - 列维度 = groupFields 的前 N-1 个(横向扩展,分组)
173
+ - 指标字段在交叉位置(纵向扩展,汇总)
174
+ - 指标字段的左父格自定义指向行维度单元格
175
+ - 指标字段的上父格自定义指向列维度单元格
176
+ - 必须设置父格筛选关联多数据集
177
+
178
+ **单元格布局示例**(2个分组字段+1个指标):
179
+ ```
180
+ A1: 标题行(常量)
181
+ A2: 行维度字段(纵向扩展,分组) B2: 列维度字段(横向扩展,分组)
182
+ B3: 指标字段(纵向扩展,汇总,求和)
183
+ 左父格=自定义(A2), 上父格=自定义(B2)
184
+ ```
185
+
186
+ ### 4.4 交叉表父格筛选配置
187
+
188
+ 当使用多个数据集时,必须同时配置 **subordination**(从属关系)和 **leftFilterField**(左父格筛选)。
189
+ 字段引用必须使用 **fieldKey**:`{dataSetId}.{sourceId}.{fieldName}`,且 `id` 等于 `currentField`。
190
+
191
+ > 完整说明、自定义筛选、双保存与定位见 `cross-dataset-filter-guide.md`。
192
+
193
+ ```json
194
+ {
195
+ "subordination": [
196
+ "1304979556231593994.1299763447342276611.field_1299763447342276617",
197
+ "1304979560546713602.1299789221321891842.field_1299789221321891843"
198
+ ],
199
+ "leftFilterField": [{
200
+ "parentField": "1304979556231593994.1299763447342276611.field_1299763447342276617",
201
+ "currentField": "1304979560546713602.1299789221321891842.field_1299789221321891843",
202
+ "type": "Equals",
203
+ "id": "1304979560546713602.1299789221321891842.field_1299789221321891843"
204
+ }],
205
+ "customFilterField": [{
206
+ "currentField": "1304979560546713602.1299789221321891842.field_1299789221321891844",
207
+ "type": "NotContain",
208
+ "value": "排除机构",
209
+ "id": "1304979560546713602.1299789221321891842.field_1299789221321891844"
210
+ }]
211
+ }
212
+ ```
213
+
214
+ **常见错误**:使用显示名「团队」「销售经理」或裸 `field_xxx` → 设计器筛选下拉空白。
215
+
216
+ ## 五、单元格坐标规划规则
217
+
218
+ ### 5.1 基本布局原则
219
+
220
+ - 第1行(y=0):报表标题行,使用常量字段(cellType=Const)
221
+ - 第2行(y=1):表头/字段名称行
222
+ - 第3行及以后(y>=2):数据区域
223
+
224
+ ### 5.2 坐标系
225
+
226
+ - x = 行号(从0开始,向下递增)
227
+ - y = 列号(从0开始,向右递增)
228
+ - 父格坐标:[type, x, y]
229
+ - `["default", 0, 0]` = 默认(依赖相邻单元格)
230
+ - `["custom", x, y]` = 自定义(指向坐标 x,y 的单元格)
231
+ - `["empty", 0, 0]` = 无父格
232
+
233
+ ### 5.3 多数据集布局
234
+
235
+ 当报表使用多个数据集时:
236
+ 1. 维度字段通常来自主数据集
237
+ 2. 指标字段可能来自不同数据集
238
+ 3. 跨数据集字段必须设置父格筛选关联
239
+
240
+ ## 六、公式配置规则
241
+
242
+ > **API / 脚本保存含 Formula 时,完整规范见 `formula-cell-api-guide.md`。** 本节为工作流摘要。
243
+
244
+ ### 6.1 公式类型
245
+
246
+ | 分类 | 常用公式 |
247
+ |------|----------|
248
+ | 数学 | SUM, AVERAGE, COUNT, MAX, MIN, ABS, ROUND, CEILING, FLOOR |
249
+ | 文本 | LEFT, RIGHT, MID, LEN, CONCAT, UPPER, LOWER |
250
+ | 日期 | YEAR, MONTH, DAY, DATE, DATEDIF, NOW, TODAY |
251
+ | 逻辑 | IF, IFERROR, AND, OR, NOT |
252
+ | 信息 | ISERROR, ISBLANK, ISNUMBER |
253
+
254
+ ### 6.2 公式配置方式(ReportProps / getReportDevInfo)
255
+
256
+ 公式单元格 `cellType` 为 `Formula`,**cellText 为公式表达式且不带前导 `=`**:
257
+
258
+ ```json
259
+ {
260
+ "cellType": "Formula",
261
+ "cellText": "IF(J3=0,0,L3/J3)",
262
+ "displayType": "Group",
263
+ "countType": "count",
264
+ "groupType": null,
265
+ "expandType": "NoExpand"
266
+ }
267
+ ```
268
+
269
+ **错误示例(会导致设计器空白)**:
270
+
271
+ ```json
272
+ {
273
+ "cellType": "Formula",
274
+ "cellText": "=IF(J3=0,0,L3/J3)",
275
+ "displayType": "List",
276
+ "countType": "none"
277
+ }
278
+ ```
279
+
280
+ ### 6.3 workbook 写入(saveReportWithCacheConfig)
281
+
282
+ workbook `dataTable` 中 Formula 格需同时设置:
283
+
284
+ - 顶层 `"formula": "IF(...)"`(无前导 `=`)
285
+ - `style.cellType.cellText` 与顶层 `formula` 内容一致
286
+ - `style.formatter` 为空字符串
287
+
288
+ 参考 `make_formula()` 见 `formula-cell-api-guide.md` §四。
289
+
290
+ ### 6.4 公式与父格关系
291
+
292
+ 若公式需要按特定分组计算,公式单元格也需设置自定义左父格或上父格(`leftX`/`leftY` 指向根格)。
293
+
294
+ 公式格通常 `subordination: ["", ""]`,引用同表内 Field 汇总格而非数据集字段名。
295
+
296
+ ### 6.5 占比 / 除法推荐写法
297
+
298
+ | 场景 | 设计器输入 | API 存储 |
299
+ |------|-----------|----------|
300
+ | 达成率 | `=IF(J3=0,0,L3/J3)` | `IF(J3=0,0,L3/J3)` |
301
+ | 占比 | `=IF(L3=0,0,M3/L3)` | `IF(L3=0,0,M3/L3)` |
302
+ | 安全除法 | `=IFERROR(G5/F5,"--")` | `IFERROR(G5/F5,"--")` |
303
+
304
+ ### 6.6 保存与验证
305
+
306
+ 1. 双保存:`saveReportWithCacheConfig` + `saveReportDevInfo`
307
+ 2. `getReportDevInfo` 回读:确认 `cellText` 不以 `=` 开头
308
+ 3. 运行 `validate_report_config.py` 预检 Formula 格式
309
+
310
+ ## 七、高级功能配置
311
+
312
+ ### 7.1 查询条件配置
313
+
314
+ > **API/脚本写入完整规范**见 `query-condition-api-guide.md`(条件字段形态、asNameIndex、21 项日期选项、系统参数默认值)。以下为 ReportProps 摘要,**不可直接等同于 saveQueryItem payload**。
315
+
316
+ ```json
317
+ {
318
+ "queryFields": [{
319
+ "uuid": "query-1",
320
+ "id": "field-001",
321
+ "text": "日期范围",
322
+ "displayType": "date",
323
+ "conditions": [{
324
+ "dataSetId": "ds-001",
325
+ "fieldId": "createdate",
326
+ "relation": "between"
327
+ }],
328
+ "showOrder": 1
329
+ }]
330
+ }
331
+ ```
332
+
333
+ ### 7.2 分页配置
334
+
335
+ ```json
336
+ {
337
+ "pageNum": 1,
338
+ "pageRowCount": 200, // 每页行数
339
+ "dynamicField": "", // 动态Sheet页字段
340
+ "scrollPage": false // 滚动分页
341
+ }
342
+ ```
343
+
344
+ ### 7.3 解析优化配置
345
+
346
+ ```json
347
+ {
348
+ "rowMode": false, // 行式加载(仅单数据集简单列表)
349
+ "preAggregate": true // 数据预聚合(默认开启)
350
+ }
351
+ ```
352
+
353
+ ### 7.4 打印配置
354
+
355
+ ```json
356
+ {
357
+ "printInfo": {
358
+ "area": { "startRow": -1, "endRow": -1, "startCol": -1, "endCol": -1 },
359
+ "repeatArea": { "startRow": -1, "endRow": -1, "startCol": -1, "endCol": -1 },
360
+ "printGridLine": false,
361
+ "printOuterBorder": false,
362
+ "allRowsInOnePage": false,
363
+ "allColsInOnePage": false,
364
+ "printOrder": "auto"
365
+ },
366
+ "pageMargin": { "top": -1, "bottom": -1, "left": -1, "right": -1, "header": -1, "footer": -1 },
367
+ "paperSize": "A4",
368
+ "paperOrientation": "portrait"
369
+ }
370
+ ```
371
+
372
+ ## 八、确认信息生成规则
373
+
374
+ 生成报表配置后,应向用户展示确认信息:
375
+
376
+ ```
377
+ 报表创建确认:
378
+
379
+ 名称:{reportName}
380
+ 数据源:{formName}
381
+ 报表类型:{列表|分组表|交叉表}
382
+
383
+ 行维度字段:{字段名}({分组类型})
384
+ 列维度字段:{字段名}({分组类型})
385
+ 列表字段:{字段名}
386
+ 指标字段:{字段名}({聚合方式})
387
+
388
+ 查询条件:{条件名}({条件类型})
389
+ 主题样式:主题{编号}
390
+
391
+ 请确认是否创建此报表。
392
+ ```
393
+
394
+ ## 九、错误处理与校验
395
+
396
+ ### 9.1 必须校验项
397
+
398
+ 1. **报表名称**:不能为空,不能与已有报表重名
399
+ 2. **数据源**:必须指定有效的数据源
400
+ 3. **字段配置**:至少需要一个字段
401
+ 4. **字段有效性**:指定的字段名必须在数据集可用字段中
402
+ 5. **父格一致性**:多数据集时必须设置父格筛选
403
+
404
+ ### 9.2 常见错误及处理
405
+
406
+ | 错误 | 原因 | 处理方式 |
407
+ |------|------|----------|
408
+ | 字段不存在 | AI 指定的字段名不在数据集中 | 列出可用字段,提示用户修正 |
409
+ | 数据源未找到 | formId 无效 | 提示用户选择有效数据源 |
410
+ | 名称重复 | 报表名已存在 | 提示用户更换名称 |
411
+ | 父格循环引用 | 父格设置形成环 | 检查并修正父格关系 |
412
+ | 聚合字段非数字 | 对文本字段使用求和 | 检查字段类型,使用计数替代 |