ABAP BAPI_ACC_DOCUMENT_POST 中 EXTENSION1的用法

BAPI_ACC_DOCUMENT_POST 在过账会计凭证时候,经常会发现一些标准字段在参数中并没有

可以通过CMOD/SMOD增强出口--》ACBAPI01--》EXIT_SAPLACC4_001--》ZXACCU15

示例代码:

DATA: wa_extension TYPE bapiextc,it_extension TYPE STANDARD TABLE OF bapiextc.
wa_extension(3) = '005'.               "ITEMNO_ACC
wa_extension+3(11) = 'Note 487722'.    "Data, not in standard interface
APPEND wa_extension TO it_extension.传递到函数里面然后在include中这样写
READ TABLE t_accit WITH KEY posnr = extension(3).
IF sy-subrc IS INITIAL.
* Update the line item textt_accit-sgtxt = extension+3(11).MODIFY t_accit INDEX sy-tabix.
ENDIF.

另外还可以通过BTE的增强:RWBAPI01

1.FIBF--》设置--》产品--》客户的--》然后新增一条

2.复制函数 SAMPLE_INTERFACE_RWBAPI01 示例代码

(SE37-->/SAPPCE/DPC_PROCESS_EXTENSION)

3.FIBF-->设置--》处理函数模块---》客户的-》新增条目 RWBAPI01 

另外如果字段还是没找到你要的,可以在如下结构中:append structure

示例代码:

DATA: LS_EXTEND1 TYPE BAPIACEXTC.
DATA: LT_EXTEND2 TYPE STANDARD TABLE OF BAPIACEXTC.CLEAR:LS_EXTEND1.
LS_EXTEND1-FIELD1 = LV_BUZEI.
LS_EXTEND1-FIELD2 = 'KUNNR'.
LS_EXTEND1-FIELD3 = '0000001000'.
APPEND LS_EXTEND1 TO LT_EXTEND1.

