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.
- package/README.md +1 -1
- package/dist/commands/actionflow.d.ts.map +1 -1
- package/dist/commands/actionflow.js +32 -0
- package/dist/commands/actionflow.js.map +1 -1
- package/dist/commands/app.d.ts.map +1 -1
- package/dist/commands/app.js +17 -5
- package/dist/commands/app.js.map +1 -1
- package/dist/commands/auth.d.ts.map +1 -1
- package/dist/commands/auth.js +9 -2
- package/dist/commands/auth.js.map +1 -1
- package/dist/commands/designer.d.ts.map +1 -1
- package/dist/commands/designer.js +22 -1
- package/dist/commands/designer.js.map +1 -1
- package/dist/commands/form-field-props.d.ts +3 -0
- package/dist/commands/form-field-props.d.ts.map +1 -0
- package/dist/commands/form-field-props.js +242 -0
- package/dist/commands/form-field-props.js.map +1 -0
- package/dist/commands/form-layout-init.d.ts +0 -7
- package/dist/commands/form-layout-init.d.ts.map +1 -1
- package/dist/commands/form-layout-init.js +23 -39
- package/dist/commands/form-layout-init.js.map +1 -1
- package/dist/commands/form-serial-mark.d.ts.map +1 -1
- package/dist/commands/form-serial-mark.js +134 -42
- package/dist/commands/form-serial-mark.js.map +1 -1
- package/dist/commands/form-virtual.d.ts +3 -0
- package/dist/commands/form-virtual.d.ts.map +1 -0
- package/dist/commands/form-virtual.js +197 -0
- package/dist/commands/form-virtual.js.map +1 -0
- package/dist/commands/form.d.ts +3 -0
- package/dist/commands/form.d.ts.map +1 -1
- package/dist/commands/form.js +263 -57
- package/dist/commands/form.js.map +1 -1
- package/dist/commands/interface.js +1 -1
- package/dist/commands/interface.js.map +1 -1
- package/dist/commands/report-admin.d.ts +5 -0
- package/dist/commands/report-admin.d.ts.map +1 -0
- package/dist/commands/report-admin.js +420 -0
- package/dist/commands/report-admin.js.map +1 -0
- package/dist/commands/report-query.d.ts +3 -0
- package/dist/commands/report-query.d.ts.map +1 -0
- package/dist/commands/report-query.js +314 -0
- package/dist/commands/report-query.js.map +1 -0
- package/dist/commands/report-validate.d.ts +3 -0
- package/dist/commands/report-validate.d.ts.map +1 -0
- package/dist/commands/report-validate.js +719 -0
- package/dist/commands/report-validate.js.map +1 -0
- package/dist/commands/report.d.ts +12 -0
- package/dist/commands/report.d.ts.map +1 -0
- package/dist/commands/report.js +666 -0
- package/dist/commands/report.js.map +1 -0
- package/dist/commands/wf-form.d.ts +34 -0
- package/dist/commands/wf-form.d.ts.map +1 -1
- package/dist/commands/wf-form.js +303 -127
- package/dist/commands/wf-form.js.map +1 -1
- package/dist/commands/workflow-advanced.d.ts.map +1 -1
- package/dist/commands/workflow-advanced.js +109 -90
- package/dist/commands/workflow-advanced.js.map +1 -1
- package/dist/commands/workflow-auth-resp.d.ts +8 -0
- package/dist/commands/workflow-auth-resp.d.ts.map +1 -0
- package/dist/commands/workflow-auth-resp.js +568 -0
- package/dist/commands/workflow-auth-resp.js.map +1 -0
- package/dist/commands/workflow-condition.d.ts.map +1 -1
- package/dist/commands/workflow-condition.js +3 -1
- package/dist/commands/workflow-condition.js.map +1 -1
- package/dist/commands/workflow-create-auth-resp.d.ts +4 -0
- package/dist/commands/workflow-create-auth-resp.d.ts.map +1 -0
- package/dist/commands/workflow-create-auth-resp.js +204 -0
- package/dist/commands/workflow-create-auth-resp.js.map +1 -0
- package/dist/commands/workflow-node-overtime.d.ts.map +1 -1
- package/dist/commands/workflow-node-overtime.js +125 -92
- package/dist/commands/workflow-node-overtime.js.map +1 -1
- package/dist/commands/workflow-node-reject.d.ts +52 -0
- package/dist/commands/workflow-node-reject.d.ts.map +1 -1
- package/dist/commands/workflow-node-reject.js +134 -63
- package/dist/commands/workflow-node-reject.js.map +1 -1
- package/dist/commands/workflow-node-sign.d.ts.map +1 -1
- package/dist/commands/workflow-node-sign.js +14 -7
- package/dist/commands/workflow-node-sign.js.map +1 -1
- package/dist/commands/workflow-node-validate.d.ts +6 -0
- package/dist/commands/workflow-node-validate.d.ts.map +1 -1
- package/dist/commands/workflow-node-validate.js +143 -21
- package/dist/commands/workflow-node-validate.js.map +1 -1
- package/dist/commands/workflow-node.d.ts.map +1 -1
- package/dist/commands/workflow-node.js +359 -116
- package/dist/commands/workflow-node.js.map +1 -1
- package/dist/commands/workflow-numbering.d.ts.map +1 -1
- package/dist/commands/workflow-numbering.js +73 -34
- package/dist/commands/workflow-numbering.js.map +1 -1
- package/dist/commands/workflow-operator-sign.d.ts +10 -0
- package/dist/commands/workflow-operator-sign.d.ts.map +1 -1
- package/dist/commands/workflow-operator-sign.js +40 -53
- package/dist/commands/workflow-operator-sign.js.map +1 -1
- package/dist/commands/workflow-plan-range.d.ts +10 -0
- package/dist/commands/workflow-plan-range.d.ts.map +1 -1
- package/dist/commands/workflow-plan-range.js +15 -54
- package/dist/commands/workflow-plan-range.js.map +1 -1
- package/dist/commands/workflow-segment.d.ts.map +1 -1
- package/dist/commands/workflow-segment.js +22 -14
- package/dist/commands/workflow-segment.js.map +1 -1
- package/dist/commands/workflow.d.ts.map +1 -1
- package/dist/commands/workflow.js +13 -69
- package/dist/commands/workflow.js.map +1 -1
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -1
- package/dist/services/actionflow/build_workflow_draft.d.ts +6 -0
- package/dist/services/actionflow/build_workflow_draft.d.ts.map +1 -1
- package/dist/services/actionflow/build_workflow_draft.js +63 -4
- package/dist/services/actionflow/build_workflow_draft.js.map +1 -1
- package/dist/services/actionflow/calendar_mapper.d.ts +2 -2
- package/dist/services/actionflow/calendar_mapper.d.ts.map +1 -1
- package/dist/services/actionflow/calendar_mapper.js +33 -13
- package/dist/services/actionflow/calendar_mapper.js.map +1 -1
- package/dist/services/actionflow/components/action_eb_add.d.ts.map +1 -1
- package/dist/services/actionflow/components/action_eb_add.js +13 -1
- package/dist/services/actionflow/components/action_eb_add.js.map +1 -1
- package/dist/services/actionflow/components/action_eb_delete.js +2 -2
- package/dist/services/actionflow/components/action_eb_delete.js.map +1 -1
- package/dist/services/actionflow/components/action_eb_recover.js +2 -2
- package/dist/services/actionflow/components/action_eb_recover.js.map +1 -1
- package/dist/services/actionflow/components/action_eb_save_version.js +2 -2
- package/dist/services/actionflow/components/action_eb_save_version.js.map +1 -1
- package/dist/services/actionflow/components/action_eb_update.d.ts.map +1 -1
- package/dist/services/actionflow/components/action_eb_update.js +15 -3
- package/dist/services/actionflow/components/action_eb_update.js.map +1 -1
- package/dist/services/actionflow/components/action_eb_update_compiler.js +5 -5
- package/dist/services/actionflow/components/action_eb_update_compiler.js.map +1 -1
- package/dist/services/actionflow/components/approve_create.d.ts.map +1 -1
- package/dist/services/actionflow/components/approve_create.js +5 -2
- package/dist/services/actionflow/components/approve_create.js.map +1 -1
- package/dist/services/actionflow/components/approve_trigger.d.ts.map +1 -1
- package/dist/services/actionflow/components/approve_trigger.js +5 -0
- package/dist/services/actionflow/components/approve_trigger.js.map +1 -1
- package/dist/services/actionflow/components/date_trigger.d.ts.map +1 -1
- package/dist/services/actionflow/components/date_trigger.js +14 -1
- package/dist/services/actionflow/components/date_trigger.js.map +1 -1
- package/dist/services/actionflow/components/dml_execute.d.ts.map +1 -1
- package/dist/services/actionflow/components/dml_execute.js +18 -10
- package/dist/services/actionflow/components/dml_execute.js.map +1 -1
- package/dist/services/actionflow/components/document_actions.js +5 -5
- 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 +8 -6
- package/dist/services/actionflow/components/eb_get_data_by_id.js.map +1 -1
- package/dist/services/actionflow/components/enquiry_form.d.ts.map +1 -1
- package/dist/services/actionflow/components/enquiry_form.js +28 -9
- package/dist/services/actionflow/components/enquiry_form.js.map +1 -1
- package/dist/services/actionflow/components/hrm_actions.d.ts.map +1 -1
- package/dist/services/actionflow/components/hrm_actions.js +34 -13
- package/dist/services/actionflow/components/hrm_actions.js.map +1 -1
- package/dist/services/actionflow/components/index.js +3 -3
- package/dist/services/actionflow/components/index.js.map +1 -1
- package/dist/services/actionflow/components/inner_mq_send.d.ts.map +1 -1
- package/dist/services/actionflow/components/inner_mq_send.js +43 -4
- package/dist/services/actionflow/components/inner_mq_send.js.map +1 -1
- package/dist/services/actionflow/components/meeting_create.js +9 -9
- package/dist/services/actionflow/components/meeting_create.js.map +1 -1
- package/dist/services/actionflow/components/multiple_execution.d.ts.map +1 -1
- package/dist/services/actionflow/components/multiple_execution.js +83 -4
- package/dist/services/actionflow/components/multiple_execution.js.map +1 -1
- package/dist/services/actionflow/components/output.d.ts +3 -2
- package/dist/services/actionflow/components/output.d.ts.map +1 -1
- package/dist/services/actionflow/components/output.js +33 -0
- package/dist/services/actionflow/components/output.js.map +1 -1
- package/dist/services/actionflow/components/schedule_create.js +10 -10
- package/dist/services/actionflow/components/schedule_create.js.map +1 -1
- package/dist/services/actionflow/components/send_message.js +1 -1
- package/dist/services/actionflow/components/send_message.js.map +1 -1
- package/dist/services/actionflow/components/simple_scheduler.d.ts.map +1 -1
- package/dist/services/actionflow/components/simple_scheduler.js +42 -9
- package/dist/services/actionflow/components/simple_scheduler.js.map +1 -1
- package/dist/services/actionflow/components/time_batch_trigger.d.ts.map +1 -1
- package/dist/services/actionflow/components/time_batch_trigger.js +43 -13
- package/dist/services/actionflow/components/time_batch_trigger.js.map +1 -1
- package/dist/services/actionflow/components/workflow_actions.d.ts +0 -1
- package/dist/services/actionflow/components/workflow_actions.d.ts.map +1 -1
- package/dist/services/actionflow/components/workflow_actions.js +21 -27
- package/dist/services/actionflow/components/workflow_actions.js.map +1 -1
- package/dist/services/actionflow/context_preflight.d.ts +30 -1
- package/dist/services/actionflow/context_preflight.d.ts.map +1 -1
- package/dist/services/actionflow/context_preflight.js +175 -2
- package/dist/services/actionflow/context_preflight.js.map +1 -1
- package/dist/services/actionflow/design_client.d.ts +4 -0
- package/dist/services/actionflow/design_client.d.ts.map +1 -1
- package/dist/services/actionflow/design_client.js +10 -0
- package/dist/services/actionflow/design_client.js.map +1 -1
- package/dist/services/actionflow/dynamic_resources.d.ts.map +1 -1
- package/dist/services/actionflow/dynamic_resources.js +10 -3
- package/dist/services/actionflow/dynamic_resources.js.map +1 -1
- package/dist/services/actionflow/enrich_approve_trigger.d.ts.map +1 -1
- package/dist/services/actionflow/enrich_approve_trigger.js +18 -3
- package/dist/services/actionflow/enrich_approve_trigger.js.map +1 -1
- package/dist/services/actionflow/formula_service.d.ts +1 -1
- package/dist/services/actionflow/formula_service.d.ts.map +1 -1
- package/dist/services/actionflow/formula_service.js +135 -12
- package/dist/services/actionflow/formula_service.js.map +1 -1
- package/dist/services/actionflow/generation_service.d.ts.map +1 -1
- package/dist/services/actionflow/generation_service.js +18 -2
- package/dist/services/actionflow/generation_service.js.map +1 -1
- package/dist/services/actionflow/preflight_service.d.ts +1 -1
- package/dist/services/actionflow/preflight_service.d.ts.map +1 -1
- package/dist/services/actionflow/preflight_service.js +168 -5
- package/dist/services/actionflow/preflight_service.js.map +1 -1
- package/dist/services/actionflow/save_workflow_draft.d.ts +8 -0
- package/dist/services/actionflow/save_workflow_draft.d.ts.map +1 -1
- package/dist/services/actionflow/save_workflow_draft.js +6 -2
- package/dist/services/actionflow/save_workflow_draft.js.map +1 -1
- package/dist/services/actionflow/update_service.d.ts +6 -0
- package/dist/services/actionflow/update_service.d.ts.map +1 -1
- package/dist/services/actionflow/update_service.js +125 -7
- package/dist/services/actionflow/update_service.js.map +1 -1
- package/dist/services/actionflow/workflow_compiler.d.ts.map +1 -1
- package/dist/services/actionflow/workflow_compiler.js +17 -9
- package/dist/services/actionflow/workflow_compiler.js.map +1 -1
- package/dist/services/browser.d.ts +34 -0
- package/dist/services/browser.d.ts.map +1 -0
- package/dist/services/browser.js +57 -0
- package/dist/services/browser.js.map +1 -0
- package/dist/services/esb-interface/document-parser.d.ts +5 -0
- package/dist/services/esb-interface/document-parser.d.ts.map +1 -1
- package/dist/services/esb-interface/document-parser.js +117 -1
- package/dist/services/esb-interface/document-parser.js.map +1 -1
- package/dist/services/esb-interface/importer.d.ts.map +1 -1
- package/dist/services/esb-interface/importer.js +7 -2
- package/dist/services/esb-interface/importer.js.map +1 -1
- package/dist/services/field-props-data.d.ts +56 -0
- package/dist/services/field-props-data.d.ts.map +1 -0
- package/dist/services/field-props-data.js +732 -0
- package/dist/services/field-props-data.js.map +1 -0
- package/dist/services/form-edit-base.d.ts +45 -0
- package/dist/services/form-edit-base.d.ts.map +1 -0
- package/dist/services/form-edit-base.js +76 -0
- package/dist/services/form-edit-base.js.map +1 -0
- package/dist/services/form-field-drop.d.ts +41 -0
- package/dist/services/form-field-drop.d.ts.map +1 -0
- package/dist/services/form-field-drop.js +58 -0
- package/dist/services/form-field-drop.js.map +1 -0
- package/dist/services/form-style-template.d.ts +17 -0
- package/dist/services/form-style-template.d.ts.map +1 -0
- package/dist/services/form-style-template.js +102 -0
- package/dist/services/form-style-template.js.map +1 -0
- package/dist/services/form-virtual.d.ts +60 -0
- package/dist/services/form-virtual.d.ts.map +1 -0
- package/dist/services/form-virtual.js +331 -0
- package/dist/services/form-virtual.js.map +1 -0
- package/dist/services/report/analyze.d.ts +67 -0
- package/dist/services/report/analyze.d.ts.map +1 -0
- package/dist/services/report/analyze.js +173 -0
- package/dist/services/report/analyze.js.map +1 -0
- package/dist/services/report/build.d.ts +166 -0
- package/dist/services/report/build.d.ts.map +1 -0
- package/dist/services/report/build.js +520 -0
- package/dist/services/report/build.js.map +1 -0
- package/dist/services/report/constants.d.ts +145 -0
- package/dist/services/report/constants.d.ts.map +1 -0
- package/dist/services/report/constants.js +250 -0
- package/dist/services/report/constants.js.map +1 -0
- package/dist/services/report/dataset.d.ts +73 -0
- package/dist/services/report/dataset.d.ts.map +1 -0
- package/dist/services/report/dataset.js +185 -0
- package/dist/services/report/dataset.js.map +1 -0
- package/dist/services/report/fields.d.ts +80 -0
- package/dist/services/report/fields.d.ts.map +1 -0
- package/dist/services/report/fields.js +245 -0
- package/dist/services/report/fields.js.map +1 -0
- package/dist/services/report/forms.d.ts +70 -0
- package/dist/services/report/forms.d.ts.map +1 -0
- package/dist/services/report/forms.js +237 -0
- package/dist/services/report/forms.js.map +1 -0
- package/dist/services/report/guard.d.ts +73 -0
- package/dist/services/report/guard.d.ts.map +1 -0
- package/dist/services/report/guard.js +262 -0
- package/dist/services/report/guard.js.map +1 -0
- package/dist/services/report/http.d.ts +118 -0
- package/dist/services/report/http.d.ts.map +1 -0
- package/dist/services/report/http.js +159 -0
- package/dist/services/report/http.js.map +1 -0
- package/dist/services/report/lifecycle.d.ts +107 -0
- package/dist/services/report/lifecycle.d.ts.map +1 -0
- package/dist/services/report/lifecycle.js +323 -0
- package/dist/services/report/lifecycle.js.map +1 -0
- package/dist/services/report/permission.d.ts +59 -0
- package/dist/services/report/permission.d.ts.map +1 -0
- package/dist/services/report/permission.js +286 -0
- package/dist/services/report/permission.js.map +1 -0
- package/dist/services/report/query-checks.d.ts +124 -0
- package/dist/services/report/query-checks.d.ts.map +1 -0
- package/dist/services/report/query-checks.js +374 -0
- package/dist/services/report/query-checks.js.map +1 -0
- package/dist/services/report/query.d.ts +106 -0
- package/dist/services/report/query.d.ts.map +1 -0
- package/dist/services/report/query.js +278 -0
- package/dist/services/report/query.js.map +1 -0
- package/dist/services/report/render.d.ts +52 -0
- package/dist/services/report/render.d.ts.map +1 -0
- package/dist/services/report/render.js +138 -0
- package/dist/services/report/render.js.map +1 -0
- package/dist/services/report/reports.d.ts +110 -0
- package/dist/services/report/reports.d.ts.map +1 -0
- package/dist/services/report/reports.js +179 -0
- package/dist/services/report/reports.js.map +1 -0
- package/dist/services/report/safe-save.d.ts +57 -0
- package/dist/services/report/safe-save.d.ts.map +1 -0
- package/dist/services/report/safe-save.js +325 -0
- package/dist/services/report/safe-save.js.map +1 -0
- package/dist/services/report/sources.d.ts +48 -0
- package/dist/services/report/sources.d.ts.map +1 -0
- package/dist/services/report/sources.js +147 -0
- package/dist/services/report/sources.js.map +1 -0
- package/dist/services/report/types.d.ts +312 -0
- package/dist/services/report/types.d.ts.map +1 -0
- package/dist/services/report/types.js +2 -0
- package/dist/services/report/types.js.map +1 -0
- package/dist/services/report/validate.d.ts +169 -0
- package/dist/services/report/validate.d.ts.map +1 -0
- package/dist/services/report/validate.js +685 -0
- package/dist/services/report/validate.js.map +1 -0
- package/dist/services/report/verify.d.ts +72 -0
- package/dist/services/report/verify.d.ts.map +1 -0
- package/dist/services/report/verify.js +441 -0
- package/dist/services/report/verify.js.map +1 -0
- package/dist/services/report/workbook.d.ts +108 -0
- package/dist/services/report/workbook.d.ts.map +1 -0
- package/dist/services/report/workbook.js +471 -0
- package/dist/services/report/workbook.js.map +1 -0
- package/dist/services/rich-types.d.ts +39 -0
- package/dist/services/rich-types.d.ts.map +1 -1
- package/dist/services/rich-types.js +61 -30
- package/dist/services/rich-types.js.map +1 -1
- package/dist/services/workflow-node-layout.d.ts +214 -0
- package/dist/services/workflow-node-layout.d.ts.map +1 -0
- package/dist/services/workflow-node-layout.js +338 -0
- package/dist/services/workflow-node-layout.js.map +1 -0
- package/dist/services/workflow-operator.d.ts +47 -2
- package/dist/services/workflow-operator.d.ts.map +1 -1
- package/dist/services/workflow-operator.js +102 -5
- package/dist/services/workflow-operator.js.map +1 -1
- package/dist/services/workflow-overtime.d.ts +95 -0
- package/dist/services/workflow-overtime.d.ts.map +1 -0
- package/dist/services/workflow-overtime.js +207 -0
- package/dist/services/workflow-overtime.js.map +1 -0
- package/dist/services/workflow-plan-range.d.ts +18 -0
- package/dist/services/workflow-plan-range.d.ts.map +1 -0
- package/dist/services/workflow-plan-range.js +72 -0
- package/dist/services/workflow-plan-range.js.map +1 -0
- package/package.json +3 -2
- package/skill-docs/SKILL.md +277 -261
- package/skill-docs/_catalog.md +77 -66
- package/skill-docs/actionflows/SKILL.md +22 -14
- package/skill-docs/actionflows/references/components/calendar/MeetingCreate.md +17 -17
- package/skill-docs/actionflows/references/components/calendar/ScheduleCreate.md +17 -17
- package/skill-docs/actionflows/references/components/database/DMLExecute.md +3 -3
- package/skill-docs/actionflows/references/components/ebuilder/DateTrigger.md +32 -17
- package/skill-docs/actionflows/references/components/ebuilder/EbGetDataById.md +17 -17
- package/skill-docs/actionflows/references/components/ebuilder/EnquiryForm.md +6 -0
- package/skill-docs/actionflows/references/components/ebuilder/EventFormData.md +2 -0
- package/skill-docs/actionflows/references/components/ebuilder/TimeBatchTrigger.md +19 -17
- package/skill-docs/actionflows/references/components/logic/Output.md +28 -17
- package/skill-docs/actionflows/references/components/message/InnerMQSend.md +6 -2
- package/skill-docs/actionflows/references/components/personnel/AlterPersonStatus.md +30 -30
- package/skill-docs/actionflows/references/components/personnel/HrmEmployeeUpdate.md +32 -32
- package/skill-docs/actionflows/references/components/trigger/InnerMQListener.md +41 -40
- package/skill-docs/actionflows/references/components/trigger/SimpleScheduler.md +19 -17
- package/skill-docs/actionflows/references/components/workflow/ApproveCreate.md +17 -17
- package/skill-docs/actionflows/references/components/workflow/ApproveDelete.md +19 -17
- package/skill-docs/actionflows/references/components/workflow/ApproveEntrust.md +19 -17
- package/skill-docs/actionflows/references/components/workflow/ApproveSave.md +17 -17
- package/skill-docs/actionflows/references/components/workflow/ApproveTrigger.md +99 -84
- package/skill-docs/actionflows/references/dynamic_capability_matrix.md +39 -0
- package/skill-docs/references/common/guide-plan-template.md +251 -233
- package/skill-docs/references/common/ref-cli-commands.md +519 -373
- package/skill-docs/references/ebuilder-designer/guide-designer-components.md +1 -1
- package/skill-docs/references/ebuilder-designer/guide-designer-factory.md +460 -460
- package/skill-docs/references/ebuilder-designer/guide-designer.md +4 -4
- package/skill-docs/references/form/guide-create-form.md +232 -214
- package/skill-docs/references/form/guide-form-association.md +1 -1
- package/skill-docs/references/form/guide-form-view.md +318 -318
- package/skill-docs/references/form/guide-virtual-form.md +156 -0
- package/skill-docs/references/form/ref-form-fields.md +239 -100
- package/skill-docs/references/form/style-templates.md +80 -27
- package/skill-docs/references/report/add-dataset-registration-guide.md +139 -0
- package/skill-docs/references/report/ai-report-workflow.md +412 -0
- package/skill-docs/references/report/api-report-build-fast-path.md +275 -0
- package/skill-docs/references/report/app-datasource-lookup-guide.md +230 -0
- package/skill-docs/references/report/cell-config-echo-guide.md +163 -0
- package/skill-docs/references/report/cell-transform-guide.md +147 -0
- package/skill-docs/references/report/condition-format-guide.md +140 -0
- package/skill-docs/references/report/cross-dataset-filter-guide.md +304 -0
- package/skill-docs/references/report/dataset-query-filter-guide.md +235 -0
- package/skill-docs/references/report/dataset-sidebar-ops-guide.md +280 -0
- package/skill-docs/references/report/dataset-table-field-contract-guide.md +339 -0
- package/skill-docs/references/report/datasource-metadata-guide.md +365 -0
- package/skill-docs/references/report/datasource-selection-and-parent-filter-guide.md +148 -0
- package/skill-docs/references/report/date-range-query-reference.md +102 -0
- package/skill-docs/references/report/default-header-style-guide.md +70 -0
- package/skill-docs/references/report/designer-blank-prevention-guide.md +111 -0
- package/skill-docs/references/report/event-hreflink-guide.md +184 -0
- package/skill-docs/references/report/field-bind-exact-match-guide.md +208 -0
- package/skill-docs/references/report/formula-cell-api-guide.md +258 -0
- package/skill-docs/references/report/guide-report-build.md +131 -0
- package/skill-docs/references/report/guide-report-modify.md +100 -0
- package/skill-docs/references/report/guide-report-multisource.md +143 -0
- package/skill-docs/references/report/guide-report-query.md +98 -0
- package/skill-docs/references/report/hidden-row-and-header-merge-guide.md +100 -0
- package/skill-docs/references/report/layout-showlocation-freeze-guide.md +167 -0
- package/skill-docs/references/report/preaggregate-auto-disable-guide.md +107 -0
- package/skill-docs/references/report/query-condition-api-guide.md +890 -0
- package/skill-docs/references/report/ref-report-commands.md +122 -0
- package/skill-docs/references/report/ref-report-pitfalls.md +226 -0
- package/skill-docs/references/report/report-baseinfo-defaults-guide.md +117 -0
- package/skill-docs/references/report/report-building-guide.md +511 -0
- package/skill-docs/references/report/report-config-schema.md +445 -0
- package/skill-docs/references/report/report-create-modes-guide.md +182 -0
- package/skill-docs/references/report/report-data-model.md +447 -0
- package/skill-docs/references/report/report-delivery-contract.md +101 -0
- package/skill-docs/references/report/report-designer-feature-map.md +500 -0
- package/skill-docs/references/report/report-internal-error-guide.md +78 -0
- package/skill-docs/references/report/report-knowledge-base.md +389 -0
- package/skill-docs/references/report/report-lifecycle-api-guide.md +392 -0
- package/skill-docs/references/report/report-list-page-ops-guide.md +191 -0
- package/skill-docs/references/report/report-permission-guide.md +365 -0
- package/skill-docs/references/report/report-requirement-analysis-template.md +202 -0
- package/skill-docs/references/report/report-self-check-guide.md +164 -0
- package/skill-docs/references/report/safe-partial-save-guide.md +151 -0
- package/skill-docs/references/report/snowflake-id-precision-guide.md +84 -0
- package/skill-docs/references/report/spec-build-schema.md +291 -0
- package/skill-docs/references/report/targeted-fix-guide.md +97 -0
- package/skill-docs/references/report/user-request-scope-only-guide.md +82 -0
- package/skill-docs/references/workflow/guide-workflow-auth-resp.md +190 -0
- package/skill-docs/references/workflow/guide-workflow-node-layout.md +181 -0
- package/skill-docs/references/workflow/guide-workflow.md +7 -3
- package/skill-docs/actionflows/references/components/workflow/ApproveCompletelyDelete.md +0 -17
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
# 单元格「转换」面板(强制)
|
|
2
|
+
|
|
3
|
+
> **UI**:设计器右侧 **单元格 → 转换**(选中 Field 格时)
|
|
4
|
+
> **源码**:`AnalysisFieldCellType` · `Trans.getTransInstance` · 设计器 `route_ReportDesigner`
|
|
5
|
+
> **CLI**:`e10-cli report validate transform --map "人员"` / `--file cell.json`
|
|
6
|
+
> **落库**:须同时写入 `fields[]` 与 workbook `style.cellType`(`fieldToCell` 已透传)
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## 〇、结论(扫描结果)
|
|
11
|
+
|
|
12
|
+
| UI 能力 | 落库键 | Skill 此前 | 现状 |
|
|
13
|
+
|---------|--------|------------|------|
|
|
14
|
+
| 字段转换(人员/部门/…) | `transType` + `browserType` / `transSelectOptions` | 帮助文案不全;`report-data-model` 枚举**错误** | **本文 + validate + fieldToCell** |
|
|
15
|
+
| HTML转换 | **`isHtml`** `"0"|"1"`(不是 transType) | 未正确文档化 | ✅ |
|
|
16
|
+
| 前缀/后缀 | **`prefixAndSuffix`** `["前","后"]` | 仅一笔带过 | ✅ |
|
|
17
|
+
| 条码 | **`qrcodeType`** `no|barcode|qrcode`(± `qrcodelink`) | 误写成 FieldType | ✅ |
|
|
18
|
+
| 隐藏内容 | **`hiddenContext`** `"0"|"1"`(拼写 Context) | 易与显示方式混淆 | ✅ |
|
|
19
|
+
| 文字方向 | **`textDirection`** 枚举 | 知识库有枚举、无面板映射 | ✅ |
|
|
20
|
+
|
|
21
|
+
**禁止**再用 `person` / `department` / `image` / `html` / `barcode` 当作单一 `transType`。
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## 一、字段转换 `transType`
|
|
26
|
+
|
|
27
|
+
### 1.1 UI → 落库(设计器当前)
|
|
28
|
+
|
|
29
|
+
| UI 文案 | `transType` | 附加字段 |
|
|
30
|
+
|---------|-------------|---------|
|
|
31
|
+
| 无 | `default` | — |
|
|
32
|
+
| **人员** | **`browser`** | `browserType:[{id:"HrmEmployeeComInfo"}]` |
|
|
33
|
+
| **部门** | **`browser`** | `browserType:[{id:"HrmDepartmentComInfo"}]` |
|
|
34
|
+
| **部门全路径** | **`browser`** | `browserType:[{id:"HrmDepartmentAllPathComInfo"}]` |
|
|
35
|
+
| Checkbox | `checkbox` | — |
|
|
36
|
+
| 选择框 | `select` | `transSelectOptions:[{selectValue,selectName},…]` |
|
|
37
|
+
| 颜色选择框 | `colorSelect` | `transSelectOptions`(`selectName` 常为颜色值) |
|
|
38
|
+
| 分值图标 | `scoreIcon` | `transSelectOptions:[{id:"scoreIconId",selectValue:"1",selectName:"<最大分>"}]` |
|
|
39
|
+
| 斜线文字 | `slashWord` | `transSelectOptions:[{id:"slashWordId",selectValue:"slashWord",selectName:"TopLeftDownRight"|"DownLeftTopRight"}]`;文案最多 3 段,半角 `;` 分隔 |
|
|
40
|
+
| 关联类型 | `browser` | 弹窗写入 `browserType`(如 `{module,type}` / ComInfo id,**以实际请求为准**) |
|
|
41
|
+
| 图片 | `picture` | — |
|
|
42
|
+
|
|
43
|
+
> Java 仍兼容遗留 `hrm` / `dept` / `subcom` / `fill`,**新写禁止**用遗留值;人员/部门一律走 `browser`+ComInfo。
|
|
44
|
+
|
|
45
|
+
### 1.2 双写示例(人员)
|
|
46
|
+
|
|
47
|
+
```json
|
|
48
|
+
{
|
|
49
|
+
"transType": "browser",
|
|
50
|
+
"browserType": [{ "id": "HrmEmployeeComInfo" }],
|
|
51
|
+
"isHtml": "0",
|
|
52
|
+
"qrcodeType": "no",
|
|
53
|
+
"prefixAndSuffix": ["", ""],
|
|
54
|
+
"hiddenContext": "0",
|
|
55
|
+
"textDirection": "FromLeftToRight"
|
|
56
|
+
}
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
`fields[].browserType` / `transSelectOptions` / `prefixAndSuffix` 在 DB 侧常为 **JSON 字符串**;workbook `cellType` 侧为数组。
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## 二、HTML转换 · `isHtml`
|
|
64
|
+
|
|
65
|
+
| UI | 值 |
|
|
66
|
+
|----|-----|
|
|
67
|
+
| 否 | `"0"` |
|
|
68
|
+
| 是 | `"1"` |
|
|
69
|
+
|
|
70
|
+
为 `"1"` 时运行时按 HTML 处理/剥离(见 `AnalysisParams`)。**不是** `transType=html`。
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## 三、前缀 / 后缀 · `prefixAndSuffix`
|
|
75
|
+
|
|
76
|
+
```json
|
|
77
|
+
"prefixAndSuffix": ["前缀文本", "后缀文本"]
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
默认 `["",""]`。重建 workbook 时禁止丢掉该键。
|
|
81
|
+
|
|
82
|
+
---
|
|
83
|
+
|
|
84
|
+
## 四、条码 · `qrcodeType`
|
|
85
|
+
|
|
86
|
+
| UI | 值 |
|
|
87
|
+
|----|-----|
|
|
88
|
+
| 无 | `no` |
|
|
89
|
+
| 条码 | `barcode` |
|
|
90
|
+
| 二维码 | `qrcode` |
|
|
91
|
+
|
|
92
|
+
二维码可选:`qrcodelink` = `"1"` / `"0"`(是否包含移动端地址)。**不是** `transType`。
|
|
93
|
+
|
|
94
|
+
---
|
|
95
|
+
|
|
96
|
+
## 五、隐藏内容 · `hiddenContext`
|
|
97
|
+
|
|
98
|
+
| UI | 值 |
|
|
99
|
+
|----|-----|
|
|
100
|
+
| 否 | `"0"` |
|
|
101
|
+
| 是 | `"1"` |
|
|
102
|
+
|
|
103
|
+
键名是 **`hiddenContext`**(Context,不是 Content)。与「显示方式」`displayType` **无关**。
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## 六、文字方向 · `textDirection`
|
|
108
|
+
|
|
109
|
+
| UI | 值 |
|
|
110
|
+
|----|-----|
|
|
111
|
+
| 从左向右 | `FromLeftToRight`(默认) |
|
|
112
|
+
| 从右向左 | `FromRightToLeft` |
|
|
113
|
+
| 竖排 | `VerticalArrangement` |
|
|
114
|
+
| 顺时针旋转 90° | `CW` |
|
|
115
|
+
| 逆时针旋转 90° | `CCW` |
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
## 七、Agent / CLI
|
|
120
|
+
|
|
121
|
+
```bash
|
|
122
|
+
e10-cli report validate transform --map "人员"
|
|
123
|
+
e10-cli report validate transform --map "部门全路径"
|
|
124
|
+
e10-cli report validate transform --map "二维码"
|
|
125
|
+
e10-cli report validate transform --file cell-transform.json
|
|
126
|
+
e10-cli report validate transform --list
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
定点改转换时:改 `fields[]` 对应键 → `safe_report_save` / `fieldToCell` 透传到 workbook → 回读核对。
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
## 八、禁令
|
|
134
|
+
|
|
135
|
+
- 禁止 `transType=person|department|image|html|barcode|hidden`
|
|
136
|
+
- 禁止人员/部门只写 `transType=hrm|dept`(遗留)
|
|
137
|
+
- 禁止重建 workbook 时丢掉转换键
|
|
138
|
+
- 禁止把「隐藏内容」当成「显示方式=不显示」
|
|
139
|
+
|
|
140
|
+
---
|
|
141
|
+
|
|
142
|
+
## 关联
|
|
143
|
+
|
|
144
|
+
- `cell-config-echo-guide.md` — 数字格式 / 日期分组 / 字体
|
|
145
|
+
- `report-designer-feature-map.md` — 右侧面板总览
|
|
146
|
+
- `report-data-model.md` §八 — 已废弃错误表,以本文为准
|
|
147
|
+
- `safe_report_save.js` — `fieldToCell` 透传
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
# 条件格式(突出显示 / 数据条 / 图标集)
|
|
2
|
+
|
|
3
|
+
> **源码**:`ReportUtil.generateConditionRule`(`weaver-edc-common-report-analysis`)
|
|
4
|
+
> **UI**:设计器「开始 → 条件格式」
|
|
5
|
+
> **落库唯一有效点**:`fields[].conditionRule` / workbook `style.cellType.conditionRule`
|
|
6
|
+
> 结构:`{ highlightDatas, lineDatas, iconDatas }`(**不是** sheet 级 `conditionalFormats`,后者不持久化)
|
|
7
|
+
> **禁黑盒**:禁止下载 SpreadJS / 设计器 chunk 循环试探;见 `session-build-performance-guide.md`
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## 〇、性能与交付(强制)
|
|
12
|
+
|
|
13
|
+
1. 写入前用 CLI 映射/校验,**禁止**反复保存探结构
|
|
14
|
+
2. 布局已落库 → **先交设计器地址**,条件格式校验可后置补丁
|
|
15
|
+
3. 映射不到 → **提示用户确认**,不要开逆向循环
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## 一、硬约束(突出显示)
|
|
20
|
+
|
|
21
|
+
1. **只写平台已识别的 `relation`**。未知值(如 `highlight:between`)会被引擎**静默跳过**。
|
|
22
|
+
2. **区间必须用一条 `highlight:interval`**;禁止拆成两条 `greater`+`less` 冒充 AND(多规则是 OR)。
|
|
23
|
+
3. **配置前先映射再写入**;映射不到或冲突 → **提示用户确认**。
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## 二、突出显示 `relation` 白名单
|
|
28
|
+
|
|
29
|
+
| 中文 | `relation` | value |
|
|
30
|
+
|------|------------|-------|
|
|
31
|
+
| 大于 | `highlight:greater` | value1 |
|
|
32
|
+
| 大于等于 | `highlight:greaterAndEquals` | value1 |
|
|
33
|
+
| 小于 | `highlight:less` | value1 |
|
|
34
|
+
| 小于等于 | `highlight:lessAndEquals` | value1 |
|
|
35
|
+
| 等于 | `highlight:equals` | value1 |
|
|
36
|
+
| 不等于 | `highlight:noEquals` | value1 |
|
|
37
|
+
| **介于** | **`highlight:interval`** | value1=下界,value2=上界 |
|
|
38
|
+
| 文本包含 | `highlight:include` | value1 |
|
|
39
|
+
| 发生日期 | `highlight:happenDate` | value1 |
|
|
40
|
+
| 重复值 | `highlight:sameValue` | — |
|
|
41
|
+
|
|
42
|
+
**禁止**:`highlight:between` → 改 `interval`;缩写 `gt/lte` 等。
|
|
43
|
+
|
|
44
|
+
### 自然语言 → 突出显示
|
|
45
|
+
|
|
46
|
+
| 说法 | 映射 |
|
|
47
|
+
|------|------|
|
|
48
|
+
| 大于 N | `greater` |
|
|
49
|
+
| 介于 1 和 5 / 1–5 | **一条** `interval` |
|
|
50
|
+
| 文本包含 xx | `include` |
|
|
51
|
+
|
|
52
|
+
多档示例:「>0 红;>5 蓝」→ `interval(1,5)` 红 + `greater(5)` 蓝粗。
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
## 三、数据条(lineDatas)
|
|
57
|
+
|
|
58
|
+
落库:**`lineDatas`**(引擎 `ruleType=databar`)。
|
|
59
|
+
|
|
60
|
+
```json
|
|
61
|
+
{
|
|
62
|
+
"lineDatas": [
|
|
63
|
+
{
|
|
64
|
+
"index": 0,
|
|
65
|
+
"leftType": "min",
|
|
66
|
+
"leftValue": "",
|
|
67
|
+
"rightType": "max",
|
|
68
|
+
"rightValue": "",
|
|
69
|
+
"gradient": "gradient",
|
|
70
|
+
"color": "#6495ED",
|
|
71
|
+
"negativeFillColor": "#FF0000"
|
|
72
|
+
}
|
|
73
|
+
]
|
|
74
|
+
}
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
| 字段 | 取值 |
|
|
78
|
+
|------|------|
|
|
79
|
+
| `leftType`/`rightType` | `min`/`max`/`custom` |
|
|
80
|
+
| `gradient` | `gradient`(渐变)\| `solid`(实心) |
|
|
81
|
+
| `color` / `negativeFillColor` | 正/负色 |
|
|
82
|
+
|
|
83
|
+
CLI:`e10-cli report validate condition --map "数据条"` / `--map "实心数据条"`
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## 四、图标集(iconDatas)
|
|
88
|
+
|
|
89
|
+
落库:**`iconDatas`**(引擎 `ruleType=iconset`;UI 文案偶写 iconSets,JSON **必须** `iconDatas`)。
|
|
90
|
+
|
|
91
|
+
```json
|
|
92
|
+
{
|
|
93
|
+
"iconDatas": [
|
|
94
|
+
{
|
|
95
|
+
"index": 0,
|
|
96
|
+
"iconSetType": "0",
|
|
97
|
+
"iconCriteria": [
|
|
98
|
+
{ "iconValue": "67", "isGreaterThanOrEqualTo": true, "iconValueType": 1 },
|
|
99
|
+
{ "iconValue": "33", "isGreaterThanOrEqualTo": true, "iconValueType": 1 }
|
|
100
|
+
]
|
|
101
|
+
}
|
|
102
|
+
]
|
|
103
|
+
}
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
| 字段 | 说明 |
|
|
107
|
+
|------|------|
|
|
108
|
+
| `iconSetType` | **字符串**;常用 `"0"`/`"1"`/`"2"`/`"3"`(方向/形状/标记/等级类) |
|
|
109
|
+
| `iconCriteria` | 分档阈值 |
|
|
110
|
+
|
|
111
|
+
CLI:`e10-cli report validate condition --map "图标集"`
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
## 五、不支持 / 冲突
|
|
116
|
+
|
|
117
|
+
映射不到 → 明确告知并请用户确认;禁止静默、禁止黑盒下载。
|
|
118
|
+
多条 greater 样式不同 → 提示重叠冲突,建议 interval + greater。
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## 六、写入清单
|
|
123
|
+
|
|
124
|
+
1. `conditionRule = { highlightDatas?, lineDatas?, iconDatas? }` → fields + workbook cellType
|
|
125
|
+
2. save 成功 → **先交设计器 URL**
|
|
126
|
+
3. 可选 `verify condition` 后置
|
|
127
|
+
|
|
128
|
+
---
|
|
129
|
+
|
|
130
|
+
## 七、CLI
|
|
131
|
+
|
|
132
|
+
```bash
|
|
133
|
+
e10-cli report validate condition --file rule.json
|
|
134
|
+
e10-cli report validate condition --map "介于 1 5"
|
|
135
|
+
e10-cli report validate condition --map "数据条"
|
|
136
|
+
e10-cli report validate condition --map "图标集"
|
|
137
|
+
e10-cli report verify condition <reportId> [appId]
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
脚本:`e10-cli report verify condition`。
|
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
# 跨数据集筛选配置指南(左父格筛选 & 自定义筛选)
|
|
2
|
+
|
|
3
|
+
> **适用场景**:单元格字段与左/上父格字段来自不同数据集;或单元格需按固定条件过滤(如核算机构排除、年度参数)。
|
|
4
|
+
>
|
|
5
|
+
> **已验证平台**:e-Builder EDC 报表设计器(2026-08,EBU 经营数据统计报表 `1304979556231593985`)。
|
|
6
|
+
>
|
|
7
|
+
> **与「左侧数据集筛选」区分**:整表/行级预过滤走 **`queryInfoSave`**(`conditionData`),见 **`dataset-query-filter-guide.md`**。本文档面向 **subordination / leftFilterField / customFilterField / datasetFilter**(单元格与多实例副本级)。
|
|
8
|
+
|
|
9
|
+
## 一、核心结论(必读)
|
|
10
|
+
|
|
11
|
+
设计器下拉框**按 `fieldKey` 匹配字段**,不是按显示名(`text`)或裸系统名(`field_xxx`)。
|
|
12
|
+
|
|
13
|
+
**fieldKey 格式**(三段式,用 `.` 连接):
|
|
14
|
+
|
|
15
|
+
```
|
|
16
|
+
{dataSetId}.{sourceId}.{fieldName}
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
| 段 | 含义 | 示例 |
|
|
20
|
+
|----|------|------|
|
|
21
|
+
| dataSetId | 报表内数据集 ID(`ds[].id`) | `1304979556231593994` |
|
|
22
|
+
| sourceId | 数据源/逻辑表 ID(`ds[].sourceId`) | `1299763447342276611` |
|
|
23
|
+
| fieldName | 字段系统名(`fields[].name`) | `field_1299763447342276617` |
|
|
24
|
+
|
|
25
|
+
**症状对照**:
|
|
26
|
+
|
|
27
|
+
| 现象 | 常见原因 |
|
|
28
|
+
|------|----------|
|
|
29
|
+
| API 保存成功,设计器筛选区下拉为空白 | `parentField`/`currentField` 用了显示名或裸 `field_xxx` |
|
|
30
|
+
| 筛选条件不生效 | 未配置 `subordination` 或父格坐标错误 |
|
|
31
|
+
| 类型选了但无效 | `type` 用了 `eq`/`uncontains` 而非平台枚举 |
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## 二、左父格筛选(leftFilterField)
|
|
36
|
+
|
|
37
|
+
### 2.1 何时需要
|
|
38
|
+
|
|
39
|
+
当前单元格 `dataSetId` ≠ 左父格单元格 `dataSetId` 时,必须同时配置:
|
|
40
|
+
|
|
41
|
+
1. **subordination** — VLOOKUP 式字段映射(设计器「从属关系」)
|
|
42
|
+
2. **leftFilterField** — 左父格筛选条件(设计器「左父格筛选」)
|
|
43
|
+
|
|
44
|
+
两者字段引用**都必须使用 fieldKey**。
|
|
45
|
+
|
|
46
|
+
### 2.1.1 连续同源区域:只配入口格(强制)
|
|
47
|
+
|
|
48
|
+
> 完整规则见 **`datasource-selection-and-parent-filter-guide.md` §二**(含 **§2.5 关联键:需求优先 · 推断须用户确认**)。
|
|
49
|
+
|
|
50
|
+
若连续一片单元格**全部来自同一数据源**,且整体挂在另一数据源父格下:
|
|
51
|
+
|
|
52
|
+
- **仅该区域第一个字段**:自定义父格指向异源父格 + 配置 `subordination` / `leftFilterField`
|
|
53
|
+
- **同区域其余字段**:父格用**默认**,**不要**逐格再指异源父格、**不要**重复配父格筛选
|
|
54
|
+
- **关联字段**:需求已写明则按需求;未写明则字段匹配推断后 **必须提示用户确认**(CLI:`e10-cli report join-suggest`)
|
|
55
|
+
|
|
56
|
+
禁止对连续同源列/行「每个字段都配一遍跨源父格筛选」。
|
|
57
|
+
|
|
58
|
+
### 2.2 数据结构
|
|
59
|
+
|
|
60
|
+
**workbook 内**(`style.cellType` 上):
|
|
61
|
+
|
|
62
|
+
```json
|
|
63
|
+
{
|
|
64
|
+
"subordination": [
|
|
65
|
+
"1304979556231593994.1299763447342276611.field_1299763447342276617",
|
|
66
|
+
"1304979560546713602.1299789221321891842.field_1299789221321891843"
|
|
67
|
+
],
|
|
68
|
+
"leftFilterField": [
|
|
69
|
+
{
|
|
70
|
+
"parentField": "1304979556231593994.1299763447342276611.field_1299763447342276617",
|
|
71
|
+
"currentField": "1304979560546713602.1299789221321891842.field_1299789221321891843",
|
|
72
|
+
"type": "Equals",
|
|
73
|
+
"id": "1304979560546713602.1299789221321891842.field_1299789221321891843"
|
|
74
|
+
}
|
|
75
|
+
]
|
|
76
|
+
}
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
| 字段 | 说明 |
|
|
80
|
+
|------|------|
|
|
81
|
+
| subordination[0] | 父格(左父格)字段 fieldKey |
|
|
82
|
+
| subordination[1] | 当前单元格字段 fieldKey |
|
|
83
|
+
| parentField | 同 subordination[0] |
|
|
84
|
+
| currentField | 同 subordination[1] |
|
|
85
|
+
| type | 匹配关系,跨数据集关联通常用 `Equals` |
|
|
86
|
+
| id | **必须等于 currentField**(设计器回显关键) |
|
|
87
|
+
|
|
88
|
+
**save 后 fields 表**(`getReportDevInfo`):`leftFilterField`、`subordination` 出现在字段记录顶层(JSON 字符串或数组),不在 `style` 内。
|
|
89
|
+
|
|
90
|
+
### 2.3 左父格筛选识别与写入(2026-09 eteams · 必遵)
|
|
91
|
+
|
|
92
|
+
设计器 F2「左父格筛选」下拉按 **fieldKey 注册表** 解析标签;下列写法会导致回显 **`undefined`** 或下拉空白:
|
|
93
|
+
|
|
94
|
+
| 错误写法 | 现象 | 正确写法 |
|
|
95
|
+
|----------|------|----------|
|
|
96
|
+
| `parentField: "...field_5"`(截断/臆造字段名) | 父格关联字段显示 undefined | 完整 `{dataSetId}.{sourceId}.field_4746632256695654785` |
|
|
97
|
+
| `id: "c43a895a664140dc"`(随机 UUID) | 筛选行无法匹配字段 | **`id` 必须等于 `currentField`(完整 fieldKey)** |
|
|
98
|
+
| `subordination: ["",""]` | 从属关系丢失 | `[parentField, currentField]` 与 leftFilter 同步 |
|
|
99
|
+
| 仅改 fields 表、workbook 内 `style.cellType` 未同步 | 保存后字段绑定丢失 | workbook + fields **双保存**(见 §4.1) |
|
|
100
|
+
|
|
101
|
+
**父格坐标(leftX / leftY)**:须指向布局上**真实的左父格单元格**(0-based 列 x、行 y),不能机械套用 `leftY = col - 1`。
|
|
102
|
+
|
|
103
|
+
**纵向堆叠多数据集示例**(进销存-供应商 + 采购进货单,同列 B):
|
|
104
|
+
|
|
105
|
+
- 供应商字段:y=0~4(供应商等级 → 联系方式),根格 y=0 左父格无
|
|
106
|
+
- 采购字段:y=5~9,`leftX=1`, **`leftY=4`**(指向 E2「联系方式」所在行)
|
|
107
|
+
- 关联:`parentField` = 供应商.供应商名称;`currentField` = 进货单.供应商
|
|
108
|
+
|
|
109
|
+
**生成 helper**(Skill 内置):
|
|
110
|
+
|
|
111
|
+
```python
|
|
112
|
+
from scripts.left_filter_builder import build_cross_dataset_filter
|
|
113
|
+
|
|
114
|
+
lf, sub = build_cross_dataset_filter(
|
|
115
|
+
ds_supplier, src_supplier, "field_4746632256695654785",
|
|
116
|
+
ds_purchase, src_purchase, "field_4746633026496455388",
|
|
117
|
+
)
|
|
118
|
+
# lf[0]["id"] == lf[0]["currentField"] # 必须
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
**保存后验证**(`getReportDevInfo` 抽检首个跨表格,如进货单编号 y=5):
|
|
122
|
+
|
|
123
|
+
```bash
|
|
124
|
+
# parentField / currentField 各含两个 '.' 段;subordination 与 leftFilterField 一致
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
参考实现:`本地工作目录`、`restore_and_fix_left_filter.js`。
|
|
128
|
+
|
|
129
|
+
### 2.4 业务映射示例(EBU 报表)
|
|
130
|
+
|
|
131
|
+
| 子表类型 | 父格字段 | 当前字段 | 含义 |
|
|
132
|
+
|----------|----------|----------|------|
|
|
133
|
+
| 直销合同列 | EBU团队·责任人 | 直销合同业绩表·销售经理 | 按责任人关联合同 |
|
|
134
|
+
| 收款明细列 | EBU团队·责任人 | 收款明细表·销售经理 | 按责任人关联收款 |
|
|
135
|
+
|
|
136
|
+
根格(如 F3 责任人)设置 `leftX=-1, leftY=-1`;子格/公式格 `leftX=2, leftY=5` 指向根格列(0-based:行 2、列 5)。
|
|
137
|
+
|
|
138
|
+
### 2.5 Python 辅助函数
|
|
139
|
+
|
|
140
|
+
```python
|
|
141
|
+
def field_key_ref(ds_id, src_id, field):
|
|
142
|
+
return f"{ds_id}.{src_id}.{field['name']}"
|
|
143
|
+
|
|
144
|
+
def make_subordination(p_ds_id, p_src_id, p_field, c_ds_id, c_src_id, c_field):
|
|
145
|
+
return [
|
|
146
|
+
field_key_ref(p_ds_id, p_src_id, p_field),
|
|
147
|
+
field_key_ref(c_ds_id, c_src_id, c_field),
|
|
148
|
+
]
|
|
149
|
+
|
|
150
|
+
def make_left_filter(p_ds_id, p_src_id, p_field, c_ds_id, c_src_id, c_field):
|
|
151
|
+
ck = field_key_ref(c_ds_id, c_src_id, c_field)
|
|
152
|
+
pk = field_key_ref(p_ds_id, p_src_id, p_field)
|
|
153
|
+
return [{"parentField": pk, "currentField": ck, "type": "Equals", "id": ck}]
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
参考实现:`本地工作目录`。
|
|
157
|
+
|
|
158
|
+
---
|
|
159
|
+
|
|
160
|
+
## 三、单元格自定义筛选(customFilterField)
|
|
161
|
+
|
|
162
|
+
### 3.1 与数据集级筛选的区别
|
|
163
|
+
|
|
164
|
+
| 层级 | 配置位置 | 用途 |
|
|
165
|
+
|------|----------|------|
|
|
166
|
+
| **单元格 customFilterField** | `style.cellType.customFilterField` | 该单元格取数时的行级条件 |
|
|
167
|
+
| **数据集 datasetFilter** | `saveReportWithCacheConfig` 的 `datasetFilter` 参数 | 整个数据集的基础过滤 |
|
|
168
|
+
|
|
169
|
+
单元格自定义筛选同样必须使用 **fieldKey** 作为 `currentField` 和 `id`。
|
|
170
|
+
|
|
171
|
+
### 3.2 数据结构
|
|
172
|
+
|
|
173
|
+
```json
|
|
174
|
+
{
|
|
175
|
+
"customFilterField": [
|
|
176
|
+
{
|
|
177
|
+
"currentField": "1304979560546713602.1299789221321891842.field_1299789221321891843",
|
|
178
|
+
"type": "NotContain",
|
|
179
|
+
"value": "某核算机构",
|
|
180
|
+
"id": "1304979560546713602.1299789221321891842.field_1299789221321891843"
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
"currentField": "1304979560546713602.1299789221321891842.field_1299789221321891844",
|
|
184
|
+
"type": "Null",
|
|
185
|
+
"value": "",
|
|
186
|
+
"id": "1304979560546713602.1299789221321891842.field_1299789221321891844"
|
|
187
|
+
}
|
|
188
|
+
]
|
|
189
|
+
}
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
### 3.3 type 枚举(平台值)
|
|
193
|
+
|
|
194
|
+
**必须使用下列枚举**,不要用简写:
|
|
195
|
+
|
|
196
|
+
| 平台 type | 错误写法(无效) | 说明 |
|
|
197
|
+
|-----------|------------------|------|
|
|
198
|
+
| `Equals` | `eq` | 等于 |
|
|
199
|
+
| `NotContain` | `uncontains` | 不包含 |
|
|
200
|
+
| `Null` | `empty` | 为空 |
|
|
201
|
+
| `NotNull` | `nempty` | 不为空 |
|
|
202
|
+
| `Contain` | — | 包含 |
|
|
203
|
+
| `Include` | — | 属于(多值逗号分隔) |
|
|
204
|
+
|
|
205
|
+
完整枚举见 `report-data-model.md` §2.5。
|
|
206
|
+
|
|
207
|
+
### 3.4 需求文档到配置的映射
|
|
208
|
+
|
|
209
|
+
需求 Excel 中常见写法 → API 配置:
|
|
210
|
+
|
|
211
|
+
```
|
|
212
|
+
核算机构 不包含 机构A,机构B → type: NotContain, value: 机构A(多条则多个 filter 项)
|
|
213
|
+
核算机构 为空 → type: Null, value: ""
|
|
214
|
+
年度={year} → type: Equals, value: "{year}"(系统参数原样保留)
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
```python
|
|
218
|
+
FILTER_TYPE_MAP = {
|
|
219
|
+
"eq": "Equals", "uncontains": "NotContain",
|
|
220
|
+
"empty": "Null", "nempty": "NotNull",
|
|
221
|
+
}
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
---
|
|
225
|
+
|
|
226
|
+
## 四、保存与验证流程
|
|
227
|
+
|
|
228
|
+
### 4.1 双保存(API 脚本必做)
|
|
229
|
+
|
|
230
|
+
1. `POST /api/bs/edc/report/saveReportWithCacheConfig` — workbook + dataset + datasetFilter
|
|
231
|
+
2. `POST /api/bs/edc/report/saveReportDevInfo` — 同 workbook(需带 `designKey`)
|
|
232
|
+
|
|
233
|
+
仅保存其一可能导致设计器回显异常或筛选丢失。
|
|
234
|
+
|
|
235
|
+
### 4.2 验证清单
|
|
236
|
+
|
|
237
|
+
保存后调用 `getReportDevInfo`,检查 L3(或目标数据行)字段:
|
|
238
|
+
|
|
239
|
+
- [ ] `subordination` 为两段 fieldKey,非 `["",""]`
|
|
240
|
+
- [ ] `leftFilterField` 非空,且 `parentField`/`currentField` 含两个 `.`
|
|
241
|
+
- [ ] `customFilterField`(若有)的 `type` 为平台枚举
|
|
242
|
+
- [ ] 设计器打开后左父格筛选、自定义筛选下拉**有选中项**(非空白)
|
|
243
|
+
|
|
244
|
+
### 4.3 配置校验脚本
|
|
245
|
+
|
|
246
|
+
```bash
|
|
247
|
+
python e10-cli report validate <配置文件路径>
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
脚本会检查 fieldKey 格式、type 枚举、customFilterField 结构。
|
|
251
|
+
|
|
252
|
+
---
|
|
253
|
+
|
|
254
|
+
## 五、常见错误定位
|
|
255
|
+
|
|
256
|
+
### 5.1 设计器筛选下拉空白
|
|
257
|
+
|
|
258
|
+
1. 确认 `parentField`/`currentField`/`id` 均为 `{dataSetId}.{sourceId}.{fieldName}`
|
|
259
|
+
2. 确认 `dataSetId` 是报表内数据集 ID,不是 appId / reportId
|
|
260
|
+
3. 确认 `fieldName` 来自 `ds/fields` 接口的 `name` 字段
|
|
261
|
+
4. 双保存后刷新设计器
|
|
262
|
+
|
|
263
|
+
### 5.2 父格循环引用
|
|
264
|
+
|
|
265
|
+
子格 `leftY` 指向错误列会导致父格环(如根格在 F 列却设 `leftY=6` 指向 G)。根格用 `leftX=-1, leftY=-1`。
|
|
266
|
+
|
|
267
|
+
### 5.3 style 与 fields 表不一致
|
|
268
|
+
|
|
269
|
+
`getAllSheets` 的 `dtTable` 可能为空;**以 `getReportDevInfo.fields` 为准**。workbook 内筛选写在 `style.cellType`,平台解析后同步到 fields 表。
|
|
270
|
+
|
|
271
|
+
---
|
|
272
|
+
|
|
273
|
+
## 六、生成配置时的 Agent 检查项
|
|
274
|
+
|
|
275
|
+
生成或修改含跨数据集字段的报表时,Agent 必须:
|
|
276
|
+
|
|
277
|
+
1. 从 `ds/list` + `ds/fields` 获取真实 `dataSetId`、`sourceId`、`field.name`
|
|
278
|
+
2. 对每个跨数据集列生成 `subordination` + `leftFilterField`(fieldKey + `id`)
|
|
279
|
+
3. 对需求中的过滤条件生成 `customFilterField`(fieldKey + 平台 type)
|
|
280
|
+
4. 含 Formula 单元格时遵守 `formula-cell-api-guide.md`(cellText 无前导 `=`)
|
|
281
|
+
5. 运行 `validate_report_config.py` 预检
|
|
282
|
+
6. 若通过 API 保存,执行双保存并用 `getReportDevInfo` 验证
|
|
283
|
+
|
|
284
|
+
---
|
|
285
|
+
|
|
286
|
+
## 八、公式单元格(另见专篇)
|
|
287
|
+
|
|
288
|
+
含 Formula 单元格且通过 **API / 脚本保存** 时,必须遵守 `formula-cell-api-guide.md`:
|
|
289
|
+
|
|
290
|
+
- `cellText` / 顶层 `formula` **不带前导 `=`**
|
|
291
|
+
- `countType: count`、`displayType: Group`、`groupType: null`
|
|
292
|
+
- 双保存 + `getReportDevInfo` 回读验证
|
|
293
|
+
|
|
294
|
+
公式格本身通常 **不需要** subordination / leftFilterField;它引用同表内已配好筛选的 Field 汇总格。
|
|
295
|
+
|
|
296
|
+
---
|
|
297
|
+
|
|
298
|
+
## 九、相关文档
|
|
299
|
+
|
|
300
|
+
- `formula-cell-api-guide.md` — 公式单元格 API 写入规范(完整)
|
|
301
|
+
- `report-config-schema.md` §2.4–2.5 — 过滤与 Formula Schema
|
|
302
|
+
- `report-data-model.md` §2.4–2.5 — TypeScript 类型与枚举
|
|
303
|
+
- `ai-report-workflow.md` §4.4、§六 — 交叉表工作流与公式规则
|
|
304
|
+
- `report-knowledge-base.md` §2.1、§2.5 — 父格与自定义筛选概念
|