hexagon logo

PC-DMIS Measurement Routine Migrations

Starting with PC-DMIS 2021.2, PC-DMIS doesn’t allow loading of measurement routines created in PC-DMIS 2015 and earlier and will generate an error. See: I am getting the error message "Serialization error This version of PC-DMIS can only read measurement routines created in version...."
In PC-DMIS 2022.1, only PRG files from 2016 or newer will be allowed. This “rolling” restriction will continue with each new release of PC-DMIS.

For instance:
Installed Version Can read back to (or pull forward from)

2021.2 2015.1
2022.1 2016
Future projection:
2022.2 2017 R1
2023.1 2017 R2
2023.2 2018 R1
Etc.

To use older routines with a current PC-DMIS release, you need to save all the older measurement routines to any version at least as recent as that defined by the current restrictions. This can be done one file at a time but if you have a significant number of files it can be very time-consuming. To help facilitate this process, we’ve created and shared two utilities.


Conversion Utilities for PC-DMIS (hexagonmi.com)

Utility Home : SaveMRtoRequiredVersion

This will automatically open the measurement routines and save them to the desired version. (simply opens, saves and closes routines)

Utility #2: Migration_Utility

This is a little more intelligent and performs the same task as utility 1 but also handles migration from Xactmeasure to the new, geometric tolerance command. It requires you to install the most recent service pack of 2020 R1 as well as your desired version (2020 R2 or higher). It asks you to navigate to three folders – the source folder containing your routines, a destination for routines that generate migration reports and a destination for routines that do not generate migration reports. The utility will then sort routines into the relevant destination folders making it easier for you to identify those that migrated successfully and those that require editing. Please see here for a more detailed description: Documentation. It also saves probe files associated with each routine in the current probe format.

While these utilities are being provided free of charge, there is no implied support. Please be sure to back-up all of your files before starting this process.

*** Please be sure to read the help documentation on these tools. It is brief and will often answer the very questions which we are seeing posted here.

Parents
  • Hi neil.challinor. Can you or the dev who was working on this explain what the reason might be behind this error when using the utility? I had a group of 1600 or so programs converted successfully to 2020 R1 using the utility. After converting just a handful to 2022.1, the application threw this exception and now I will have to re-run all 1600 programs through the utility (about 13 hours).

    System.Runtime.InteropServices.COMException (0x800706BA): The RPC server is unavailable. (Exception from HRESULT: 0x800706BA)
    at System.RuntimeType.ForwardCallToInvokeMember(Strin g memberName, BindingFlags flags, Object target, Int32[] aWrapperTypes, MessageData& msgData)
    at PCDLRN.IApplication.set_UserExit(Boolean )
    at Migration_Utlity.Form1.migrate()
    at Migration_Utlity.Form1.buttonCommon()
    at System.Windows.Forms.Control.OnClick(EventArgs e)
    at System.Windows.Forms.Button.OnClick(EventArgs e)
    at System.Windows.Forms.Button.OnMouseUp(MouseEventAr gs mevent)
    at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
    at System.Windows.Forms.Control.WndProc(Message& m)
    at System.Windows.Forms.ButtonBase.WndProc(Message& m)
    at System.Windows.Forms.Button.WndProc(Message& m)
    at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)​
Reply
  • Hi neil.challinor. Can you or the dev who was working on this explain what the reason might be behind this error when using the utility? I had a group of 1600 or so programs converted successfully to 2020 R1 using the utility. After converting just a handful to 2022.1, the application threw this exception and now I will have to re-run all 1600 programs through the utility (about 13 hours).

    System.Runtime.InteropServices.COMException (0x800706BA): The RPC server is unavailable. (Exception from HRESULT: 0x800706BA)
    at System.RuntimeType.ForwardCallToInvokeMember(Strin g memberName, BindingFlags flags, Object target, Int32[] aWrapperTypes, MessageData& msgData)
    at PCDLRN.IApplication.set_UserExit(Boolean )
    at Migration_Utlity.Form1.migrate()
    at Migration_Utlity.Form1.buttonCommon()
    at System.Windows.Forms.Control.OnClick(EventArgs e)
    at System.Windows.Forms.Button.OnClick(EventArgs e)
    at System.Windows.Forms.Button.OnMouseUp(MouseEventAr gs mevent)
    at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
    at System.Windows.Forms.Control.WndProc(Message& m)
    at System.Windows.Forms.ButtonBase.WndProc(Message& m)
    at System.Windows.Forms.Button.WndProc(Message& m)
    at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)​
Children