找回密码
 立即注册

QQ登录

只需一步,快速开始

alex6168

注册会员

8

主题

27

帖子

87

积分

注册会员

积分
87

微信认证勋章

alex6168
注册会员   /  发表于:2019-3-7 14:41  /   查看:2484  /  回复:9
我的商品编号 中的 自动编号 设置如下图


我删除 商品编号 为 SP0004 的商品 (商品编号最大的那个)


当我再新建一个商品,发现还是会用会这个已经删除的 商品编号。


原来ID为10的商品编号为SP0004,现在ID为11的商品编号,仍然为SP0004。

按道理说,ID为11的商品编号,应该是SP0005才对的。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

9 个回复

倒序浏览
Tracy.Liu讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2019-3-7 15:40:43
沙发
您好,这个废号重用目前得逻辑机制是这样的:如果不重用,那么每次计算新编号时,是计算当前最后一个编号值。如果您删除的是最后一个,那么他添加得就还是最后一个编号的哈。这个是因为,暂时不好去记录您刚删除的是否是最后一个编号,或者还有一种情况,就是您连着删除最后的多行,目前暂时不好记录是删除的哪条数据、删除了几行的哈。
回复 使用道具 举报
alex6168
注册会员   /  发表于:2019-3-7 16:23:17
板凳
Tracy.Liu 发表于 2019-3-7 15:40
您好,这个废号重用目前得逻辑机制是这样的:如果不重用,那么每次计算新编号时,是计算当前最后一个编号值 ...

我猜也是这个机制。

但这里有个问题,如果我在销售订单使用了这个产品编号,然后删除了这个产品,再添加商品又重用这个编号,数据就会乱,因为相当于两个商品用了同一个商品编号。

估计要解决这个问题,所有的引用只能以商品ID为准,不能以商品编号。或者,就是删除商品前,要检验商品是否已经在订单使用了,如果使用了,就不能删除。
回复 使用道具 举报
Tracy.Liu讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2019-3-7 16:45:22
地板
对的,目前的是需要您说得这种处理方式的哈。
回复 使用道具 举报
alex6168
注册会员   /  发表于:2019-3-8 09:49:39
5#
Tracy.Liu 发表于 2019-3-7 16:45
对的,目前的是需要您说得这种处理方式的哈。

如果我需要在删除前做一个判断,这个客户是否已经在销售订单中使用了,如果是,就不能删除。实现这个功能,应该怎么做呢?

如果使用条件命令,好像只可以对本数据表操作。

大概的思路怎么样,麻烦指教

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
风从北来
中级会员   /  发表于:2019-3-8 10:06:07
6#
为什么不修改,非要删除呢?
回复 使用道具 举报
alex6168
注册会员   /  发表于:2019-3-8 10:14:27
7#
风从北来 发表于 2019-3-8 10:06
为什么不修改,非要删除呢?

删除数据 总会应用到的,即使不在这个场景,也会在其他场景用到,所以删除前检查验证必须有个解决方法。
回复 使用道具 举报
alex6168
注册会员   /  发表于:2019-3-8 10:20:36
8#
我目前能想到的解决方法,是在 客户列表页上 放一个表格,读取 销售订单 中的 客户编号,在把客户列表 和 这个表格的客户编号对比。




但总觉得这样不妥,把所有订单中的客户编号督导客户段,数据量会太大了,也不安全。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
alex6168
注册会员   /  发表于:2019-3-8 11:04:22
9#
我想到用OData的方式,在表格中添加多一栏做判断。

但如果这个OData能够放在条件语句里面就好了,减少了数据的查询。

条件命令里面有可以用JS,但不知道怎么编写代码实现,以后再说吧
回复 使用道具 举报
Tracy.Liu讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2019-3-8 12:14:53
10#
这样是可以实现的,但是如果您写有odata公式的表格中数据也非常多的话,那么每一行都进行odata公式计算可能会导致性能降低。因为每一个odata都会和数据库做一次交互。您可以考虑给这个表加上按需加载,每次加载几条,这样会好一些。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部