首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ERP中的产品代码:字母数字与数字编码

ERP中的产品代码:字母数字与数字编码
EN

Software Engineering用户
提问于 2020-07-21 11:09:25
回答 3查看 565关注 0票数 2

背景

我正在为一个新的ERP (CloudSu套工业)中的项目创建一个结构,我正在实施。对于项目(可以是成品/产品或原材料),我们目前有一个三级的组织体系。我试图确定将该信息映射到产品代码的最佳/标准实践。

在CSI中,产品代码可以与一些特殊字符(如连字符和下划线)一起使用字母数字,并且有10个字符的最大值。

简化示例结构:

结构

  • ItemType 1
    • A部
      • 类别1
      • 第2类
      • 第3类

代码语言:javascript
复制
- Division B 
    - Category 1
    - Category 2
  • ItemType 2
  • ItemType 3

示例

  • 制成品
    • Cars
      • 轿车
      • 卡车
      • SUV

代码语言:javascript
复制
- Boats 
    - Yachts
    - Rowboats
  • 子程序集
  • 原料

关于产品代码结构的初步思考:

结构

ItemType +连字符+ 分部 +连字符+ 类别

示例

Finished(成品-汽车-轿车)FG Y(成品-船-游艇

关注

当向上级提出这个想法时,回答是:“为什么不直接做顺序数字呢?”CSI为描述提供了一个单独的文本字段,它显示在产品代码旁边。这将意味着,如果我有一个代码"Finished“,然后在它旁边的页面上,它将显示另一个文本框与”成品,汽车,轿车“,所以没有真正的需要本身是智能/人类可读的。

但是,我看不到使用智能/人类可读的代码的实际缺点。如果数据是导出的,这似乎是有用的,因为它的一部分代码记录了它自己,而代码的描述是一个单独的表。

我想得到一些反馈,其他ERP用户通常做的设置这一点。

谢谢!

编辑

基于这里的答案,以及CSI Linkedin小组和ERP分系统的讨论,我们决定采用混合模式:

  • FG-01
  • FG-02
  • ..。
  • RM-01
  • 等等

这是两个世界中最好的。它符合CSI关于简单的"FG“、"RM”等的建议,它在每个顶级组中提供了多达99个可能的类别。因为类别是数字的,如果我们改变了对一个(将“汽车”改为“车辆”)的引用方式,那么产品代码就不会改变。

EN

回答 3

Software Engineering用户

回答已采纳

发布于 2020-07-21 13:24:38

您目前的要求没有考虑到时间的影响:您的公司迟早会更新其目录或重组其组织结构。然后,必须以不同的方式组织项目:

  • 如果您选择了一个愚蠢的顺序编号,您并不关心:您只需更改项目的一些属性。你就这样吧!
  • 如果您选择了一个有意义的编号,它包含了结构信息,这将是非常糟糕的:
    • 你必须打破以前的编号,人们会感到困惑。
    • 此外,有意义的编号可能隐藏了按照额外标准过滤目录的一些要求。因此,重组甚至可能扰乱某些过程。
    • 库存货架上的商品标签或印刷在盒子上的标签不能像数据库一样在一夜之间改变吗?
    • 最后,客户可能有正在进行的订单,或这些项目的长期合同。这样,您就不能将外部引用更改为采用新的编号:这将是一个痛苦的转换,但是您将这样做。

是的:为什么不只是顺序数字呢?是否有任何明显的理由反对它,理解你总是可以有一个弹出或链接显示额外的项目属性,甚至打印什么是必要的标签上,如果它是相关的。

票数 7
EN

Software Engineering用户

发布于 2020-07-21 20:50:14

在我正在开发的ERP中,所有表都有一个代理项,几乎所有表都有一个自然密钥。从Christophe和Ewan的答案可以看出,这两种类型的键都有其优点和缺点。因此,两者兼而有之是有意义的,尽管这增加了复杂性。这个ERP中的关系通常是用代理键来完成的,但是这些键几乎从不向用户显示。相反,当数据显示给用户时,代理键将被替换为它们的自然密钥。这是该ERP中所有数据结构的基本行为/功能,仅在您的特定场景中实现它可能会有些过分。

如果我必须选择的话,我不确定我会在您的场景中选择哪种方法。仔细看看您的需求以及每种方法的优缺点。

票数 1
EN

Software Engineering用户

发布于 2020-07-21 12:23:51

您比较的是自然键与代理键。

您的自然密钥是productType = SEDAN,代理密钥可能是productType =7

我对代孕键的主要问题是,当人类开始使用它们时,它们就获得了一个伪意义,并成为了自然的键。不久,企业就不会说,“给我看我们今年售出的所有轿车的报告”,而是说“给我看看我们今年销售的所有7类产品的报告”。

然后有人开始销售一种新型轿车,他们不记得7辆==轿车,你得到的是productType = 124 == SEDAN2

当您合并数据并有两种不同类型的3's时,可能会出现技术问题。

我也要提醒你不要用复合钥匙。如果你与产品类型“FG”,然后有人后来决定,轿车是车辆,而不是汽车,你有麻烦。

还有很多其他的问题你可能也会遇到。

  • 当您不总是具有相同的层次结构时,解析代码。FG SED和FG-CPTAMERICADOLL
  • 长度限制FINISHEDGOODS.汽车.轿车.四门-超酷
  • 保留字符FG,CR,八轮

如果某物有天然的钥匙,就用它。只要有轿车就是轿车,游艇,游艇等等。

票数 0
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/412954

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档