The DatabaseObjectLockable type exposes the following members.
          
             Constructors
Constructors
        
        | Name | Description | |
|---|---|---|
|   | DatabaseObjectLockable | 
 Initializes a new DatabaseObject with the parent collection that this object is 
 associated with and the lock controller to be used with this object.
  | 
          
             Methods
Methods
        
        | Name | Description | |
|---|---|---|
|   | Delete | 
 Deletes the record from the database associated with this record.
 After which this object becomes invalid.
 The IsSaved property is automtically set to false.
 Performs the same function as IDatabaseObjects.ObjectDelete().
 (Inherited from DatabaseObject.) | 
|   | Equals | 
 Compares whether two objects are equal using the distinct values of each object.
 Specifically, true is returned if the distinct values match, both objects are
 not Nothing and both object types are the same.
 (Inherited from DatabaseObject.) | 
|   | Finalize | 
                    Allows an Object to attempt to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection.
                (Inherited from Object.) | 
|   | GetFieldValue | 
 Gets and returns the field value from the database record associated with this object.
 Returns DBNull.Value if the field is NULL.
 (Inherited from DatabaseObject.) | 
|   | GetHashCode | 
                    Serves as a hash function for a particular type. 
                (Inherited from Object.) | 
|   | GetType | 
                    Gets the Type of the current instance.
                (Inherited from Object.) | 
|   | Load(IDataReader) | 
 Loads this object with the object's fields and properties with the fields from the database.
 Automatically sets the IDatabaseObject.DistinctValue and IDatabaseObject.IsSaved properties so that the
 object is correctly initialized.
 Onforwards a call to Database.ObjectLoad()
 (Inherited from DatabaseObject.) | 
|   | Load(SQLFieldValues) | 
 Loads this object with the object's fields and properties with the fields from the database.
 Automatically sets the IDatabaseObject.DistinctValue and IDatabaseObject.IsSaved properties so that the
 object is correctly initialized.
 Onforwards a call to Database.ObjectLoad()
 (Inherited from DatabaseObject.) | 
|   | LoadFields | 
 Sets the properties and fields marked with the FieldMappingAttribute with the 
 values from the database record. Properties or fields that are an enum data 
 type are automatically converted from the database integer value to the equivalent 
 enum. For properties and fields marked with the FieldMappingObjectHookAttribute 
 the property's or field's object is also traversed for properties or fields marked
 with the FieldMappingAttribute. 
 Loads the lowest order base class that does not exist in the 
 DatabaseObjects assembly first up through to the highest order class.
 This function should generally not be called from an inheritor.
 Use LoadFieldValues() to correctly load this object from a set of field values.
 (Inherited from DatabaseObject.) | 
|   | Lock | 
 Locks this object. 
 Throws an exception if this object is already locked.
 Throws an exception if this object has not been saved.
 It is possible that between calling IsLocked and Lock another
 user may have locked the object. Therefore, it is recommended calling Lock and then 
 trapping the MethodAccessException to determine whether the lock actually succeeded.
  | 
|   | LockRecord | 
 Locks the database record associated with this object by selecting and locking
 the row in the database. Supported in Microsoft SQLServer, Pervasive and MySQL.
 The record lock is released when the transaction is committed or rolled back.
 Throws an exception if not in transaction mode.
 Returns the field values from the record that has been locked.
 (Inherited from DatabaseObject.) | 
|   | MemberwiseClone | 
                    Creates a shallow copy of the current Object.
                (Inherited from Object.) | 
|   | MemberwiseCopy(DatabaseObject) | 
 Performs a shallow memberwise copy of fields in this and all base classes,
 but does not copy any of the DatabaseObjects fields ensuring that the
 objects are not considered equal.
 (Inherited from DatabaseObject.) | 
|   | MemberwiseCopy(DatabaseObject, Boolean) | 
 Performs a shallow memberwise copy of fields in this and all base classes,
 but does not copy any of the DatabaseObjects fields ensuring that the
 objects are not considered equal.
 (Inherited from DatabaseObject.) | 
|   | RootContainer<(Of <<'(TRootContainer>)>>) | 
 Returns the root container object that this object is a child of.
 (Inherited from DatabaseObject.) | 
|   | Save | 
 Extracts the fields to save to the database from the objItem.SaveFields function.
 The fields are then written to the database using either an SQL INSERT or UPDATE 
 depending on whether the object has already been saved. If the collection has 
 implemented IDatabaseObjects.KeyFieldName then objItem's key is also validated to
 ensure it is not null and unique within the collection.
 If the parent collection has implemented Subset then this object should exist 
 within the parent collection. If not, a duplicate key error may occur if the key 
 is being used in another subset in the same table. If a record is being amended 
 (MyBase.IsSaved is True) then the function will "AND" the parent collection's 
 Subset conditions and the DistinctValue value to create the WHERE clause in the 
 UPDATE statement. Therefore, the combination of the IDatabaseObjects.Subset and 
 IDatabaseObject.DistinctValue conditions MUST identify only one record in the 
 table. Otherwise multiple records will be updated with the same data. If data is
 only inserted and not amended (usually a rare occurance) then this requirement 
 is unnecessary.
 (Inherited from DatabaseObject.) | 
|   | SaveFields | 
 Gets the values from the properties and fields marked with the FieldMappingAttribute 
 to be saved to the database. Properties or fields that return an enum data type are 
 automatically converted from the enum to the equivalent integer value for database
 storage. For properties and fields marked with the FieldMappingObjectHookAttribute 
 the property's or field's object is also traversed for properties or fields marked
 with the FieldMappingAttribute. 
 (Inherited from DatabaseObject.) | 
|   | SetFieldValue | 
 Sets the field value for the database record associated with this object.
 (Inherited from DatabaseObject.) | 
|   | ToString | (Inherited from Object.) | 
|   | UnLock | 
 UnLocks this object. Throws an exception if the object is not locked or the
 object has not been saved.
  | 
          
             Properties
Properties
        
        | Name | Description | |
|---|---|---|
|   | DistinctValue | 
 Returns the distinct value that uniquely identifies this object in the 
 database. If a new object is saved or an existing object is loaded then this 
 property is automatically set by the library. 
 Typically, this is the value of an identity or auto increment database field.
 (Inherited from DatabaseObject.) | 
|   | GrandParent | 
 Returns the grand parent of this object. This is usually the object that
 contains the collection that this object is contained with in.
 For example, a GrandParent object of an InvoiceDetail would be an Invoice.
 (Inherited from DatabaseObject.) | 
|   | GrandParentDistinctValue | 
 Returns the distinct value from the grand parent of this object.
 This is usually the object that contains the collection that this object is contained within.
 For example, a GrandParent object of an InvoiceDetail would be an Invoice.
 (Inherited from DatabaseObject.) | 
|   | IsLocked | 
 Indicates whether the current object is Locked either by the current user or 
 another user.
  | 
|   | IsLockedByCurrentUser | 
 Returns whether the current user has the object locked.
  | 
|   | IsSaved | 
 Returns whether this object has been saved to the database. If a new object is 
 saved (which uses an auto increment field) or an existing object is loaded then 
 this property is automatically set to true by the library.
 (Inherited from DatabaseObject.) | 
|   | LockedByUserID | 
 Returns the user identifier that currently has the object locked. Throws an 
 exception if the object is not locked by a user.
  | 
|   | ParentCollection | 
 Sets/returns the parent collection (DatabaseObjects instance) that this object is 
 associated with.
 (Inherited from DatabaseObject.) | 
|   | ParentDatabase | 
 Returns the database associated with this object.
 (Inherited from DatabaseObject.) | 
 
     
     
     
     
    