更换服务器后,网络单号重新又从1开始计算,造成单号重复
例如:我的单号已计到2024060030
更换服务器程序后又重新从2024060001开始计算
因为给到客户使用的程序是发布后的程序,在更新发布后的程序,就会出现这种情况
更新后重启一下服务端程序。
如果是使用远程桌面进入服务器的,最好是把远程桌面设置为排他性的,也就是只允许同一时间只能有一个远程桌面使用。否则如果同时打开多个远程桌面,各个远程桌面的程序是在独立的内存空间运行的,可能会导致服务端程序运行异常
1、只有一个远程桌面进入服务器
2、服务器关闭一次,远程桌面的服务器也只有一个在运行,
3、现在数据库是没能变的,就是发布的程序变了。当时设置了个有效日期,到期后重新发布过程序,就出现单据编码重新生成的情况了
出现这种情况,现在在考虑是否要使用到UUID或GUID码进行区别。
今日看到金蝶数据库是使用UUID和自身系统生成的单据编码,二个一起使用,如果这样操作会不会好些
应该是生成编号的代码不合理导致的。方便做个例子发过来测试一下
现在就是生成的编码,在系统表上的记录数也是不算数的,它是按字典的数为准的,所以程序一更新,编码就乱一次
老师可以是这里出问题
此主题相关图片如下:微信截图_20240614194406.png
dr.save()放在if判断条件成立的代码最后一行,else代码最后一行应为datatables("XXX表").load,记住,您用的是SQLFind,当dr存在时,保存的数据在SQL数据库中,有可能没有加载到当前的datatable中,如果执行了保存表,该表数据被datatable数据覆盖,自然就出现了相同的,建议直接用Find,在执行他的前一行加载一下表,并结合帮助中的独占式编辑,这些问题就没有了!记住,SQLFind是SQL数据库的行,写人时是越过了datatable和table的,必须要重新加载表!
多谢程老师指点
我把代码改了下,帮我确认下
此主题相关图片如下:微信截图_20240615090001.png
6楼代码没有任何问题,不需要多此一举。把单据编码这个表数据导出发上来看看,另外客户端是怎么用的,全部代码发上来