SAP-FI模块 处理自动生成会计凭证增强











ENHANCEMENT 2 ZEHENC_SAPMF05A. "active version
* FI 20221215:固定资产业务过渡科目摘要增强功能
WAIT UP TO 1 SECONDS.READ TABLE xbseg WITH KEY hkont = '1601990001'.
IF sy-subrc = 0.DATA: lt_bkdf TYPE TABLE OF bkdf,lt_bkpf TYPE TABLE OF bkpf,ls_bkpf TYPE bkpf,lt_bsec TYPE TABLE OF bsec,lt_bsed TYPE TABLE OF bsed,ls_bseg TYPE bseg,lt_bseg TYPE TABLE OF bseg,lt_bset TYPE TABLE OF bset.DATA: ls_belnr_second TYPE belnr_d.DATA: ls_xbkpf TYPE bkpf.CLEAR: ls_bkpf,lt_bkpf[],lt_bseg[],ls_xbkpf.DATA: ls_bkpf_judge TYPE bkpf.CLEAR: ls_bkpf_judge.ls_belnr_second = bkpf-belnr + 1.CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'EXPORTINGinput = ls_belnr_secondIMPORTINGoutput = ls_belnr_second.SELECT SINGLE *INTO CORRESPONDING FIELDS OF ls_bkpf_judgeFROM bkpfWHERE bukrs eq bkpf-bukrsAND gjahr eq bkpf-gjahrAND belnr EQ ls_belnr_second.if ls_bkpf_judge IS NOT INITIAL.ls_bkpf-mandt = sy-mandt.ls_bkpf-bukrs = bkpf-bukrs.ls_bkpf-gjahr = bkpf-gjahr.ls_bkpf-belnr = ls_belnr_second.APPEND ls_bkpf TO lt_bkpf.LOOP AT xbseg.CLEAR: ls_bseg.ls_bseg-mandt = sy-mandt.ls_bseg-bukrs = xbseg-bukrs.ls_bseg-gjahr = xbseg-gjahr.ls_bseg-buzei = xbseg-buzei.ls_bseg-belnr = ls_belnr_second.CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'EXPORTINGinput = xbseg-belnrIMPORTINGoutput = xbseg-belnr.ls_bseg-sgtxt = xbseg-sgtxt && '-原凭证(' && xbseg-belnr && ')'.APPEND ls_bseg TO lt_bseg.ENDLOOP.CALL FUNCTION 'CHANGE_DOCUMENT'TABLESt_bkdf = lt_bkdft_bkpf = lt_bkpft_bsec = lt_bsect_bsed = lt_bsedt_bseg = lt_bsegt_bset = lt_bset.IF sy-subrc EQ 0.COMMIT WORK AND WAIT.ENDIF.ENDIF.
ENDIF.
* FI 20221215
ENDENHANCEMENT.

