QCommenceDatabase Class Reference

Commence Database Object. More...

#include <QCommenceDB.h>

Inheritance diagram for QCommenceDatabase:

Inheritance graph

List of all members.

Public Slots

virtual bool dumontCategoryExists (void)
 Return the existence of the Dumont Category.
virtual QString name (void)
 (read-only) Name of the Commence database.
virtual QString path (void)
 (read-only) Full path of the Commence database.
virtual QString registeredUser (void)
 (read-only) CR/LF delimited string with user name, company name and serial number.
QCommenceMeInfomeInfo (void)
 Return a MeInfo object.
virtual bool shared (void)
 (read-only) TRUE if database is enrolled in a workgroup.
virtual QString version (void)
 (read-only) Version number in x.y format.
virtual QString versionExt (void)
 (read-only) Version number in x.y.z.w format.
virtual QCommenceConversationgetConversation (QString i_applicationName="Commence", QString i_topic="GetData")
 Create a conversation object.
virtual QCommenceConversationcmcCV (void)
virtual QCommenceConversationCV (void)
virtual QCommenceCursorgetCursor (long i_mode, const QString &i_name, long i_flags=0)
 Create a cursor object.
virtual QCommenceCategoryModelgetCategoryModel (void)
virtual QCommenceActiveViewInfoactiveViewInfo (void)
 This returns an active View information object.
virtual QString dumCategory (void)
 Get Dumont Persistence Category Name.
virtual void dumCategory (QString i_value)
virtual QString dumNameField (void)
 Get Dumont Persistence Category Name Field.
virtual void dumNameField (QString i_value)
virtual QString dumValueField (void)
 Get Dumont Persistence Category Value Field.
virtual void dumValueField (QString i_value)
virtual QString scriptPath (void)
 Get the Path to where scripts are stored.
virtual void scriptPath (QString i_value)
virtual bool scriptFromFile (void)
 Get the ScriptFromFile flag.
virtual void scriptFromFile (bool i_value)
virtual QString script (QString i_value)
 Get a script from storage.
QCommenceEditRowSetGetCreateDumontItem (QString i_itemName)
QString defaultVar (QString i_value, QString i_default)
virtual QString globalVar (QString i_var)
 Manipulate the global variable space.
virtual void globalVar (QString i_var, QString i_value)
virtual QString userVar (QString i_var)
 Manipulate the userVar space.
virtual void userVar (QString i_var, QString i_value)
virtual void userVar (QString i_var, int i_value)
virtual void userVar (QString i_var, double i_value)
virtual QString localVar (QString i_var)
 Set and Get the local vars.
virtual void localVar (QString i_var, QString i_value)
virtual QString tempVar (QString i_var)
 Manipulate the tempVar space.
virtual void tempVar (QString i_var, QString i_value)
virtual QString dumVar (QString i_var)
 Set and Get a persistent var from Dumont.
virtual void dumVar (QString i_var, QString i_value)
virtual bool isEmployee (QString i_value)
 Check this 'Name' to see if it's an employee.
QCommenceCategoryDefscategoryDefs (void)
 Return the Category Defnitions object.
QCommenceCategoryDefcategoryDefs (const QString &catName)
 Return a Category Definition.
virtual long timeZoneOffset (void)
 Return the TimeZone offset for this database.
QString guid (void)
QString formatOLics (QString i_summary, QDateTime i_dateStart, QDateTime i_dateEnd, QString i_location, QString i_desc)
void log (QString i_message)
 Send a line to the dumont.log file.
void loadDefinition (QString i_fileName)
 Load the database definition from an XML file.
void saveDefinition (QString i_fileName)
 Save the database definition to an XML file.

Public Member Functions

 QCommenceDatabase (void)
 QCommenceDatabase (QCocDispatch *i_unknown, QObject *i_parent)
virtual ~QCommenceDatabase ()
QDomElement de (void)
QDomDocument getDomDocument (QString i_itemName)

Private Member Functions

void initSettings (QPointer< QSettings > &set, QString store)
 Initialize Private Settings.

Private Attributes

HRESULT m_coInstance
QDomDocument doc

Static Private Attributes

