夜雨聆风学习资料网

ARTICLE · 1282671

从线下Excel到智能台账:零开发基础实施顾问借助灵基搭建金融数据二开表单,实现智能汇总与开发人天降本增效

从线下Excel到智能台账:零开发基础实施顾问借助灵基搭建金融数据二开表单,实现智能汇总与开发人天降本增效
#玩转灵基#从线下Excel到智能台账:零开发基础实施顾问借助灵基搭建海外金融数据二开表单,实现智能汇总与开发人天降本增效

基本信息

你的职业角色:实施顾问

实践面向的角色:客户财务人员

适用行业:金融

适用产品:金蝶AI星瀚

这次实践始于两份业务附件,逐步完成海外“金融数据”台账建模、应用入口调整、单据插件修复,并扩展到汇总查询与导出。9月18日,单据本体得到“测试没有问题”的反馈;后续汇总功能持续迭代,但截至10月29日最后一条反馈,导出仍未成功。本文记录这段完整过程,包括有效做法、返工原因和交付边界。

(一)业务背景与痛点

海外“金融数据”管理需要同时记录项目合同和合同结算信息,并按组织与时间范围查看相关台账。本次目标是在员工服务云中建立二次开发单据,让业务人员通过统一入口录入、保存、提交和审核,再按需要查询汇总结果。

实施难点首先是把Excel列定义转成系统字段:文本长度、金额精度、默认值、必填性都需要逐项确认。其次,两张明细表之间存在序号与合同信息的一致性要求,单纯生成字段不能满足业务规则。最后,表单所在应用、菜单、前台显示、汇总筛选和导出需要接续验证,后台创建成功并不代表整个使用流程已经走通。

因此,我把需求说明书作为业务逻辑依据,把台账模板作为字段依据,通过灵基会话持续提供操作反馈。实践中的主要工作,也从一次建模逐步转向“配置、读回、前台复测、纠偏”的循环。

(二)灵基解决方案与实现过程

会话使用Build模式和Qwen3.8-Max,首轮调用 cosmic-app-builder 的单据开发能力。前半段以建模和界面配置为主,后半段引入KingScript插件处理跨表校验和汇总查询。以下按会话时间顺序展开;文中的“读回通过”指当轮回复报告的配置核对结果,用户复测结果单独标明。

1 上传附件并确认需求口径

我在“员工服务云海外“金融数据”台账二开单据”会话中上传《海外“金融数据”台账需求规格说明书V1.0.docx》和《台账数据模版.xlsx》,提出以下开发要求:

“根据附件《海外“金融数据”台账需求规格说明书V1.0》和《台账数据模版.xlsx》,在员工服务云中新增二开单据。单据的样式和字段需严格按照台账数据模板中的列定义创建,包括字段类型、长度、必填性等。业务逻辑(如数据校验、计算规则、审批流触发条件等)需完全按照需求规格说明书中的描述实现。创建过程中如有疑问,请随时与我沟通确认。”

图1  上传两份附件并调用单据开发能力(会话局部)

灵基先提出四项澄清,我确认:首阶段仅交付海外“金融数据”台账单据及列表,暂不做汇总选择与汇总台账;约定“金融数据”金额采用小数(18,2),纠正文档中“文本/200”的冲突;业务字段按非必填处理;需求书中的唯一识别编号仍创建,但在界面隐藏。汇总功能是在单据测试通过后才追加的范围。

图2  首轮范围、金额类型与必填性确认(前三项问答节选)

2 首轮建模及列表接口排查

首轮处理30分17秒,灵基报告建立55个业务字段,表头包含Ledger No.、公司组织F7、Entry Person、Entry Date和Document Status。明细分为Table 1-1项目与合同信息、Table 1-2合同结算台账;首轮描述分别为隐藏唯一编号加No.及33列、No.及18列。普通文本长度200,编号类50,两处Notes和风险说明2000;5个金额字段目标精度为(18,2)、默认0,No.初始默认1。

这一轮有两个明显缺口:单据建在演示应用中,未落到目标业务应用;列表配置在预检阶段两次失败,均未写入。此外,跨单据体一致性、当前组织默认值与锁定、日期格式等尚未实现。保存时合同总金额小于0的阻断规则则报告已生效。

