PMC overview (OP)

This chapter provides an overview of the Product Maintenance and Control (PMC) module.

This chapter contains the following sections:

  • PMC Architecture
  • Where to find the PMC module
  • Dependencies
  • Individual Solutions
  • Collections
  • Feature Packs and Patches
  • PMC Distributor functionality
  • PMC Recipient functionality
PMC Architecture

This diagram shows the architecture of the PMC module:

[...]

The software developer creates or updates software components in the Data Dictionary of the developer’s ERP system. Software is packaged by the PMC distributor and stored in the PMC Registry. Feature packs are published on the Infor Download Center. Individual solutions and monthly collections are published on an FTP server. Software can also be sent by e-mail.

The customer can download feature packs from the Infor Download Center. Through Infor Xtreme, the customer can download individual solutions and monthly collections from the FTP Server. PMC recipient builds or updates the PMC registry on the customer's ERP system. Software in the customer's PMC Registry can be imported in the customer's data dictionary.

Where to find the PMC module

The PMC module is part of Infor Enterprise Server (Tools). The software supplier is the distributor of the solutions, and the user or customer of the applications is the recipient. The PMC module contains functionality and sessions for both the distributor and recipient role.

To navigate to the recipient part of the PMC module, complete these steps:

  1. Log on to LN.
  2. On the ERP Menu Browser, click Tools --> Software Installation --> Miscellaneous --> Recipient.
  3. Click Setup, Operational, and Miscellaneous.

Alternatively, complete these steps to navigate to the recipient part of the PMC module:

  1. Log on to LN.
  2. On the ERP Menu Browser, click Tools --> Application Development --> Product Maintenance and Control --> Recipient.
  3. Click Setup, Operational and Miscellaneous.

To navigate to the distributor part of the PMC module, complete these steps:

  1. Log on to LN.
  2. On the ERP Menu Browser, click Tools --> Application Development --> Product Maintenance and Control --> Distributor.
  3. Click Setup and Operational.
Dependencies

When the PMC recipient installs software updates, the recipient checks the presence of the required depending solutions.

Three dependency types exist:

This diagram shows a pre-requisite dependency: solution 1 must be installed before solution 2.

[...]

The following section describes a customer scenario.

Example

A dependency requires you to install the previous version of a software component first. Suppose that you installed LN from the master CD-ROM without customizations or solutions. You receive an updated version of the Copy Sales Order (tdsls4201s000) session, which contains the session object, script, and forms that are interdependent of each other.

You decide not to install the dump and, a few months later, you discover that a change is required in the script to correct a problem that is keeping your sales force from selling an item. The change is sent as a dump that contains only the session object and script. You can install this dump only if you installed the previous version of the software component, because the dump requires the proper form of the first solution. PMC automatically installs the previous solution.

Suppose you deliberately decided not to install a solution, for example, because you do not know if the existing version of the Copy Sales Order (tdsls4201s000) session was customized. The PMC module provides protection against this as well. In this case PMC informs you that the current version is customized. You cannot overwrite software, because PMC uses update VRC levels and maintains copies of all previous software components. This setup enables you to roll back updates easily to any point in history.

Individual solutions

A PMC Distributor creates and publishes individual solutions.

Individual solutions created for standard products of Infor are available for download 24 hours a day, seven days a week, from the Infor Support Web site http://www.infor.com/inforxtreme for Infor-owned products.

You can only download these solutions one by one.

After you download and scan a solution, the PMC recipient checks the dependencies with other solutions. In some cases, other dependent solutions might be missing at the installation system and must be downloaded and scanned, as well. The process to install individual solutions can take a long time if many dependent solutions must be downloaded and scanned.

You can use the Multilevel Download functionality to download all the dependent solutions, without user interaction, to simplify and speed up the download process.

Collections

Collection dumps enable customers to update their system with the latest software.

Collections are groups of all individual solutions that are released in a particular period.

These individual solutions are gathered at the PMC distributor side in a single dump file.

Collections for standard products of Infor are published on an FTP server.