FUNCTION /sappce/dpc_process_extension.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*"  TABLES
*"      IT_ACCIT STRUCTURE  ACCIT
*"      IT_ACCCR STRUCTURE  ACCCR
*"      RETURN STRUCTURE  BAPIRET2
*"      EXTENSION STRUCTURE  BAPIACEXTC
*"      IT_ACCWT STRUCTURE  ACCIT_WT
*"  CHANGING
*"     VALUE(DOCUMENT_HEADER) LIKE  ACCHD STRUCTURE  ACCHD
*"----------------------------------------------------------------------DATA ld_tabix TYPE sy-tabix.DATA ld_posnr TYPE posnr_acc.DATA ls_bapi_extension TYPE bapiacextc.DATA ls_accit    TYPE accit.DATA ls_acccr    TYPE acccr.DATA ls_accit_wt TYPE accit_wt.DATA ld_shkzg    TYPE shkzg.DATA ld_currtyp  TYPE acccr-currtyp.                       "N1282263* process extension dataLOOP AT extension INTO ls_bapi_extension.ld_posnr = ls_bapi_extension-field1.* evaluate fieldnameCASE ls_bapi_extension-field2.WHEN c_ext_document_status.
* set document StatusREAD TABLE it_accit INTO ls_accitWITH KEY posnr = ld_posnr.CHECK sy-subrc EQ 0.ld_tabix = sy-tabix.ls_accit-bstat = ls_bapi_extension-field3.
* modify document itemMODIFY it_accit FROM ls_accit INDEX ld_tabix.WHEN c_ext_wbs_element.
* set wbs elementREAD TABLE it_accit INTO ls_accitWITH KEY posnr = ld_posnr.CHECK sy-subrc EQ 0.ld_tabix = sy-tabix.ls_accit-ps_psp_pnr = ls_bapi_extension-field3.
* modify document itemMODIFY it_accit FROM ls_accit INDEX ld_tabix.WHEN c_ext_target_sp_ind.READ TABLE it_accit INTO ls_accitWITH KEY posnr = ld_posnr.CHECK sy-subrc EQ 0.ld_tabix = sy-tabix.
* set target special G/L indicatorls_accit-zumsk = ls_bapi_extension-field3.
* modify document itemMODIFY it_accit FROM ls_accit INDEX ld_tabix.WHEN c_ext_tax_code.
* set tax codeREAD TABLE it_accit INTO ls_accitWITH KEY posnr = ld_posnr.CHECK sy-subrc EQ 0.ld_tabix = sy-tabix.ls_accit-mwskz = ls_bapi_extension-field3.
* modify document itemMODIFY it_accit FROM ls_accit INDEX ld_tabix.WHEN c_ext_tax_base_amount.
* set tax base amountIF ls_bapi_extension-field4 IS INITIAL.              "N1282263ld_currtyp = '00'.                                 "N1282263ELSE.                                                "N1282263ld_currtyp = ls_bapi_extension-field4.             "N1282263ENDIF.                                               "N1282263READ TABLE it_acccr INTO ls_acccrWITH KEY posnr   = ld_posnr                     "N1282263curtp   = ld_currtyp.                  "N1282263
*            WITH KEY posnr = ld_posnr.                      "N1282263CHECK sy-subrc EQ 0.ld_tabix = sy-tabix.ls_acccr-wmwst = ls_bapi_extension-field3.
* modify document itemMODIFY it_acccr FROM ls_acccr INDEX ld_tabix.WHEN c_ext_stat_tax_amount.
* set statistic tax amountREAD TABLE it_accit INTO ls_accitWITH KEY posnr = ld_posnr.CHECK sy-subrc EQ 0.ld_tabix = sy-tabix.ls_accit-sttax = ls_bapi_extension-field3.
* modify document itemMODIFY it_accit FROM ls_accit INDEX ld_tabix.WHEN c_ext_stat_tax_amount_ccc.
* set statistic tax amount (company code currency)READ TABLE it_accit INTO ls_accitWITH KEY posnr = ld_posnr.CHECK sy-subrc EQ 0.ld_tabix = sy-tabix.ls_accit-sthtx = ls_bapi_extension-field3.
* modify document itemMODIFY it_accit FROM ls_accit INDEX ld_tabix.* set WT_KEY for CREDITOR, if creditor is subject to withholding taxWHEN c_ext_with_tax_creditor.READ TABLE it_accit INTO ls_accitWITH KEY posnr = ld_posnr.CHECK sy-subrc EQ 0.ld_tabix = sy-tabix.ls_accit-wt_key = ls_bapi_extension-field3.ls_accit-qsskz = 'XX'.
* modify document itemMODIFY it_accit FROM ls_accit INDEX ld_tabix.* set withholding taxWHEN c_ext_withholding_tax.CLEAR ls_accit_wt.ls_accit_wt-wt_key    = ls_bapi_extension-field1+0(6).ls_accit_wt-witht     = ls_bapi_extension-field1+6(2).ls_accit_wt-wt_withcd = ls_bapi_extension-field1+8(2).ld_shkzg              = ls_bapi_extension-field1+10(1).ls_accit_wt-wt_qsshb  = ls_bapi_extension-field3.ls_accit_wt-wt_qbuihb = ls_bapi_extension-field4.APPEND ls_accit_wt TO it_accwt.WHEN c_ext_activity.
* set activity for down payment requestsREAD TABLE it_accit INTO ls_accitWITH KEY posnr = ld_posnr.CHECK sy-subrc EQ 0.ld_tabix = sy-tabix.ls_accit-vorgn = ls_bapi_extension-field3.
* modify document itemMODIFY it_accit FROM ls_accit INDEX ld_tabix.*** header data *****************************************WHEN c_ext_business_transaction.
* change activity (needed for CA-JVA)document_header-glvor = ls_bapi_extension-field3.WHEN c_ext_transaction_code.
* change transaction code (needed for CA-JVA)document_header-tcode = ls_bapi_extension-field3.WHEN c_ext_invoice_reference.
* set invoice referenceREAD TABLE it_accit INTO ls_accitWITH KEY posnr = ld_posnr.CHECK sy-subrc EQ 0.ld_tabix = sy-tabix.ls_accit-rebzg = ls_bapi_extension-field3.
* modify document itemMODIFY it_accit FROM ls_accit INDEX ld_tabix.WHEN c_ext_invoice_reference_year.
* set invoice reference yearREAD TABLE it_accit INTO ls_accitWITH KEY posnr = ld_posnr.CHECK sy-subrc EQ 0.ld_tabix = sy-tabix.ls_accit-rebzj = ls_bapi_extension-field3.
* modify document itemMODIFY it_accit FROM ls_accit INDEX ld_tabix.WHEN c_ext_invoice_reference_item.
* set invoice reference itemREAD TABLE it_accit INTO ls_accitWITH KEY posnr = ld_posnr.CHECK sy-subrc EQ 0.ld_tabix = sy-tabix.ls_accit-rebzz = ls_bapi_extension-field3.
* modify document itemMODIFY it_accit FROM ls_accit INDEX ld_tabix.WHEN c_ext_sub_document_type.
* set type of subsequent documentREAD TABLE it_accit INTO ls_accitWITH KEY posnr = ld_posnr.CHECK sy-subrc EQ 0.ld_tabix = sy-tabix.ls_accit-rebzt = ls_bapi_extension-field3.
* modify document itemMODIFY it_accit FROM ls_accit INDEX ld_tabix.WHEN c_ext_invoice_reference_check.
* set invoice reference check = NOREAD TABLE it_accit INTO ls_accitWITH KEY posnr = ld_posnr.CHECK sy-subrc EQ 0.ld_tabix = sy-tabix.ls_accit-rebzg_check = ls_bapi_extension-field3.
* modify document itemMODIFY it_accit FROM ls_accit INDEX ld_tabix.WHEN c_ext_allocation.
* fill allocation for tax itemsREAD TABLE it_accit INTO ls_accitWITH KEY posnr = ld_posnr.CHECK sy-subrc EQ 0.ld_tabix = sy-tabix.ls_accit-zuonr = ls_bapi_extension-field3.
* modify document itemMODIFY it_accit FROM ls_accit INDEX ld_tabix.* insert XAUTO for tax clearing linesWHEN c_xauto.READ TABLE it_accit INTO ls_accitWITH KEY posnr = ld_posnr.CHECK sy-subrc EQ 0.ld_tabix = sy-tabix.ls_accit-xauto = ls_bapi_extension-field3.
* modify document itemMODIFY it_accit FROM ls_accit INDEX ld_tabix.** insert cash discount amount                               "#976257  "N1140971
*      when c_ext_cash_discount_amount.                      "#976257  "N1140971
*        read table it_acccr into ls_acccr                   "#976257  "N1140971
*             with key posnr = ld_posnr.                     "#976257  "N1140971
*        check sy-subrc eq 0.                                "#976257  "N1140971
*        ld_tabix = sy-tabix.                                "#976257  "N1140971
*        ls_acccr-wskto = ls_bapi_extension-field3.          "#976257  "N1140971
** modify document item                                      "#976257  "N1140971
*        modify it_acccr from ls_acccr index ld_tabix.       "#976257  "N1140971* insert posting key (requested by functionality DBM)       "#976257when c_ext_posting_key.                               "#976257read table it_accit into ls_accit                   "#976257with key posnr = ld_posnr.                     "#976257check sy-subrc eq 0.                                "#976257ld_tabix = sy-tabix.                                "#976257ls_accit-bschl = ls_bapi_extension-field3.          "#976257
* modify document item                                      "#976257modify it_accit from ls_accit index ld_tabix.       "#976257* othersWHEN OTHERS.CONTINUE.ENDCASE.ENDLOOP.ENDFUNCTION.

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

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

