Quantcast
Channel: SCN : Document List - Enterprise Asset Management (SAP EAM)
Viewing all articles
Browse latest Browse all 842

User-Fields in QM and PM/CS Notifications : Screen-Exit QQMA0001

$
0
0

Introduction

One of the very frequently asked questions in this space, is about the subject matter, i.e., How can I add Custom fields to a Notification? A documentation on this subject would be helpful to the forum for ready reference.

 

Objective

This documentation is intended to enable the readers to create the Custom fields in different tabs of Maintenance Notification, update the Noyification Master data Table and also display these fields in IW28 / IW29 output.

 

Let's see how it is done.

 

Part1

Create Custom fields in the Notification Table

The table of our context is QMEL. We need to append our Z-fields to this through the include structure namely CI_QMEL.

The process of creating any custom field starts with creating a Data Element with desired Type and Length or with desired Domain name and with the Field Labels we want to have for the Customer fields. For our Demo, we have created Two Data Elements, namely :

  1. Z_DELAY  - Type DEC Len 3 Dec 1  and Field Label ‘Delay(H)’
  2. Z_REASON - Domain TXT40 and Field Label ‘Reason for Delay’)

 

Now let us create our Customer fields.

Run Tcode SE11 --> give value QMEL in the Database Table field --> Click on Display. Scroll-down to find include tableCI_QMEL. Double click on this,  Go to Change mode and Add Two new fields of our interest as shown in the picture and Activate.

ci_qmel.JPG

 

As seen in the picture, we have created Two Customer-Fields namely ZZDELAY and ZZREASON. It is essential for all Customer fields used in Enhancement purposes to be prefixed with ZZ.

 

Part2

Enhancement and Screen-Exit

1, Create an Enhancement Project say ZPMNOT using Tcode CMOD.

cmod.JPG

 

2. Assign Enhancement QQMA0001 to this project .

cmod_!.JPG

 

3. Click on Components in the picture above to reach this screen.

cmod_2'.JPG

 

4. Activate by clicking on the Activate Icon (shown in picture above)

Now the screen is like this.

cmod_2.JPG

 

As we see here, there are several screen-exits (27) and Two Function-Exits namely EXIT_SAPMIWO0_008 and EXIT_SAPMIWO0_009  in this enhancement.

Double Click on this screen number to create a Sub-Screen for holding our Custom Fields. You’ll get this pop-up.  Press Enter and Continue.

103 create.JPG

 

You’re in the screen below, where you’ll  give a Description,  Select the Subscreen Radio button,  Save and Activate.

subscreen create.JPG

 

Click on Layout Arrow in the Application Toolbar of (See the picture above) to reach the Screen-Painter pop-up window, where we will be creating :

  1. A Box to hold our Z-fields
  2. Text Fields to for Z-field  labels
  3. Input Fields for Z-fields

screen-painter.JPG

 

The input fields should be referred to the Dictionary fields we have just created. (QMEL-ZZDELAY and QMEL-ZZREASON) as shown above.

 

Activate the screen-painter.

 

Part3

Codes to be given in Function-Exits


Go to the following screen

Codes in Exits.jpg

 

Double click on the Function-Exit EXIT_SAPMIWO0_008 and put the following code in the include  ZXQQMU07 .

 

*---------------------------------------------------------------------------------------------

TABLES: QMEL.

MOVE-CORRESPONDING I_VIQMEL TO QMEL.

*---------------------------------------------------------------------------------------------

 

Similarly put the following code in the include  ZXQQMU08   of the Function-Exit EXIT_SAPMIWO0_009.

 

*---------------------------------------------------------------------------------------------

MOVE-CORRESPONDING QMEL TO E_VIQMEL.

*---------------------------------------------------------------------------------------------


Part4

SPRO setting to be done

Navigate to the Overview of Notification Type in SPRO.

spro1.JPG

Select your Notification Type (Here we are doing it in M2) and Enter the Screen Structure for Extended view

spro2.JPG


Give the following settings in the Malfunction Tab (the tab where we want to have our custom fields)

spro.JPG


Almost Done


Let’s see the effect of work done so far.

Create a Maintenance Notification (IW21). You will see the following addition of subscreen area in the Malfunction Start/End  Tab.

IW21.JPG

Enhancement has been added here by the system, in which our Custom fields appear with their labels and the input fields.

 

Now let’s add some values in these fields and Save the Notification.

values in z-field.JPG

 

Run IW22, open the Notification and verify whether the values are updated to table or not. If they are appearing  as you have entered and saved, this means the QMEL table has been updated with these values when Notification was saved.

 

Part5

Let's have these Custom fields in the Notification list reports namely the ALV of Tcode IW28/29 (QM10/QM11 in case of Quality Notifications)

So far we have succeeded in creating our Custom fields and updating the values to the Notification Master data. Next natural requirement of a user would be to have these fields in IW28/29 ALV screen. For this purpose we, need to create an Append Structure in the Structure RIHQMEL_LIST (RQMQMEL1 in case of QM10/QM11 reports), as shown in the picture below. The Tcode is SE11 again for this task. Here we have created an Append Structure named ZDLAY and in this structure we have added both the Custom fields.

rihqmel_list.JPG


Now let's create few more Notifications, with custom fields filled with some values. Now run IW28 with selection parameters to display these Notifications we created. Click on the icon shown , You'd find the Custom fields in the Column-set list, Bring them to Displayed list on the Right hand side.

iw28.JPG

 

Related SAP Note: 370191  (Image of the note is attached herewith for the benefit of the members who can not access OSS)

 

 

Part6

Now if you go to IW23 of any of these Notifications, unlike all other greyed-out fields, the Custom fields will be seen Editable. Though there is no provision to Save the edits here, you’d definitely like to have these fields too in Greyed-out mode.

 

For this we need to write a small code in the PBO (Process Before Output) module of the screen 0103 we have created.  Double click on the Screen number 0103 of the enhancement,

Codes in Exits.jpg

 

Un-comment line MODULE STATUS_103. and D’Click on the STATUS_0103 of the PBO module. Insert the following code between the MODULE, END MODULE lines like this.

------------------------------------------------------------------------------------------------------------------------

MODULE STATUS_0103 OUTPUT.

 

     IF SY-TCODE = 'IW23'.

          LOOP AT SCREEN.

               SCREEN-INPUT = '0'.

               MODIFY SCREEN.

          ENDLOOP.

     ENDIF.


ENDMODULE.

-------------------------------------------------------------------------------------------------------------------------

 

Lastly Rememebr to
Activate the Function GroupXQQM from Tcode SE80. Right click on the Function Group and click on the Activate option

untitled1.jpg

 

...... and thus we reach to the end of this knowledge sharing Documentation.

 

 

Note

1. As this is largely a Technical job, it is recommended to be developed through an experienced ABAPer, especially Part1 which involves Activating the Standard table QMEL.

2. The Environment of Author is ECC 6.0 with no EHPs, hence the document applicability.

 

Expecting this document too would be of use to many members from mainly from EAM and QM spaces.

 

Related content

User-fields in Catalog Tabs of Notifications



*Author's other Posts




Thank you

KJogeswaraRao


Viewing all articles
Browse latest Browse all 842

Trending Articles