SAP中的编号范围
术语表 ........................................................................................................................... 16
强晟 email: qiangsheng@ blog: /qiangsheng/
3
SAP 自学笔记系列
编号范围对象
直到财政年度
固定的时间间隔(财政年度)用一个年度值指定给一个编号范围的编号范围间隔。这些间隔 可以在一个编号范围内交迭。这种情况下,财政年度或者直到财政年度要跟分配的编号一起, 做为应用表键的一部分。
上面这段话也就是说,跟财政年度相关的编号范围可以在不同年度中重复取号,但是表键必 须同时包含年度和编号这两个字段。例如,2007 年的某种会计凭证号从 1200000001 开始, 2008 年的这种会计凭证号还是从 1200000001 开始,而不是接着 2007 年末最后一个编号继 续下去。
1
SAP 自学笔记系列
编号范围对象
概览
我们经常需要直接访问一个数据结构中的独立记录,最好的办法是用唯一键来访问,编号范 围就是用来给业务对象的独立数据库记录分配号码的,它是键的重要组成部分。常用的编号 有订单号码、物料编号、凭证号码等。
这些编号除了做为数据记录的唯一标识外,也可以根据编码规则知道一个对象的某些具体信 息。比如从一个物料编号上可以看出它所属的物料类型。
编程参考 编号范围和组维护对话框 ........................................................................................... 11 编号范围和组读取和维护服务 ................................................................................... 12 编号范围对象读取和维护服务 ................................................................................... 14 编号分配和检查 ........................................................................................................... 15 实用程序 ....................................................................................................................... 16
强晟 email: qiangsheng@ blog: /qiangsheng/
4
SAP 自学笔记系列
编号范围对象
带组,依赖于子对象 (7)每组一个编号范围,内部或外部给号 (8)每组两个编号范围,内部和外部给号 所有上述八种对象类型都可以根据直到财政年度来进一步划分。 对象的定义控制了编号范围维护对话框,如果指定了一个组表,用户就可以在标准维护对话 框里完成把组表的要素值分配给编号范围。 下列插图提供了对象类型的概览。 八种编号范围对象类型
对象
无子对象
带子对象
无组 第一类
带组
无组 第四类
带组
一个范围 第二类
两个范围 第三类
组与子对 象无关
组与子对 象相关
一个范围 第五类
ห้องสมุดไป่ตู้
两个范围 第六类
一个范围 第七类
两个范围 第八类
下面的插图则用两个例子演示了上节中描述的概念的关系。
编号范围对象 第四类
财务凭证
到财政年度 1980 1990 2000 1...50 1...50 51...100
物料主数据
物料主数据示例表
... 00100 FIN CLOCK ... ... 00101 FIN TOAST ... ... 00400 RAW IRON ... ... 00200 SEMI TRAS ...
要素 物料类型
组1 成品 半成品
组2 未加工物料
...
编号范围对象
内部 100 ... 199 编号范围 02
例如:
创建新的物料主数据时,物料类型决定了从哪个编号范围间隔中取号,用来完成物 料主键的号码。这里的业务对象就是物料主数据,组表是物料类型表,要素字段物 料类型做为键字段。针对各种元素值(不同物料类型)的编号范围编号被保存在这
强晟 email: qiangsheng@ blog: /qiangsheng/
例子:分组物料类型
组
物料类型
Group 1
成品
Group 1
半成品
Group 2
未加工物料
内部编号范围 01 01 03
外部编号范围 02 02 04
物料类型成品和半成品组成一个组,而物料类型未加工物料组成另一个组。
强晟 email: qiangsheng@ blog: /qiangsheng/
根据对以上问题的回答,并且参考“八种编号范围类型”插图,就可以确定唯一的类型。
强晟 email: qiangsheng@ blog: /qiangsheng/
6
SAP 自学笔记系列
编号范围对象
维护编号范围对象
1、 调用编号范围事务(SNRO 或 SNUM,菜单路径:工具→ABAP 工作台→开发→其他工 具→编号范围)。
2
SAP 自学笔记系列
编号范围对象
个表里。物料类型就是半完整或完整的产品。 一个编号范围包含了一个定义了字符集合的编号范围间隔。编号范围间隔由数字或字母-数 字字符(只能用于外部编号范围)组成,并且由 From Number 和 To Number 两个字段限定 范围。无论是一个间隔还是由财务年度区分的多个间隔,都分配给一个编号范围。 编号范围编号为系统确定了一个编号范围,并且使系统内部访问编号范围间隔成为可能。这 个号码一般在系统内部指定。如果不需要分组或者想为自行分组编写组表维护程序,就必须 在间隔维护的时候编号范围编号。 如果在编号分配时区分了财政年度,就可以有多个间隔。每个独立间隔指定了各个财政年度。 编号范围可以是外部的(用户手工分配的号码)也可以是内部的(系统自动分配的号码)。 一个业务对象可以只有一个编号范围(内部的或外部的),也可以同时有两个范围(内部的 和外部的)。 业务对象中的各种区别带来了八种编号范围对象类型(见第 4 页)。
使用方法 过程 ............................................................................................................................. 6 确定编号范围对象类型 ............................................................................................. 6 维护编号范围对象 ..................................................................................................... 7 函数模块调用 ............................................................................................................. 9
SAP 中的编号范围
作者:强晟 Email:qiangsheng@
本文档介绍了 SAP 中的编号范围的概念以及如何在自己编写的 ABAP 程序中使用自动编号 范围。 本文的结构如下:
概览 ................................................................................................................................. 1 概念 ................................................................................................................................. 2 编号范围对象的类型 ..................................................................................................... 4
R/3(或 ECC)的编号范围管理还监视编号状态,因此已经发放的编号就不会再重复发放。 在用户开发过程中会需要维护编号范围对象、编号范围和编号分配等信息,而完成这些维护 任务的会话、数据库访问和其他活动都可以用 SAP 函数模块来执行。
概念
一个业务对象——如果它是键的一部分,并且通过编号范围生成——就可以定义成 SAP 系 统中的一个编号范围对象。如果这个业务对象包含子对象,例如公司代码或者控制范围,这 种区别也能在编号范围中做出。可以在定义编号范围对象时为子对象指定一个字段(例如: 把公司代码做为会计凭证的子对象)。
外部 200 ... 299 编号范围 03
内部 300 ... 399 编号范围 04
外部 400 ... 499 编号范围 05
过程
如果想在应用程序中使用 SAP 编号范围功能,按照下面顺序:
1、确定新的编号范围对象应该具有何种类型,并且创建它的定义。 2、为新对象维护编号范围间隔,或者让终端用户维护。 3、在应用程序中使用编号分配和检查(见第页)功能模块。