转自:http://www.cnblogs.com/mingdashu/p/5566108.html

SAP系统的常见订单状态如下:
·        CRTD (创建):标识生产订单刚刚创建,此时禁止做后续发料和报工确认等操作;
·        PREL (部分下达):当生产订单部分下达时,如仅下达部分工序时出现此状态;
·        REL    (已下达):当生产任务已经明确可下发生产时,将生产订单转换为已下达状态,这个状态后可以继续后续业务操作,如打印订单、发料、报完工等操作;
·       MANC (未检查物料可用性):生产订单未进行零部件物料的可用性检查;
·        SETC (结算规则维护):生产订单已维护结算规则;
·        MSPT (物料短缺):生产订单的零部件物料在进行可用性检查后发现存在短缺;
·        MACM (已承诺的物料):生产订单的零部件物料在进行可用性检查后确认完全可用;
·        GMPS (已过帐的货物移动):生产订单已经进行过发料;
·        PCNF (部分确认):生产订单只进行了部分完工确认,比如说订单需求10个,只进行了5个生产,或者订单有2道工序,只完成了第一道工序;
·        CNF (已确认) :生产订单已全部完工确认;
·        PDLV (部分交货):生产订单只有部分产品入库;
·        DLV (交货) :生产订单已经完全交货入库,这意味着生产订单业务全部完成。CO看到DLV状态或TECO状态时将对订单进行完工结算。
·       VCAL (差异计算) :生产订单进行过差异运算;
·        TECO (技术完成) :在生产过程中,会出现订单未完成但是不再继续生产的情况,这时就可以打上技术完结标识,此时订单对零部件的需求同时删除。在很多项目中,为了简便处理,会对所有完成的订单进行技术完结处理(注:不再继续生产也是一种完成)。CO看到DLV状态或TECO状态时将对订单进行完工结算;
·        RESA (进行结果分析):生产订单进行过结算;
·        CLSD (关闭):生产订单做账务关闭,不允许对订单发生任何过账,通常情况下,财务月末对订单进行结算后,如果确认不会再有追加发料等业务发生,则应该将订单进行关闭;
·        DLID (删除) :对生产订单做删除标识,数据仍然存在数据库中,状态可恢复。如果想彻底删除,需对订单进行归档处理。
 

表为:JEST,字段OBJNR为OR+订单号,STAT即为订单状态。但是STAT的都是I打头的状态,通过CO03看生产订单状态都是如下:

表TJ02:

函数:STATUS_READ

输入参数OBJNR也是OR+订单号,ONLY_ACTIVE即只取出激活的状态。读出来后也需要转换下。STATUS_CHECK是检查生产订单状态,看是否具有某种状态,STATUS_TEXT_EDITSTATUS_READ,但似乎不能读出所有的状态。

在JEST中,一个生产订单可能同时存在多个状态(比如DLV和TECO,TECO可能和其它状态都会同时存在),所以需要注意,单aufk和JEST关联是会存在多条记录,如果要做数量统计等。最后把TECO状态给过滤掉,或统计时不要统计TECO状态的条目,否则统计数据会错误。TJ02T表(系统状态文本)。
包含订单的所有状态和文本说明。
 

1.可以通过函数'STATUS_TEXT_EDIT' 。

  1. CALL FUNCTION 'STATUS_TEXT_EDIT'
  2. EXPORTING
  3. objnr = object_tab-objnr
  4. spras = sy-langu
  5. flg_user_stat = 'X'
  6. IMPORTING
  7. line = object_tab-sttxt
  8. user_line = object_tab-ustxt
  9. EXCEPTIONS
  10. object_not_found = 01.

函数不能直接用工单号码作输入参数,需使用工单的OBJNR栏位,可以通过用工单号码从视图VSAUFK中取得。 TMP_LINE就是返回的工单状态记录,如: TECO DLV PRC MANC RESA RMWB SETC

2.可以通过直接在JEST表中通过状态判定读取。

  1. SELECT SINGLE * FROM aufk WHERE aufnr = readrec-aufnr. ** 检查工单种类
  2.  
  3. * IF aufk-auart(1) <> 'A'.
  4. * CONTINUE.
  5. * ENDIF.
  6.  
  7. ** 判定工单状态
  8. CLEAR: jest.
  9. SELECT SINGLE * FROM jest
  10. WHERE objnr = aufk-objnr
  11. AND ( stat = 'I0045' OR " TECO
  12. stat = 'I0013' OR " DELETE
  13. stat = 'I0076' OR " DELETE FLAG
  14. stat = 'I0046' OR " CLSD
  15. stat = 'I0012 ') "DLV
  16. AND inact = space.
  17. IF sy-subrc = 0.
  18. CONTINUE.
  19. ENDIF.
  20. *
  21. ** 判定工单是否 RELASE
  22. CLEAR: jest.
  23. SELECT SINGLE * FROM jest
  24. WHERE objnr = aufk-objnr
  25. AND ( stat = 'I0002' OR " RELEASE
  26. stat = 'I0042') " Partial RELEASE
  27. AND inact = space.
  28. IF sy-subrc <> 0.
  29. CONTINUE.
  30. ENDIF.
  31.  
  32. ** 检查此笔作业是否需要 ( 必需 RELEASE)
  33. ** 判定作业是否 RELASE
  34. CLEAR: afvc.
  35. SELECT SINGLE * FROM afvc WHERE aufpl = readrec-aufpl
  36. AND aplzl = readrec-aplzl. CLEAR: jest.
  37.  
  38. SELECT SINGLE * FROM jest
  39. WHERE objnr = afvc-objnr
  40. AND stat = 'I0002' . " RELEASE
  41. IF sy-subrc <> 0.
  42. CONTINUE.
  43. ENDIF.

