Advanced Customization > Services and Infrastructure Customization > Customizing MPMLink > Launching Edit Plant Information Window from Change Task > Procedure
  
Procedure
1. Add a custom action in the baseClient-actions.xml file:
<action name="<your_action_name>" multiselect="true" ajax="row" selectRequired="true" uicomponent="ENTERPRISE_DATA_TABLE">
<description></description
<command class="<your_custom_formprocessor>" method="execute"/>
<includeFilter name="mpmlinkInstalledValidator"/>
<includeFilter name="hideForNewObjectInWorkspace" />
<includeFilter name="isEnterpriseDataServiceInstalledValidation"/>
<includeFilter name="com.ptc.windchill.baseclient.client.internal.filter.IsNotStandardCCFilter"/>
<nonSupportedTypes>
<type value="com.ptc.windchill.enterprise.data.enterpriseData.CommonEnterpriseData"/>
</nonSupportedTypes>
</action>
2. Add a custom service entry for AttributeEditorBeanCreatorDelegate in the BaseClient.service.properties.xconf file:
<Service context="default" name="com.ptc.windchill.baseclient.server.AttributeEditorBeanCreatorDelegate">
<Option cardinality="singleton" requestor="java.lang.Object" serviceClass="<your_custom_service_impl_class>" selector="<your_selector_name>" />
</Service>
3. Add a custom service implementation for AttributeEditorBeanCreatorDelegate.
The custom service implementation class must implement the AttributeEditorBeanCreatorDelegate interface and override the following methods sequentially in the given order:
Method
Usage
PlantFunctionalDataAttributeBean getPlantFunctionalDataAttributeBean(NmCommandBean clientData) throws WTException;
Accepts clientData and returns the PlantFunctionalDataAttributeBean object which holds all the necessary information, such as object types and plants, to launch the Edit Plant Information window.
Set<EnterpriseDatable> getValidSelectedDatables(NmCommandBean clientData, PlantFunctionalDataAttributeBean bean)throws WTException;
Accepts clientData and PlantFunctionalDataAttributeBean, validates the selected objects, and returns the valid ones.
NavigationCriteria createNavigationCriteria(NmCommandBean clientData, PlantFunctionalDataAttributeBean bean) throws WTException;
Accepts clientData and PlantFunctionalDataAttributeBean, and returns the navigation criteria required to launch the Edit Plant Information.
void setActiveView(String viewName, String tableId) throws WTException;
Accepts viewName and tableId to set the given view as the active view for the table in the Edit Plant Information window.
String getPlantDataEditorUrl(NmCommandBean clientData, NavigationCriteria navigationCriteria) throws WTException;
Accepts clientData and NavigationCriteria, and returns the javascript URL required to open the Edit Plant Information window.