BAPI_BATCH_CHANGE:修改批次的特征值

news2024/9/20 2:52:23

文章目录

  • BAPI_BATCH_CHANGE:修改批次的特征值
    • 实现步骤
      • 定义变量
      • 获取对象/类等
    • 获取已维护特性值
      • 新特性值更新
    • 注意事项
    • 最终效果
    • 字段介绍

BAPI_BATCH_CHANGE:修改批次的特征值

现在有一个需求是要修改批次里面的某一个特征值,所以需要使用到BAPI_BATCH_CHANGE这个BAPI,除此之外,还有VB_BATCH_2_CLASS_OBJECT函数和BAPI_OBJCL_GETDETAIL。

实现步骤

定义变量

DATA e_objek TYPE cuobn.
DATA e_obtab TYPE tabelle.
DATA e_klart TYPE klassenart.
DATA e_class TYPE klasse_d.
DATA allocvaluesnum   TYPE STANDARD TABLE OF bapi1003_alloc_values_num.   "分配 BAPI - NUMDATETIME 类型的值
DATA allocvalueschar  TYPE STANDARD TABLE OF bapi1003_alloc_values_char.  "分配 BAPI - CHARBOOL 类型的值
DATA allocvaluescurr  TYPE STANDARD TABLE OF bapi1003_alloc_values_curr.  "分配 BAPI - CURR 类型值
DATA return           TYPE STANDARD TABLE OF bapiret2.

DATA: lt_numnew TYPE TABLE OF bapi1003_alloc_values_num,
      lt_charnew TYPE TABLE OF bapi1003_alloc_values_char,
      lt_currnew TYPE TABLE OF bapi1003_alloc_values_curr,
      lt_returnnew TYPE TABLE OF bapiret2.

DATA: ls_char TYPE bapi1003_alloc_values_char,
      ls_return TYPE bapiret2.

获取对象/类等

函数名称:VB_BATCH_2_CLASS_OBJECT

CALL FUNCTION 'VB_BATCH_2_CLASS_OBJECT'
  EXPORTING
    i_matnr       = 'EWM_RAW_01'  "物料
    i_charg       = '2022061302'  "批次
    i_werks       = '1710'    "工厂
 IMPORTING
   e_objek       = e_objek
   e_obtab       = e_obtab
   e_klart       = e_klart
   e_class       = e_class
          .

获取已维护特性值

BAPI名称:BAPI_OBJCL_GETDETAIL

CALL FUNCTION 'BAPI_OBJCL_GETDETAIL'
  EXPORTING
   "objectkey               = e_objek  "如果是物料是40位的,选这个会报错,要选OBJECTKEY_LONG
    objecttable            = e_obtab  "对于分类的对象的数据库表名称
    classnum               = e_class  "分类编号
    classtype              = e_klart  "分类的类型
    "keydate                = sy-datum
*   UNVALUATED_CHARS       = ' '
*   LANGUAGE               = SY-LANGU
    objectkey_long         = e_objek   "关键字字段
* IMPORTING
*   STATUS                 = STATUS
*   STANDARDCLASS          = STANDARDCLASS
  TABLES
    allocvaluesnum         = allocvaluesnum
    allocvalueschar        = allocvalueschar
    allocvaluescurr        = allocvaluescurr
    return                 = return
          .

新特性值更新

BAPI名称:BAPI_BATCH_CHANGE

lt_numnew[] = allocvaluesnum.
lt_charnew[] = allocvalueschar.
lt_currnew[] = allocvaluescurr.
lt_returnnew[] = return.

IF lt_charnew[] IS NOT INITIAL.
  LOOP AT lt_charnew INTO ls_char.
    ls_char-value_char = '1'.         "特征值
    ls_char-value_neutral = '1'.      "特征值
    ls_char-value_char_long = '1'.    "特征值
    ls_char-value_neutral_long = '1'. "特征值
    MODIFY lt_charnew FROM ls_char.
  ENDLOOP.
ELSE.
  ls_char-charact = 'Z_SW_DW_BA'.   "特征名
  ls_char-value_char = '1'.         "特征值
  ls_char-value_neutral = '1'.      "特征值
  ls_char-value_char_long = '1'.    "特征值
  ls_char-value_neutral_long = '1'. "特征值
  APPEND ls_char TO lt_charnew[].
ENDIF.

"--> 新特性值更新
CALL FUNCTION 'BAPI_OBJCL_CHANGE'
  EXPORTING
*   OBJECTKEY                = OBJECTKEY
    objecttable              = e_obtab
    classnum                 = e_class
    classtype                = e_klart
