单据体需要动态设置列
2,121次浏览
编辑于2015年09月03日 17:27:50
某个业务单据的单据体包含若干个金额字段,这些金额字段与辅助资料“维修费用类别”有关系(这个辅助资料今后会不定期增、减),规则举例如下:
当新增并审核辅助资料维修费用类别:代码“005”,名称“交通费” 之后,要求业务单据的单据体自动新增一个金额字段,其名称为“交通费”,标识为"Fee_005"等等,同时在单据体对应的数据表中自动增加名为“Fee_005”的字段。
当反审核、禁用或删除该费用类别时,要求单据体自动删除“交通费”字段,数据表中的字段保留不处理。
以上需求想通过辅助资料表的触发器修改业务单据的元数据来实现(修改T_META_OBJECTTYPE表的FkernelXML字段),完成后发现新增并审核辅助资料“交通费” 时正常,单据体中确实自动增加了“交通费” 字段,运行时也能正常保存单据。但是当反审核、禁用或删除辅助资料“交通费”时,虽然在BOS设计界面看不见“交通费”字段了,但是运行时仍然能看见,并且能录入、保存。检查FkernelXML字段,确定“交通费”的元数据已删除。
重新登录、登录时清缓存、重启电脑均无效,运行时“交通费”字段依然出现,只有在BOS中重新保存一下单据之后这个字段才消失。
请问在修改了元数据表T_META_OBJECTTYPE表的FkernelXML字段之后,还需要处理什么地方?
推荐阅读