The MTPIPropertys value set or returned as a VARIANT.
The object placeholder is an object expression that evaluates to a MTPIProperty object.
This property can be a string or numeric VARIANT. It can also be set to any PISDK object (like a PIModule) that supports the IPIPersist interface. This allows you to use MTPIProperty's to store objects for later retrieval.
For PISDK objects, only enough information is stored in the Value to ask the database for the object back. It doesn't contain a copy of the data within the object. This happens within the SDK, so the object itself is returned to your program.
If the Value is an object that can't be retrieved, the IPIPersist persistence string is returned instead to aid in figuring out why it is unavailable.
MTPIProperties & MTPIProperty are free-threaded versions of PIProperties and PIProperty respectively. They emulate the non-free threaded versions.