Cancel
Showing results for 
Search instead for 
Did you mean: 

Upgrade MRL - What is your experience?

Gears Esteemed Contributor Gears Esteemed Contributor
Gears Esteemed Contributor

I recently upgraded our Tc 10.1.7 testing environment from MRL 3.1.4 to 3.1.7, everything ran smoothly I thought Smiley Frustrated

We lost our key LOV additions and all our customized NX views Smiley Mad

The documentation of Tc 11.4 has a more decent description of the upgrade process, but is still missing an important step:

  • run compare
  • make sure to remove any unwanted changes from the upgrade batch files
  • run upgrade

Since there is no fine tuning available of what will be upgraded or overwritten, just disabling the upgrade of everything customized doesn't make sense.

The upgrade was necessary, since 10-parameter tools and the engage settings have been added, just to name two of the desperately needed enhancements.

From my point of view it is best to follow this procedure:

  1. within a testing environment
    • run the upgrade process with the additional step mentioned above
    • use the mrm_export_resources utility to export the DEF and DAT file of the current MRL situation
      • compare these to the mrm_export_resources utility DEF and DAT export of the productive system
    • correct any missing items to get a fully functional MRL again
  2. if your testing environment is working properly migrate your productive environment
    • make sure to remove the changes that you had to correct after you compared the productive with the testing DEF and DAT files
  3. You should now have a fully working system again without too much hassle Smiley Wink
Stefan Pendl, Systemmanager CAx, HAIDLMAIR GmbH
Production: NX10.0.3, VERICUT 8.1, FBM, MRL 3.1.7 | TcUA 10.1 MP7 Patch 0 (10.1.7.0) | TcVis 11.4
Development: C (ITK), .NET, Tcl/Tk Testing: NX12.0 | AWC 3.4 Preparing: NX12.0

Employees of the customers, together we are strong Smiley Wink
How to Get the Most from Your Signature in the Community
NX Customization - Best Practice Guide
8 REPLIES

Re: Upgrade MRL - What is your experience?

Gears Esteemed Contributor Gears Esteemed Contributor
Gears Esteemed Contributor

To make comparing of the old and new tools hierarchy easier, I created a custom utility to extract the views and key LOVs from the exported XML file.

  1. From the attached VB.NET source code create a console application
  2. copy the executable to the folder MRLUpdater\EXPORT
  3. drop the file MRLUpdater\EXPORT\mrl_tools_hierarchy_en.xml onto it
  4. compare the folders KEYLOVS_XML and VIEWS_XML with the ones contained in MRLUpdater\UPDATE\tools
    • use something like WinMerge to make things easier
      • use the option to compare "sorted XML" to simplify the process
  5. re-add any missing items

Hope this helps.

Stefan Pendl, Systemmanager CAx, HAIDLMAIR GmbH
Production: NX10.0.3, VERICUT 8.1, FBM, MRL 3.1.7 | TcUA 10.1 MP7 Patch 0 (10.1.7.0) | TcVis 11.4
Development: C (ITK), .NET, Tcl/Tk Testing: NX12.0 | AWC 3.4 Preparing: NX12.0

Employees of the customers, together we are strong Smiley Wink
How to Get the Most from Your Signature in the Community
NX Customization - Best Practice Guide

Re: Upgrade MRL - What is your experience?

Gears Esteemed Contributor Gears Esteemed Contributor
Gears Esteemed Contributor

Anyone interested in a more customer aware upgrade process should open a "Me too" call at GTAC to reference the ER listed below.

ER#9076092 - support a more customization aware MRL upgrade process

                ER Template
                ===========

*   Short Description of desired enhancement: <Problem rather than a solution>
    o   it is not possible to only exclude the MRL NX views from being updated by the upgrade process
*   What activity in your process is the product not able to currently handle?
    o   upgrade MRL without loosing the customized NX search and result views
*   What result are you trying to achieve? (Please provide as many details as possible.)
    o   we want to upgrade the default views of each class to the latest additions, but want to keep the NX views from being manipulated
*   Do you currently have a workaround?
    o   before starting the upgrade, manually editing the upgrade files and remove unwanted changes
    o   this step is nowhere mentioned in the documentation of the MRL upgrade process
*   Do you have a proposal for the solution you envision Siemens PLM providing for this capability?
    o   at least warn the user that he might loose customization
    o   generally allow more fine tuning of the upgrade process, like merging new additions into key LOVs, views, etc. instead of no upgrade or overwrite existing
*   What is the level of productivity gained from such an enhancement?
    o   HIGH, keep the user from accidentally loosing his hardly created customization