ENHANCEMENT 1 Z_MIGO_CREATE_ACC_DOCUMENT. "active version" FI 20221230:MIGO自动生成会计凭证增强 LIANG ED1K924636DATA: lt_bkdf TYPE TABLE OF bkdf,lt_bsec TYPE TABLE OF bsec,lt_bsed TYPE TABLE OF bsed,lt_bset TYPE TABLE OF bset.DATA: ls_BKPF1 TYPE BKPF,ls_BKPF2 TYPE BKPF,lt_BKPF TYPE TABLE OF BKPF.DATA: LT_BKPF_RESULT TYPE TABLE OF BKPF.DATA: ls_bseg TYPE bseg,lt_bseg TYPE TABLE OF bseg.DATA: ls_bseg_temp TYPE bseg.DATA: ls_AWKEY TYPE bkpf-AWKEY.CLEAR: lt_BKPF[],ls_BKPF1,ls_BKPF2,ls_AWKEY,ls_bseg_temp,ls_bseg,lt_bseg[],LT_BKPF_RESULT[].ls_AWKEY = ls_emkpf-MBLNR && ls_emkpf-MJAHR.SELECT *INTO CORRESPONDING FIELDS OF TABLE lt_BKPFFROM BKPFWHERE AWKEY EQ ls_AWKEY.SORT lt_BKPF BY BELNR ASCENDING.IF sy-subrc EQ 0.READ TABLE lt_BKPF INTO ls_BKPF1 INDEX 1.READ TABLE lt_BKPF INTO ls_BKPF2 INDEX 2.APPEND ls_BKPF2 TO LT_BKPF_RESULT.SELECT *INTO CORRESPONDING FIELDS OF TABLE lt_bsegFROM bsegWHERE BUKRS EQ ls_BKPF2-bukrsAND BELNR EQ ls_BKPF2-BELNRAND GJAHR EQ ls_BKPF2-GJAHR.LOOP AT lt_bseg INTO ls_bseg.IF ls_bseg-hkont EQ '1601990001'.CLEAR: ls_bseg_temp." 取第一个行项目的行项目文本SELECT SINGLE *INTO CORRESPONDING FIELDS OF ls_bseg_tempFROM bsegWHERE BUKRS EQ ls_bseg-bukrsAND BELNR EQ ls_BKPF1-BELNRAND GJAHR EQ ls_bseg-GJAHRAND BUZEI EQ ls_bseg-BUZEI.CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'EXPORTINGinput = ls_bseg_temp-belnrIMPORTINGoutput = ls_bseg_temp-belnr.ls_bseg-sgtxt = ls_bseg_temp-sgtxt && '-原凭证(' && ls_bseg_temp-belnr && ')'.MODIFY lt_bseg FROM ls_bseg.ENDIF.ENDLOOP.CALL FUNCTION 'CHANGE_DOCUMENT'TABLESt_bkdf = lt_bkdft_bkpf = LT_BKPF_RESULTt_bsec = lt_bsect_bsed = lt_bsedt_bseg = lt_bsegt_bset = lt_bset.ENDIF." FI 20221230 LIANG ED1K924636
ENDENHANCEMENT.