PP-生产订单状态的更多相关文章

  1. PP生产订单成本的计划、控制和结算

    SAP系统成本分析功能关注订单的成本,通过对计划成本和实际成本的比较分析,可以发现成本控制上的问题,以便及时解决问题.1.订单成本计划在基础数据齐全的基础上,系统可以自动滚算生产订单的成本.生产订单计 ...

  2. PP-判断生产订单状态(关闭)

    方法一.工单号通过 resb找到对象号 然后找到状态为I0045利用表JEST与TJ02T . 方法二.函数'STATU_CHECK' 检查工单状态为'I0045' 则为已做技术性关闭. READ T ...

  3. PP生产订单创建、下达、报工、收货、投料

    转自http://blog.sina.com.cn/s/blog_69fb8eb60102vpjd.html SAP 物料订单创建.下达.报工.收货与投料(ABAP代码) (2015-06-03 22 ...

  4. SAP生产订单状态

    SAP系统的常见订单状态如下: ·        CRTD (创建):标识生产订单刚刚创建,此时禁止做后续发料和报工确认等操作: ·        PREL (部分下达):当生产订单部分下达时,如仅下 ...

  5. PP生产订单的BADI增强 WORKORDER_UPDATE

    METHOD if_ex_workorder_update~before_update. *---------------------->增强1 开始* "当生产订单类型为PP01时, ...

  6. SAP PP 生产订单变更记录保存

    *&---------------------------------------------------------------------* *& 包括 ZXCO1U01 *&am ...

  7. PP读取生产订单状态

    转自http://blog.csdn.net/heng0757/article/details/6656089 传递订单号码,可以返回该订单的状态 REPORT  ZCMH2.TABLES : JES ...

  8. S/4HANA生产订单的标准状态和透明工厂原型状态的映射

    事务码CO03查看生产订单的状态: 从下面的界面能看出S/4HANA里生产订单在任意时刻可能存在多个状态: 生产订单的ID和状态ID的关系是1:N,维护在数据库表VSAUFK里: 如何把上述SAP系统 ...

  9. SAP S/4HANA使用ABAP获得生产订单的状态

    在S/4HANA里,我们如何根据一个销售订单的行项目,查看对应的生产订单状态? 双击行项目: 点击Schedule line: 这里就能看到生产订单的ID和状态了. 其中订单的状态存储在表vsaufk ...

随机推荐

  1. 转载:rest-framework框架的基本组件

    知识预览 快速实例 序列化 视图三部曲 认证与权限组件 解析器 分页 回到顶部 快速实例 Quickstart 回到顶部 序列化 创建一个序列化类 简单使用 开发我们的Web API的第一件事是为我们 ...

  2. css选择器(1)——元素选择器、类名和id选择器

    css的主要优点之一就是它能很容易地向所有同类型的元素应用一组样式.当然它是通过选择器来实现这一点的. 基本规则结构: 语法= 选择器 +声明块 1.元素选择器——直接使用html元素名,指向文档元素 ...

  3. 剑指Offer(书):数值的整数次方

    题目:给定一个double类型的浮点数base和int类型的整数exponent.求base的exponent次方. 分析: * 要注意以下几点:* 1.幂为负数时,base不能为0,不然求的时候是对 ...

  4. 【BZOJ 1588】[HNOI2002] 营业额统计(Treap)

    Description 营业额统计 Tiger最近被公司升任为营业部经理,他上任后接受公司交给的第一项任务便是统计并分析公司成立以来的营业情况. Tiger拿出了公司的账本,账本上记录了公司成立以来每 ...

  5. Java 常用集合笔记

    自增数组 ArrayList<Integer>G[]=new ArrayList[N] 详细笔记 相关题目 栈 Stack<Integer> stack=new Stack&l ...

  6. Java学习笔记(1)-(GridBagLayout)网格袋布局

    学习JAVA-布局管理的时候,在书上看到了这么一段话:GridBagLayout的功能非常强大,使用是也比较复杂,考虑到一般的读者很少会使用到这种管理,这里不做介绍.然书本就跳过了,为什么功能强大却很 ...

  7. centos挂载本地镜像作为yum源

    1.安装Centos后默认的Yum源如下 ll /etc/yum.repos.d/   [root@localhost ~]# ll /etc/yum.repos.d/ total 32 -rw-r- ...

  8. JavaScript验证密码强度

    JavaScript的方法: <script type="text/javascript"> window.onload = function () { documen ...

  9. Fiddler抓包工具手机添加代理后连不上网

    fiddler工具给手机设置代理之后,手机竟然上不了网了,尝试了N种解决方法,终于给解决了,因此,记录下来以备不时之需. 1.fiddler给手机添加代理 打开fiddler工具->Tools- ...

  10. python3--算法基础:二维数组转90度

    python3--算法基础:二维数组转90度 [0, 1, 2, 3][0, 1, 2, 3][0, 1, 2, 3][0, 1, 2, 3] 二维数组转90度 [0, 0, 0, 0][1, 1, ...