*   STATUS                   = '1'
*   STANDARDCLASS            = STANDARDCLASS
*   CHANGENUMBER             = CHANGENUMBER
*   KEYDATE                  = SY-DATUM
*   NO_DEFAULT_VALUES        = ' '
*   KEEP_SAME_DEFAULTS       = ' '
   objectkey_long           = e_objek
* IMPORTING
*   CLASSIF_STATUS           = CLASSIF_STATUS
  TABLES
    allocvaluesnumnew        = lt_numnew
    allocvaluescharnew       = lt_charnew
    allocvaluescurrnew       = lt_currnew
    return                   = lt_returnnew
          .

LOOP AT return INTO ls_return WHERE type = 'E' OR type = 'A'.
  WRITE: ls_return-message.
  CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
  EXIT.
ENDLOOP.

IF sy-subrc <> 0.
  CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
    EXPORTING
      wait = 'X'.
ENDIF.

注意事项

在这里插入图片描述

最终效果

在这里插入图片描述

字段介绍

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1612151.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

带头循环双向链表专题

1. 双向链表的结构 带头链表⾥的头节点&#xff0c;实际为“哨兵位”&#xff0c;哨兵位节点不存储任何有效元素&#xff0c;只是站在这⾥“放哨 的” “哨兵位”存在的意义&#xff1a; 遍历循环链表避免死循环。 2. 双向链表的实现 2.1双向链表结构 typedef int DataTyp…

适合各大资源网投稿html源码

源码介绍 适合各大资源网投稿html源码&#xff0c;源码由HTMLCSSJS组成&#xff0c;记事本打开源码文件可以进行内容文字之类的修改&#xff0c;双击html文件可以本地运行效果&#xff0c;也可以上传到服务器里面&#xff0c;重定向这个界面 效果预览 源码下载 适合各大资源…

mac电脑mysql下载与安装

mysql下载地址 历史下载地址 MySQL :: Download MySQL Community Server (Archived Versions) mac 版下载 mac版本分为 Intel 处理器 和 M系列处理器。 从 8.0.26开始&#xff0c; mysql 支持M系列处理器。 以前的都只有Intel 处理器的。 Intel 处理器选择 x86_64 M 系列处理…

冯喜运:4.21黄金市场失去正常反应?下周黄金原油解析

【黄金消息面解析 】&#xff1a;周五(4月19日)&#xff0c;伊朗媒体似乎淡化了以色列袭击的影响&#xff0c;表明地缘政治风险降低&#xff0c;导致避险资产需求放缓&#xff0c;金价回吐涨幅。本周现货黄金价格上涨超2%。美国黄金期货收盘上涨0.7%&#xff0c;至2413.8美元。…

深入理解Java IO流:字节流

深入理解Java IO流&#xff1a;字节流 引言 在Java中&#xff0c;IO&#xff08;输入/输出&#xff09;操作是程序与外部世界交互的重要方式。 其中&#xff0c;File类是进行文件操作的基础&#xff0c;而字节流和字符流则是数据传输的两种主要方式。 本文将深入探讨这些概念及…

C# 自动填充文字内容到指定图片

目录 需求 开发运行环境 方法设计 实现代码 AddText方法 图片转Base64 调用示例 小结 需求 在我们的一些发布系统项目应用中&#xff0c;会经常发布一些链接图标&#xff0c;该图标基本上以模板背景为主&#xff0c;并填充项目文字内容。解决方式一般会让美工进行制作…

数字化校园在职校教育中的价值和前景

在当今信息化浪潮中&#xff0c;职校教育正以前所未有的速度迈入智慧校园时代。数字化校园以其强大的功能和广泛的适用性&#xff0c;正在深刻地改变职校的教学模式、管理模式以及学生的学习方式&#xff0c;助力职校教育实现高质量、高效率、个性化的转型&#xff0c;如何利用…

微信小程序小游戏开发,微信开发者工具提示该目录下的项目(wxapp2)已在工具中创建,怎么办

微信小程序小游戏开发&#xff0c;微信开发者工具提示该目录下的项目&#xff08;wxapp2&#xff09;已在工具中创建&#xff0c;怎么办 情况描述&#xff0c; 导入一个项目的时候&#xff0c;导入成了小游戏项目了 想换成小游戏项目&#xff0c;变不了了&#xff0c;提示 “…

Fanuc机器人 Karel 编程学习(五)---简单的Socket通信

Fanuc Karel编写Socket程序和上位机进行通信。 一&#xff1a;环境配置(ROBOGUIDE) 1.1机器人系统变量设置 MENU-------> SYSTEM------> Variables------->$KERAL_ENB 设置为1 1.2 IP地址设定 MENU---->SETUP---->Host Comm 选择 F3【DETAIL】进入IP设置…

