网站建设哪家公司比较好,2345网址大全最新版下载,五大类型网站,co域名网站最近项目上#xff0c;做了一个复杂的需求逻辑#xff0c;源模型到目标模型#xff0c;主键完全发生了变化。用转换的传统功能#xff0c;我担心处理起来不方便就使用了专家历程#xff08;这个说明在之前有说过#xff09;。 项目上线后#xff0c;发生很多异常事件。但…最近项目上做了一个复杂的需求逻辑源模型到目标模型主键完全发生了变化。用转换的传统功能我担心处理起来不方便就使用了专家历程这个说明在之前有说过。 项目上线后发生很多异常事件。但是目标模型的记录条目数基本没问题为什么----DTP没做任何限制 类似这种功能若使用以前传统方式的TR一定会出现记录没进行reverse。因为很多人任何系统会根据我们的拉线进行处理。但是我以前做过测试如果主键发生了变化(源模型和目标模型的主键不一样)系统不一定能进行reverse操作。这时候需要我们自己根据实际的逻辑进行reverse和更新。
1 DTP不能有任何的限制很重要很重要很重要。为什么 前影像里带着之前记录的值这个可以帮助我们找到之前的主键。不然如果正好是目标模型对应的主键字段发生变化我们正好又进行了delete操作看似减少了数据量加快了运行速度。但是这样很可能会造成之前要进行reverse的记录无法进行reverse 2 如何进行reverse操作 2.1 对于简单逻辑主键字段没进行过任何加工既没有发生过变化可以直接将前影像修改为R进行reverse 2.2 对于复杂逻辑主键字段进行过任何加工一定要根据某些不变化的字段(如凭证号流水号)来确定这次修复数据的集合再在目标模型找出相同范围的记录进行对比不在此次修改的集合里就要进行reverse 这次项目上线前一周逻辑修改非常多基本一天要改几个逻辑。如果再出现记录没有同步reverse那异常情况更复杂。还好开发前就设计好了这个功能减少了很多工作量。加上这次使用OO对象编程很多逻辑独立成一个method修改逻辑非常方便代码层次结构也比之前的TR更容易理解。只是再好架构也抵挡不住用户天马行空的逻辑要求