zoukankan      html  css  js  c++  java
  • BADI(ビジネスアドイン)の探し方

    概要

    元々、SAPはユーザEXITと呼ばれるインクルードプログラムを実装することによって標準機能の拡張を実現してきたが、それに置き換わる新拡張技術としてBADI(ビジネスアドイン)を提供している。これにより、今後新たなユーザEXITを提供する事はないと言われている。 また、BADIはクラス化されている為に予め定義された引数・戻り値しか使用する事ができず苦労する事も多い。

    BADIの探し方

    1.トランザクションコード:SE24でクラス:CL_EXITHANDLERを照会

    2.メソッド:GET_INSTANCEを選択しプログラムソースを表示

    3.下記にブレイクポイント指定 14行目当たりの”CALL METHOD CL_EXITHANDLER=>GET_CLASS_NAME_BY_INTERFACE”

    4.確認したいトランザクションを別セッションで実行

    4.上記メソッドの戻り値:EXIT_NAMEに返される値が使用されているBADIの定義名にあたる。  ※共通的なBADIも実行されるので、関係のなさそうな名称であればスルーしてください。

    例えば、品目マスタの変更(トランザクションコード:MM02)で表示→保存と実行した場合は以下のBADIが実行されている事がわかる。 BADI_MATERIAL_OD GOS_SRV_SELECT BADI_LAYER BADI_MATERIAL_OD ECM_EXIT BADI_GTIN_VARIANT BADI_MATERIAL_CHECK BADI_SCREEN_LOGIC_RT W_RETAILSYSTEM_IDENT BADI_MATN1

    これらで品目に関係がありそうなのはBADI_MATERIAL_OD、BADI_MATERIAL_CHECK、BADI_MATN1だろうと推測できる為、 その中で要件が実現可能なメソッドが存在するかを確認していけば良い。 またBADIの定義はトランザクションコード:SE18で確認する事ができ、BADIの実装を行いたい場合は トランザクションコード:SE19にてBADIの定義を継承して拡張登録する事ができる。 また、実装後の変更でクラス名が判っていればトランザクションコード:SE24から直接変更する事も可能だ。

    関連トランザクションコードまとめ

    SE24: クラス/インタフェース SE18: ビジネスアドイン(定義) SE19: ビジネスアドイン(実装)

  • 相关阅读:
    Spring创建复杂对象
    navicat中mysql中文数据显示乱码
    cmd黑窗口查询数据库中数据时中文乱码
    springboot中的文件上传与下载
    springboot中定义拦截器
    springboot中的AOP开发
    springboot集成logback日志
    开启springboot中对jsp页面修改后的热部署
    IntelliJ Idea中常用快捷键(持续更新中)
    jsp页面中格式化展示日期
  • 原文地址:https://www.cnblogs.com/yjyongil/p/11155169.html
Copyright © 2011-2022 走看看