発注伝票拡張後結果画面

実装
ステップ1 SE11でEKKOとEKPOの定義に拡張項目を追加する
EKKOの定義に既存の構造CI_EKKODBに拡張項目を追加する

EKPOの定義に既存の構造CI_EKPODBに拡張項目を追加する

ステップ2 SE80で汎用グループ実装、拡張画面定義及び拡張画面項目値の引渡汎用モジュールを実装する

ヘッダ拡張項目定義

※構造ZMM0S0130はZMM0S0020をインクルードしているので構造CI_EKKODBと同じ、ZMM0S0131も 構造CI_EKPODBと同じである。

明細拡張項目定義

汎用モジュールソースコード

************************************************************************
* 機能ID   : MMP008
* 機能名称 : 購買発注伝票拡張(BADI)
* 機能概要 : 購買発注項目拡張
* 作成者   : XXX
* 作成日   : 2014/03/13
************************************************************************
* 変更履歴
* 変更管理番号 移送依頼   更新日付   更新者   変更内容
* xxxxxxxxxx   xxxxxxxxxx YYYY/MM/DD 漢字名称
* B0608        RD1K906450 2014/06/08 XXX 全拡張項目を標準画面に実装(発注))
*-----------------------------------------------------------------------
FUNCTION Z_MMP008_HEAD01_POP.
*"----------------------------------------------------------------------
*"*"ローカルインタフェース:
*"  EXPORTING
*"     REFERENCE(F_EP_ZMM0S0130) TYPE  ZMM0S0130
*"----------------------------------------------------------------------* 拡張画面値→標準へ戻すF_EP_ZMM0S0130 = ZMM0S0130.* 画面属性項目値をCHAR属性項目にセットF_EP_ZMM0S0130-ZZBUFISKIN = ZMM0S0130-ZZBUFISKIN_W.  "移送入部振伝票金額SHIFT F_EP_ZMM0S0130-ZZBUFISKIN LEFT DELETING LEADING SPACE.F_EP_ZMM0S0130-ZZGIKADKIN = ZMM0S0130-ZZGIKARKIN_W.  "外貨金額SHIFT F_EP_ZMM0S0130-ZZGIKADKIN LEFT DELETING LEADING SPACE.F_EP_ZMM0S0130-ZZGIKADTCD = ZMM0S0130-ZZGIKADTCD_W.  "外貨通貨SHIFT F_EP_ZMM0S0130-ZZGIKADTCD LEFT DELETING LEADING SPACE.ENDFUNCTION.
************************************************************************
* 機能ID   : MMP008
* 機能名称 : 購買発注伝票拡張(BADI)
* 機能概要 : 購買発注項目拡張
* 作成者   : XXX
* 作成日   : 2014/03/13
************************************************************************
* 変更履歴
* 変更管理番号 移送依頼   更新日付   更新者   変更内容
* xxxxxxxxxx   xxxxxxxxxx YYYY/MM/DD 漢字名称
* B0608        RD1K906450 2014/06/08 XXX 全拡張項目を標準画面に実装(発注))
*-----------------------------------------------------------------------
FUNCTION Z_MMP008_HEAD01_PUSH.
*"----------------------------------------------------------------------
*"*"ローカルインタフェース:
*"  IMPORTING
*"     REFERENCE(F_IP_ZMM0S0130) TYPE  ZMM0S0130
*"----------------------------------------------------------------------* 標準→拡張画面で受けるZMM0S0130 = F_IP_ZMM0S0130.* 関連NOが未指定で入力ルートがSAの場合のみ関連の自動提案を行うIF ZMM0S0130-ZZKRENO IS INITIAL ANDZMM0S0130-ZZNYUROKBN = CNS_ZZNYUROKBN.IF W_ZZKRENO IS INITIAL.CALL FUNCTION 'NUMBER_GET_NEXT'EXPORTINGNR_RANGE_NR             = CNS_NRRANGENROBJECT                  = CNS_OBJECT
*         QUANTITY                = '1'
*         SUBOBJECT               = ' '
*         TOYEAR                  = '0000'
*         IGNORE_BUFFER           = ' 'IMPORTINGNUMBER                  = W_ZZKRENO
*         QUANTITY                =
*         RETURNCODE              =EXCEPTIONSINTERVAL_NOT_FOUND      = 1NUMBER_RANGE_NOT_INTERN = 2OBJECT_NOT_FOUND        = 3QUANTITY_IS_0           = 4QUANTITY_IS_NOT_1       = 5INTERVAL_OVERFLOW       = 6BUFFER_OVERFLOW         = 7OTHERS                  = 8.IF SY-SUBRC IS INITIAL.ZMM0S0130-ZZKRENO = W_ZZKRENO.ELSE.MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNOWITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.ENDIF.ELSE.ZMM0S0130-ZZKRENO = W_ZZKRENO.ENDIF.ENDIF.* 数量金額拡張CHAR項目を画面数量金額属性WorkにセットZMM0S0130-ZZBUFISKIN_W = ZMM0S0130-ZZBUFISKIN.  "移送入部振伝票金額ZMM0S0130-ZZGIKARKIN_W = ZMM0S0130-ZZGIKADKIN.  "外貨金額ZMM0S0130-ZZGIKADTCD_W = ZMM0S0130-ZZGIKADTCD.  "外貨通貨ENDFUNCTION.
************************************************************************
* 機能ID   : MMP008
* 機能名称 : 購買発注伝票拡張(BADI)
* 機能概要 : 購買発注項目拡張
* 作成者   : XXX
* 作成日   : 2014/03/13
************************************************************************
* 変更履歴
* 変更管理番号 移送依頼   更新日付   更新者   変更内容
* xxxxxxxxxx   xxxxxxxxxx YYYY/MM/DD 漢字名称
* B0608        RD1K906450 2014/06/08 XXX 全拡張項目を標準画面に実装(発注))
*-----------------------------------------------------------------------
FUNCTION Z_MMP008_INIT.
*"----------------------------------------------------------------------
*"*"ローカルインタフェース:
*"----------------------------------------------------------------------* 変数初期化
CLEAR : ZMM0S0130, ZMM0S0131, W_ZZKRENO.ENDFUNCTION.
************************************************************************
* 機能ID   : MMP008
* 機能名称 : 購買発注伝票拡張(BADI)
* 機能概要 : 購買発注項目拡張
* 作成者   : XXX
* 作成日   : 2014/03/13
************************************************************************
* 変更履歴
* 変更管理番号 移送依頼   更新日付   更新者   変更内容
* xxxxxxxxxx   xxxxxxxxxx YYYY/MM/DD 漢字名称
* B0608        RD1K906450 2014/06/08 XXX 全拡張項目を標準画面に実装(発注))
*-----------------------------------------------------------------------
FUNCTION Z_MMP008_ITEM01_POP.
*"----------------------------------------------------------------------
*"*"ローカルインタフェース:
*"  EXPORTING
*"     REFERENCE(F_EP_ZMM0S0131) TYPE  ZMM0S0131
*"----------------------------------------------------------------------* 拡張画面値→標準へ戻すF_EP_ZMM0S0131 = ZMM0S0131.* 画面属性項目値をCHAR属性項目にセットF_EP_ZMM0S0131-ZZDETTNK =   ZMM0S0131-ZZMEISITNK_W.    "明細単価SHIFT F_EP_ZMM0S0131-ZZDETTNK LEFT DELETING LEADING SPACE.F_EP_ZMM0S0131-ZZDETKIN =   ZMM0S0131-ZZDETCUKIN_W.    "明細金額SHIFT F_EP_ZMM0S0131-ZZDETKIN LEFT DELETING LEADING SPACE.F_EP_ZMM0S0131-ZZBUFIDTNK = ZMM0S0131-ZZBUFIDCUTNK_W.  "移送入部振明細単価SHIFT F_EP_ZMM0S0131-ZZBUFIDTNK LEFT DELETING LEADING SPACE.F_EP_ZMM0S0131-ZZBUFIDKIN = ZMM0S0131-ZZBUFIDCUKIN_W.  "移送入部振明細金額SHIFT F_EP_ZMM0S0131-ZZBUFIDKIN LEFT DELETING LEADING SPACE.ENDFUNCTION.
************************************************************************
* 機能ID   : MMP008
* 機能名称 : 購買発注伝票拡張(BADI)
* 機能概要 : 購買発注項目拡張
* 作成者   : XXX
* 作成日   : 2014/03/13
************************************************************************
* 変更履歴
* 変更管理番号 移送依頼   更新日付   更新者   変更内容
* xxxxxxxxxx   xxxxxxxxxx YYYY/MM/DD 漢字名称
* B0608        RD1K906450 2014/06/08 XXX 全拡張項目を標準画面に実装(発注))
*-----------------------------------------------------------------------
FUNCTION Z_MMP008_ITEM01_PUSH.
*"----------------------------------------------------------------------
*"*"ローカルインタフェース:
*"  IMPORTING
*"     REFERENCE(F_IP_ZMM0S0131) TYPE  ZMM0S0131
*"----------------------------------------------------------------------* 標準→拡張画面で受けるZMM0S0131 = F_IP_ZMM0S0131.* 数量金額拡張CHAR項目を画面数量金額属性WorkにセットZMM0S0131-ZZMEISITNK_W   = ZMM0S0131-ZZDETTNK.    "明細単価ZMM0S0131-ZZDETCUKIN_W   = ZMM0S0131-ZZDETKIN.    "明細金額ZMM0S0131-ZZBUFIDCUTNK_W = ZMM0S0131-ZZBUFIDTNK.  "移送入部振明細単価ZMM0S0131-ZZBUFIDCUKIN_W = ZMM0S0131-ZZBUFIDKIN.  "移送入部振明細金額ENDFUNCTION.
PBO、PAIメソッド実装する