static QPointer< QSettings > s_dumIni
static QPointer< QSettings > s_tmpIni
static QString s_dumCategory = "Dumont"
static QString s_dumNameField = "Name"
static QString s_dumValueField = "Value"


Detailed Description

Commence Database Object.

inline_dotgraph_12.dot

Definition at line 5907 of file QCommenceDB.h.


Constructor & Destructor Documentation

QCommenceDatabase::QCommenceDatabase ( void   )  [inline]

Definition at line 5913 of file QCommenceDB.h.

QCommenceDatabase::QCommenceDatabase ( QCocDispatch i_unknown,
QObject *  i_parent 
)

Definition at line 8178 of file QCommenceDB.cpp.

QCommenceDatabase::~QCommenceDatabase (  )  [virtual]

Note:
For some reason this database object doesn't release on its own, and needs an additional release. could that be right? Without this release commence won't terminate.

Definition at line 8225 of file QCommenceDB.cpp.


Member Function Documentation

QCommenceActiveViewInfo * QCommenceDatabase::activeViewInfo ( void   )  [virtual, slot]

This returns an active View information object.

vbScript Example:
 dim ddll: set ddll = createObject("DumontDLL")
 dim dfrm: set dfrm = ddll.Form(Form)
 msgbox dfrm.DB.activeViewInfo.viewName

Definition at line 8550 of file QCommenceDB.cpp.

QCommenceCategoryDef * QCommenceDatabase::categoryDefs ( const QString &  catName  )  [slot]

Return a Category Definition.

This is a convenience function that has the same functionality as follows:

vbScript Reference
 dim ddll: set ddll = createObject("DumontDLL")
 dim cmDB: set cmDB = ddll.database( createObject("Commence.DB") )

 '
 ' Return a handle to a category definition object
 '
 dim catDef1: set catDef1 = cmDB.categoryDefs().get("People")

 '
 ' Return the same handle to the same category (shorthand)
 '   (same as above)
 '
 dim catDef2: set catDef2 = cmDB.categoryDefs("People")

Definition at line 8945 of file QCommenceDB.cpp.

QCommenceCategoryDefs * QCommenceDatabase::categoryDefs ( void   )  [slot]

Return the Category Defnitions object.

Definition at line 8929 of file QCommenceDB.cpp.

QCommenceConversation * QCommenceDatabase::cmcCV ( void   )  [virtual, slot]

Definition at line 8392 of file QCommenceDB.cpp.

QCommenceConversation * QCommenceDatabase::CV ( void   )  [virtual, slot]

Definition at line 8384 of file QCommenceDB.cpp.

QDomElement QCommenceDatabase::de ( void   ) 

Definition at line 9019 of file QCommenceDB.cpp.

QString QCommenceDatabase::defaultVar ( QString  i_value,
QString  i_default 
) [inline, slot]

Definition at line 6212 of file QCommenceDB.h.

void QCommenceDatabase::dumCategory ( QString  i_value  )  [virtual, slot]

Definition at line 8801 of file QCommenceDB.cpp.

QString QCommenceDatabase::dumCategory ( void   )  [virtual, slot]

Get Dumont Persistence Category Name.

The DumontDLL has some nice features when it has a place to store things for itself and for the user. That's what DumontCategory() is for. This property represents the "Name" of the Category used to store DumontDLL items such as .ini settings, scripts and other stuff.

dumCategory() defaults to "Dumont"

Note:
In order for this function to work properly you should operate the DumontDLL under lock-persistence using the AddLock() function.
See also:
dumNameField, dumValueField

Definition at line 8793 of file QCommenceDB.cpp.

void QCommenceDatabase::dumNameField ( QString  i_value  )  [virtual, slot]

Definition at line 8817 of file QCommenceDB.cpp.

QString QCommenceDatabase::dumNameField ( void   )  [virtual, slot]

Get Dumont Persistence Category Name Field.

This specifies which field to use as the Name field when manipulating items in the DumontDLL DumCategory() category.

This defaults to "Name"

Note:
In order for this function to work properly you should operate the DumontDLL under lock-persistence using the AddLock() function.
See also:
DumCategory, DumValueField

Definition at line 8809 of file QCommenceDB.cpp.

bool QCommenceDatabase::dumontCategoryExists ( void   )  [virtual, slot]