相关文章

springboot整合Interceptor

1.定义两个拦截器 一. package com.boot.intercept.intercept;import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.H…

软件工程概述

软件工程概述 软件工程指的是应用计算机科学、数学及管理科学等原理,以工程化的原则和方法来解决软件问题的工程,目的是提高软件生产效率、提高软件质量、降低软件成本。 1. 计算机软件 计算机软件指的是计算机系统中的程序及其文档。程序是计算任务的…

圆圈加数字的css

方式一 .circle { width: 50px; height: 50px; border-radius: 50%; background-color: #f00; color: #fff; text-align: center; line-height: 50px; } .circle::before { content: attr(data-number); display: block; } <div class"circle" data-number"…

C++学习笔记--函数重载(2)

文章目录 1.3、Function Templates Handling1.3.1、Template Argument Deduction1.3.2、Template Argument Substitution 1.4、Overload Resolution1.4.1、Candidate functions1.4.2、Viable functions1.4.3、Tiebreakers 1.5、走一遍完整的流程1.6、Name Mangling1.7、总结 1.…

咖啡喝完还能建房?掺入混凝土强度高30%

咖啡是全世界消耗量最高的饮料&#xff0c;这也导致咖啡渣的数量相当大很特别&#xff0c;据估计&#xff0c;全球每年会产生1800万吨废弃咖啡残渣&#xff0c;其中大多数最终被填埋处理。它们会在垃圾填埋场中分解&#xff0c;释放出甲烷&#xff0c;而甲烷引起的全球变暖效应…

深度ESP32 PWM教程如何在ESP32 中使用PWM

关于ESP32PWM的简要说明 ESP32 SoC 满载了非常有用的外设&#xff0c;PWM 就是其中之一。是的。ESP32 的芯片中有一个专用的 PWM 硬件模块。脉宽调制或简称PWM是一种成熟且广泛使用的供电技术。 您可以使用 ESP32 的 PWM 来驱动 LED、电机&#xff08;普通直流电机和无刷电机…

ROS多话题同步回调

文章目录 ExactTime PolicyApproximateTime Policy参考ExactTime Policy 这种方法要求输入的消息的时间戳必须完全相同才调用回调函数。 #include <message_filters/subscriber.h> #include <message_filters/synchronizer.h> #include <message_filters/sync…

qt文件操作

对话框练习 #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//字体按钮 void Widget::on_ztbtn_clicked() {//调用QFontDia…

在Spring Boot中使用Redis 5的Stream

引言 Redis是一个开源的高性能键值对存储系统&#xff0c;而Redis 5引入了新的数据结构——Stream&#xff08;流&#xff09;。Stream可以用于高效地保存和处理事件流数据。在本文中&#xff0c;我们将学习如何在Spring Boot应用程序中使用Redis 5的Stream功能。 步骤 步骤…

01_Flutter之下拉刷新和上拉加载

一.创建页面 由于我们需要请求网络&#xff0c;并将返回的数据渲染到页面上&#xff0c;所以需要继承StatefulWidget&#xff0c;本文涉及的接口&#xff0c;取自鸿神的玩android开放API class ProjectListPage extends StatefulWidget {overrideState<StatefulWidget>…

AMEYA360:士兰微推出600A/1200V IGBT汽车驱动模块,提升充电速度与行驶动力

随着人们对环保意识的提高和汽车驾驶体验感的不断追求&#xff0c;新能源汽车的市场需求逐渐增大&#xff0c;已然成为汽车发展的大趋势&#xff0c;但是新能源汽车充电时间长、续航里程短等问题仍然是汽车厂商和车主们的痛点。因此&#xff0c;需要更好的汽车驱动产品来实现“…

Java和Kotlin的Field在继承中的不同表现

Kotlin是一个宣称与Java兼容性较好的语言&#xff0c;但在接触后发现一些技术还是有“概念上”的冲突&#xff0c;本文就记录下两者对象的Field&#xff08;中文的说法有字段、域、属性、成员变量&#xff0c;下文若出现这些表达&#xff0c;指的都是这个东西&#xff09;在继承…

js摄像头动态检测

利用摄像头每一秒截图一次图像。然后计算2次图像之间的相似度。 如果相似度低于98%就会报警。 var video document.getElementsByClassName(inputvideo)[0]; video.innerHTML "<video classinput_video idcamera autoplay width640px height380px></video>…

工厂模式 与 抽象工厂模式 的区别

工厂模式&#xff1a; // 抽象产品接口 interface Product {void showInfo(); }// 具体产品A class ConcreteProductA implements Product {Overridepublic void showInfo() {System.out.println("This is Product A");} }// 具体产品B class ConcreteProductB impl…

windows10使用wheel安装tensorflow2.13.0/2.10.0

安装过程 安装虚拟环境安装virtualenv安装满足要求的python版本使用virtualenv创建指定python版本的虚拟环境 安装tensorflow2.13.0安装tensorflow-docs直接下载使用wheel下载 在VSCode编辑器中使用虚拟环境下的包 安装虚拟环境 这里笔者使用的是 virtualenv进行虚拟环境搭建的…

大数据平台之元数据

目录 一、表、字段元数据 二、作业元数据 一、表、字段元数据 表、字段元数据主要可以分为原始信息和附加信息两大类&#xff0c;原始信息包含&#xff1a;表名、表备注、字段名、字段类型、字段备注、表的大小、分区信息等&#xff0c;附加信息可以是跟表、字段相关的包含一…

VIRTIO-BLK代码分析(2)VIRTIO驱动分析

QEMU模拟的VIRTIO设备同时也是PCIE设备&#xff0c;Guest中VIRTIO PCIE驱动与之匹配&#xff0c;根据设备驱动模型&#xff0c;最终触发probe函数virtio_pci_probe()。该probe函数使能PCIE设备&#xff0c;并注册VIRTIO设备&#xff0c;并与VIRTIO-BLK匹配&#xff0c;触发VIRT…

通俗易懂讲解大模型:Tokenizer

Tokenizer Tokenizer 是 NLP pipeline 的核心组件之一。Tokenizer 的目标是&#xff1a;将文本转换为模型可以处理的数据。模型只能处理数字&#xff0c;因此 Tokenizer 需要将文本输入转换为数字输入。 通常而言有三种类型的 Tokenizer &#xff1a;Word-based Tokenizer、Cha…

【2594. 修车的最少时间】

来源&#xff1a;力扣&#xff08;LeetCode&#xff09; 描述&#xff1a; 给你一个整数数组 ranks &#xff0c;表示一些机械工的 能力值 。ranksi 是第 i 位机械工的能力值。能力值为 r 的机械工可以在 r * n2 分钟内修好 n 辆车。 同时给你一个整数 cars &#xff0c;表示…