グローバル変数定義

FUNCTION-POOL ZMMP008.                      "MESSAGE-ID ..* 画面用TABLES定義
TABLES :
ZMM0S0130,  " ヘッダ
ZMM0S0131.  " 明細CONSTANTS CNS_NRRANGENR  TYPE INRI-NRRANGENR VALUE '01'.     "番号範囲番号
CONSTANTS CNS_OBJECT     TYPE INRI-OBJECT    VALUE 'ZCM001'. "番号範囲OBJ
CONSTANTS CNS_ZZNYUROKBN TYPE ZENYUROKBN     VALUE 'SA'.     "入力ルート区分*----------------------------------------------------------------------*
* 変数宣言(DATA)
*----------------------------------------------------------------------*
DATA : OK-CODE  TYPE SY-UCOMM.          " INCLUDE LMEVIEWSF01用 OKCODE
DATA W_ZZKRENO TYPE ZEKRENO.     "関連NoINCLUDE LMEVIEWSF01.             " 標準部品
汎用モジュールの実装箇所

ステップ3 SE18で拡張BADI(ME_GUI_PO_CUST)実装、拡張画面項目値の引渡メソッドを実装する

変数定義

CNS_APPL Constant    Private Type    STRING40                                                                    'PO'
CNS_ELEMENT_HEAD    Constant    Private Type    STRING40    shmtable_s 内の 40 文字文字列  'HEADER'
CNS_ELEMENT_ITEM    Constant    Private Type    STRING40    shmtable_s 内の 40 文字文字列  'ITEM'
CNS_SCNAME_HEAD Constant    Private Type    MEPO_SUBSCRIBERS-NAME                                                                   'HEADERSCREEN01'
CNS_SCNAME_ITEM Constant    Private Type    MEPO_SUBSCRIBERS-NAME                                                                   'ITEMSCREEN01'
CNS_PROGRAM Constant    Private Type    MEPO_SUBSCRIBERS-PROGRAM                                                                    'SAPLZMMP008'
CNS_DYNPRO_HEAD Constant    Private Type    MEPO_SUBSCRIBERS-DYNPRO                                                                 '9000'
CNS_DYNPRO_ITEM Constant    Private Type    MEPO_SUBSCRIBERS-DYNPRO                                                                 '9010'
CNS_STRUCT_HEAD Constant    Private Type    MEPO_SUBSCRIBERS-STRUCT_NAME                                                                    'ZMM0S0130'
CNS_STRUCT_ITEM Constant    Private Type    MEPO_SUBSCRIBERS-STRUCT_NAME                                                                    'ZMM0S0131'
CNS_POSITION_HEAD   Constant    Private Type    MEPO_SUBSCRIBERS-POSITION                                                                   11
CNS_POSITION_ITEM   Constant    Private Type    MEPO_SUBSCRIBERS-POSITION                                                                   99
CNS_HEIGHT_HEAD Constant    Private Type    MEPO_SUBSCRIBERS-HEIGHT                                                                 7
CNS_HEIGHT_ITEM Constant    Private Type    MEPO_SUBSCRIBERS-HEIGHT                                                                 7
STR_ZMM0S0130   Instance Attribute  Private Type    ZMM0S0130
STR_ZMM0S0131   Instance Attribute  Private Type    ZMM0S0131
STR_ZMM0S0130_PBO   Instance Attribute  Private Type    ZMM0S0130
STR_ZMM0S0130_PAI   Instance Attribute  Private Type    ZMM0S0130
STR_ZMM0S0131_PBO   Instance Attribute  Private Type    ZMM0S0131
STR_ZMM0S0131_PAI   Instance Attribute  Private Type    ZMM0S0131                                                                                                                                                                                                       