我要求先重试列表。第三次仍返回 LIST_CONFIGURATION_BASELINE_FAILED。拆分检查发现,getEntityType、getFormSchema、listElements成功,loadFullMetadata返回404及“Cannot found OpenAPI(or disabled)”。问题由此缩小到列表预检依赖的接口不可用,但尚未证实是禁用还是版本缺失。

图3  拆分四项预检读取后定位到元数据接口404

同轮读回还发现,5个金额字段只有Scale=2,Precision=18并未真正写入。灵基补齐精度并逐项核对。这个修正说明,完成回复中的“(18,2)”仍需与实际存储属性对照,不能只看文字承诺。列表则继续保留模板默认列,没有绕过预检直接写入。

3 纠正应用归属并打通前台入口

我连续追问前台为何找不到“金融数据”台账。第一轮仅完成目标应用绑定和建模输入准备,尚未写入;第二轮灵基承认进度表述不准确,才在员工服务云下的“企业云业务平台”中重建。为避免全平台表单编码冲突,新单据使用新编码,演示应用中的旧单据保留。

重建报告55个业务字段、58/58建模回读通过及58项属性验证,并挂接““金融数据”管理”目录下的台账菜单。这里的字段数、建模核对项和属性项属于不同统计口径,不能相互替代。入口当时为“员工服务云 › 企业云业务平台 › “金融数据”管理› 海外“金融数据”台账”。

随后,我提出在员工服务云下新建““金融数据”管理”应用。当时工具链没有独立创建应用的命令;在灵基说明后,我在过程问答中选择了复用已有应用并改名。它将“企业云业务平台”改为““金融数据”管理”,把台账菜单移到根级,形成“员工服务云 › “金融数据”管理› 海外“金融数据”台账”。这是已有应用改名,并没有新建第二个独立应用;原应用中的其他业务也随之显示在新名称下。

前台仍不可见时,灵基先提出角色授权方向。我反馈当前账号已具备完整功能后,它继续核查启用状态,并提出门户配置或缓存等可能原因。我反馈“可以看到了,谢谢”,前台可见性才有了用户侧证据。记录没有证明某一项权限配置是唯一根因,因此不能把此前推测写成已证实结论。

4 根据实际录入体验调整单据布局

入口可见后,我要求两张明细表分别放在页签内,再让表格填满面板。页签写入一度因全量元数据读取404而缺少完整结构验证,后续通过前台反馈继续调整。两张表格高度设为100%后仍只显示一行,于是将新单据默认行数改为10;该设置不改变已保存单据自身的行数,也不等于自动缩小空白区域。

表头随后按需求顺序排列,隐藏审核人、显示录入日期,并改用平台接受的getNow作为日期默认值。创建人沿用原生能力;公司组织仍可F7选择,当前组织默认值与锁定未补齐,YYYY-MM-DD显示格式也未完成。编号和状态仍保留模板原生必填表现,不能把首轮“全部非必填”扩大理解为所有平台字段都已取消必填。

5 通过单据插件实现编号和跨表校验

我要求T1-1与T1-2建立关联,并让No.按1、2、3顺序编号。由于操作校验只能处理同一实体中的字段,灵基改用KingScript单据插件:在相关加载、增行、保存或提交环节整理序号;保存、提交时校验结算表对应序号能否匹配项目表有效行,并核对“金融数据”合同名称及编号,跳过空白行。

次日我反馈“没有任何关联”,才进一步明确交互:本次选择手工录入后在保存、提交时校验,不是输入时自动带出合同信息。这个确认避免了把“关联”同时理解为联动赋值和一致性检查。

单据插件随后经历三轮修复。v1运行时报getOperateKey方法不适用;v2改从事件源取得操作对象,并修正取行数方式,但绑定中的className仍指向旧版,导致同样报错继续出现。更新实际绑定后,又发现原保存表达式解析异常,灵基将金额非负检查并入v3,移除该条有问题的表达式,同时保留其他规则。

“7行保存后剩3行”的现象也在此阶段解释为平台清理空白行。由于关联采用行序号,重排可能影响引用,稳定唯一标识仍是后续改进方向。删行后的即时重排、接口导入等路径并未在本轮获得完整覆盖。我明确反馈“好的,测试没有问题。很棒”,单据本体形成了阶段性验证闭环。

这期间静态检查通过,但完整TypeScript语法检查因环境缺少相关运行能力而降级,经过确认后继续。后续汇总插件出现语法问题,也再次暴露了这一验证缺口。

6 追加汇总功能并调整交互路线