* 反记账替代 Modify By LIANG ED1K924602 20221226exits-name = 'U305'.exits-param = c_exit_param_field.exits-title = TEXT-305. "APPEND exits.
* FI 20221226 主营业务收入等科目自动反记账功能
*
FORM u305 USING bseg-xnegp TYPE bseg-xnegp.DATA: ls_zfi_fjz1 TYPE zfi_fjz.DATA: ls_zfi_fjz2 TYPE zfi_fjz.CLEAR: ls_zfi_fjz1,ls_zfi_fjz2.SELECT SINGLE *INTO CORRESPONDING FIELDS OF ls_zfi_fjz1FROM zfi_fjzWHERE hkontf <= bseg-hkontAND hkontt >= bseg-hkont.IF sy-subrc EQ 0.IF bseg-shkzg = ls_zfi_fjz1-shkzg.bseg-xnegp = ''.ELSE.bseg-xnegp = 'X'.ENDIF.ELSE.SELECT SINGLE *INTO CORRESPONDING FIELDS OF ls_zfi_fjz2FROM zfi_fjzWHERE hkontf = bseg-hkont.IF sy-subrc EQ 0.IF bseg-shkzg = ls_zfi_fjz2-shkzg.bseg-xnegp = ''.ELSE.bseg-xnegp = 'X'.ENDIF.ENDIF.ENDIF.
ENDFORM.
* FI 20221226
相关文章:
SAP-FI模块 处理自动生成会计凭证增强
ENHANCEMENT 2 ZEHENC_SAPMF05A. "active version * FI 20221215:固定资产业务过渡科目摘要增强功能 WAIT UP TO 1 SECONDS.READ TABLE xbseg WITH KEY hkont 1601990001. IF sy-subrc 0.DATA: lt_bkdf TYPE TABLE OF bkdf,lt_bkpf TYPE TABLE OF bkpf,…...
Shell脚本-bin/bash: 解释器错误: 没有那个文件或目录-完整路径执行-“/”引发的脑裂
引起该不适的一种可能以及解决方案,网上较多,比如: 但按以上方式操作,并经过查看,发现仍然未能解决问题。 因为两种方式执行,有一种能成功,有一种不能,刚开始未怀疑是文件问题&…...
React MUI(版本v5.15.2)详细使用
使用React MUI(版本v5.15.2)的详细示例。请注意,由于版本可能会有所不同,因此建议您查阅官方文档以获取最新的信息和示例。但是,我将根据我的知识库为您提供一些基本示例。 首先,确保您已经按照之前的说明…...
用CSS中的动画效果做一个转动的表
<!DOCTYPE html> <html lang"en"><head><meta charset"utf-8"><title></title><style>*{margin:0;padding:0;} /*制作表的样式*/.clock{width: 500px;height: 500px;margin:0 auto;margin-top:100px;border-rad…...
【linux】Linux管道的原理与使用场景
Linux管道是Linux命令行界面中一种强大的工具,它允许用户将多个命令链接起来,使得一个命令的输出可以作为另一个命令的输入。这种机制使得我们可以创建复杂的命令链,并在处理数据时提供了极大的灵活性。在本文中,我们将详细介绍Li…...
nvidia jetson xavier nx developer kit version emmc版重装系统
一、将开发板上的外置硬盘取下来格式化 二、在双系统ubuntu安装SDK Manager(.deb文件) SDK Manager | NVIDIA Developer sudo apt install ./sdkmanager_1.9.2-10884_amd64.deb 报错直接百度错误,执行相应命令即可 三、 运行SDK Manager …...
命令模式-实例使用
未使用命令模式的UML 使用命令模式后的UML public abstract class Command {public abstract void execute(); }public class Invoker {private Command command;/*** 为功能键注入命令* param command*/public void setCommand(Command command) {this.command command;}/***…...
将网页变身移动应用:网址封装成App的完全指南
什么是网址封装? 网址封装是一个将你的网站或网页直接嵌入到一个原生应用容器中的过程。用户可以通过下载你的App来访问网站,而无需通过浏览器。这种方式不仅提升了用户体验,还可利用移动设备的功能,如推送通知和硬件集成。 小猪…...
探讨kernel32.dll文件是什么,有效解决kernel32.dll丢失
在使用电脑时,你是否遇到过kernel32.dll丢失的困扰?面对这个问题,我们需要及时去解决kernel32.dll丢失的问题。接下来,我们将深入探讨kernel32.dll的功能以及其在操作系统和应用程序中的具体应用领域,相信这将对你解决…...
LOAM: Lidar Odometry and Mapping in Real-time 论文阅读
论文链接 LOAM: Lidar Odometry and Mapping in Real-time 0. Abstract 提出了一种使用二维激光雷达在6自由度运动中的距离测量进行即时测距和建图的方法 距离测量是在不同的时间接收到的,并且运动估计中的误差可能导致生成的点云的错误配准 本文的方法在不需要高…...
如何使用Docker将.Net6项目部署到Linux服务器(三)
目录 四 安装nginx 4.1 官网下载nginx 4.2 下载解压安装nginx 4.3 进行configure 4.4 执行make 4.5 查看nginx是否安装成功 4.6 nginx的一些常用命令 4.6.1 启动nginx 4.6.2 通过命令查看nginx是否启动成功 4.6.3 关闭Nginx 4.6.5 重启Nginx 4.6.6 杀掉所有Nginx进程 4.…...
《Spring Cloud学习笔记:分布式事务Seata》
解决分布式事务的方案有很多,但实现起来都比较复杂,因此我们一般会使用开源的框架来解决分布式事务问题。 在众多的开源分布式事务框架中,功能最完善、使用最多的就是阿里巴巴在2019年开源的Seata了。 1. 初识Seata Seata是 2019 年 1 月…...
MySQL:权限控制
要授予用户帐户权限,可以用GRANT命令。有撤销用户的权限,可以用REVOKE命令。这里以 MySQl 为例,介绍权限控制实际应用。 GRANT授予权限语法: GRANT privilege,[privilege],.. ON privilege_level TO user [IDENTIFIED BY passwo…...
安全生产知识竞赛活动方案
为进一步普及安全生产法律法规知识,增强安全意识,提高安全技能,经研究,决定举办以“加强安全法治、保障安全生产”为主题的新修订《安全生产法》知识竞赛活动,现将有关事项通知如下: 一、活动时间…...
2023 IoTDB Summit:天谋科技 CTO 乔嘉林《IoTDB 企业版 V1.3: 时序数据管理一站式解决方案》...
12 月 3 日,2023 IoTDB 用户大会在北京成功举行,收获强烈反响。本次峰会汇集了超 20 位大咖嘉宾带来工业互联网行业、技术、应用方向的精彩议题,多位学术泰斗、企业代表、开发者,深度分享了工业物联网时序数据库 IoTDB 的技术创新…...
LangChain.js 实战系列:如何统计大模型使用的 token 使用量和花费
📝 LangChain.js 是一个快速开发大模型应用的框架,它提供了一系列强大的功能和工具,使得开发者能够更加高效地构建复杂的应用程序。LangChain.js 实战系列文章将介绍在实际项目中使用 LangChain.js 时的一些方法和技巧。 统计调用大模型的 to…...
基于多反应堆的高并发服务器【C/C++/Reactor】(中)EventLoop初始化
这个Dispatcher是一个事件分发模型,通过这个模型,就能够检测对应的文件描述符的事件的时候,可以使用epoll/poll/select,前面说过三选一。另外不管是哪一个底层的检测模型,它们都需要使用一个数据块,这个数据块就叫做DispatcherData。除此之外,还有另外一个部分,因为…...
OpenCV(Python)基础—9小时入门版
OpenCV(Python)基础—9小时入门版 # # Author : Mikigo # Time : 2021/12/1 # 一、一句话简介 OpenCV (Open Source Computer Vision Library) 是用 C 语言编写,提供 Python、Java 等语言 API的一个开源计算机视觉库。 二、安装 1、Debian 系使用 apt 安装 O…...
SpringBoot整合Canal
一 linux docker compose版本 1.第一步:基础环境 (1)第1步:安装jak、maven、git、nodejs、npm yum install maven mvn -v 安装maven时会帮安装jdkyum install git git --version 2.27.0yum in…...
用 Python 提取某一个公众号下的所有文章
当我们想要提取某一个公众号下的所有文章时,我们可以借助微信公众平台的开放接口,通过Python编写一个爬虫程序来实现。下面是一个示例代码,以及如何将其转化为一篇详细的微信公众号推文文章。 1. 导入所需库 首先,我们需要导入所…...
Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...
Unity3D中Gfx.WaitForPresent优化方案
前言 在Unity中,Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染(即CPU被阻塞),这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案: 对惹,这里有一个游戏开发交流小组&…...
R语言AI模型部署方案:精准离线运行详解
R语言AI模型部署方案:精准离线运行详解 一、项目概述 本文将构建一个完整的R语言AI部署解决方案,实现鸢尾花分类模型的训练、保存、离线部署和预测功能。核心特点: 100%离线运行能力自包含环境依赖生产级错误处理跨平台兼容性模型版本管理# 文件结构说明 Iris_AI_Deployme…...
三维GIS开发cesium智慧地铁教程(5)Cesium相机控制
一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点: 路径验证:确保相对路径.…...
《Playwright:微软的自动化测试工具详解》
Playwright 简介:声明内容来自网络,将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具,支持 Chrome、Firefox、Safari 等主流浏览器,提供多语言 API(Python、JavaScript、Java、.NET)。它的特点包括&a…...
Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility
Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility 1. 实验室环境1.1 实验室环境1.2 小测试 2. The Endor System2.1 部署应用2.2 检查现有策略 3. Cilium 策略实体3.1 创建 allow-all 网络策略3.2 在 Hubble CLI 中验证网络策略源3.3 …...
vue3 字体颜色设置的多种方式
在Vue 3中设置字体颜色可以通过多种方式实现,这取决于你是想在组件内部直接设置,还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法: 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...
《基于Apache Flink的流处理》笔记
思维导图 1-3 章 4-7章 8-11 章 参考资料 源码: https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...
今日科技热点速览
🔥 今日科技热点速览 🎮 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售,主打更强图形性能与沉浸式体验,支持多模态交互,受到全球玩家热捧 。 🤖 人工智能持续突破 DeepSeek-R1&…...
QT: `long long` 类型转换为 `QString` 2025.6.5
在 Qt 中,将 long long 类型转换为 QString 可以通过以下两种常用方法实现: 方法 1:使用 QString::number() 直接调用 QString 的静态方法 number(),将数值转换为字符串: long long value 1234567890123456789LL; …...