Return the existence of the Dumont Category.

The Dumont category is a special category that is designed to provide persistent storage for various Dumont settings.

See also:
dumCategory, dumNameField, dumValueField

Definition at line 8254 of file QCommenceDB.cpp.

void QCommenceDatabase::dumValueField ( QString  i_value  )  [virtual, slot]

Definition at line 8833 of file QCommenceDB.cpp.

QString QCommenceDatabase::dumValueField ( void   )  [virtual, slot]

Get Dumont Persistence Category Value Field.

This specifies which field to use as the Value field when manipulating items in the DumontDLL DumCategory() category.

This defaults to "Value"

Note:
In order for this function to work properly you should operate the DumontDLL under lock-persistence using the AddLock() function.
See also:
DumCategory, DumNameField

Definition at line 8825 of file QCommenceDB.cpp.

void QCommenceDatabase::dumVar ( QString  i_var,
QString  i_value 
) [virtual, slot]

Definition at line 8785 of file QCommenceDB.cpp.

QString QCommenceDatabase::dumVar ( QString  i_var  )  [virtual, slot]

Set and Get a persistent var from Dumont.

This property will Get and Set a Var from the DumontDLL persistent storage based on rules of precedence.

There are three persistent storage medium in Dumont - LocalVar(), UserVar() and GlobalVar() - and one temporary storage medium - TempVar(). The four storage medium are evaluated in the following order:

  • TempVar()
  • LocalVar()
  • UserVar()
  • GlobalVar()
When a value is read from the var table using this property, the var is first searched for in the TempVar() followed by LocalVar(), UserVar() and finally GlobalVar(). This allows for values to be defined in the GlobalVar() table available to all applications and then overridden in the UserVar(), LocalVar() or TempVar() table as needed.

If the variable is not found on get an empty string will be returned. When setting the var the location is first searched to find where the first writable value is located. If a writable location cannot be found, then the var is created in the first location that *can* be written.

Note:
In order for this function to work properly you should operate the DumontDLL under lock-persistence using the AddLock() function.
See also:
TempVar, LocalVar, UserVar, GlobalVar

Definition at line 8762 of file QCommenceDB.cpp.

QString QCommenceDatabase::formatOLics ( QString  i_summary,
QDateTime  i_dateStart,
QDateTime  i_dateEnd,
QString  i_location,
QString  i_desc 
) [slot]

Definition at line 8969 of file QCommenceDB.cpp.

virtual QCommenceCategoryModel* QCommenceDatabase::getCategoryModel ( void   )  [inline, virtual, slot]

Definition at line 6081 of file QCommenceDB.h.

QCommenceConversation * QCommenceDatabase::getConversation ( QString  i_applicationName = "Commence",
QString  i_topic = "GetData" 
) [virtual, slot]

Create a conversation object.

Returns:
a reference to conversation object on success, NULL on error.
Parameters pszApplicationName DDE Application name. The only valid value is "Commence". pszTopic DDE Topic name, must be a valid Commence topic name.

The DDE.HLP file contains a reference to the allowed DDE topic names. Examples include "GetData", "ViewData", etc.

Related Methods and Objects ICommenceDB ICommenceConversation ICommenceConversation::Execute ICommenceConversation::Request

Definition at line 8401 of file QCommenceDB.cpp.

QCommenceEditRowSet * QCommenceDatabase::GetCreateDumontItem ( QString  i_itemName  )  [slot]

Definition at line 8567 of file QCommenceDB.cpp.

QCommenceCursor * QCommenceDatabase::getCursor ( long  i_mode,
const QString &  i_name,
long  i_flags = 0 
) [virtual, slot]

Create a cursor object.

ICommenceCursor GetCursor(Long nMode, String pName, Long nFlags) Create a cursor object. Defined in: E:/DEV/PIM80/DOCS/DBAPI/PIMOA/DB.D

Return Value

Returns a pointer to cursor object on success, NULL on error.

Parameters

nMode

Type of Commence data to access with this cursor.

