Routines that only return information (the "get" routines) never modify the structure file. So they can be used freely except under special circumstances. For instance, it is not possible to read the database properties from 4D Client or to get the text of a method in a compiled database.
|
Very Important |
|---|
|
Every routine that sets information writes immediately to the structure file. Modifications are not restricted to the current process. Changes are "permanent" until a subsequent change. Consider modifications made to the structure by this plugin the same way you would had the object been modified in Design mode. Because of that, it is very important that the 4D developer takes care himself of the consequences of the modifications he make, and takes care himself of multiple access to an object. It is very important in Client/Server environment and/or if important objects are modified, such as Trigger or a Database method... Because changes are immediately applied to all the database. Using a semaphore is, in those situations, mandatory. At last, while developing, you must work on copies if you develop anything that - using the plugin - may change the current structure file ( |
Under Client/Server, modified objects are locked during the modifications. If they were used by another Client, the plugin returns the error: 30200 (Locked Object). There is no object locking under 4D standalone.