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

SAP 凭证项目文本 增强 demo2

SAP 凭证项目文本 增强 demo2
增强点 AC_DOCUMENT
METHOD if_ex_ac_document~change_initial.
DATA: ls_item TYPE accit,
ls_exitem TYPE accit_sub,
lv_sgtxt TYPE bseg-sgtxt,
lv_bktxt TYPE bkpf-bktxt,
lv_zuonr TYPE bseg-zuonr,
lv_blart TYPE bkpf-blart,
lv_zprono TYPE vbap-zprono,
lv_kunnr TYPE bseg-kunnr,
lv_name TYPE but000-bu_sort1,
lv_lifnr TYPE char6,
lv_ebeln TYPE char12,
lv_aubel TYPE bseg-vbeln.

CLEAR:ls_item,lv_sgtxt,lv_bktxt,lv_blart,lv_kunnr,lv_zuonr.
lv_bktxt = im_document-header-bktxt.
LOOP AT im_document-item INTO ls_item.lv_blart = ls_item-blart.IF lv_blart = 'Z6'.IF im_document-header-bktxt IS INITIAL.lv_zuonr = ls_item-zuonr.ENDIF.ENDIF.MOVE-CORRESPONDING ls_item TO ls_exitem.IF im_document-header-tcode = 'MIR7' OR im_document-header-tcode = 'MIRO' OR im_document-header-tcode = 'MR8M'.IF ls_item-sgtxt IS NOT INITIAL.lv_sgtxt = ls_item-sgtxt.ELSE.SELECT SINGLE vbund INTO lv_lifnr FROM bp001 WHERE  partner = ls_item-lifnr .IF lv_lifnr IS NOT INITIAL AND lv_sgtxt IS  INITIAL.CLEAR:lv_ebeln,lv_name.SELECT SINGLE bu_sort1 INTO lv_name FROM but000 WHERE partner =  ls_item-lifnr.READ TABLE im_document-item INTO DATA(ls_item2) WITH KEY ktosl = 'WRX' .IF sy-subrc = 0 .lv_ebeln = ls_item2-ebeln.ENDIF.CONCATENATE lv_name lv_ebeln INTO lv_sgtxt SEPARATED BY ''.lv_bktxt = lv_sgtxt.ENDIF.ls_exitem-sgtxt = lv_sgtxt.ENDIF.ELSEIF im_document-header-tcode = 'VF02' OR im_document-header-tcode = 'VF01' OR im_document-header-tcode = 'VFX3' OR im_document-header-tcode = 'VF04'.IF ls_item-kunnr IS NOT INITIAL.lv_kunnr = ls_item-kunnr.ENDIF.IF lv_kunnr IS INITIAL.lv_kunnr = ls_item-kunag.ENDIF.IF ls_item-sgtxt IS INITIAL.CLEAR:lv_zprono,lv_name,lv_aubel.IF ls_item-vbel2 IS NOT INITIAL.SELECT SINGLE zprono INTO lv_zprono FROM vbap WHERE vbeln = ls_item-vbel2 AND posnr = ls_item-posn2.SELECT SINGLE bu_sort1 INTO lv_name FROM but000 WHERE partner =  lv_kunnr.CONCATENATE lv_name lv_zprono ls_item-vbel2 '确认收入' INTO ls_exitem-sgtxt SEPARATED BY ''.ELSEIF ls_item-aubel IS NOT INITIAL.SELECT SINGLE zprono INTO lv_zprono FROM vbap WHERE vbeln = ls_item-aubel AND posnr = ls_item-aupos.SELECT SINGLE bu_sort1 INTO lv_name FROM but000 WHERE partner =  lv_kunnr.CONCATENATE lv_name lv_zprono ls_item-aubel '确认收入' INTO ls_exitem-sgtxt SEPARATED BY ''.ELSE.lv_aubel = ls_item-ebeln.SELECT SINGLE bu_sort1 INTO lv_name FROM but000 WHERE partner =  lv_kunnr.CONCATENATE lv_name lv_zprono lv_aubel '确认收入' INTO ls_exitem-sgtxt SEPARATED BY ''.ENDIF.ELSE.ls_exitem-sgtxt =  ls_item-sgtxt.ENDIF.ELSEIF im_document-header-tcode = 'VL02N' OR im_document-header-tcode = 'VL09'.IF ls_item-sgtxt IS INITIAL.CLEAR:lv_zprono,lv_name.IF ls_item-vbel2 IS NOT INITIAL.SELECT SINGLE zprono INTO lv_zprono FROM vbap WHERE vbeln = ls_item-vbel2 AND posnr = ls_item-posn2.SELECT SINGLE bu_sort1 INTO lv_name FROM but000 WHERE partner =  ls_item-kunnr.
  •        CONCATENATE lv_name lv_zprono ls_item-vbel2 '结转成本' INTO ls_exitem-sgtxt SEPARATED BY ''.SELECT SINGLE auart INTO @DATA(lv_auart) FROM vbak WHERE vbeln EQ @ls_item-vbel2.IF sy-subrc = 0.IF lv_auart = 'ZRE2' OR lv_auart = 'ZCCR'.IF im_document-header-tcode = 'VL02N'.CONCATENATE lv_name lv_zprono ls_item-vbel2 '退货冲销成本' INTO ls_exitem-sgtxt SEPARATED BY ''.ELSE.CONCATENATE lv_name lv_zprono ls_item-vbel2 '退货冲销成本-冲销' INTO ls_exitem-sgtxt SEPARATED BY ''.ENDIF.ELSEIF lv_auart = 'ZFP'.IF im_document-header-tcode = 'VL02N'.CONCATENATE lv_name lv_zprono ls_item-vbel2 '结转费用' INTO ls_exitem-sgtxt SEPARATED BY ''.ELSE.CONCATENATE lv_name lv_zprono ls_item-vbel2 '结转费用-冲销' INTO ls_exitem-sgtxt SEPARATED BY ''.ENDIF.ELSE.IF im_document-header-tcode = 'VL02N'.CONCATENATE lv_name lv_zprono ls_item-vbel2 '结转成本' INTO ls_exitem-sgtxt SEPARATED BY ''.ELSE.CONCATENATE lv_name lv_zprono ls_item-vbel2 '结转成本-冲销' INTO ls_exitem-sgtxt SEPARATED BY ''.ENDIF.ENDIF.ELSE.IF im_document-header-tcode = 'VL02N'.CONCATENATE lv_name lv_zprono ls_item-vbel2 '结转成本' INTO ls_exitem-sgtxt SEPARATED BY ''.ELSE.CONCATENATE lv_name lv_zprono ls_item-vbel2 '结转成本-冲销' INTO ls_exitem-sgtxt SEPARATED BY ''.ENDIF.ENDIF.ENDIF.ELSE.ls_exitem-sgtxt =  ls_item-sgtxt.ENDIF.
    ENDIF.
    "  暂估科目 不带成本中心和订单
    IF ls_item-hkont = '2202010300'.ls_exitem-kostl = ''.ls_exitem-aufnr = '' .
    ENDIF.
    APPEND ls_exitem TO ex_document-item.
    
    ENDLOOP.
    IF lv_blart = ‘Z6’ AND ( im_document-header-tcode = ‘KO88’ OR im_document-header-tcode = ‘KO8G’ ). " 拆解工单抬头文本
    CONCATENATE ‘结算’ lv_zuonr ‘拆解费用’ INTO lv_bktxt.
    ex_document-header-bktxt = lv_bktxt.
    ELSEIF im_document-header-tcode = ‘VF02’ OR im_document-header-tcode = ‘VF01’ OR im_document-header-tcode = ‘VFX3’.
    IF im_document-header-bktxt IS INITIAL.
    ex_document-header-bktxt = ls_exitem-sgtxt.
    ENDIF.
    ELSEIF im_document-header-tcode = ‘VL02N’ OR im_document-header-tcode = ‘VL09’.
    ex_document-header-bktxt = ls_exitem-sgtxt.
    ELSE.
    ex_document-header-bktxt = lv_bktxt.
    ENDIF.
    ENDMETHOD.