Valid values are: 0 - CMC_CURSOR_CATEGORY Use the Commence category specified by pName. 1 - CMC_CURSOR_VIEW Use the Commence view specified by pName. 2 - CMC_CURSOR_PILOTAB Use the Commence category and fields defined from Preferences - Other Apps - 3Com Pilot Address Book 3 - CMC_CURSOR_PILOTMEMO Use the Commence category and fields defined from Preferences - Other Apps - 3Com Pilot Memo Pad

5 - CMC_CURSOR_PILOTTODO Use the Commence category and fields defined from Preferences - Other Apps - 3Com Pilot To Do List 6 - CMC_CURSOR_PILOTAPPT Use the Commence category and fields defined from Preferences - Other Apps - 3Com Pilot Date Book

pName

Name of an object in the database.

Use determined by nMode: For CMC_CURSOR_CATEGORY, pName is the category name. For CMC_CURSOR_VIEW, pName is the view name. For CMC_CURSOR_PILOTAB, pName is unused. For CMC_CURSOR_PILOTMEMO, pName is unused. For CMC_CURSOR_PILOTTODO, pName is unused. For CMC_CURSOR_PILOTAPPT, pName is unused.

nFlags

Addition option flags.

Logical OR of following option flags: CMC_FLAG_PILOT - Save Item agents defined for the Pilot subsystem will fire. CMC_FLAG_INTERNET - Save Itgem agents defined for the Internet/intranet will fire.

Comments

For CMC_CURSOR_CATEGORY, the resulting cursor will have a column set composed of all supported fields in the category (in no particular order). For CMC_CURSOR_VIEW, the resulting cursor will inherit the view's filter, sort and column set. ICommenceCursor methods can be used to change these attributes. For CMC_CURSOR_PILOT*, the column set for the resulting cursor will only include fields defined by the Commence preferences (in no particular order). It is not possible to change the filter, sort or column set.

See the Developer Notes for more information about the CMC_FLAG_PILOT and CMC_FLAG_INTERNET flags.

See Also

Related Methods and Objects ICommenceDB ICommenceCursor ICommenceCursor::SetFilter ICommenceCursor::SetLogic ICommenceCursor::SetSort ICommenceCursor::SetColumn

Definition at line 8473 of file QCommenceDB.cpp.

QDomDocument QCommenceDatabase::getDomDocument ( QString  i_itemName  ) 

Definition at line 8270 of file QCommenceDB.cpp.

void QCommenceDatabase::globalVar ( QString  i_var,
QString  i_value 
) [virtual, slot]

Definition at line 8670 of file QCommenceDB.cpp.

QString QCommenceDatabase::globalVar ( QString  i_var  )  [virtual, slot]

Manipulate the global variable space.

The GlobalVar table is usually stored in the database Dumont category under the item name dumontGlobal.ini. This Item is designed to be shared within the workgroup but is also (usually) protected from user writes using the item permission capabilities of the database.

vbScript Example:
 dum.GlobalVar("syncPath") = "ftp://www.myServer.com/dbsync/"
 msgbox dum.GlobalVar("syncPath")
Note:
In order for this function to work properly you should operate the DumontDLL under lock-persistence using the AddLock() function.
See also:
LocalVar, UserVar, TempVar, DumVar, SetApplication

Definition at line 8648 of file QCommenceDB.cpp.

QString QCommenceDatabase::guid ( void   )  [slot]

Definition at line 8959 of file QCommenceDB.cpp.

void QCommenceDatabase::initSettings ( QPointer< QSettings > &  set,
QString  store 
) [private]

Initialize Private Settings.

This internal method is used to initialize any of the internal QSettings pointers.

Definition at line 8601 of file QCommenceDB.cpp.

bool QCommenceDatabase::isEmployee ( QString  i_value  )  [virtual, slot]

Check this 'Name' to see if it's an employee.

Definition at line 8908 of file QCommenceDB.cpp.

void QCommenceDatabase::loadDefinition ( QString  i_fileName  )  [slot]

Load the database definition from an XML file.

Definition at line 9053 of file QCommenceDB.cpp.

void QCommenceDatabase::localVar ( QString  i_var,
QString  i_value 
) [virtual, slot]

Definition at line 8638 of file QCommenceDB.cpp.

QString QCommenceDatabase::localVar ( QString  i_var  )  [virtual, slot]

Set and Get the local vars.