*   Other information:
    o   may be also add a note that one should first upgrade a testing environment
    o   using the mrm_export_resources utility one should compare the exported files of the test environment with those of the productive environment before corrupting the productive environment

 Hope we get something more user-friendly in the future.

Stefan Pendl, Systemmanager CAx, HAIDLMAIR GmbH
Production: NX10.0.3, VERICUT 8.1, FBM, MRL 3.1.7 | TcUA 10.1 MP7 Patch 0 (10.1.7.0) | TcVis 11.4
Development: C (ITK), .NET, Tcl/Tk Testing: NX12.0 | AWC 3.4 Preparing: NX12.0

Employees of the customers, together we are strong Smiley Wink
How to Get the Most from Your Signature in the Community
NX Customization - Best Practice Guide

Re: Upgrade MRL - What is your experience?

Siemens Valued Contributor Siemens Valued Contributor
Siemens Valued Contributor

Hi Stefan!

 

I am sorry to hear that you lost some of your customization during the MRL update.

To revert the update changes you can use the PLMXML files that were exported during the "Export" step of the update. You can find them in the "Export" folder.

 

The MRL Update allows to exclude specific objects from the update.

 

TDoc: https://docs.plm.automation.siemens.com/tdoc/tc/11.4/help/#uid:xid1369397

Select Compare your hierarchy to new class hierarchy .

This step compares the exported hierarchies to the corresponding hierarchy in the newest MRL kit.

Note

If you want to exclude some objects from the update, modify the configuration file before you begin this step.

 

If you don't want that specific KeyLOVs will be updated, add the IDs to the <IgnoreKeyLovs> tag in the conf file.

If you don't want that the views will be updated (att all), switch the ProcessAdminViews value to "false".

(TDoc: https://docs.plm.automation.siemens.com/tdoc/tc/11.4/help#uid:xid1256814:index_server_win:addingfeat...)

During the view update (new) customer attributes are not touched. Only the MRL attributes will be updated.

 

If you adjust the configuration file properly, there is no need to modify the update scripts later manually.

 

Hope this helps.

 

   Markus Dietz

 

P.S.: In the MRL Kit that will be shipped with Tc 11.5 we have improved the update functionality and the dialogs in the MRL Installer. There is now an extra dialog mentioning the configuration file. With a single button click you can now open the conf file and edit it (see below). We hope that this will avoid such problems in the future.

 

ConfDialog.pngNew Configuration File Dialog in MRL Installer

Re: Upgrade MRL - What is your experience?

Gears Esteemed Contributor Gears Esteemed Contributor
Gears Esteemed Contributor

Hi Markus,

thanks for the heads up, since I first migrated the testing environment I was able to get the missing information from the productive environment.

Instead of skipping everything, I would prefer merging the new additions with the customized ones.

From my point of view an upgrade should add new things to existing ones.

If I would have disabled the update of certain objects, I would have missed the following things:

  • full upgrade of classes that are not customized
  • full upgrade of views that are not customized
  • addition of newly introduced attributes to views
  • addition of newly introduced values of LOVs

I envision the following process, which is similar to upgrading a phpBB forum:

  1. extract the current MRL classification
  2. find customized objects
  3. allow the user to view the differences
    • user should be able to select between
      • use custom
      • use shipping
      • merge
  4. update MRL classification

Currently option 3. must be done manually as described in the initial two posts.

Thanks in advance for simplifying the life of the administrative users Smiley Wink

Stefan Pendl, Systemmanager CAx, HAIDLMAIR GmbH
Production: NX10.0.3, VERICUT 8.1, FBM, MRL 3.1.7 | TcUA 10.1 MP7 Patch 0 (10.1.7.0) | TcVis 11.4
Development: C (ITK), .NET, Tcl/Tk Testing: NX12.0 | AWC 3.4 Preparing: NX12.0

Employees of the customers, together we are strong Smiley Wink
How to Get the Most from Your Signature in the Community
NX Customization - Best Practice Guide

Re: Upgrade MRL - What is your experience?

Siemens Valued Contributor Siemens Valued Contributor
Siemens Valued Contributor

Hi!

 

The tricky part is to identify what was customized by a customer.

The updater utility is a "generic" tool that compares two PLMXML files.

The one that was exported from the customer's DB with the of the new kit.

The benefit of this is that the update works exactly for the MRL version that is in the customer's DB.

 

Lets assume this scenario:
There is view attribute -12345 NOT in the customer DB, but it is in the new master kit.

What can it mean?

a) The customer has a very old MRL version that did not yet have this attribute. It needs to be added.

b) The customer has intentionally removed the attribute from the view. It should not be added again.

But the tool has no chance to find out, if a) or b) is the case.

