Programmer Guide/Macro Library/BDataSet

From STX Wiki
Jump to navigation Jump to search

This STx-related article may be outdated.

This class implements the XML Project document. The Project document is the global database available to all STx applications and scripts and contains all data and links of the current project. The programmer must not create or destroy the project object because these functions are performed by the application startup and cleanup macros. So, deleting them manually would cause them to be deleted twice, causing the need for a new instance to be created for no instance to be left.

At application startup a BDATASET instance is created and linked to the global Project document which is created and managed by the STx master shell and/or the application Project. The name of this instance is stored in the shell variable BDATASET. This object must be used to access the project document.

Never ever call the member functions CONSTRUCT, DESTRUCT or CLOSE!

If the project content is changed by a command (or during a block of commands), or if a longer operation is performed on the project, the ATTACH and DETACH functions should be called:

$bdataset ATTACH

 // ...project commands...

$bdataset DETACH

No static commands are implemented; a call to the macro BDataSet (e.g. bdataset save) will do nothing, returning an empty string.

The class BDataSet is derived from the class BXMLDoc.

Beware of using the base class functions, since they do not update the BDataSet member variables!