相关文章:

SAP 凭证项目文本 增强 demo2

SAP 凭证项目文本 增强 demo2 增强点 AC_DOCUMENT METHOD if_ex_ac_document~change_initial. DATA: ls_item TYPE accit, ls_exitem TYPE accit_sub, lv_sgtxt TYPE bseg-sgtxt, lv_bktxt TYPE bkpf-bktxt, lv_zuonr TYPE bseg-zuonr, lv_blart TYPE bkpf-blart, lv_zprono TY…...

一套基于C#语言开发的LIMS实验室信息管理系统源码

实验室信息管理系统(LIMS)是指帮助实验室组织和管理实验数据的计算机软件系统,它将实验室操作有机地组织在一起,以满足实验室工作流程的所有要求。它能以不同的方式支持实验室的工作,从简单的过程(如样品采集和入库)到复杂的流程(…...

kubesphere部署rocketmq5.x,并对外暴露端口

kubesphere是青云开源的k8s管理工具,用户可以方便的通过页面进行k8s部署的部署,rocketmq则是阿里开源的一款mq平台,现在版本为5.1.3版本,较比4.x版本的rocketmq有比较大的调整:比如客户端的轻量化(统一通过…...

5.8 汇编语言:汇编高效除法运算

通常情况下计算除法会使用div/idiv这两条指令,该指令分别用于计算无符号和有符号除法运算,但除法运算所需要耗费的时间非常多,大概需要比乘法运算多消耗10倍的CPU时钟,在Debug模式下,除法运算不会被优化,但…...

如何通过python来给手机发送一条短信?

要通过Python发送短信到手机,您可以使用不同的短信服务提供商的API。以下是一个使用Twilio和Sinch服务提供商的示例,您可以根据自己的选择来决定使用哪个。 使用Twilio发送短信: 首先,注册一个Twilio账户并获取您的账户SID、认证令牌和Twilio号码。 安装 twilio 包,如果您…...

无涯教程-PHP - IntlChar类

在PHP7中&#xff0c;添加了一个新的 IntlChar 类&#xff0c;该类试图公开其他ICU函数。此类定义了许多静态方法和常量&#xff0c;可用于操作unicode字符。使用此类之前&#xff0c;您需要先安装 Intl 扩展名。 <?phpprintf(%x, IntlChar::CODEPOINT_MAX);print (IntlCh…...

【Linux操作系统】Linux系统编程中信号捕捉的实现

在Linux系统编程中&#xff0c;信号是一种重要的机制&#xff0c;用于实现进程间通信和控制。当某个事件发生时&#xff0c;如用户按下CtrlC键&#xff0c;操作系统会向进程发送一个信号&#xff0c;进程可以捕获并相应地处理该信号。本篇博客将介绍信号的分类、捕获与处理方式…...

【PHP】基础语法变量常量

文章目录 PHP简介前置知识了解静态网站的特点动态网站特点 PHP基础语法代码标记注释语句分隔(结束)符变量变量的基本概念变量的使用变量命名规则预定义变量可变变量变量传值内存分区 常量基本概念常量定义形式命名规则使用形式系统常量魔术常量 PHP简介 PHP定义&#xff1a;一…...

Failed to resolve: com.github.mcxtzhang:SwipeDelMenuLayout:V1.3.0

在allprojects下的repositories闭包里面添加jcenter()和maven {url https://jitpack.io}&#xff0c;具体可以看你的第三方框架需要添加什么仓库&#xff0c;大多数都只需要上面两个。 我的build.gradle&#xff08;Project&#xff09;完整内容如下&#xff1a; buildscript …...

常用 Python IDE 汇总(非常详细)从零基础入门到精通,看完这一篇就够了

写 Python 代码最好的方式莫过于使用集成开发环境&#xff08;IDE&#xff09;了。它们不仅能使你的工作更加简单、更具逻辑性&#xff0c;还能够提升编程体验和效率。 每个人都知道这一点。而问题在于&#xff0c;如何从众多选项中选择最好的 Python 开发环境。初级开发者往往…...

【Hive】HQL Map 『CRUD | 相关函数』

文章目录 1. Map 增删改查1.1 声明 Map 数据类型1.2 增1.3 删1.4 改1.5 查 2. Map 相关函数2.1 单个Map 3. Map 与 String3.1 Map 转 string3.2 string 转 Map 1. Map 增删改查 1.1 声明 Map 数据类型 语法&#xff1a;map<基本数据类型, 基本数据类型> 注意是<>…...

ELF修复基本工作原理

ELF修复基本工作原理 ELF(Executable and Linkable Format)是一种常见的可执行文件和可链接文件的格式,广泛用于Linux和UNIX系统中。ELF修复是指对ELF文件进行修改或修复,以确保其正确加载和执行。 ELF修复的基本工作原理如下: 识别ELF文件:首先,需要识别和验证目标文…...

matlab实现输出的几种方式(disp函数、fprintf函数、print函数)

matlab实现输出的几种方式&#xff08;disp函数、fprintf函数、print函数&#xff09; 输出为文本、文件、打印 1、disp函数 显示变量的值&#xff0c;如果变量包含空数组&#xff0c;则会返回 disp&#xff0c;但不显示任何内容。 矩阵 A [1 0]; disp(A)结果 字符串 S …...

C/C++数据库编程

文章目录 0. Mysql安装与开发环境配置1. win10 Navicat 连接虚拟机的MySQL需要关闭防火墙2. 由于找不到libmysql.dIl, 无法继续执行代码。重新安装程序可能会解决此问题。3. 测试连接数据库&#xff0c;并插入数据4. C封装MySQL增删改查操作 0. Mysql安装与开发环境配置 MySQL…...

通过python在unity里调用C#接口

log: 背景 最近在做虚拟人底层驱动sdk测试&#xff0c;因为后端使用的是C#,我个人更倾向于python编程辅助测试工作&#xff0c;测试sdk需要通过开发提供的接口方法文档&#xff0c;通过传测试场景参数调用方法进行单元测试 技术&工具 项目语言 C# 项目工具 unity 测试…...

C++笔记之左值与右值、右值引用

C笔记之左值与右值、右值引用 code review! 文章目录 C笔记之左值与右值、右值引用1.左值与右值2.右值引用——关于int&& r 10;3.右值引用——对比int&& r 10;和int& r 10;4.右值引用&#xff08;rvalue reference&#xff09;的概念 1.左值与右值 2.…...

JS逆向-某招聘平台token

前言 本文是该专栏的第56篇,后面会持续分享python爬虫干货知识,记得关注。 通常情况下,JS调试相对方便,只需要chrome或者一些抓包工具,扩展插件,就可以顺利完成逆向分析。目前加密参数的常用逆向方式大致可分为以下几种,一种是根据源码的生成逻辑还原加密代码,一种是补…...

LLMs高效的多 GPU 计算策略Efficient multi-GPU compute strategies

很有可能在某个时候&#xff0c;您需要将模型训练工作扩展到超过一个GPU。在上一个视频中&#xff0c;我强调了当您的模型变得太大而无法适应单个GPU时&#xff0c;您需要使用多GPU计算策略。但即使您的模型确实适合单个GPU&#xff0c;使用多个GPU加速训练也有好处。即使您正在…...

jvm-类加载子系统

1.内存结构概述 类加载子系统负责从文件系统或网络中加载class文件&#xff0c;class文件在文件开头有特定的文件标识 ClassLoader只负责class文件的加载&#xff0c;至于它是否运行&#xff0c;则由Execution Engine决定 加载的类信息存放于一块称为方法区的内存空间&#xff…...

【实例分割】(一)Mask R-CNN详细介绍带python代码

目录 1.&#x1f340;&#x1f340;实例分割定义 2.&#x1f340;&#x1f340;Mask R-CNN 3.&#x1f340;&#x1f340;经典的实例分割算法 4.&#x1f340;&#x1f340;Mask R-CNN python代码 整理不易&#xff0c;欢迎一键三连&#xff01;&#xff01;&#xff01;…...

多云管理“拦路虎”:深入解析网络互联、身份同步与成本可视化的技术复杂度​

一、引言&#xff1a;多云环境的技术复杂性本质​​ 企业采用多云策略已从技术选型升维至生存刚需。当业务系统分散部署在多个云平台时&#xff0c;​​基础设施的技术债呈现指数级积累​​。网络连接、身份认证、成本管理这三大核心挑战相互嵌套&#xff1a;跨云网络构建数据…...

JavaSec-RCE

简介 RCE(Remote Code Execution)&#xff0c;可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景&#xff1a;Groovy代码注入 Groovy是一种基于JVM的动态语言&#xff0c;语法简洁&#xff0c;支持闭包、动态类型和Java互操作性&#xff0c…...

深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录

ASP.NET Core 是一个跨平台的开源框架&#xff0c;用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录&#xff0c;以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...

树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频

使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源&#xff1a; http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...

R语言AI模型部署方案:精准离线运行详解

R语言AI模型部署方案:精准离线运行详解 一、项目概述 本文将构建一个完整的R语言AI部署解决方案,实现鸢尾花分类模型的训练、保存、离线部署和预测功能。核心特点: 100%离线运行能力自包含环境依赖生产级错误处理跨平台兼容性模型版本管理# 文件结构说明 Iris_AI_Deployme…...

【力扣数据库知识手册笔记】索引

索引 索引的优缺点 优点1. 通过创建唯一性索引&#xff0c;可以保证数据库表中每一行数据的唯一性。2. 可以加快数据的检索速度&#xff08;创建索引的主要原因&#xff09;。3. 可以加速表和表之间的连接&#xff0c;实现数据的参考完整性。4. 可以在查询过程中&#xff0c;…...

DockerHub与私有镜像仓库在容器化中的应用与管理

哈喽&#xff0c;大家好&#xff0c;我是左手python&#xff01; Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库&#xff0c;用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...

Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具

文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...

oracle与MySQL数据库之间数据同步的技术要点

Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异&#xff0c;它们的数据同步要求既要保持数据的准确性和一致性&#xff0c;又要处理好性能问题。以下是一些主要的技术要点&#xff1a; 数据结构差异 数据类型差异&#xff…...

浅谈不同二分算法的查找情况

二分算法原理比较简单&#xff0c;但是实际的算法模板却有很多&#xff0c;这一切都源于二分查找问题中的复杂情况和二分算法的边界处理&#xff0c;以下是博主对一些二分算法查找的情况分析。 需要说明的是&#xff0c;以下二分算法都是基于有序序列为升序有序的情况&#xf…...