The MRL Update is updating the classes, views, attributes and KeyLOVs to the new MRL version.

This is what we can do.

 

We already handle customer attributes during the update. If a customer has added his own attributes to MRL classes and views, we don't touch those. After updating the classes and views those customer attributes are still there at the same position. We already merge those attribues with the new MRL kit.

 

Regarding the KeyLOVs:

Please put the KeyLOVs you modified in the "Ignore" list. Then those won't be touched.

 

So long...

 

   Markus

Re: Upgrade MRL - What is your experience?

Gears Esteemed Contributor Gears Esteemed Contributor
Gears Esteemed Contributor

I don't like the all or nothing approach at all, which is what is available through the ignore list.

May be you are more familiar with resolving conflicts in a source code repository, where the user always has the option to use his changes, their changes or launch a merging tool.

Asking the user about how to resolve a conflict is the most elegant way and should be as simple as launching a file differences tool.

I have examined the MRL update folder structure and am assuming you are doing the following:

  1. extract the MRL version
  2. extract the current MRL structure
  3. compare the current with the shipped MRL structure of the same release to identify changes
  4. create smlutility scripts to add the changes to upgrade to the new release

You say that you merge changes to views, so why have been several views replaced with the OOTB ones instead of being updated?

If you cannot merge changes to LOVs, then launch a merging tool to have the user do it.

I can only see that there is a change in the PLMXML file from v3.1.4 to v3.1.7; I cannot identify if the PLMXML file of v3.1.4 was changed, but you can.

Stefan Pendl, Systemmanager CAx, HAIDLMAIR GmbH
Production: NX10.0.3, VERICUT 8.1, FBM, MRL 3.1.7 | TcUA 10.1 MP7 Patch 0 (10.1.7.0) | TcVis 11.4
Development: C (ITK), .NET, Tcl/Tk Testing: NX12.0 | AWC 3.4 Preparing: NX12.0

Employees of the customers, together we are strong Smiley Wink
How to Get the Most from Your Signature in the Community
NX Customization - Best Practice Guide

Re: Upgrade MRL - What is your experience?

Siemens Valued Contributor Siemens Valued Contributor
Siemens Valued Contributor

You wrote:

You say that you merge changes to views, so why have been several views replaced with the OOTB ones instead of being updated?

 

I said that we already handle customer attributes and merge them with the new classes and views.

A customer attribute is an attribute that is in the customer DB but not in the MRL kit. This is the case when a customer adds his own customer specific attributes. Those are well supported.

In your case I guess you did not have customer attributes. You customized existing MRL attributes (removed or reordered some...). This is a different scenario.

 

The updater already writes a number of information files:

Six information files are generated in the INFO_FILES directory for each of the following types:

  • Key-LOVs

  • Attributes

  • Classes

  • Views

For example, for key-LOVs:

KEYLOV_LIST_ALL_CUSTOMER.txt 

Lists all key-LOVs from the customer PLM XML

KEYLOV_LIST_ALL_MASTER.txt

Lists all key-LOVs from the master PLM XML

KEYLOV_LIST_CUSTOMER.txt

Lists all key-LOVs that are in the customer PLM XML, but not in master (= customer key-LOVs).

KEYLOV_LIST_NEW.txt 

Lists all key-LOVs that are in the master PLM XML but not in customer (that is, new key-LOVs)

KEYLOV_LIST_MODIFIED.txt

Lists all key-LOVs that will be modified during the update

KEYLOV_LIST_INFO.txt 

Describes exactly how each key-LOVs is modified during the update.

(TDoc: https://docs.plm.automation.siemens.com/tdoc/tc/11.4/help/#uid:xid1284102)

 

Those files contain detailed information what is available in CUSTOMER and MASTER and what was modified.

If you want not just update to the new MRL version and to adjust the update, then you can have a look at those files and adjust the update scripts for your needs.

 

Hope this helps...

 

   Markus

Re: Upgrade MRL - What is your experience?

Gears Esteemed Contributor Gears Esteemed Contributor
Gears Esteemed Contributor

Thanks Markus for the additional information, this will surely help the next time I need to upgrade MRL.

Have a pleasant one Smiley Wink

Stefan Pendl, Systemmanager CAx, HAIDLMAIR GmbH
Production: NX10.0.3, VERICUT 8.1, FBM, MRL 3.1.7 | TcUA 10.1 MP7 Patch 0 (10.1.7.0) | TcVis 11.4
Development: C (ITK), .NET, Tcl/Tk Testing: NX12.0 | AWC 3.4 Preparing: NX12.0

Employees of the customers, together we are strong Smiley Wink
How to Get the Most from Your Signature in the Community
NX Customization - Best Practice Guide