You can scan collections in a single action. While you scan the collection with the Scan Solution/Patch File (ttpmc2200s000) session, the dump file is split into all individual solutions that were included in the collection.

Afterwards, you can install the individual solutions.

You can use collection dumps in two ways: for pro-active installation or corrective installation.

  • Pro-active installation
    The user installs all individual solutions of the collection. The user runs the most up-to-date version of the software, including the latest released fixes.
  • Corrective installation
    The individual solutions of the collection are not installed. The solutions have status Available in the PMC registry. If the user runs into a problem, and a solution is advised for this problem, the user can install that solution immediately. All dependent solutions will be installed automatically.
Feature Packs and patches

Periodically, individual solutions can be bundled into Feature Packs or patches. In general, these types of updates contain solutions created in a larger time period than a collection. In the PMC Tool, the term ‘patch’ is used both for Feature Packs and patches. The patch entity is known at both the PMC distributor and PMC recipient side. Feature Packs and patches are an indivisible set of solutions. You cannot install or uninstall individual solutions that belong to a Feature Pack or a patch by the PMC recipient. You can only install or uninstall entire Feature Packs and patches. Dependencies between Feature Packs and patches can exist.

The subsequent sections describe the justification, characteristics, and differences of Feature Packs and patches.

Justification of Feature Packs and patches

During the life cycle of a product, in general, two types of changes are implemented in the product:

  • Corrective fixes for defects
  • Functional enhancements to further enrich the product

Functional enhancements are often accompanied by changes in the data model, changes in the user interface, and changes in the behavior of the application. In general, functional enhancements require a careful preparation before installation in an operational environment. PMC generates dependencies between solutions, that contain the same components to guarantee that the solutions are installed in the correct order and no necessary solutions are skipped. In some cases, users must first install a number of functional enhancements before the users can install a corrective fix for a relative small defect. Installation of the functional enhancements can be required at unexpected and undesirable moments.

Feature Packs enable you to separate functional enhancements from the flow of corrective fixes. This separation enables users to adopt and implement functional enhancements in a more controlled way. Patches do not offer this possibility.

Feature Packs

Feature Packs enable you to separate corrective fixes from functional enhancements. Multiple parallel maintenance baselines exist for the product. Every new baseline is linked to a unique base VRC. Functional enhancements are, in principle, only implemented at the start of a new baseline.

This diagram shows the Feature Packs mechanism:

[...]

Feature Pack 1 is linked to base VRC A1. The Feature Pack contains a number of corrective fixes and some functional enhancements. Corrective maintenance is performed for this Feature Pack, which results in solutions 1, 2, and 3 in the previous diagram.

In parallel, the software distributor develops Feature Pack 2, which is linked to base VRC A2. Whenever possible, the distributor immediately ports and includes corrective solutions created on top of Feature Pack 1 in Feature Pack 2. Refer to solution 1 and the dashed arrow in the previous diagram. These ported solutions are registered in Feature Pack 2 as so-called obsolete solutions.

The same process repeats when the distributor develops Feature Pack 3, which is linked to base VRC A3.

After the release of Feature Pack 2 and 3, the distributor also creates corrective solutions on top of these Feature Packs.

When Feature Pack 2 is being installed at a recipient, the PMC Tool checks whether all solutions that were installed on top of Feature Pack 1 are also available for Feature Pack 2.

These solutions can be available in two different shapes for Feature Pack 2:

  • Included in Feature Pack 2. Refer to solution 1 and the dashed arrow in the previous diagram. These obsolete solutions are integrated in Feature Pack 2 and do not have a separate physical solution dump.
  • Available on top of Feature Pack. Refer to solutions 2’ and 3’ in the previous diagram. These so-called missing solutions are not included in Feature Pack 2 and do have a physical solution dump.

    Note: If Feature Pack 1 is installed in multiple update VRCs, the PMC Tool performs the missing solution check in all update VRCs, that contain Feature Pack 1.