单据通过测试后,我要求继续实现说明书中的汇总功能。灵基先建Summary Selection选择弹窗,包含组织、时间类型、年、季、月、起止日期等8个字段;再建Summary Ledger汇总页,包含10个筛选字段和T1-1的16列汇总明细。组织按单选F7处理,选择上级后由插件展开下级;查询按时间范围和已审核状态过滤。

选择插件负责字段显隐、必填和日期范围校验,报表插件负责组织展开、时间窗与文本过滤。最初的组织展开限制为向下六级,不能宣称任意深度均已覆盖。与此同时,工具栏、联查和导出仍存在能力或验证缺口。

我多次反馈点击“确认”没有反应。选择插件v2先处理季、月模式下隐藏年份为空的问题,但没有解决整条跳转链。灵基随后准备删除并重建选择表单;我确认后,平台因菜单引用返回FORM_IN_USE,实际未发生删除。于是改成单页方案:菜单直接打开Summary Ledger,在页面顶部填写筛选条件,旧选择弹窗保留。它降低了弹窗操作绑定的依赖,但偏离了原先“选择弹窗→确认→汇总页”的交互。

7 逐项修复汇总查询的运行问题

切换为单页方案后,问题从“按钮无反应”转为日期构造报错、参数无法绑定、查询为空和字段不存在。9月18日下午至晚间,报表插件从v3迭代到v9。关键排查如下。

版本

运行现象

当轮处理

v3

日期构造参数报错

将ScriptDate三参构造改为七参;后续仍需继续排查时间窗

v4

组织数组无法绑定ORM参数

将QCP.in数组条件改为标量equals与or组合

v5—v6

打开即提示无数据;季/月查询被空年份拦截

取消打开即查询;暂按筛选变化触发,季/月取当前年,按年空值也回退当前年

v7—v9

条件正确仍为空;命中后报字段不存在

先避免长整型内码的数值精度损失,再按实际截断字段键读写,最终改用组织编码字符串匹配

这些修改解决的是不同层次的问题:日期和条件能否传入、查询能否命中、命中后能否把字段写到表格。会话中多次把当轮假设称为“根因已定位”,随后用户仍反馈无数据。因此,排查方向有价值,但必须经过再次复测,不能把每一次版本发布都视为最终成功。

8 恢复明确的汇总按钮与提示时机

我提出应先填写条件,再主动点击“汇总”,而不是页面一打开就提示无数据,也不希望每改一个字段就发起查询。灵基通过可用的控件创建路径补上“汇总”按钮,并在v10注册点击监听,取消筛选变化自动查询。此前某个addButton路径受阻,不代表所有控件创建路径都不可用。

v10还把年、季、月时间窗改为整数日期算法,以排除ScriptDate构造不可靠的假设,并在边界各放宽一天。这个实现需要另做月末、季末及跨年边界验证,不能直接等同于精确符合所选期间。9月21日v11又移除打开页面时的黄色提示,最终交互变为“打开静默等待→填写条件→点击汇总→返回结果或提示”。

9 调整汇总布局并补齐两张明细表

筛选区最初因明细列多而横向拉长,先固定为1180px以便换行;随后按要求将相关面板、容器和表格宽度设为100%。仍无法铺满时,灵基发现表格位于按列分配宽度的Fieldset内,于是把分录容器移到表单根下并隐藏空面板。最终又将筛选区恢复为1180px、表格维持100%,兼顾条件录入和明细查看。

我指出两张明细表没有分别汇总,且公司名称与源表不一致。中间一次处理因点数耗尽中止,继续后v12将公司名改为取明细行本身,而非单据头组织名称,并新增T1-2的20列汇总网格。此时T1-1和T1-2数据分别填入两个网格,但结构暂时上下堆叠。

v12又出现BABEL_PARSE_ERROR:生成代码时使用旧字符串位置切分新文本,留下了损坏的方法片段。灵基停用v12,采用完整方法体和重新计算的位置生成v13,并核对插件绑定。这个错误说明,注册成功和部分静态检查不能代替真正的语法检查与打开页面测试。

为了让两个网格分别位于页签内,就地调整尝试遇到动态表单根容器和子控件类型限制。我明确确认删除重建汇总表单后,执行报告显示:新表单自带双分录、双页签,16项结构操作、16项父子关系和2项容器属性验证通过,菜单及插件同步绑定。重建导致实体键变化,v14再修正第二张表的清空与写入引用。与前一次选择弹窗删除被阻断不同,这次汇总表单确实报告完成了删除与重建。

