Ir al contenido principal

How to add custom field in Additional B Tab for SAP Sales Order


In this article we want to explain step by step how to add custom field in SAP Sales Order transaction VA01/VA02/VA03. This time Mr ABAPGurus will give the tutorial of enhancement to add custom field in SAP Sales order.
In this sample we will add new custom field for comments and customer satisfaction, this data will save into separate table from SAP Standard table ( VBAK / VBAP ).
how-to-add-custom-fields-sales-order-sap
SAP provided us with ADDITIONAL TAB in the sales order transaction ( VA01/VA02/VA03 ) which allow customer to add custom fields. The different between ADDITIONAL A and ADDITIONAL B is the ADDITIONAL A for field which already predefine in Sales Order Header ( VBAK ) fields and ADDITIONAL B is for field that freely define.
This sample we will use ADDITIONAL B because we will store data from customer satisfaction into Z database table.
1. Create one Z table using SE11 SAP Transaction code.
how-to-add-custom-fields-sales-order-sap-3
2.Using SE38 Transaction code and open SAPMV45A program.
You need to Modifying the Screen 8309 for Additional B Tab screen ( this step is required SAP Access Key ) but you not need to worry because this is change actually customer part and do not replace during upgrade SAP System.
how-to-add-custom-fields-sales-order-sap-2
You need to change 8309 and add your custom field into that’s screen, in this sample you may add field SATISF from table ZTB_SATISFACTOR into that’s screen.
how-to-add-custom-fields-sales-order-sap-4
After you finished modify 8309 screen, you can activate it. and you can go to VA03/VA02/VA01 SAP Transaction code to see your field that you’ve added before.
how-to-add-custom-fields-sales-order-sap-5
3. Create Implicit Enhancement for PBO Modules for screen 8309.
You need to create implicit enhancement for PBO Modules in ABAP Include MV45AO0Z.  Press Shift + F4 in ABAP Editor to create Enhancement. See the following picture.
how-to-add-custom-fields-sales-order-sap-7
After that go to menu Edit -> Enhancement Operatios->Show implicit Enhancement Options.  Position the cursor on the highlighted implicit enhancement right click and choose Enhancement Operations->Create Implementation to create enhancement MV45AO0Z.
In this enhancement you can write your ABAP Coding for PBO Module.
In screen 8309 you need to create Implicit Enhancement to declare screen flow PBO modules get_satisfactor.
how-to-add-custom-fields-sales-order-sap-10
Click Change button and then click Insert . Write your screen flow module get_satisfactor_data.
4. Create Implicit Enhancement for PAI Modules for screen 8309 ( Optional ).
You can create implicit enhancement for PAI Modules in include MV45AI0Z for the coding of module PAI. This is optional upon your need.
5. Create Enhancement for saving additional in MV45AFZZ.
You can coding your ABAP Code in implicit enhancement within USEREXIT_SAVE_DOCUMENT user exit in MV45AFZZ.
So if you want to more understand about SAP Sales and Distribution Enhancement, I Highly recomended that you check out ABAP SAP SD Enhancement Completed Tutorial .

Fuente / Source:

Comentarios

Entradas más populares de este blog

A to Z of OLE Excel in ABAP 7.4

  SAP users, both business and end users always need to download the output of a report to spreadsheet and do their analytics.   The standard excel output from a report is very simple process but it is old fashioned and the spreadsheet looks quite boring.  There is no default formatting and the users have to do all the hard work of changing the fonts, coloring the texts, marking the borders etc. Updated 16th Aug 2019  –  If you are working in non-ABAP 7.4 (below), there is complete reference program for you too. Go to the end of this article.  Thank you  Legxis  ( LeonievonK ) for the share. I acknowledge, whatever I mentioned above can be achieved in many ways programmatically. We can do it in the old traditional ABAP way but  providing multiple tabs in the spreadsheet and formatting is quite tricky with non  OLE  method. OLE = Object Linking and Embedding The high level agenda of this article is to be the  G.O.A.T.  (ple...

CÓMO ENCONTRAR LA BADI Enhacements Exits

¿Cómo encontrar la BADI que necesitamos? Existen varios caminos para encontrar la BADI que requerimos en un momento dado, vamos a ver algunas de ellas: Opción A. Entramos a la transacción SE80, buscamos en el explorador la clase “CL_BADI_FLT_DATA_TRANS_AND_DB”, luego ubicamos el método “ACT_IMPS_PER_FLT_VAL” y entramos al código, apelamos al buscador para ubicar el comentario “read BADI attributes”, y justo debajo del SELECT que veremos, fijamos un break-point. Luego, abrimos otro modo para ejecutar la transacción que se desea analizar, y veremos que se detendrá cada vez que pase por el break-point fijado, ahora revisamos en el debugger los campos “exit_name” e “internal” para dar con las BADI’s que toca dicha transacción. Opción B. Utilizamos la transacción SE93 para ver los atributos de la transacción estándar que queremos evaluar, buscamos su paquete (clase de desarrollo), luego nos dirigimos a la transacción SE18, optamos por la opción de búsqueda ampliada, indicam...