Oracle® Agile Product Lifecycle Management for Process
PQM Extension Library Solution Pack
Extensibility
Pack 3.5
E42099-01
August 2013
Agile Product Lifecycle Management for Process
Copyright © 1995, 2013, Oracle and/or its affiliates. All rights reserved.
This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.
The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.
If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable:
U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.
This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.
Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.
Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.
This software or hardware and documentation may provide access to or information on content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services.
Contents
Introducing the PQM Extension Library
Installing/Upgrading the PQM Extension Library
Application Installation/Upgrade
Configuring the PQM Extension Library
CustomFormulationExtensions.xml
Configurations for Notifications
Configurations for Grid Alerts
Configurations for Object Alerts
Plugin Definition: CustomPluginExtensions.xml
This guide is intended for client programmers involved with integrating Oracle Agile Product Lifecycle Management for Process. Information about using Oracle Agile PLM for Process resides in application-specific user guides. Information about administering Oracle Agile PLM for Process resides in the Oracle Agile Product Lifecycle Management for Process Administrator User Guide.
Descriptions and illustrations of the Agile PLM for Process user interface included in this manual may not match your installation. The user interface of Agile PLM for Process applications and the features included can vary greatly depending on such variables as:
· Which applications your organization has purchased and installed
· Configuration settings that may turn features off or on
· Customization specific to your organization
· Security settings as they apply to the system and your user account
For information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program website at http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc.
Oracle customers have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs if you are hearing impaired.
Oracle Software Delivery Cloud (OSDC) provides the latest copy of the core software. Note the core software does not include all patches and hot fixes. Access OSDC at:
http://edelivery.oracle.com.
This guide describes how to install, configure, and use the PQM Extension Library Solution Pack. Solution packs are designed to be pluggable modules that can be added to the Agile PLM for Process application suite without modifying the existing release code base.
The PQM Extension Library allows users in GSM and SCRM to have visibility to PQM objects that are created. This will allow them to see problem areas more quickly and thus make better business decisions. This solution pack has been built on top of a 6.1.1 core feature for extensible columns. For more information on configuration of those extensible columns, please refer to the Agile PLM for Process Extensible Columns Guide in the Agile Product Lifecycle Management for Process Extensibility Pack v3.1.
The PQM Extension Library is composed of two themes; object notifications and grid notifications.
These are notifications that show up on a specification in GSM or a Company/Facility in SCRM.
The purpose of the Action Menu Icon is to show the user very quickly if there are quality concerns for the object they are opening.
The Action menu icon will show a red caution icon if there are any open issues or actions associated to the active object. Open quality concerns will be in a status marked with the submitted, released or review tags. If no issues or actions exist, a green check icon will be displayed.
Object with Issues |
Object without Issues |
|
|
This logic is configurable, see the configuration section for more details.
The purpose of the Notification Panel is to show the user when they open the object what types of quality concerns exist. This notification is only presented the first time a user visits an object.
In GSM, the alert will appear when there are one or more open issues with a severity of S1.
In SCRM, the alert will appear when there are one or more open issues with a severity of S1 or if there are one or more failed audits in the last 180 days. This notification is only presented the first time a user visits an object.
This logic is configurable, see the configuration section for more details.
Object notifications have been added to the following locations:
Application |
Object |
GSM |
All Specifications |
SCRM |
Company |
SCRM |
Facility |
The purpose of the count is to quickly show the user how many quality concerns exist for a given item within the grid.
Specification grids will show a count when there are open issues or open actions associated to the specification listed in the row. Open quality concerns will be in a status marked with the submitted, released or review tags. If no issues or actions exist, a 0 will be displayed.
Supplier grids in GSM will show a count when there are open issues, open actions, or audits associated to the company/spec pairing or the facility/spec pairing. The count will also include open issues and actions that are tied directly to the facility without an affected item or when it is associated to the company without a facility or affected item. If no issues, actions, or audits exist, a 0 will be displayed.
Spec-Related Sourcing Approval grids in SCRM will show a count when there are open issues, open actions, or audits associated to the facility/spec pairing. If no issues, actions, or audits exist, a 0 will be displayed.
This logic is configurable, see the configuration section for more details.
The purpose of the alert is to notify the user if any of the issues included in the count are of special importance or severity.
Specification grids will show an alert (!) when there are one or more open issues or actions that have a severity of S1.
Supplier grids in GSM and Spec-Related Sourcing Approval grids in SCRM will show an alert (!) when there are one or more open issues that have a severity of S1 or if there are one or more failed audits in the last 180 days.
This logic is configurable, see the configuration section for more details.
Grid Notifications have been added to the following locations:
Application |
Object |
Grid |
GSM |
Equipment Specification |
Suppliers |
GSM |
Formulation Specification |
Formulation Tab Inputs |
GSM |
Formulation Specification |
Formulation Tab Outputs |
GSM |
Formulation Specification |
Process Tab Input Items (Bill of Materials and Packaging) |
GSM |
Formulation Specification |
Process Tab Output Items |
GSM |
Material Specification |
Suppliers |
GSM |
Menu Item Specification |
Menu Item Build |
GSM |
Packaging Specification |
Sub Components |
GSM |
Packaging Specification |
Printed Packaging Material |
GSM |
Packaging Specification |
Suppliers |
GSM |
Printed Packaging Specification |
Parent Packaging Material |
GSM |
Printed Packaging Specification |
Suppliers |
GSM |
Product Specification |
Suppliers |
GSM |
Trade Specification |
Material Specification |
GSM |
Trade Specification |
Next Lower Level Items |
GSM |
Trade Specification |
Parent Items (Calculated) |
GSM |
Trade Specification |
Packaging Materials |
GSM |
Trade Specification |
Alternate Packaging |
GSM |
Trade Specification |
Suppliers |
SCRM |
Facility |
Specification-Related Sourcing Approvals |
Note: If you are running the Supplier Portal and GSM applications in the same environment the grid notifications will be printed in supplier portal.
You must have v6.1.1.1.0 of PLM for Process installed to use this solution pack.
Note: If your PQM is setup to run in a different database, you will not be able to use this solution pack.
To install the PQM Extension Library solution pack:
1. Create a backup of the [Prodika Home] directory.
2. Unzip the contents of ExtensibilityPack_v3.5_Release.zip.
3. Unzip the contents of the SolutionPacks\PQMExtensionLibrary\PQMExtensionLibrary.zip and note the location.
Database scripts need to be executed for new installations and upgrades of PQM Extension Library.
1. Create a backup of the Prodika database.
2. Apply the Database Scripts
a. SQL Server
i. Open a command prompt and navigate to the directory where you unzipped the solution pack.
ii. Change directories (cd) to the Database directory.
iii. Apply the scripts using the following call to the ApplyScripts.exe utility:
ApplyScripts -c "server=<database_server>;uid=<user>; password=<password>;database=<database>" –f PQMExtensionLibrary.xml
iv. After the ApplyScripts call, you can confirm that the database scripts have been applied successfully when the system prompts you with the following message: "Complete - with no errors"
b. Oracle
i. Open a command prompt and navigate to the directory where you unzipped the solution pack.
ii. Change directories (cd) to the Database directory.
iii. Apply the scripts using the following call to the ApplyScripts.exe utility:
ApplyScripts -c "User Id=<user>;Password=<password>; Data Source=<datasource>" -dbvendor="orcl" –f PQMExtensionLibrary-orcl.xml
iv. After the ApplyScripts call, you can confirm that the database scripts have been applied successfully when the system prompts you with the following message: “Complete - with no errors”
The PQMExtensionLibrarySetup.exe file supports installation and upgrade of the PQM Extension Library Solution Pack.
1. Ensure the Database Setup has been completed.
2. Run the PQMExtensionLibrarySetup.exe file from the location where you unzipped the solution pack.
3. Restart IIS.
4. Open the Application and verify the new columns and object notifications exist in the locations listed above.
1. Ensure the Database Setup has been completed.
2. If you have made changes to any of the following, make sure to backup the files before running the upgrade:
a. PRODIKA_HOME\config\extensions\CommonPluginLookup.xml
3. Run the PQMExtensionLibrarySetup.exe file from the location where you unzipped the solution pack.
4. Once the installer has completed, merge any of your changes to the files listed above into the new files from the installer.
5. Restart IIS.
Open the Application and verify the new columns and object notifications exist in the locations listed above.
The PQM Extension Library is extremely configurable. This section will outline important files used to enable the solution pack. The installation process handles the initial setup for you but you may want to modify it based on your implementation.
Note: When reviewing the xml files after the installer runs, it is possible the order the elements are listed in the documentation will differ from the files on your system. XML is not particular about order, so simply verify the elements are the same from a content standpoint.
The CustomerSettings.config file is located in the [InstallDirectory]\Config\Custom folder and is where the grid notifications will be turned on or off with the exception of the Formulation Spec grid notifications. The installation process turns all locations on by default. If you want to turn off a particular location, go to the feature config section and set the value to “false” for the locations you do not wish to use. You can determine the location based on the config key.
Here is an example of a config key for the grid notification column on a GSM Menu Item Specification:
<add key="GSM.Menu.ItemBuild.XCol.Enabled" value="true" configDescription="enable the extensible column in the GSM Menu specification Menu Item Build grid." />
The CustomFormulationExtensions.xml file is located in the [InstallDirectory]\Config\Extensions folder and is where the grid notifications will be turned on or off for Formulation Specifications. The installation process turns all locations on by default.
Here is an example of a config key for the grid notification column on the input grid of Formulation Specifications. These should be added to the <FormulationInputFlexColumns> node:
<FormulationColumnExtension ID="pqmItems1" IsCore="false" CalculationPaths="*" UseIn="FormulationTab,PrintMain,PrintMainPackaging" HeaderTranslationId="" ColumnPosition="15" VisibilityHandler="true" EditabilityHandler="false" ExtensibleColumnPluginName="PQMItemsForInput" />
For more information on the details of this extension point, please refer to the Agile Product Lifecycle Management for Process Extensible Column Guide located in the Agile Product Lifecycle Management for Process Extensibility Pack documentation on OTN.
The CommonPluginLookup.xml file is located in the [InstallDirectory]\Config\Extensions folder and is where the plugin configuration is done. The entire solution can be configured using this set of common configurations or you can configure each location specifically using the configuration overrides in the location specific code (js files). Out of the box, the location specific code is setup to pull the values from the common config.
For more information on location specific code, go to the Advanced Configuration.
Note: For more detailed information around what options are available in the CommonPluginLookup.xml file, go to the Configuration Best Practices section.
These configurations control grid and object notifications in GSM & SCRM.
This table defines the naming convention used in the configuration file. All configuration keys define the location using the prefixes in the table below. For example PQM_spec_severity controls the severity settings for all GSM Spec grids.
Location |
Configuration Key |
GSM Spec Grids |
PQM_spec_KEY |
GSM Supplier Grid |
PQM_spec_supplier_KEY |
GSM Action Menu |
PQM_spec_action_menu_icon_KEY |
SCRM Spec Related Sourcing Approval Grid |
PQM_supplier_KEY |
SCRM Action Menu |
PQM_supplier_action_menu_icon_KEY |
This table defines the concepts and keys available for configuration:
Configuration Type |
Key |
Values |
Notes |
Revision Specific |
isRevisionSpecific |
true/false |
Determines if the data being returned will only show issues/actions/audits that are tied to a specific revision of a spec. Default: true |
Pack Size |
isPackRelated |
true/false |
Determines if the data being returned will only show for the selected pack size. Only used for materials specs tied to trade and formulation specs. Default: false |
Workflow Status |
statusBehaviorID |
Blank, ALL or a valid behavior id |
The list of behavior id’s that will be included in the returned data set. Default: 202,203,204 (Submitted, Review or Released) |
Severity |
Severity |
Blank, ALL, NULL or a valid severity pkid |
The list of severities that will be included in the returned data set. Default: ALL |
Action Types |
actionTypes |
Blank, ALL or valid action type pkid |
The list of action types that will be included in the returned data set. Default: ALL |
Issue Types |
issueTypes |
Blank, ALL or valid issue type pkid |
The list of issue types that will be included in the returned data set. Default: ALL |
URL |
reportURL |
Valid URL |
The URL where the user will be directed when they click on the number of items displayed in the new column. Default: Blank |
Audit Types |
auditTypes |
Blank, ALL or valid Audit type pkid |
The list of audit types that will be included in the returned data set. Default: ALL |
Audit Results |
auditResults |
Blank, ALL, NULL or valid Audit result pkid |
The list of audit results that will be included in the returned data set. Default: ALL |
Include Related Items |
nonSpecRelatedItemsIncluded |
true/false |
When set to true, the data being returned will include issues/actions/audits not specifically tied to the spec. GSM Default: true SCRM Default: false |
Include Company Only |
includeCompanyOnlyItems |
true/false |
When set to true, the data being returned will also include quality items tied to only a company. GSM Default: true SCRM Default: false |
These configurations control grid alerts in GSM & SCRM.
This table defines the naming convention used in the configuration file. All configuration keys define the location using the prefixes in the table below. For example PQM_spec_alert_severity controls the severity settings for all GSM Spec grids.
Alerts use a concept of a threshold to decide if it is shown or not. The threshold value is ignored if the corresponding configuration type is blank. For example, if more than 1 issue exists with a severity of S1, show the alert.
Location |
Configuration Key |
GSM Spec Grids |
PQM_spec_alert_KEY |
GSM Supplier Grid |
PQM_spec_supplier_alert_KEY |
SCRM Spec Related Sourcing Approvals Grid |
PQM_supplier_alert_KEY |
This table defines the concepts and keys available for configuration:
Configuration Type |
KEY |
Values |
Notes |
Severity |
severity |
Blank, ALL, NULL or a valid severity pkid |
The list of severities that will trigger the inclusion of the alert icon in the column. Default: 2210339d1d4a-7b2f-436a-8ff6-5e4d8bcfa3b1 (S1 pkid) |
Severity Threshold |
severity_threshold |
Valid Number |
The number of items for a given severity that are required before the alert icon is shown. Default: 1 |
Action Types |
actionTypes |
Blank, ALL or valid action type pkid |
The list of action types that will trigger the inclusion of the alert icon in the column. Default: Blank |
Action Types Threshold |
actionTypes_threshold |
Valid Number |
The number of items, for a given action type, that are required before the alert icon is shown. Default: 0 |
Issue Types |
issueTypes |
Blank, ALL or valid issue type pkid |
The list of issue types that will trigger the inclusion of the alert icon in the column. Default: Blank |
Issue Type Thresholds |
issueTypes_threshold |
Valid Number |
The number of items, for a given issue type, that are required before the alert icon is shown. Default: 0 |
Audit Types |
auditTypes |
Blank, ALL or valid audit type pkid |
The list of audit types that will trigger the inclusion of the alert icon in the column. Default: ALL |
Audit Results |
auditResults |
Blank, ALL, NULL or valid audit result pkid |
The list of audit results that will trigger the inclusion of the alert icon in the column. Default: 221056d1254e-0a31-4bb6-b938-22a838387970 (Fail pkid) |
Audit Date Limit |
auditDateLimit |
Valid Number |
The number of days back to search for audits that will trigger the inclusion of the alert icon in the column. Default: 180 |
Audit Threshold |
audit_threshold |
Valid Number |
The number of items, for a given audit result that are required before the alert icon is shown. Default: 1 |
Status |
statusBehaviorID |
Blank, ALL or a valid behavior id |
The list of status behavior ids that will trigger the inclusion of the alert icon in the column. Default: Blank |
Status Threshold |
statusBehaviorID_threshold |
Valid Number |
The number of items, for a given behavior id, that are required before the alert icon is shown. Default: 0 |
These configurations control the notification panel alerts in GSM & SCRM.
This table defines the naming convention used in the configuration file. All configuration keys define the location using the prefixes in the table below. For example PQM_spec_notification_severity controls the notification panel based on the severity setting for all GSM Specs.
Alerts use a concept of a threshold to decide if it is shown or not. The threshold value is ignored if the corresponding configuration type is blank. For example, if more than 1 issue exists with a severity of S1, show the alert.
Notification panels have two configured components. One that defines the data set and another that determines what messaging shows in the panel.
Location |
Configuration Key |
GSM Specs Data Set |
PQM_spec_notification _KEY |
GSM Specs Alert |
PQM_spec_notification_alert_KEY |
SCRM Objects Data Set |
PQM_supplier_notification_KEY |
SCRM Objects Alert |
PQM_supplier_notification_alert _KEY |
Data Set location configurations are the same as the Configurations for Notifications section with the exception of: Pack Size, URL and Include Related Items.
This table defines the concepts and keys available for notification panel alert configurations:
Configuration Type |
KEY |
Values |
Notes |
Severity |
severity |
Blank, ALL, NULL or a valid severity pkid |
The list of severities that will trigger the inclusion of the message on the notification panel. Default: 2210339d1d4a-7b2f-436a-8ff6-5e4d8bcfa3b1 (S1 pkid) |
Severity Threshold |
severity_threshold |
Valid Number |
The number of items for a given severity that are required before the message is shown. Default: 1 |
Action Types |
actionTypes |
Blank, All or valid action type pkid |
The list of action types that will trigger the inclusion of the message on the notification panel. Default: Blank |
Action Types Threshold |
actionTypes_threshold |
Valid Number |
The number of items, for a given action type, that are required before the message is shown. Default: 0 |
Issue Types |
issueTypes |
Blank, ALL or valid issue type pkid |
The list of issue types that will trigger the inclusion of the message on the notification panel. Default: Blank |
Issue Type Thresholds |
issueTypes_threshold |
Valid Number |
The number of items, for a given issue type, that are required before the message is shown. Default: 0 |
Audit Types |
auditTypes |
Blank, ALL or valid audit type pkid |
The list of audit types that will trigger the inclusion of the message on the notification panel. Default: Blank |
Audit Results |
auditResults |
Blank, ALL, NULL or valid audit result pkid |
The list of audit results that will trigger the inclusion of the message on the notification panel. Default: 221056d1254e-0a31-4bb6-b938-22a838387970 (Fail pkid) |
Audit Date Limit |
auditDateLimit |
Valid Number |
The number of days back to search for audits that will trigger the inclusion of the message on the notification panel. Default: 180 |
Audit Threshold |
audit_threshold |
Valid Number |
The number of items, for a given audit type, that are required before the message is shown. Default: 0 |
Status |
statusBehaviorID |
Blank, ALL or a valid behavior id |
The list of status behavior ids that will trigger the inclusion of the message on the notification panel. Default: Blank |
Status Threshold |
statusBehaviorID_threshold |
Valid Number |
The number of items, for a given behavior id, that are required before the message is shown. Default: 0 |
For configurations in the CommonPluginLookup.xml file, you can include multiple items by providing a common separated list. For example, if I wanted my data to be returned for status behavior ids of 202, 203, 204 and 205, I would add each of the ids to the value attribute separated by a comma.
<entry name="PQM_spec_statusBehaviorID" value="202,203,204,205"/>
For configurations in the CommonPluginLookup.xml file, you can exclude items by putting an exclamation point (“!”) in front of the value. For example, if I wanted my data to be returned for behavior ids 202 and 203 but wanted to exclude 204, I would add each of the ids to the value attribute separated by a comma and put an exclamation point in front of 204.
<entry name="PQM_spec_statusBehaviorID" value="202,203,!204"/>
Note: Exclusion is not supported for alert configurations.
For configurations in the CommonPluginLookup.xml file that are left as blank, those items will not be included in the query. So if you leave the value as “” on the behavior id entry, behavior id will not be included in the query for your data.
<entry name="PQM_spec_statusBehaviorID" value=""/>
For configurations in the CommonPluginLookup.xml file that have a value set as zero, those items will be ignored if the corresponding configuration type is blank. So in the example below, there is no threshold being respected for action types.
<entry name=”PQM_spec_alter_actionTypes” value = ““/>
<entry name="PQM_spec_alert_actionTypes_threshold" value="0" />
Note: Values used in the Out of the Box URL are internal ids so remember to enforce security.
For configurations in the CommonPluginLookup.xml file that are URLs, the solution pack will be appending the pkid of the active object to the end of the URL entered in the config file. If you click on a grid notification count, the URL value configured will have the pkid of the active row you are on added to the end of it.
For example, <entry name="PQM_spec_reportURL" value=" https://www.company.com/mycustomreport?=" /> would produce the following URL:
https://www.company.com/mycustomreport?=[PKID]
This will take you to your customer reports and include the active row pkid that could be used as a report parameter.
Note: Make sure any entries into the commonpluginlookup.xml file have all “&” escaped. This is done by replacing “&” with “&”. For example: <entry name="PQM_spec_reportURL" value="http://[server]/ReadyReports/readyreports.aspx?pkid=1108129aa1b6-b5d4-433e-8516-520cdacde120&ao="/>
The basic architecture of the solution pack is made up of a plugin which reads rules from the configuration files and then uses the JS File for each location to understand what data will be retrieved and how it will be displayed. This is described in the following picture:
This architecture allows each location to be controlled independently. So, for example, the logic for the material spec grid on a trade spec could be setup to work differently than the logic for the packaging material spec grid. In order to change the way a particular location works, you would need to modify the JS File for that location or write your own custom JS File. Once created, you would hook the new JS file to the plugin in the CustomPluginExtensions.xml file.
The CustomPluginExtensions.xml file is located in the [InstallDirectory]\Config\Extensions folder and is where the grid notifications and the object notification panels are tied to a plugin. The plugin code determines how the notifications will behave.
Each notification location is tied to a plugin. This plugin contains code that determines what data will be returned in the cells of the new grid notification. Below is an example of the plugin definition for the grid notification on the Next Lower Level Item grid on a Trade Specification in GSM:
<Plugin name="GSMTradeChildXColPlugin" FactoryURL="Class:Oracle.PLM4P.PQMExtension.Plugins.RelatedSpecPQMExtensionPluginFactory,PQMExtension$20|GSM.Trade.Child.XCol.js|200" ignoreInheritFromPluginName="true"/>
The configuration has some key parameters which are called out here:
<Plugin name="GSMTradeChildXColPlugin" FactoryURL="[Plugin Class Name]$[Column Width]|[JS File]|[ Performance Row Count]" ignoreInheritFromPluginName="true"/>
Note: Formulation Spec Extensible Columns have different parameters. For more information on parameters, please refer to the Agile PLM for Process Extensible Columns Guide in the Agile Product Lifecycle Management for Process Extensibility Pack v3.1.
The notification panel for GSM and SCRM are tied to plugins in the <NotificationPlugins> node of this file. This plugin contains code that determines what data will be returned in the notification panel. Below is an example of the plugin configuration for GSM Specifications:
<Plugin name="PQMIssuesSpecNotifierPlugin" usedIn="GSMSpec" FactoryURL="Class:Oracle.PLM4P.PQMExtension.Plugins.Notification.PQMItemsSpecBasedNotificationPluginFactory,PQMExtension$GSM.Spec.Notification.js"/>
The configuration has some key parameters which are called out here:
<Plugin name="PQMIssuesSupplierNotifierPlugin" FactoryURL="[Plugin Class Name]$[JS File]" usedIn="SCRM"/>
Parameter |
Description |
Plugin Class Name |
This is the name of the class. |
Column Width |
This is the width of the column. Out of the box, the width for the column is defined as 20. This will allow for up to 99 quality items and an alert icon to be shown in the field. If you have more than 99 quality items, the third digit or the alert icon may not be shown unless the column is resized. Only applicable to Grid Notifications. |
JS File
|
This is the name of the JS file located under [Install Directory]\config\Extensions\PluginDefinitions folder. |
Performance Row Count |
If the data grid the extensible column is being enabled on has more than 500 rows of data being returned, you could see performance implications. In order to eliminate this degradation, set the [Performance Row Count] parameter in the plugin config in the CustomPluginExtensions.xml file. Only applicable to Grid Notifications. |
The JS files are located in the [InstallDirectory]\Config\Extensions\PluginDefinitions folder and are where the location specific code resides for grid and object notifications. This code provides detailed logic to determine what data to display to the location based on incoming parameters.
Each file name, except for Formulation spec files, has been created with the following nomenclature: [App].[Object].[Location]. Formulation spec files do not use the [App] component.
The plugin provides a method called “GetConfiguration()”. This method pulls all of the configuration data from the commonPluginLookup.xml file. This method returns key-value pairs that represent each configuration option. Each of these configuration options is assigned to a variable that will be used in the location specific JS files. This is where you would provide an override of the core configuration value if required for a specific location.
We also provide a method called “GetPQMObjects()”. This method pulls all of the data from the PQM Objects based on specified parameters. The primary criteria are issue type, action type and audit type. The secondary criteria are severity, status and audit results. This method returns an array of PQM Objects that contain the following properties:
Property Name |
Description |
PKID |
Returns the pkid of the PQM Object. |
IsIssue |
Returns true/false based on if the object is a PQM Issue or not. |
IsAction |
Returns true/false based on if the object is a PQM Action or not. |
IsAudit
|
Returns true/false based on if the object is a PQM Audit or not. |
ItemType |
Returns the item type for PQM Actions, Audits and Issues. |
Severity |
Returns the pkid of the severity for PQM Issues. |
ContainsStatusBehavior |
Method used to determine if a PQM object is in a workflow status marked with a particular behavior id. |
AuditResult |
Returns the pkid of the audit result for a PQM Audit. |
AuditDate |
Returns the Audit date assigned to a PQM Audit. |
IsAuditDateWithinDays |
Method used to determine if the Audit date of a PQM Audit is within the specified range. |
HasAuditFailed |
Returns true/false based on the data stored in the Audit Result field of a PQM Audit. |
The returned result of the JS File is represented by an Html property and a PrintData property. These are used to display to the UI and to the print model. This will allow you to provide additional formatting if necessary by using either html tags or FO tags.
For advanced URL configuration, you can modify the value assigned to the reportURL variable in the JS File. This will allow you to use additional parameters within your report urls for more advanced reporting options.
Out of the box, we build the htmlResult value as follows:
htmlResult = htmlResult + "<a href='#' onclick=\"window.open('" + reportURL + sacPKID + "');return false;\">" + displayValue + "</a>";
As you can see here, we are simply appending the PKID to the reportURL variable. If you needed to add additional parameters to your report URL, you could simply modify this line in the JS File to accommodate your needs.
htmlResult = htmlResult + "<a href='#' onclick=\"window.open('" + reportURL +“&_paramsFacilityID=” + pqmObjectRequest.FacilityId + “&_paramsSpecID=” + specPKID + "');return false;\">" + displayValue + "</a>";
For advanced notification configuration, you can modify the value assigned to the result variable in the JS File. This will allow you to use html formatting in the notification panel.
The SIteMap Extensions.xml file is located in the [InstallDirectory]\Config\Extensions folder and is where the Action Menu Icons are added to the GSM and SCRM Action Menu. These icons are added to the GSMNavSpec and SCRMNav menu items nodes.
For more information on extending the Action Menu refer to the Agile Product Lifecycle Management for Process Navigation Configuration Guide.
The PQMExtensionLibrary.css file located in the [InstallDirectory]\web\css\Extensions folder is where all of the css styles for this solution pack are stored. Additionally, the icons.css file is modified during the installation process to include the PQMExtensionLibrary.css file.
All of the base images for this solution pack are stored in the [InstallDirectory]\web\images\ pqmextensionlibrary folder.
In order to allow for easier testing, we have added the ability to turn caching off for the configurations in the js files. This will allow you to instantly see updates based on the configuration changes you are making. Out of the box, caching is enabled for performance reasons. This configuration is found in the CommonPluginLookup.xml file located in the [InstallDirectory]\Config\Extensions folder.
Config |
Values |
Notes |
PluginCachingEnabled |
True/false |
Indicates whether the JS files in plugindefinitions folder are cached or not |