VFP适用于不同业务系统的基于sy(2017)数据同步算法,好用。

99e6d3e98f54bd581c523955588b9291.gif

问题提出:企业微信的服务器API可以下载部门JSON,这个JSON要转化为表存到数据库department表中。

JSON长这样

{
   "errcode": 0,
   "errmsg": "ok",
   "department": [
       {
           "id": 2,
           "name": "广州研发中心",
       "name_en": "RDGZ",
       "department_leader":["zhangsan","lisi"],
           "parentid": 1,
           "order": 10
       },
       {
           "id": 3,
           "name": "邮箱产品部",
       "name_en": "mail",
       "department_leader":["lisi","wangwu"],
           "parentid": 2,
           "order": 40
       }
   ]
}

后台数据库长这样

e62140892a907ba0db02af9e400892b9.png

读取JSON,转换成存表都没有问题,但如果微信那端有变更,比如部门增减了,那我们怎么保证两端一致呢,

有人说,最简单的算法就是先删再插入。的确是个最省力的方法,但是数据量如果一大,比如超过一万条记录,那执行得花不少时间,那有没有办法,节省时间,提高效率呢?

那我们是不是做一个比对算法,

  1. 企业微信端有,后台没有的,新增,

  2. 企业微信端无,后台有的,删除,

  3. 企业微信端有修改的,后台修改。

算法1,2是比较简单,算法3一个一个字段去比较,耗时比较长,那我们是不是可以用一个sys(2017)计算校验和和帮助我们快速比较呢?

答案是可以的,具体可以看我前面的文章。
sys2017在数据处理与同步中的应用

那么算法就来了,

我们来验证一下算法

第一次执行,

企业微信端有,后台没有的,新增,

后台表空,全部新增

f4ce73042391b4571711475f987e54f9.png

保存成功

a57c884c5be0de8837c9c0bf9ff9e968.png

企业微信端有,后台有,无变化=> 不操作

第二次执行,不应发生任何变更

28ff83297603955229d1367439398811.png

可以看到所有的行状态都是1 ,说明不会触发DAL_CA类保存,OK.

企业微信端有,后台无,新增,

我们先删除后台表ID=3

cf22e1d2d631b4dc5b3425c5edcf9eb7.png

可以看到id=3新增了。

企业微信端无后台无,新增,

后台表增加一个ID=99

c0fa4e601a7debdcf3cbc21b41d79ab1.png

此时应该触发删除操作

21233a270306b46acad8203bdcc126d0.png

可以看到id99被删除了。

企业微信变更,后台修改。

现在把JSON中的ID=2,name改为北京研发中心

a9aad4393c5b825d30e3df689e135964.png

可以看行记录行状态变成了2,说明字段触发修改操作了。

a99a98187620d9471e24a060f2f8ba34.png

后台表,也随之更改了。

还是效果不错的。

算法只需要改改表名,增加一个sys_chk字段,就可以轻松同步了。

猫猫的心里话

加菲猫的VFP|狐友会社群接收投稿啦

加菲猫的VFP,用VFP不局限VFP,用VFP混合一切。无论是VFP,还是JS,还是C,只要能混合起来,都可以发表。

商业模式,销售技巧、需求规划、产品设计的知识通通可以发表。

暂定千字50元红包,,优秀的文章红包更大,一经发表,红包到手。

如何帮助使用VFP的人?

用VFP的人,有专业的,有非专业了,很多人其实是小白,问出的问题是小白,如果问题不对,我们引导他们问正确的问题。无论如何请不要嘲笑他们说帮助都不看,这么简单的问题都不会,嘲笑别人不行,而无法提出建设性答案,是很low的。

我们无论工作需要,还是有自己的软件,都是是需要真正的知识,如何让更多人学习真正的VFP知识呢,只需要点赞,在看,能转发朋友圈就更好了。

加菲猫的vfp倡导用"VFP极简混合开发,少写代码、快速出活,用VFP,但不局限于VFP,各种语言混合开发"

我已经带领一百多名会员成功掌到VFP的黑科技,进入了移动互联网时代,接下来我们要进入物联网领域。

2024年狐友会社群会员继续招募中

社群会员获取的权益有:

祺佑三层开发框架商业版(猫框),终身免费升级,终身技术支持。

开放的录播课程有:

微信小程序,微信公众号开发,H5 APP开发,Extjs BS开发,VFP面向对象进阶,VFP中间层开发。

源码类资源有:

支付组件源码,短信源码,权限组件源码,一些完整系统的源码。这个可以单独出售的,需要的可以联系我。

会员也可以实现群内资源对接,可以接分包,合作等各项商业或技术业务

8d40c895dd1b76c1587103ec330d4494.gif

25f6535eb9948f3ffb78fae1b98d7468.jpeg

012e5b1fe809a491845af00ebe64b55d.gif

  • 15
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

加菲猫的VFP

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值