I got the answer to this during the Users Conference.
The problem is that the VBA text part of the saved display looses it's reference to the display object. You can verify this by looking for the "Display" object under the "(General)" drop down in the VBA Edit window (you won't see it).
The solution is to open processbook with the "/LOADTEXT <filename>" parameter in a command window or the "Run" dialog where <filename> is the name of the display with the problem. LOADTEXT is a flag that will reload the VBA associated with Processbook displays.
I'd like to thank Don Lunasin and Dave Hollebeek for solving this for me. Hope it helps you as well.
Nice sharing David! Thanks for reporting back so others can learn about it.
Dan Lunasin, David Hollebeek - Do you think that you may give a little bit of background on this issue? I would be very interested to learn about reasons why the reference of the display object can get lost and when should the /LOADTEXT switch be used?
4 of 4 people found this helpful
Unfortunately, it's a Microsoft flaw and I've never heard a coherent explanation for this. However, I do know that Microsoft will try to search for and load references every time a display is opened, if it can't find it, then it can make some odd choices which seem to get "remembered". The /LOADTEXT switch was specifically designed to deal with this condition and should only be needed if you suspect a display is corrupt. However, I haven't seen it hurt anything on a non-corrupt display.