全流程跟踪解析(1)
对于我们这些刚接触bos平台的小白来说,单据之间的关联关系总是让人头疼,不知道上下查受哪些表的影响,全流程跟踪又是从哪里取数的?
对于开发来说,知其然而不知其所以然,总是让人苦恼的,抱着这种烦恼我们来探索一下到底是什么表存储了这些信息,之前大家应该知道在单据转换的时候,我们要在下游的单据的属性 单据关联配置中 要设置一些信息,其中就包含 关联表名:
接着就很自然的去数据库中查一下,看看记录了哪些信息
select * from t_PUR_POOrderEntry_lk
稍微解析一下表中字段含义,可以参考:
大家看到了,其实很简单,就是上游单据key值和下游单据key以及转换规则ID和控制字段等。
控制字段的含义,可以参考:
好了,那么了解了这个以后,我们可以删除其中的某个单据下推的记录,然后我们会发现,去下游单据上查或者去上游单据下查以及全流程跟踪都可以看到,说明不是这个表控制这些操作。
接着我用SQL Server Profiler监控,然后打开某个单的全流程跟踪,发现后台数据库执行的脚本中有这几个表:
t_BF_TableDefine
FTABLEID:没什么好说的,就是个GUID唯一值;
FTABLENUMBER:参与过单据转换的字段对应的表;
FFORMID:单据标识;
FENTITYKEY:参与过单据转换的实体标识;
FSEQ:也算是Id,后面的表里面有存储这个值,用来关联。
t_BF_Instance
FINSTANCEID:实例Id,这个表的主键,和分录表T_BF_INSTANCEENTRY 通过这个字段关联;
FFIRSTFORMID:上游表单标识;
FFIRSTBILLID:上游表单内码;
FFIRSTBILLNO:上游表单单据编码。
T_BF_INSTANCEENTRY
FSTABLENAME:上游关联表的表名;
FSID:上游关联行的内码;
FTTABLENAME:下游关联表的表名;
FTID:下游关联行内码;
FFIRSTNODE:是否是首节点。
T_BF_INSTANCEHIS
T_BF_INSTANCEENTRYHIS
PS:后面两张表没什么好说的,表名就是前两个表加了个HIS,说明是历史表,归档表的意思。需要强调的是:
FSTABLEID:相当于FSTABLENAME这个字段,只不过变成了ID,需要用表名去t_BF_TableDefine表中查询,获取FSeq 就是这个字段的值了;
FTTABLEID:这个字段也是同理,就不赘述了。
接着继续写哈,可能大家会好奇,归档是如何进行的,大家可以猜测一下,应该是执行计划里面有什么服务。刚开始我用关键字服务搜索,没有找到,我换了个关键字流程,然后找到如下图所示:
终于找到了哈!进去看看:
这里涉及到CRON表达式,有些伙伴可能不清楚(0 0/30 00-06 * * ? )是什么意思,可以用解析工具反解析如下:
这里给大家个连接作为参考:
如果帮助到你的话,希望点赞收藏哈!
未完待续!!!!
如果系统启用了执行计划全流程信息并非全部记录在t_BF_InstanceEntry,t_BF_InstanceEntryHis,t_BF_InstEntryBackUp这三张表,更久之前的流程数据可能存在t_BF_InstanceSnap,t_BF_InstanceSnapHis,t_BF_SnapBackUp中以XML的形式记录着而对于t_BF_InstanceSnapHis,t_BF_SnapBackUp表中的xml需要通过解压提取出来。
加油更,不要停。
全流程跟踪解析(1)
本文2024-09-16 18:36:45发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-23275.html
- 鼎捷EAI整合規範文件V3.1.07 (集團).pdf
- 鼎捷OpenAPI應用場景說明_基礎資料.pdf
- 鼎捷OpenAPI應用場景說明_財務管理.pdf
- 鼎捷T100 API設計器使用手冊T100 APIDesigner(V1.0).docx
- 鼎新e-GoB2雲端ERP B2 線上課程E6-2應付票據整批郵寄 領取.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程A4使用者建立權限設定.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程C3會計開帳與會計傳票.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程E6-1應付票據.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程A5-1進銷存參數設定(初階篇).pdf
- 鼎新e-GoB2雲端ERP B2 線上課程D2帳款開帳與票據開帳.pdf