The LocalVar table is usually stored in the application database directory in the dumont.ini file. Name/Value pairs take the common form of Name=Value in text-file format for ease of maintenance.

These local variables are only available to this installation on this computer are are not shared within the workgroup.

vbScript Example:
 dum.LocalVar("pathToDocs") = "//server1/www.myServer.com/dbsync/"
 msgbox dum.LocalVar("pathToDocs")
Note:
In order for this function to work properly you should operate the DumontDLL under lock-persistence using the AddLock() and SetApplication() functions. Without calling SetApplication then the LocalVar() function won't know where the application database directory is located.
See also:
GlobalVar, UserVar, TempVar, DumVar, SetApplication

Definition at line 8618 of file QCommenceDB.cpp.

void QCommenceDatabase::log ( QString  i_message  )  [slot]

Send a line to the dumont.log file.

This sends a single line to the dumont.log file in the database directory. The directory is a function of the database path() function call.

Definition at line 8983 of file QCommenceDB.cpp.

QCommenceMeInfo * QCommenceDatabase::meInfo ( void   )  [slot]

Return a MeInfo object.

Definition at line 8338 of file QCommenceDB.cpp.

QString QCommenceDatabase::name ( void   )  [virtual, slot]

(read-only) Name of the Commence database.

Definition at line 8311 of file QCommenceDB.cpp.

QString QCommenceDatabase::path ( void   )  [virtual, slot]

(read-only) Full path of the Commence database.

Definition at line 8320 of file QCommenceDB.cpp.

QString QCommenceDatabase::registeredUser ( void   )  [virtual, slot]

(read-only) CR/LF delimited string with user name, company name and serial number.

Definition at line 8329 of file QCommenceDB.cpp.

void QCommenceDatabase::saveDefinition ( QString  i_fileName  )  [slot]

Save the database definition to an XML file.

This routine writes the entire database definition to an XML formatted data file. The file will reside in the database directory under the name 'databaseDef.xml' and will follow all the standard XML formatting rules the file contains a complete dump of the entire database structure (see exerpt below)

The XML file also includes additional attributes used by Dumont. These attributes include things like object comments - yes, object comments! This means that, through Dumont, it will now be possible to place comments and notes on categories, fields, connections and any other object within the system!

Dumont adds additional features and functionality to the Commence database. However, not all of the features that are available through Dumont are available directly from the Commence API. Some of these features include things like comments on fields and connection, reverse-connection (see QCommenceConnectionDef::pairedName) names on connection objects, import/export flags and so on. These are additional values that, while handy to the functionality of Dumont, must be coded by hand into this XML file. This is only because Commence does not allow access to these essential properties through their regular API.

With these additional features, the following code is valid:

Example Connection Extended Properties
 Sub ShowConnectionProps()
   dim ddll: set ddll = createObject("DumontDLL")
   dim dfrm: set dfrm = ddll.form(Form)
   ddll.debug "paired name " & dfrm.connection("has Appointments").definition.pairedName
   '
   ' output shows: "Includes->Attendees"
   '
 End Sub
In the preceeding example, the Form object we are on is for the "Attendees" category, and the connection object is to the "Appointments" category. Wouldn't it be nice to know what the reverse connection name is for this "has Appointments" connection? That is a tidbit of information that is easily coded into the databaseDef.xml file Notice in the xml example below, that for each connection defintion, there is an additional attribute encoded <pairedName> and it is in this element that you can encode that reverse connection name.

By encoding these additional values in the databaseDef.xml file it will be possible to have Dumont perform additional import/export and data translation tasks. Furthermore, this XML file can be used for other services and exernal programs where an xml representation of the database schema would be useful.

