对关联关系表做数据修复解决方案

栏目:云苍穹知识作者:金蝶来源:金蝶云社区发布:2024-09-23浏览:1

对关联关系表做数据修复解决方案

1 业务背景

下游单据是手工录入、引入的,与源单没有关联关系,不支持联查、反写。

源单、目标单都是通过webapi集成进系统,需建立关联关系,以支持上下查。

现在用户需要手工修复与源单的关联关系,以支持联查、反写。

本章介绍如何通过SQL脚本的方式,向后台关联关系表写入数据,以实现建立源单于目标单的关联关系。


2 解决方案

首先了解后台各关联关系表的表结构和数据写入时机。

上图中_tc、_lk、t_botp_billtracker 几个表都记录了关联关系,可以在目标单的“关联配置”属性找到这些表名。

这些表的写入时机:

  • 下推时,生成目标单数据包(还没有保存),会把源单信息,填写在单据上自动创建的子单据体中(_lk),为每条分录行记录其原始来源; 

  • 保存时,会根据_lk表中的记录,生成单据到单据之间的关联关系,存储到t_botp_billtracker(所有单据到单据关联统一存储在此表);把分录到分录之间的关系,存储到xx_tc表(每种单据有自己xx_tc表,存储自身单据分录行和源单分录行的关联关系);

  • 反写时,会把反写结果记录在_wb表上,这个表也是各单据分别创建,是xx_tc表的子表。

这些表的用途和使用时机:

  • 查询原始下推数据:xx_lk记录,称为关联子实体,是单据实体的一部分,存储下推时原始的源单信息:可以使用此表追查原始下推时数据;

  • 联查:先到统一的单据到单据关联关系表t_botp_billtracker中,搜索本单的所有源单、目标单,然后在根据源单、目标单类型,到各自分录行关联关系表_tc中,搜索分录行之间的关联关系,再读取_wb表,获取反写历史数据;


按如下步骤进行后台表数据处理:

第一步:

修复系统库 t_botp_billtracker表,该表用于下查

字段说明:

fsbillid 源单单据fid

fstableid 该字段来自 元数据库t_meta_entityinfo 表的ftabelid字段,获取sql:select fstableid from t_meta_entityinfo where ftablename = '源单表单设计里面对应的表名'

ftbillid 目标单单据fid

fttableid 该字段来自 元数据库t_meta_entityinfo 表的ftabelid字段,获取sql:select fstableid from t_meta_entityinfo where ftablename = '目标单表单设计里面对应的表名'

额外说明:

该表的修复可在开发平台搜索botp_billtracker,然后扩展一个保存按钮,然后把上述查询结果依次填到对应空位内


第二步:

修复 tc表,该表在对应下游单据的表单设计器里面,找到【关联配置】-【关联追踪表】,该表在对应业务库内,用于上查

字段说明:

fsbillid 源单单据fid

fstableid 该字段来自 元数据库t_meta_entityinfo 表的ftabelid字段,获取sql:select fstableid from t_meta_entityinfo where ftablename = '源单表单设计里面对应的表名'

fsid 源单的分录id

ftbillid 目标单单据fid

fttableid 该字段来自 元数据库t_meta_entityinfo 表的ftabelid字段,获取sql:select fstableid from t_meta_entityinfo where ftablename = '目标单表单设计里面对应的表名'

ftid 目标单的分录id

额外说明:1.因为该表没有界面,所以fid只能手动填写,无法自动生成;2.如果botp关系配置关联实体里面是分录,则fsid和ftid是对应分录的id


第三步:

修复lk表,该表在对应下游单据的表单设计器里面,找到【关联配置】-【反写字段与记录原单】,该表在对应业务库内。

字段说明:

fid  父实体行内码

fpkid 手动生成的id

fsbillid 源单单据fid

fstableid  该字段来自 元数据库t_meta_entityinfo 表的ftabelid字段,获取sql:select fstableid from t_meta_entityinfo where ftablename = '源单表单设计里面对应的表名'

fseq   行序号

fsid   源单关联实体是单头,为单据内码;源单关联实体是单据体,为分录内码;源单关联实体是子单据体,为子分录id。


对关联关系表做数据修复解决方案

1 业务背景下游单据是手工录入、引入的,与源单没有关联关系,不支持联查、反写。源单、目标单都是通过webapi集成进系统,需建立关联关系...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息