Skip to Content

Additional Customer Fields in COOIS output


This is one of the frequently discussed topics in production planning and I find this as one of the most frequent requirement coming from the customers to have additional data in the COOIS output layout. In this document the process of adding customer specific extra columns in the COOIS output using BAdI WORKORDER_INFOSYSTEM is discussed in detail. As of release 4.7, you can use this BAdI to fill up customer fields in the COOIS/ COOISPI output.


In this document we will discuss addition of Document number (MARA-ZEINR) in the component overview of COOIS. We will fetch MARA-ZEINR maintained for the components and display them in the COOIS output.

This modification can be divided in two steps:

(a) extension of the structure IOOPCOMP that is used in the component output of COOIS.

     The mappings of the important List Type in COOIS and the output structure are given here:


COOIS List Type List Name Output Structure
PPIOD000 Documented Goods Movements IOMAMO
PPIOE000 Trigger points IOOPMST
PPIOF000 Production Resource/ Tools IOOPPRT
PPIOG000 Automatic Goods Movements IOGOMO
PPIOH000 Order Headers IOHEADER
PPIOK000 Capacities IOOPCAP
PPIOM000 Components IOOPCOMP
PPIOO000 Operations IOOPER
PPIOP000 Production List IOPRODLIST
PPIOQ000 Purchase Requisitions IOOPPREQ
PPIOR000 Confirmations IOCONF
PPIOW000 Goods Movements with Error IOGMER

(b) implementation of the BAdI WORKORDER_INFOSYSTEM.

This document assumes that the person in charge is a technical/ techno-functional consultant and has the required expertise to understand few ABAP code lines.

Step-by-Step Process:

(a) Extension of structure IOOPCOMP:

Log-in to the development server.

Go to SE11 transaction, input structure IOOPCOMP and click on display:


Scroll down to the bottom, and double-click on type CI_IOOPCOMP:


System asks for confirmation to create the structure, confirm the message.

Provide a description for the structure CI_IOOPCOMP, that will contain the additional fields in the component list of COOIS, and maintain the necessary field ZEINR (the data type can be found in SE11 transaction, table MARA and the associated component type for the ZEINR field).


Save and activate the structure, the system will ask for a suitable package and a workbench request – provide them as required. We need to transport this workbench request to the Quality and the Productive system.

System will display warning during activation, override the message after going through the activation log.

Click back, and note that the new field ZEINR is appended to the structure IOOPCOMP now.



We will use this BAdI to fill up the data for this additional field that has been added to the IOOPCOMP structure.

Go to SE18 transaction, enter the BAdI name and click on ‘display’:


Access menu function Implementation -> Create:


Provide an implementation name, say ‘YCOOIS’. In the next screen, provide a description (implementation short text) of this implementation:


Go to the interface tab and double-click on the method TABLES_MODIFY_LAY:


The system asks for a save, save the same using the same package and workbench request number used earlier.

Insert the required code to fetch data from the MARA table and modify the structure CT_IOOPCOMP:


Save and Activate the method. Go back and activate the BAdI implementation.



Now that the implementation has been done, choose a test data and execute COOIS. Adjust the output layout of COOIS component list.


We adjust the template and observe the data updated in the added column:


The process is now complete, import the workbench request to the Quality and Production system after proper testing.

Related OSS Notes:

540779 – FAQ: Information system

434123 – Filling and displaying own fields in information system

615206 – COOIS: BAdI order delay in IOHEADER

615176 – COOIS: BAdI for predecessor status

Thanks for going through the detailed document. Do revert back if you have more queries or feedbacks/ inputs so that I can update the document.

Best Regards,


You must be Logged on to comment or reply to a post.