Note:
One day it may be possible to query the database for these 'extended' attributes directly, and it is within the scope of the vision for Dumont that this will happen. But, in the mean time, these values will have to be manipulated by hand, and coded by hand.
Sample databaseDef.xml file
 <!DOCTYPE QCommenceDatabase>
 <databaseDef>
  <createdOn>20070608131046</createdOn>
  <createdBy>KES.mwp</createdBy>
  <categoryDefs>
   <categoryDef name="Activity" >
    <isShared>Yes</isShared>
    <duplicatesAllowed>No</duplicatesAllowed>
    <hasClarify>No</hasClarify>
    <hasVar>No</hasVar>
    <keyFieldName>calActivityKey</keyFieldName>
    <fieldDefs>
     <fieldDef index="0" name="calActivityKey" >
      <type>11</type>
      <typeName>Name</typeName>
      <isShared>Yes</isShared>
      <isMandatory>Yes</isMandatory>
      <isRecurring>Yes</isRecurring>
      <isSelection>No</isSelection>
      <maxChars>50</maxChars>
      <defaultString></defaultString>
      <comment></comment>
      <export></export>
     </fieldDef>
     <fieldDef index="1" name="calActivityClarify" >
      <type>0</type>
      <typeName>Text</typeName>
      <isShared>Yes</isShared>
      <isMandatory>No</isMandatory>
      <isRecurring>No</isRecurring>
      <isSelection>No</isSelection>
      <maxChars>80</maxChars>
      <defaultString></defaultString>
      <comment></comment>
      <export></export>
     </fieldDef>
    </fieldDefs>
    <connectionDefs>
     <connectionDef index="0" name="in->Color Code" >
      <pairedName></pairedName>
      <comment></comment>
     </connectionDef>
     <connectionDef index="1" name="Relates to->Calendar" >
      <pairedName></pairedName>
      <comment></comment>
     </connectionDef>
     <connectionDef index="2" name="Relates to->Projects" >
      <pairedName></pairedName>
      <comment></comment>
     </connectionDef>
     <connectionDef index="3" name="viewed->on" >
      <pairedName></pairedName>
      <comment></comment>
     </connectionDef>
    </connectionDefs>
   </categoryDef>
   <categoryDef name="Address" >
    <isShared>Yes</isShared>
See also:
loadDefinition

Definition at line 9060 of file QCommenceDB.cpp.

QString QCommenceDatabase::script ( QString  i_value  )  [virtual, slot]

Get a script from storage.

This function will fetch a script from the script module. It is designed to pull the script from either the script category, or from the script directory. If the csoScriptFile is set to True, and the file is not available then this function will switch to the category and attempt to fetch the script from there. If nothing is fetched then nothing is returned. No errors are reported.

See also:
Script, ScriptFromFile

Definition at line 8878 of file QCommenceDB.cpp.

void QCommenceDatabase::scriptFromFile ( bool  i_value  )  [virtual, slot]

Definition at line 8871 of file QCommenceDB.cpp.

bool QCommenceDatabase::scriptFromFile ( void   )  [virtual, slot]

Get the ScriptFromFile flag.

The DumontDLL has the ability to manipulate Form Scripts as if they came from standard development environment "Include" files. This allows Form scripts to be broken up into multiple files and "included" on the forms for more coding efficiency. All of these scripts need to be stored somewhere, and properly reassembled. The best place to store these scripts is in individual Dumont items. However in some cases it makes sense to store these items on disk so that they can be edited quickly using conventional editors. Setting this flag to TRUE causes the DumontDLL scripting assistant to load all scripts from Disk files rather than the originating Dumont category items.

This defaults to FALSE

See also:
Script, ScriptPath

Definition at line 8859 of file QCommenceDB.cpp.

void QCommenceDatabase::scriptPath ( QString  i_value  )  [virtual, slot]

Definition at line 8852 of file QCommenceDB.cpp.

QString QCommenceDatabase::scriptPath ( void   )  [virtual, slot]

Get the Path to where scripts are stored.

This is critically important to the operation of the Commence agents that you build in your application since an agent cannot be coded to look for scripts underneath the running db directory unless that db directory is the same on all machines (a commence feature). Be sure to include the terminating "\" backslash in this ScriptPath.

This defaults to "C:/Commence/Scripts/"

See also:
Script, ScriptFromFile

Definition at line 8841 of file QCommenceDB.cpp.

bool QCommenceDatabase::shared ( void   )  [virtual, slot]

(read-only) TRUE if database is enrolled in a workgroup.

Definition at line 8352 of file QCommenceDB.cpp.

void QCommenceDatabase::tempVar ( QString  i_var,
QString  i_value 
) [virtual, slot]

Definition at line 8751 of file QCommenceDB.cpp.