10 补充刷新和导出并记录最终未闭环项

v15增加刷新、导出按钮,清空默认季度,并隐藏明细新增、删除等工具栏。表格没有保存入口,不代表单元格已严格只读;当时完整的编辑锁定仍无验证。v16补齐汇总、刷新、导出三个按钮的监听,刷新按当前条件重新查询,但导出当时仍只显示“不支持”的提示。

随后v17提供替代方案:把T1-1与T1-2生成含表头和引号转义的CSV文本,在Summary Export弹窗只读展示,供复制后另存。CSV只有文本记录,这里是同一内容中的两个数据区段,并不是真正带两个工作表的Excel文件。v18又移除运行态不支持的ShowType.Modal设置和误导提示,改用模板默认弹窗。两版均报告插件注册和读回完成。

(三)效果与价值

这次实践把两份附件转成了可继续验证和维护的单据与汇总配置。单据包含55个业务字段、两张明细表,5个金额字段的精度得到补齐;编号、金额非负与跨表一致性经过插件修复后,得到用户的阶段性测试确认。汇总侧进一步形成10项筛选及16列、20列两个结果网格,并逐步明确了手动汇总和刷新交互。

更直接的价值是问题被拆解到可接手的层次:应用归属、字段属性、实际插件绑定、运行态类型转换、字段真实键以及按钮监听,都留下了具体排查线索。代价同样明显,过程包含重建和多轮返工,不能用首轮30分17秒代表完整开发周期;没有人工实施基准,也不宜计算节省人天或效率提升比例。

截至会话最后一轮,交付状态如下。

事项

已有结果

仍需关注

单据本体

55个业务字段;两张明细表;v3后用户反馈测试无问题

属于当时测试结论,不能覆盖所有导入、删行及边界场景

应用入口

已有应用改名;菜单挂接;用户反馈前台可见

旧首页名称、空菜单目录和演示旧单据仍待评估清理

汇总查询

已配置筛选、手动汇总、刷新与双页签结果

需核对组织深度、期间边界、空值及两表结果完整性

导出

已尝试CSV文本弹窗替代方案

最后反馈仍无反应;原生Excel下载未交付

列表与联查

列表沿用模板默认配置

自定义列、筛选、搜索、排序及钻取仍未完成

表头与交互

日期默认值、布局和默认行数已调整

当前组织默认值与锁定、日期格式、严格只读仍有缺口

验证与遗留对象

部分结构及注册读回通过

全量UI读回、完整语法检查受限;旧选择弹窗仍保留

初期沿用Draft、Submitted、Audited等平台原生状态,没有另建独立Rejected存储状态;记录也不足以证明独立驳回流程及所有金额计算规则都已配置验收。最终成果适合描述为“单据本体获得阶段性验证,汇总功能持续完善,导出与部分配置仍待补齐”。

(四)心得与经验总结

先确认落点,再启动批量建模。目标云、应用和菜单路径应在第一轮核对,否则即使字段全部建成,也可能像本次一样落在演示应用中,需要再次重建。新建应用与已有应用改名也应明确区分,并事先评估原应用内其他业务受到的影响。

让澄清发生在实现之前。金额类型、必填性、隐藏字段和首期范围的四项问答有效减少了歧义;“关联”究竟是输入联动还是保存校验、汇总究竟是自动刷新还是点击触发,也应同样提前确定。

证据要分层表达。“准备输入”“写入成功”“读回一致”“页面能打开”“用户测试通过”分别对应不同阶段。尤其要检查实际生效的className和插件绑定,停用旧版本后再复测,避免修好了源码却仍在运行旧逻辑。

把交互和边界一起纳入验收。空白行清理会改变序号,长整型标识不宜随意转成浮点数,字段名称应取实际元数据,日期范围要测边界。提示应出现在用户点击之后;按钮可见也要确认事件已绑定并产生可见结果。

这次可复用的验收方法是:先用一张已审核台账验证两张明细表,再分别测试年、季、月和自定义时间范围;核对公司来源、行数和金额;最后验证刷新、导出以及联查。每轮只确认实际通过的项目,把剩余问题保留在交付清单中。

回首页,搜索你想要的文档

在首页搜索框输入关键词,快速定位资料

文库首页搜索指引 立即搜索

相关学习资料