【图论 单源最短路】100276. 最短路径中的边

本文时间知识点 单源最短路 图论知识汇总 LeetCode100276. 最短路径中的边 给你一个 n 个节点的无向带权图&#xff0c;节点编号为 0 到 n - 1 。图中总共有 m 条边&#xff0c;用二维数组 edges 表示&#xff0c;其中 edges[i] [ai, bi, wi] 表示节点 ai 和 bi 之间有一条…

Topaz Photo AI 3.0.0 (macOS Universal) - AI 图片修复工具

Topaz Photo AI 3.0.0 (macOS Universal) - AI 图片修复工具 Maximize Image Quality with AI 请访问原文链接&#xff1a;Topaz Photo AI 3.0.0 (macOS Universal) - AI 图片修复工具&#xff0c;查看最新版。原创作品&#xff0c;转载请保留出处。 作者主页&#xff1a;sy…

FK中的一些方法

1. 隔离法与整体法 目标&#xff1a;对一个拉新邀请任务&#xff0c;识别出其中的作弊用户。 欺诈类的数据&#xff0c;黑样本不足&#xff0c;需要自己去找&#xff0c;可按IP、昵称、手机号相似性等。虽然有 会员等级、注册时长、注册地址、成交订单等特征&#xff0c;但分类…

STM32 HAL库F103系列之ADC实验(一)

ADC工作原理&#xff1a; 1、输入通道&#xff1a; 2、转换序列&#xff1a; A/D转换被组织为两组&#xff1a;规则组&#xff08;常规转换组&#xff09;和注入组&#xff08;注入转换组&#xff09; 规则组最多可以有16个转换&#xff0c;注入组最多有4个转换 规则组和注入…

视频素材库哪里最好?8个视频素材免费商用

在视频创作的世界里&#xff0c;寻找那些能够完美匹配你的想法并加以实现的视频素材是一项既令人兴奋又充满挑战的任务。无论你的目标是提升视频质量、增强视觉效果&#xff0c;还是简单地想要让你的作品更加出色&#xff0c;这里有一系列全球精选的视频素材网站&#xff0c;它…

014Node.js时间格式包silly-datetime安装与使用

下载&#xff1a; https://www.npmjs.com/网站上下载silly-datetime 安装 npm i silly-datetime --save var sd require(silly-datetime);console.log(new Date()); //2024-04-18T04:40:38.505Zvar dsd.format(new Date(), YYYY-MM-DD HH:mm);console.log(d); //2024…

【C++类和对象】const成员函数及流插入提取

&#x1f49e;&#x1f49e; 前言 hello hello~ &#xff0c;这里是大耳朵土土垚~&#x1f496;&#x1f496; &#xff0c;欢迎大家点赞&#x1f973;&#x1f973;关注&#x1f4a5;&#x1f4a5;收藏&#x1f339;&#x1f339;&#x1f339; &#x1f4a5;个人主页&#x…

2024第三届中国力触觉技术及应用会议,将于5月24-26日在天津举办,搜维尔科技与您共探触觉传感器与力触觉感知新技术

大会介绍 2024第三届中国力触觉技术及应用会议”将于2024年5月24-26日在中国天津举办。 本届会议以“感知赋能未来&#xff0c;触觉助力世界”为主题&#xff0c;聚焦力触觉传感器与力触觉感知技术&#xff0c;持续关注行业领域热点&#xff0c;探讨技术前沿&#xff0c;融合多…

Jira搭建过程

看到很多小伙伴对jira有兴趣,我们今天就来分享一下jira的搭建吧 首先要明白jira是什么? 看来搭建jira也是我们测试人员需要具备的技能之一了.下面是详细的大家步骤: 1.系统环境准备 Centos 7.5 Mysql 5.6 Java1.8 2.软件安装包 atlassian-jira-software-7.13.0-x64.bin …

数据结构——7.3 树形查找

7.3 树形查找 概念 二叉排序树&#xff08;BST&#xff09; 二叉排序树&#xff08;Binary Sort Tree&#xff0c;BST&#xff09;&#xff0c;又称为二叉查找&#xff08;搜索&#xff09;树&#xff08;Binary Search Tree&#xff09;&#xff0c;是一种特殊的二叉树&am…

OpenHarmony 网络与连接—RPC连接

介绍 本示例使用ohos.rpc 相关接口&#xff0c;实现了一个前台选择商品和数目&#xff0c;后台计算总价的功能&#xff0c;使用rpc进行前台和后台的通信。 效果预览 使用说明&#xff1a; 点击商品种类的空白方框&#xff0c;弹出商品选择列表&#xff0c;选择点击对应的商品…