I am playing around with the User Object, and I made an observation that I was hoping that maybe some of you gurus out there could shed some light on.
After I've loaded a User from the Database using GetByKey, I am able to manipulate various aspects of the User, such as name, email, phone number etc.
However, I wanted to see if I could lock or unlock a user using this object. I made the observation that there was no public member directly that could be used to control the lock status of a user. So I noticed the UserFields subclass in the User Object. However here I quickly realised that the "Locked" field was not loaded in there as well. It dawned on me, there are probably other fields not loaded into object, and if the problem exists in this Object, it may well exist in other types of business objects.
So I submit this question:
How can I manipulate fields of a given object if it is not loaded into it? (In this case the User Object). Is this a limitation that will be changed in the future or is it deliberate?