メソッドソースコード

*======================================================================================
*画面を開く
*======================================================================================
METHOD IF_EX_ME_GUI_PO_CUST~SUBSCRIBE.DATA: L_STR_SUBSCRIBER LIKE LINE OF RE_SUBSCRIBERS.    " MEPO: 独自の画面の公開*   APPLICATIONがPOの場合のみ処理を行うCHECK IM_APPLICATION = CNS_APPL.*   画面設定判定CASE IM_ELEMENT.WHEN CNS_ELEMENT_HEAD.   " ヘッダ
*       ヘッダ画面設定CLEAR RE_SUBSCRIBERS[].L_STR_SUBSCRIBER-NAME        = CNS_SCNAME_HEAD.    " ビュー名L_STR_SUBSCRIBER-DYNPRO      = CNS_DYNPRO_HEAD.    " DYNPROL_STR_SUBSCRIBER-PROGRAM     = CNS_PROGRAM.        " プログラム名L_STR_SUBSCRIBER-STRUCT_NAME = CNS_STRUCT_HEAD.    " テーブル名L_STR_SUBSCRIBER-LABEL       = TEXT-001.           " ラベル=ヘッダL_STR_SUBSCRIBER-POSITION    = CNS_POSITION_HEAD.  " ポジション(タブの位置)L_STR_SUBSCRIBER-HEIGHT      = CNS_HEIGHT_HEAD.    " 高さWHEN CNS_ELEMENT_ITEM.   " 明細
*       明細画面設定L_STR_SUBSCRIBER-NAME        = CNS_SCNAME_ITEM.    " ビュー名L_STR_SUBSCRIBER-DYNPRO      = CNS_DYNPRO_ITEM.    " DYNPROL_STR_SUBSCRIBER-PROGRAM     = CNS_PROGRAM.        " プログラム名L_STR_SUBSCRIBER-STRUCT_NAME = CNS_STRUCT_ITEM.    " テーブル名L_STR_SUBSCRIBER-LABEL       = TEXT-002.           " ラベル=明細L_STR_SUBSCRIBER-POSITION    = CNS_POSITION_ITEM.  " ポジション(タブの位置)L_STR_SUBSCRIBER-HEIGHT      = CNS_HEIGHT_ITEM.    " 高さWHEN OTHERS." 処理なしENDCASE.APPEND L_STR_SUBSCRIBER TO RE_SUBSCRIBERS.ENDMETHOD.                    "IF_EX_ME_GUI_PO_CUST~SUBSCRIBE*======================================================================================
*支払条件の制御
*======================================================================================METHOD IF_EX_ME_GUI_PO_CUST~MAP_DYNPRO_FIELDS.CONSTANTS L_CNS_ZZMETA TYPE C LENGTH 2 VALUE 'ZZ'. " FIELDNAME(頭2桁) アドオン項目判定用DATA L_STR_MAPPING LIKE LINE OF CH_MAPPING.*   項目カタログのFIELDNAME頭2桁が"ZZ"の場合、支払条件のメタ項目を設定するLOOP AT CH_MAPPING[] INTO L_STR_MAPPING.IF L_STR_MAPPING-FIELDNAME+000(002) = L_CNS_ZZMETA.L_STR_MAPPING-METAFIELD = MMMFD_PMNTTRMS.         " 支払条件(METAFIELD)MODIFY CH_MAPPING[] FROM L_STR_MAPPING.ENDIF.ENDLOOP.*   ソートテーブルCH_MAPPING[]の最初の1件目に強制カーソル指定されるため1件目にダミーレコードを挿入CLEAR L_STR_MAPPING.L_STR_MAPPING-METAFIELD  = MMMFD_PMNTTRMS.         " 支払条件(METAFIELD)INSERT L_STR_MAPPING INTO CH_MAPPING[] INDEX 1.ENDMETHOD.                    "IF_EX_ME_GUI_PO_CUST~MAP_DYNPRO_FIELDS*======================================================================================
*DBデータ=>モデル
*======================================================================================METHOD IF_EX_ME_GUI_PO_CUST~TRANSPORT_FROM_MODEL.DATA L_REF_PO_HEAD    TYPE REF TO IF_PURCHASE_ORDER_MM.          " 参照変数(IF_PURCHASE_ORDER_MM)DATA L_STR_MEPOHEADER TYPE MEPOHEADER.                           " GET_DATA用 MEPOHEADERDATA L_REF_PO_ITEM    TYPE REF TO IF_PURCHASE_ORDER_ITEM_MM.     " 参照変数(IF_PURCHASE_ORDER_ITEM_MM)DATA L_STR_MEPOITEM   TYPE MEPOITEM.                             " GET_DATA用 MEPOITEMCASE IM_NAME.*     ヘッダWHEN CNS_SCNAME_HEAD.L_REF_PO_HEAD   ?= IM_MODEL.                              " IM_MODELをCASTL_STR_MEPOHEADER = L_REF_PO_HEAD->GET_DATA( ).            " IF_PURCHASE_ORDER_MM~GET_DATAでヘッダ項目取得MOVE-CORRESPONDING L_STR_MEPOHEADER TO STR_ZMM0S0130_PBO. " 拡張画面用構造に設定STR_ZMM0S0130_PBO-WAERS_W = L_STR_MEPOHEADER-WAERS.*     明細WHEN CNS_SCNAME_ITEM.L_REF_PO_ITEM   ?= IM_MODEL.                              " IM_MODELをCASTL_STR_MEPOITEM = L_REF_PO_ITEM->GET_DATA( ).              " IF_PURCHASE_ORDER_MM~GET_DATAでヘッダ項目取得MOVE-CORRESPONDING L_STR_MEPOITEM TO STR_ZMM0S0131_PBO.   " 拡張画面用構造に設定
*WHEN OTHERS." 処理なしENDCASE.ENDMETHOD.                    "IF_EX_ME_GUI_PO_CUST~TRANSPORT_FROM_MODEL*======================================================================================
*モデル=>DBデータ
*======================================================================================METHOD IF_EX_ME_GUI_PO_CUST~TRANSPORT_TO_MODEL.DATA :L_REF_PO_HEAD    TYPE REF TO IF_PURCHASE_ORDER_MM,         " 参照変数(IF_PURCHASE_ORDER_MM)L_STR_MEPOHEADER TYPE MEPOHEADER,                          " GET_DATA用 MEPOHEADERL_REF_PO_ITEM    TYPE REF TO IF_PURCHASE_ORDER_ITEM_MM,    " 参照変数(IF_PURCHASE_ORDER_ITEM_MM)L_STR_MEPOITEM   TYPE MEPOITEM.                            " GET_DATA用 MEPOITEMCASE IM_NAME.*     ヘッダWHEN CNS_SCNAME_HEAD.L_REF_PO_HEAD   ?= IM_MODEL.                             " IM_MODELをCASTL_STR_MEPOHEADER = L_REF_PO_HEAD->GET_DATA( ).           " IF_PURCHASE_ORDER_MM~GET_DATAでヘッダ項目取得MOVE-CORRESPONDING STR_ZMM0S0130 TO L_STR_MEPOHEADER.    " 拡張画面用構造の値を設定CALL METHOD L_REF_PO_HEAD->SET_DATA( L_STR_MEPOHEADER ). " IF_PURCHASE_ORDER_MM~GET_DATAでヘッダ値更新*     明細WHEN CNS_SCNAME_ITEM.L_REF_PO_ITEM   ?= IM_MODEL.                             " IM_MODELをCASTL_STR_MEPOITEM   = L_REF_PO_ITEM->GET_DATA( ).           " IF_PURCHASE_ORDER_ITEM_MM~GET_DATAでヘッダ項目取得MOVE-CORRESPONDING STR_ZMM0S0131 TO L_STR_MEPOITEM.      " 拡張画面用構造の値を設定CALL METHOD L_REF_PO_ITEM->SET_DATA( L_STR_MEPOITEM ).   " IF_PURCHASE_ORDER_ITEM_MM~GET_DATAでヘッダ値更新WHEN OTHERS." 処理なしENDCASE.ENDMETHOD.                    "IF_EX_ME_GUI_PO_CUST~TRANSPORT_TO_MODEL*======================================================================================
*拡張画面=>モデル
*======================================================================================METHOD IF_EX_ME_GUI_PO_CUST~TRANSPORT_FROM_DYNP.DATA :L_REF_PO_HEAD    TYPE REF TO IF_PURCHASE_ORDER_MM,         " 参照変数(IF_PURCHASE_ORDER_MM)L_STR_MEPOHEADER TYPE MEPOHEADER,                          " GET_DATA用 MEPOHEADERL_REF_PO_ITEM    TYPE REF TO IF_PURCHASE_ORDER_ITEM_MM,    " 参照変数(IF_PURCHASE_ORDER_ITEM_MM)L_STR_MEPOITEM   TYPE MEPOITEM.                            " GET_DATA用 MEPOITEMCASE IM_NAME.*     ヘッダWHEN CNS_SCNAME_HEAD.*       PAI値受取(ヘッダ)CALL FUNCTION 'Z_MMP008_HEAD01_POP'IMPORTINGF_EP_ZMM0S0130 = STR_ZMM0S0130_PAI.  "拡張画面WORK→標準WORKに取得*       PBO≠PAIの場合、RE_CHANGED(変更あり)を設定IF STR_ZMM0S0130_PAI <> STR_ZMM0S0130_PBO.STR_ZMM0S0130 = STR_ZMM0S0130_PAI.RE_CHANGED = MMPUR_YES.ELSE." 処理なしENDIF.*     明細WHEN CNS_SCNAME_ITEM.
*     PAI値受取(明細)CALL FUNCTION 'Z_MMP008_ITEM01_POP'IMPORTINGF_EP_ZMM0S0131 = STR_ZMM0S0131_PAI.*       PBO≠PAIの場合、RE_CHANGED(変更あり)を設定IF STR_ZMM0S0131_PAI <> STR_ZMM0S0131_PBO.STR_ZMM0S0131 = STR_ZMM0S0131_PAI.RE_CHANGED = MMPUR_YES.ELSE." 処理なしENDIF.WHEN OTHERS." 処理なしENDCASE.ENDMETHOD.                    "IF_EX_ME_GUI_PO_CUST~TRANSPORT_FROM_DYNP*======================================================================================
*モデル=>拡張画面
*======================================================================================METHOD IF_EX_ME_GUI_PO_CUST~TRANSPORT_TO_DYNP.*   画面判定CASE IM_NAME.WHEN CNS_SCNAME_HEAD.   " ヘッダ
*       PBO値受渡(ヘッダ)CALL FUNCTION 'Z_MMP008_HEAD01_PUSH'EXPORTINGF_IP_ZMM0S0130 = STR_ZMM0S0130_PBO.   "標準WORK→拡張画面WORKWHEN CNS_SCNAME_ITEM.   " 明細
*        PBO値受渡(明細)CALL FUNCTION 'Z_MMP008_ITEM01_PUSH'EXPORTINGF_IP_ZMM0S0131 = STR_ZMM0S0131_PBO.WHEN OTHERS." 処理なしENDCASE.ENDMETHOD.                    "IF_EX_ME_GUI_PO_CUST~TRANSPORT_TO_DYNP
SE24でBADI(ME_PROCESS_PO_CUST)のIF(IF_EX_ME_PROCESS_PO_CUST)を実装して、変数初期化する。