By default, the PMC Tools will refuse to install Feature Pack 2 if not all solutions installed on top of Feature Pack 1 are also available for Feature Pack 2. Otherwise, old defects would come back after you install Feature Pack 2. The distributor is responsible for ensuring that all solutions of the preceding Feature Pack are also available for the subsequent Feature Pack before publishing the subsequent Feature Pack.

Note

You can change this default behavior, so that you can install Feature Pack updates without additional individual solutions. For details, refer to To install a 'clean' Feature Pack.

Feature Packs are cumulative. Every new Feature Pack also includes all preceding Feature Packs. This enables you to skip the installation of Feature Packs at the PMC recipient. For example, you can immediately upgrade from Feature Pack 1 to Feature Pack 3 without installing Feature Pack 2 in between. The installation process is optimized in such a way that only components that are changed as compared to the current installed Feature Pack will be installed.

You can install Feature Packs in an existing update VRC. Therefore, creating a new update VRC is unnecessary. As a result, the VRC structure at a recipient system can remain unchanged. However, the base VRC linked to the update VRC will change. If desired, you can, of course, also install a new Feature Pack in a new update VRC.

To install a 'clean' Feature Pack

When you update an existing environment with a Feature Pack via PMC or via the Installation Wizard, PMC requires that all solutions, that were installed on top of a previous Feature Pack, are installed for the new Feature Pack as well. PMC requires these additional solutions to prevent that old problems come back after installation of the Feature Pack. This also applies if you install the Feature Pack in another, or even in a new, Update VRC. This is because you can upgrade your companies to the Package Combination of that Update VRC and subsequently you might see old problems again.

In some situations this functionality is too strict, for example when you want to develop customizations for different customers on different Feature Pack levels.

To change this default behavior, you must set the PMC_IGNORE_SOL environment variable to 1. You can now install a 'clean' Feature Pack, without taking care of the content of already installed Feature Packs and additional solutions.

You can specify the environment variable in different ways:

  • In the command field of the BW configuration file (-set PMC_IGNORE_SOL=1). In this way the setting only applies to the user that uses this configuration.
  • In the $BSE/lib/bse_vars file (add the line PMC_IGNORE_SOL=1). If you use the Installation Wizard you can add this line when you are prompted to change the bse_vars configuration file. In this way the setting applies to all users.
Note
  • It is recommended to remove the PMC_IGNORE_SOL setting after each Feature Pack installation.
  • If you install the Feature Pack in an already existing Update VRC, the solutions that were installed in that Update VRC for the previous Feature Pack, will also be installed for the new Feature Pack. So, the possibility to ignore additional solutions only applies to solutions of other Update VRCs.
Example

You want to install Feature Pack 2, which includes solutions 133, 146 and 154 as obsolete solutions already.

The following table shows, for some Update VRCs with different Feature Packs and additional solutions installed:

  • what happens if PMC_IGNORE_SOL is not set.
  • what happens if PMC_IGNORE_SOL is set.
Update VRC
B61U_a_stndB61U_a_fp1B61U_a_fp2
Feature Pack installed-FP1 including obsolete solutions 133 and 146-
Solutions installed

133

146

154

168

154

168

172

-
Action

Install FP2 in an 'FP0' Update VRC with some individual solutions installed.

Install FP2 in an Update VRC with FP1 and some additional solutions installed.

Install FP2 in a new Update VRC.

Result if PMC_IGNORE_SOL is not set

Fails unless additional solutions 168 and 172 are present.

Reason for failure:

Solution 168 was already installed in this Update VRC, and solution 172 was installed on top of FP1 in Update VRC B61U_a_fp1.

Fails unless additional solutions 168 and 172 are present.

Reason for failure:

Both solutions were already installed in this Update VRC.

Fails unless additional solutions 168 and 172 are present.

Reason for failure:

Solutions 168 and 172 were installed on top of FP1 in Update VRC B61U_a_fp1.

Result if PMC_IGNORE_SOL is set to 1

Fails unless additional solution 168 is present.

Reason for failure:

Solution 168 was installed in this Update VRC, so it is needed on top of FP2.

Solution 172 can be ignored now.

Fails unless additional solutions 168 and 172 are present.

Reason for failure:

Both solutions were installed in this Update VRC, so they cannot be ignored.

Succeeds.

Reason for success:

PMC can ignore all solutions, because it is a new Update VRC.

 

Caution!

Do not set PMC_IGNORE_SOL to 1 if you install the Feature Pack in an Update VRC and Package Combination, and you plan to upgrade your companies to this Package Combination. This can result in old problems coming back or, even worse, loss of data if additional solutions on top of the previous Feature Pack introduced new table fields.

Patches

Patches do not enable you to separate corrective fixes from functional enhancements. Only one maintenance baseline of the product exists. Changes are always implemented in the latest version of a software component. The base VRC remains the same. Functional enhancements will be included in the chain of depending corrective solutions.

This diagram shows the Patch mechanism:

[...]

To install solution 3 in this diagram, you must first install solution 2, which contains a functional enhancement.

Patches are not cumulative, which means you cannot skip the installation of Patches at a recipient's location. For example, before you install Patch 3, you always must install Patch 2 in advance. You cannot immediately upgrade from Patch 1 to Patch 3.

Distributor’s Policy

The software distributor decides if Feature Packs or Patches are being applied. A mix of both types is also possible:

  • When applying Feature Packs, the distributor can decide to release a functional enhancement as an individual PMC solution on top of one of the released Feature Packs.
  • When applying Feature Packs, the distributor can decide to periodically also release Patches on top of the Feature Pack.

When applying Feature Packs, the distributor’s policy determines how many base VRCs are maintained in parallel and how long the base VRCs are maintained.

PMC Distributor functionality

The software developer generates additional software and makes software changes on the existing LN software packages.

The supplier of the LN software uses the PMC Distributor functionality to manage the software updates and prepares those updates for delivery to the customers.

The following is a process overview of the PMC Distributor module.

  • Create individual solutions
    1. Define a unique identifier for the solution and a brief description.
    2. Link one or more software components to the solution.
    3. Define or generate the dependencies on other solutions.
    4. Export the solution, the software dumps are now created.
    5. Release the solution, the solution is now ready for delivery.
  • Create collections
    1. Define a unique identifier for the collection and a brief description.
    2. Link one or more individual solutions to the collection.
    3. Export the collection.
    4. Release the collection.
  • Create patches
    1. Define a unique identifier for the patch and a brief description.
    2. Link one or more individual solutions to the patch.
    3. Define or generate the dependencies on other patches.
    4. Validate the patch.
    5. Export the patch.
    6. Release the patch.
  • Create Feature Packs
    1. Define a new base VRC for the Feature Pack.
    2. Define a unique identifier for the Feature Pack and a brief description.
    3. Define the dependency on previous Feature Packs.
    4. Generate the Feature Pack, in other words, link all components in a specified VRC to the Feature Pack.
    5. Validate the Feature Pack.
    6. Export the Feature Pack.
    7. Release the Feature Pack.
  • Additional distributor functionality
    • Mutilevel export.
    • SCM integration.
    • Maintenance History.
PMC Recipient functionality

Customers use the PMC Recipient module to install the LN software updates on their ERP system.

The following is an overview of the PMC Recipient module.

  • Download solutions
    You can download solutions from the FTP server or copy the solutions from a medium such as a CD-ROM.
  • Scan and connect solutions
    The solution files can be scanned. In other words, the user must extract and store the solutions into the PMC registry. The extracted solutions are also connected to an update VRC.
  • Process solutions
    1. Check to install. Report the following: Pre- and post-installation instructions, customized components, and missing dependent solutions.
    2. Install the solutions: Store the software components in the data dictionary, report additional post-installation instructions.
  • Additional recipient functionality
    • Uninstall
    • Mutilevel download
    • Compare installed solutions
    • Solution History
    • PMC cleanup
    • Copy PMC registry
    • View installation runs.