QString QCommenceDatabase::tempVar ( QString  i_var  )  [virtual, slot]

Manipulate the tempVar space.

The tempVar table is a standard .ini file that is also stored in the application directory, but the values stored in it are transient for each instance launch of the DumontDLL extension. If lock-persistence is not employed then these temporary values will only exist for as long as the DumontDLL stays in memory - which is an unpredictable length of time. If lock-persistence IS employed then these temporary values will remain in memory for as long as the .exe continues running (and the DumontDLL stays in memory.

This var space is designed to act as a quick temporary scratchpad for data within a running application.

See also:
LocalVar, GlobalVar, UserVar, DumVar

Definition at line 8741 of file QCommenceDB.cpp.

long QCommenceDatabase::timeZoneOffset ( void   )  [virtual, slot]

Return the TimeZone offset for this database.

Definition at line 8951 of file QCommenceDB.cpp.

virtual void QCommenceDatabase::userVar ( QString  i_var,
double  i_value 
) [inline, virtual, slot]

Definition at line 6272 of file QCommenceDB.h.

virtual void QCommenceDatabase::userVar ( QString  i_var,
int  i_value 
) [inline, virtual, slot]

Definition at line 6271 of file QCommenceDB.h.

void QCommenceDatabase::userVar ( QString  i_var,
QString  i_value 
) [virtual, slot]

Definition at line 8717 of file QCommenceDB.cpp.

QString QCommenceDatabase::userVar ( QString  i_var  )  [virtual, slot]

Manipulate the userVar space.

The userVar table is usually stored in the database Dumont category under the item name dumont{UserAbbv}.ini. This Item is designed to be shared within the workgroup but is also (usually) read/write restricted to this specific user using the item permission capabilities of the database. The item name is constructed from the ("dumont" + MeAbbreviation() + ".ini"); string combination. This forces each dumont{UserAbbv}.ini value to be unique. It's up to the application developer to insure that MeAbbreviation() returns valid (and unique) information indentifiers for each user.

vbScript Example:
 dim dum: set dum = CreateObject("DumontDLL")
 dum.UserVar("workgroupID") = "B53185E2-D10B-40b9-A662-1AAF04252A90"
 msgbox dum.UserVar("workgroupID")
If the variable is not found on get an empty string will be returned. When setting the var, if the UserVar table is read-only then the changes will be discarded and no errors raised.

Note:
In order for this function to work properly you should operate the DumontDLL under lock-persistence using the AddLock() function.
See also:
LocalVar, GlobalVar, TempVar, DumVar

Definition at line 8689 of file QCommenceDB.cpp.

QString QCommenceDatabase::version ( void   )  [virtual, slot]

(read-only) Version number in x.y format.

Definition at line 8363 of file QCommenceDB.cpp.

QString QCommenceDatabase::versionExt ( void   )  [virtual, slot]

(read-only) Version number in x.y.z.w format.

Definition at line 8374 of file QCommenceDB.cpp.


Member Data Documentation

QDomDocument QCommenceDatabase::doc [private]

Definition at line 6572 of file QCommenceDB.h.

Definition at line 6570 of file QCommenceDB.h.

QString QCommenceDatabase::s_dumCategory = "Dumont" [static, private]

Definition at line 6574 of file QCommenceDB.h.

QPointer< QSettings > QCommenceDatabase::s_dumIni [static, private]

Definition at line 6567 of file QCommenceDB.h.

QString QCommenceDatabase::s_dumNameField = "Name" [static, private]

Definition at line 6575 of file QCommenceDB.h.

QString QCommenceDatabase::s_dumValueField = "Value" [static, private]

Definition at line 6576 of file QCommenceDB.h.

QPointer< QSettings > QCommenceDatabase::s_tmpIni [static, private]

Definition at line 6568 of file QCommenceDB.h.


The documentation for this class was generated from the following files:




~ ~ ~ ~ ~ ~
Source Code without Comments is like a Cranberry Garland
without the berries. Comment your Code!
 
Commence Database User Support Group Forum
http://newsgroup.showoff-db.org/
~ ~ ~ ~ ~ ~
Author: Mark Petryk
Lorimark Solutions, LLC
mark@lorimarksolutions.com