※つまり、BADIを定義しなくても SE24で直ちにIFを利用してクラスを定義して同じメソッドを実装できる。

ここまで、実装完了。

補足:正常の場合、画面が定義されてから、BADIの IF_EX_ME_GUI_PO_CUST~SUBSCRIBE.実装されたら 且つ IF_EX_ME_GUI_PO_CUST~MAP_DYNPRO_FIELDS.も実装されて、標準購買伝票に拡張画面が表示されます。表示できない場合、下記定義追加必要。

補足:BAPIコールする場合、BAPIの拡張構造も更新する必要です。

SAP采购订单屏幕BADI增强(实例)相关推荐

  1. 自定义 SAP 采购订单屏幕

    由于这是我的第一篇博客文章,因此我想使用Liquid UI在SAP Easy Access屏幕上向您展示简化的SAP流程.Liquid UI 是一个企业平台,供 SAP 用户创建简化且自动化的 SAP ...

  2. 【转】SAP采购订单屏幕增强

    为采购订单增加一个页标签,在其中放入客户自定义字段, 1. CMOD 增强接口: MM06E005 EXIT_SAPMM06E_006 为子屏幕参数传入出口(抬头) EXIT_SAPMM06E_008 ...

  3. SAP采购订单税码增强检查

    1.SE18查看ME_PROCESS_PO_CUST相关信息   2.SE19创建ME_PROCESS_PO_CUST的BADI实现类   注意类名称定义是按照以下规则: ZCL_IM_ + BADI ...

  4. 【转】采购订单长文本增强

    采购订单长文本增强正式内容: 利用BADI:ME_PROCESS_PO_CUST,做PO长文本的增强. 本例程是在修改PO行项目短文本的时候,让下面的长文本内容=项目短文本. 过程:(省略创建BADI ...

  5. SAP采购订单科目分配类别P与Q解析

    SAP采购订单科目分配类别P与Q解析 在采购单科目分配类别(Account Assignment Category)一栏中有P和Q,都是对项目物资的采购,两者有何区别?我们一起来看一看. 1,首先了解 ...

  6. SAP 采购订单显示含税价制作方案

    SAP 采购订单显示含税价制作方案 轻松解决SAP系统采购信息计量中物料价格不能保存含税价问题 我们在和供应商谈价时,大部分国内供应商的报价都是含税的,然而我们现在在系统中维护采购信息记录时, 只能输 ...

  7. SAP 采购订单税金抓取方法

    SAP 采购订单税金抓取方法: 一.找表字段: 1.在EKKO表里找到采购订单的单据条件号:EKKO-KNUMV 2.在KONV条件(事务数据)表内找到单据条件号:KONV-KNUMV 行项目号:KO ...

  8. SAP 采购订单的批量修改

    前言部分 大家可以关注我的公众号,公众号里的排版更好,阅读更舒适. 正文部分 现在有一个需求,我们需要冻结一批采购订单,但是由于批量冻结的后果无法预知,我们打算用一个折中的办法. 利用采购订单行项目中 ...

  9. SAP采购订单创建预付款并删除

    采购订单预付款的删除@jettai 在SAP采购订单创建预付款 SAP系统支持创建采购订单的时候,选择预付款,并创建预付款请求. 针对行项目的预付款请求可以在如下图 创建预付款请求 在采购订单创建完毕 ...

最新文章

  1. maemo环境安装问题和解决方案(ubuntu 10.04)
  2. python panda读取csv_python pandas 中文件的读写——read_csv()读取文件
  3. linux命令:ftp
  4. 云开发技术应用python_云开发技术应用(Python)
  5. 图片背景虚化_如何用PPT制作图片虚化背景?
  6. Address already in use: bind JVM端口被占用解决方法
  7. 2017百度之星资格赛:1003. 度度熊与邪恶大魔王
  8. swagger注释API详细说明
  9. Linux入门命令解释(1)
  10. 苏宁金融一站式API网关演进之路
  11. Oracle账户被锁定后如何解锁
  12. 深夜读萧红《呼兰河传》
  13. 联想E43升级bios激活windows 7
  14. 文件搜索工具(简单版)
  15. Java编译报错:无法将类XX中的构造器XX应用到给定类型
  16. lotus version 0.3.0+git1bfa2311 安装 interopnet
  17. Python Flask,Jinja2模板,模板中使用特殊变量及函数,闪现信息,get_flashed_messages()
  18. C++中的自定义函数
  19. eNSP之简单WLAN拓扑配置
  20. 影视金曲-爱你一生嫌未够_昆仑奴插曲》

热门文章

  1. 浅谈angular的作用
  2. 我对软件分层设计的思考
  3. wlan从入门到精通第三期 WLAN标准协议
  4. Allegro添加过孔
  5. 如何定义性能”提升“了多少?
  6. 机器学习教会我们的6个道理
  7. vue echarts 地图立体 并设置tooltip属性背景图片
  8. 【第8天】SQL进阶-更新记录(SQL 小虚竹)
  9. 搭建游戏平台有哪些优势?
  10. 20221024 今天的世界发生了什么