当前位置: 首页 > news >正文

SAP存放状态的几个常用表

SAP存放状态的几个常用表

在sap中,包括订单、项目、计划、设备主数据等,存在审批流程的业务单据,这些业务对象都会有状态的属性,用来控制和约束该业务当前的操作。

主要的表

JEST:存放了该对象编号的当前状态

JCDS:存在对象状态修改的历史记录

【系统状态】

以I开头,主数据表是TJ02,描述表TJ02T

表TJ04可以据业务对象号(如WBS是PRN),可以查出所有相关的状态

这个在SAP和点检集成时取通知单的系统状态传值时用到了。

【用户状态】

以E开头,每个用户状态都关联一个用户参数文件,相同的状态编码在不用的参数文件下意义不用, 主数据表为TJ30, 文本表是TJ30T

对于每笔业务,都有一个唯一的对象编号,字段名一般为 OBJNR ,存在在业务表中。

WCAAP 表:存放工作清理管理:应用程序的对象号的表,根据工作票、操作票编号可以查到对应的对象号。

AUFK 表:存放订单对象号的表,根据订单编号可以查找到对应订单的对象号。

PROJ 表:存放项目定义对象号的表,根据项目定义号可以查找到对应项目定义的对象号。

业务单据用户状态的变化存储在JEST表中,每一个业务单据都有唯一的对象号,业务单据用户状态的变化由对象号作为标识记录在JEST表中,通过修改JEST表的数据可以达到改变业务单据用户状态的效果。SAP也提供了三个函数满足开发者用以读取、批量修改、更新业务单据用户状态的需求。

函数读取示例:

FORM frm_get_status USING plan TYPE vimpla-warpl CHANGING status.
  DATA lt_status TYPE TABLE OF jstat.
  SELECT SINGLE objnr
    
FROM mpla
    
INTO @DATA(lv_objnr)
    WHERE warpl @plan.
  CALL FUNCTION 'STATUS_READ'  "获取订单状态
    EXPORTING
      client      sy-mandt
      objnr       
lv_objnr
      only_active 
abap_true
*     IMPORTING
*     OBTYP       =
*     STSMA       =
*     STONR       =
    TABLES
      status      lt_status
*     EXCEPTIONS
*     OBJECT_NOT_FOUND       = 1
*     OTHERS      = 2
    .
  IF sy-subrc <> 0.
* Implement suitable error handling here
  ENDIF.
  IF lt_status IS NOT INITIAL.
    SELECT txt04
      
INTO TABLE @DATA(lt_txt04)
      FROM tj02t
      
FOR ALL ENTRIES IN @lt_status
      
WHERE istat @lt_status-stat
      
AND  spras @sy-langu.
  ENDIF.
  CONCATENATE LINES OF lt_txt04 INTO status SEPARATED BY space.
ENDFORM.

相关文章:

  • MySQL一主一从读写分离
  • linux下can调试工具canutils编译安装
  • C#之反编译之路(二)
  • Docker进阶数据卷目录挂载及在线部署
  • RT-Thread GD32F4xx实现SD卡热插拔检测功能
  • 达摩研究院Paraformer-large模型已支持windows
  • mysql服务多实例运行
  • HCIP-2
  • 访问学者申请需要注意什么?
  • 拼多多根据ID取商品详情原数据 API 实现实时数据获取的完整指南
  • 奥伦德光电耦合器5G通信领域及其相关领域推荐
  • 【动态规划】20子数组系列_环形子数组的最大和_C++(medium)
  • Linux部署WBO在线白板
  • create_metrology_model
  • MYSQL篇--sql优化高频面试题
  • 【个人向】《HTTP图解》阅后小结
  • C++回声服务器_9-epoll边缘触发模式版本服务器
  • Go 语言编译器的 //go: 详解
  • JavaScript 无符号位移运算符 三个大于号 的使用方法
  • Mybatis初体验
  • seaborn 安装成功 + ImportError: DLL load failed: 找不到指定的模块 问题解决
  • spring security oauth2 password授权模式
  • Vue官网教程学习过程中值得记录的一些事情
  • Webpack 4x 之路 ( 四 )
  • webpack入门学习手记(二)
  • 不用申请服务号就可以开发微信支付/支付宝/QQ钱包支付!附:直接可用的代码+demo...
  • 理解在java “”i=i++;”所发生的事情
  • 前端知识点整理(待续)
  • 前嗅ForeSpider采集配置界面介绍
  • 使用Maven插件构建SpringBoot项目,生成Docker镜像push到DockerHub上
  • 提升用户体验的利器——使用Vue-Occupy实现占位效果
  • 学习HTTP相关知识笔记
  • 源码之下无秘密 ── 做最好的 Netty 源码分析教程
  • ​Python 3 新特性:类型注解
  • ​什么是bug?bug的源头在哪里?
  • # Swust 12th acm 邀请赛# [ K ] 三角形判定 [题解]
  • #define用法
  • (android 地图实战开发)3 在地图上显示当前位置和自定义银行位置
  • (DenseNet)Densely Connected Convolutional Networks--Gao Huang
  • (Redis使用系列) Springboot 使用redis实现接口幂等性拦截 十一
  • (翻译)Quartz官方教程——第一课:Quartz入门
  • (附源码)ssm经济信息门户网站 毕业设计 141634
  • (十)c52学习之旅-定时器实验
  • (五)c52学习之旅-静态数码管
  • (循环依赖问题)学习spring的第九天
  • (一)UDP基本编程步骤
  • (原創) 未来三学期想要修的课 (日記)
  • (转)负载均衡,回话保持,cookie
  • ./configure,make,make install的作用
  • .naturalWidth 和naturalHeight属性,
  • .net core webapi 部署iis_一键部署VS插件:让.NET开发者更幸福
  • .net 怎么循环得到数组里的值_关于js数组
  • .NET/C# 使用 ConditionalWeakTable 附加字段(CLR 版本的附加属性,也可用用来当作弱引用字典 WeakDictionary)
  • .NET4.0并行计算技术基础(1)
  • .NET导入Excel数据