Entering content frame

This graphic is explained in the accompanying text Example: Customer-Specific Input Help for WBS Elements Locate the document in its SAP Library structure

You want to replace the standard Input Help for WBS Elements with a customer-specific Input Help by adding an additional column.

To do this, proceed as follows:

  1. Define a new class ZPicklistsWBS. This class must be implemented by Interface IPicklistCustomer.
  2. Implement method getColumnId in class ZPicklistsWbs. In this method, define field POSID as the return value.
  3. Implement method getPicklistValues in class ZPicklistsWbs. Define the customer-specific Input Help in this method.

 

Java Source Code

 

package com.sap.expense.customer.examples;

 

import com.sap.expense.model.Employee;

import com.sap.expense.model.modules.IEmployee;

import com.sap.expense.model.modules.IPicklistUI;

import com.sap.expense.tools.DBHelper;

 

import com.sap.mycats.basics.tools.badi.*;

import com.sap.mycats.basics.customer.userInterface.IPicklistCustomer;

 

/** The following record mus be defined in the customer file

* C:\me\wwwroot\te_customer\extensions\ci_tables.xml

* <table name="Z_PICKLIST_POSID" mode="update">

* <columns>

* <column name="PERNR" type="T_PERNR"/>

* <column name="POSID" type="T_PS_POSID"/>

* <column name="POST1" type="Z_PS_POST1"/>

* <column name="ZZBASEPRDCODE" type="T_ZZBASEPRDCODE"/>

* <column name="PRODUCT_TYPE" type="T_PRODUCT_TYPE"/>

* <column name="KUNNR" type="T_KUNNR"/>

* <column name="NAME1" type="T_NAME1"/>

* <column name="LAISO" type="T_LAISO"/>

* <column name="SPTXT" type="T_SPTXT"/>

* <column name="PPERNR" type="T_PERNR"/>

* <column name="PARTNER" type="T_PARTNER"/>

* </columns>

* <indicees>

* <index name="primary" isprimary="yes">

* <index-column name="PERNR"/>

* <index-column name="POSID"/>

* </index>

* </indicees>

* </table>

*

*/

public class ZPicklistWbs implements IPicklistCustomer {

public final static String WBS_ELEMENT = "POSID";

public final static String Z_PICKLIST_POSID = "Z_PICKLIST_POSID";

 

public ITableReadWrite getPicklistValues (char anApplication,IRecordReadOnly aRecord) {

ITableReadWrite picklistWbs;

try {

picklistWbs = new DBHelper().select(Z_PICKLIST_POSID);

return picklistWbs;

} catch (Exception e) {

e.printStackTrace();

picklistWbs = null;

}

return picklistWbs;

}

 

public String getCoulumnId () {

return WBS_ELEMENT;

}

 

public String getColumnTitle () {

return null;

}

 

}

 

 

Leaving content frame