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. 导入所需库 首先,我们需要导入所…...
PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建
制造业采购供应链管理是企业运营的核心环节,供应链协同管理在供应链上下游企业之间建立紧密的合作关系,通过信息共享、资源整合、业务协同等方式,实现供应链的全面管理和优化,提高供应链的效率和透明度,降低供应链的成…...
Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具
文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用
1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...
Pinocchio 库详解及其在足式机器人上的应用
Pinocchio 库详解及其在足式机器人上的应用 Pinocchio (Pinocchio is not only a nose) 是一个开源的 C 库,专门用于快速计算机器人模型的正向运动学、逆向运动学、雅可比矩阵、动力学和动力学导数。它主要关注效率和准确性,并提供了一个通用的框架&…...
人工智能--安全大模型训练计划:基于Fine-tuning + LLM Agent
安全大模型训练计划:基于Fine-tuning LLM Agent 1. 构建高质量安全数据集 目标:为安全大模型创建高质量、去偏、符合伦理的训练数据集,涵盖安全相关任务(如有害内容检测、隐私保护、道德推理等)。 1.1 数据收集 描…...
【SpringBoot自动化部署】
SpringBoot自动化部署方法 使用Jenkins进行持续集成与部署 Jenkins是最常用的自动化部署工具之一,能够实现代码拉取、构建、测试和部署的全流程自动化。 配置Jenkins任务时,需要添加Git仓库地址和凭证,设置构建触发器(如GitHub…...
Cilium动手实验室: 精通之旅---13.Cilium LoadBalancer IPAM and L2 Service Announcement
Cilium动手实验室: 精通之旅---13.Cilium LoadBalancer IPAM and L2 Service Announcement 1. LAB环境2. L2公告策略2.1 部署Death Star2.2 访问服务2.3 部署L2公告策略2.4 服务宣告 3. 可视化 ARP 流量3.1 部署新服务3.2 准备可视化3.3 再次请求 4. 自动IPAM4.1 IPAM Pool4.2 …...
HTML前端开发:JavaScript 获取元素方法详解
作为前端开发者,高效获取 DOM 元素是必备技能。以下是 JS 中核心的获取元素方法,分为两大系列: 一、getElementBy... 系列 传统方法,直接通过 DOM 接口访问,返回动态集合(元素变化会实时更新)。…...
GraphQL 实战篇:Apollo Client 配置与缓存
GraphQL 实战篇:Apollo Client 配置与缓存 上一篇:GraphQL 入门篇:基础查询语法 依旧和上一篇的笔记一样,主实操,没啥过多的细节讲解,代码具体在: https://github.com/GoldenaArcher/graphql…...
恶补电源:1.电桥
一、元器件的选择 搜索并选择电桥,再multisim中选择FWB,就有各种型号的电桥: 电桥是用来干嘛的呢? 它是一个由四个二极管搭成的“桥梁”形状的电路,用来把交流电(AC)变成直流电(DC)。…...
