TDACustomFieldCollection

Overview

TDACustomFieldCollection provides base functionality of a container for TDAField objects.

Location


 

constructor Create (TPersistent, TDAFieldClass)

Creates a new instance.

constructor Create(aOwner: TPersistent; aFieldClass: TDAFieldClass)

Parameters:

  • aOwner: owner
  • aFieldClass: field class

constructor Create (TPersistent, TCollectionItemClass)    (declared in TSearcheableCollectionCached)

Initializes the collection with the supplied parameters.

constructor Create(AOwner: TPersistent; ItemClass: TCollectionItemClass)

Parameters:

  • AOwner: owner
  • ItemClass: item class

Add  reintroduce overload

Creates new TDAField and add it to collection

function Add: TDAField

Add (string, TDADataType, Integer): TDACustomField  overload

Creates new TDAField, fills with specified properties and adds it to collection

function Add(const aName: string; aType: TDADataType; aSize: Integer): TDACustomField

Parameters:

  • aName: field name
  • aType: field type
  • aSize: field size

Assign  override

Calls AssignFieldCollection if source is TDACustomFieldCollection

procedure Assign(Source: TPersistent)

Parameters:

  • Source: Instance whose properties will be copied

AssignFieldCollection

Copies the contents of another collection to the object where the method is executed.

procedure AssignFieldCollection(Source: TDACustomFieldCollection)

Parameters:

  • Source: Instance whose properties will be copied

Bind (TDataset)  overload

Binds child fields with aDataset

procedure Bind(aDataset: TDataset)

Parameters:

  • aDataset: dataset

Bind (IDASQLCommandNativeObject)  overload

Binds child fields with aNativeObject

procedure Bind(aNativeObject: IDASQLCommandNativeObject)

Parameters:

  • aNativeObject: native object

CloneItem    (declared in TSearcheableCollection)

Inserts a copy of an item and names it "Copy nn of " of the cloned item name.

function CloneItem(iIndex: Integer): Integer

Parameters:

  • iIndex: position.

DataDictionary

Gets/sets the DataDictionary property.

property DataDictionary: IDADataDictionary read write

FieldByName

Finds a field based on its name. If the specified field does not exist, FieldByName raises an exception.

function FieldByName(const aName: string): TDACustomField

Parameters:

  • aName: name of the searched field

FieldEventsDisabled

Allows to process events in child items.

property FieldEventsDisabled: Boolean read write

Fields

Provides access to specific field.

property Fields[Index: Integer]: TDACustomField read write

FindField

Returns an item with the specified name.

function FindField(const aName: string): TDACustomField

Parameters:

  • aName: name of the searched field

FindItem  override    (declared in TSearcheableCollectionCached)

Finds the first occurrence of the item with the supplied name. Search is case-insensitive.

function FindItem(const aName: string): TCollectionItem

Parameters:

  • aName: the supplied name

FindUniqueName    (declared in TSearcheableCollection)

Returns the supplied name if the item with that name is absent in the collection or adds a number to it and sequentially increments it until the result is unique.

function FindUniqueName(const iBaseName: string): string

Parameters:

  • iBaseName: the supplied name

FindUniqueNameEx    (declared in TSearcheableCollection)

Does the same as FindUniqueName, but uses a template with a numeric parameter as second argument, it should be compatible with the Delphi Format function.

function FindUniqueNameEx(const iBaseName: string; const iNumberedName: string): string

Parameters:

  • iBaseName: the supplied name
  • iNumberedName: numeric parameter

GetCount  protected    (declared in TSearcheableInterfacedCollection)

Does nothing, should be implemented in the descendant.

function GetCount: Integer

GetDefaultItem    (declared in TSearcheableCollection)

Looks for the first occurrence of the item that has a boolean property with the name "Default" and the value true. Raises an exception if no such item can be found.

function GetDefaultItem: TCollectionItem

GetItemDefault  protected dynamic    (declared in TSearcheableCollection)

Returns default item's name

function GetItemDefault(anItem: TCollectionItem): Boolean

Parameters:

  • anItem: given item

GetItemName  protected override

Gets the name of the specified item.

function GetItemName(anItem: TCollectionItem): string

Parameters:

  • anItem: the specified item.

IsCompatibleV4

Specifies DA4 compatible mode.

property IsCompatibleV4: Boolean read write

ItemByName    (declared in TSearcheableCollection)

Returns an item with the specified name.

function ItemByName(const aName: string): TCollectionItem

Parameters:

  • aName: fClientFields

ItemName  protected virtual    (declared in TSearcheableCollection)

Returns the string "item".

function ItemName: string

MergeDataDictionaries  protected virtual

Returns False.

function MergeDataDictionaries: Boolean

MoveItem    (declared in TSearcheableCollection)

Moves the item from one position to another. Checks boundaries.

procedure MoveItem(iFromIndex: Integer; iToIndex: Integer)

Parameters:

  • iFromIndex: old index
  • iToIndex: new index

Notify  protected override    (declared in TSearcheableCollectionCached)

Notifies about the adding or removal of an item if the event handler is assigned. If an item with an empty name is added and items without name are not allowed, it sets the name to "Item" plus number.

procedure Notify(Item: TCollectionItem; Action: TCollectionNotification)

Parameters:

  • Item: given item
  • Action: action

OnFieldAfterUpdate

This event is fired if field was updated

property OnFieldAfterUpdate: TDAFieldNotifyEvent read write
delegate: procedure OnFieldAfterUpdate(Sender: TDACustomField)

OnFieldBeforeUpdate

This event is fired before field was updated

property OnFieldBeforeUpdate: TDAFieldNotifyEvent read write
delegate: procedure OnFieldBeforeUpdate(Sender: TDACustomField)

OnItemRemoved    (declared in TSearcheableCollection)

Event handler for removing an item.

property OnItemRemoved: TDAItemRemovedEvent read write
delegate: procedure OnItemRemoved(aSender: TObject; const aName: string)

OnItemRenamed    (declared in TSearcheableCollection)

Event handler for renaming an item.

property OnItemRenamed: TDAItemRenamedEvent read write
delegate: procedure OnItemRenamed(aSender: TObject; const aOldName: string; const aNewName: string)

PrimaryKeyFieldCount

Calculates number of fields that have InPrimaryKey = True;

property PrimaryKeyFieldCount: Integer read

QueryInterface  protected stdcall    (declared in TSearcheableInterfacedCollection)

Returns a reference to a specified interface if the object supports that interface. This is one of the methods introduced by the IUnknown interface.

function QueryInterface(const IID: TGUID; out Obj: ): HResult

Parameters:

  • IID: Identifier of the interface to return
  • Obj: Variable to store the returned interface reference to

SetItemName  protected override

Sets a new name for the specified item.

function SetItemName(anItem: TCollectionItem; const aName: string): string

Parameters:

  • anItem: item
  • aName: name

TriggerOnItemRemoved  override    (declared in TSearcheableCollectionCached)

Calls the event handler if it was assigned.

procedure TriggerOnItemRemoved(const iName: string)

Parameters:

  • iName: item name

TriggerOnItemRenamed  override    (declared in TSearcheableCollectionCached)

Calls the event handler if it was assigned.

procedure TriggerOnItemRenamed(const iOldName: string; const iNewName: string)

Parameters:

  • iOldName: old name
  • iNewName: new name

Unbind

Unbinds early binded collections

procedure Unbind

 

DataDictionary

Gets/sets the DataDictionary property.

property DataDictionary: IDADataDictionary read write

FieldEventsDisabled

Allows to process events in child items.

property FieldEventsDisabled: Boolean read write

Fields

Provides access to specific field.

property Fields[Index: Integer]: TDACustomField read write

IsCompatibleV4

Specifies DA4 compatible mode.

property IsCompatibleV4: Boolean read write

PrimaryKeyFieldCount

Calculates number of fields that have InPrimaryKey = True;

property PrimaryKeyFieldCount: Integer read

 

constructor Create (TPersistent, TDAFieldClass)

Creates a new instance.

constructor Create(aOwner: TPersistent; aFieldClass: TDAFieldClass)

Parameters:

  • aOwner: owner
  • aFieldClass: field class

constructor Create (TPersistent, TCollectionItemClass)    (declared in TSearcheableCollectionCached)

Initializes the collection with the supplied parameters.

constructor Create(AOwner: TPersistent; ItemClass: TCollectionItemClass)

Parameters:

  • AOwner: owner
  • ItemClass: item class

Add  reintroduce overload

Creates new TDAField and add it to collection

function Add: TDAField

Add (string, TDADataType, Integer): TDACustomField  overload

Creates new TDAField, fills with specified properties and adds it to collection

function Add(const aName: string; aType: TDADataType; aSize: Integer): TDACustomField

Parameters:

  • aName: field name
  • aType: field type
  • aSize: field size

Assign  override

Calls AssignFieldCollection if source is TDACustomFieldCollection

procedure Assign(Source: TPersistent)

Parameters:

  • Source: Instance whose properties will be copied

AssignFieldCollection

Copies the contents of another collection to the object where the method is executed.

procedure AssignFieldCollection(Source: TDACustomFieldCollection)

Parameters:

  • Source: Instance whose properties will be copied

Bind (TDataset)  overload

Binds child fields with aDataset

procedure Bind(aDataset: TDataset)

Parameters:

  • aDataset: dataset

Bind (IDASQLCommandNativeObject)  overload

Binds child fields with aNativeObject

procedure Bind(aNativeObject: IDASQLCommandNativeObject)

Parameters:

  • aNativeObject: native object

CloneItem    (declared in TSearcheableCollection)

Inserts a copy of an item and names it "Copy nn of " of the cloned item name.

function CloneItem(iIndex: Integer): Integer

Parameters:

  • iIndex: position.

FieldByName

Finds a field based on its name. If the specified field does not exist, FieldByName raises an exception.

function FieldByName(const aName: string): TDACustomField

Parameters:

  • aName: name of the searched field

FindField

Returns an item with the specified name.

function FindField(const aName: string): TDACustomField

Parameters:

  • aName: name of the searched field

FindItem  override    (declared in TSearcheableCollectionCached)

Finds the first occurrence of the item with the supplied name. Search is case-insensitive.

function FindItem(const aName: string): TCollectionItem

Parameters:

  • aName: the supplied name

FindUniqueName    (declared in TSearcheableCollection)

Returns the supplied name if the item with that name is absent in the collection or adds a number to it and sequentially increments it until the result is unique.

function FindUniqueName(const iBaseName: string): string

Parameters:

  • iBaseName: the supplied name

FindUniqueNameEx    (declared in TSearcheableCollection)

Does the same as FindUniqueName, but uses a template with a numeric parameter as second argument, it should be compatible with the Delphi Format function.

function FindUniqueNameEx(const iBaseName: string; const iNumberedName: string): string

Parameters:

  • iBaseName: the supplied name
  • iNumberedName: numeric parameter

GetCount  protected    (declared in TSearcheableInterfacedCollection)

Does nothing, should be implemented in the descendant.

function GetCount: Integer

GetDefaultItem    (declared in TSearcheableCollection)

Looks for the first occurrence of the item that has a boolean property with the name "Default" and the value true. Raises an exception if no such item can be found.

function GetDefaultItem: TCollectionItem

GetItemDefault  protected dynamic    (declared in TSearcheableCollection)

Returns default item's name

function GetItemDefault(anItem: TCollectionItem): Boolean

Parameters:

  • anItem: given item

GetItemName  protected override

Gets the name of the specified item.

function GetItemName(anItem: TCollectionItem): string

Parameters:

  • anItem: the specified item.

ItemByName    (declared in TSearcheableCollection)

Returns an item with the specified name.

function ItemByName(const aName: string): TCollectionItem

Parameters:

  • aName: fClientFields

ItemName  protected virtual    (declared in TSearcheableCollection)

Returns the string "item".

function ItemName: string

MergeDataDictionaries  protected virtual

Returns False.

function MergeDataDictionaries: Boolean

MoveItem    (declared in TSearcheableCollection)

Moves the item from one position to another. Checks boundaries.

procedure MoveItem(iFromIndex: Integer; iToIndex: Integer)

Parameters:

  • iFromIndex: old index
  • iToIndex: new index

Notify  protected override    (declared in TSearcheableCollectionCached)

Notifies about the adding or removal of an item if the event handler is assigned. If an item with an empty name is added and items without name are not allowed, it sets the name to "Item" plus number.

procedure Notify(Item: TCollectionItem; Action: TCollectionNotification)

Parameters:

  • Item: given item
  • Action: action

QueryInterface  protected stdcall    (declared in TSearcheableInterfacedCollection)

Returns a reference to a specified interface if the object supports that interface. This is one of the methods introduced by the IUnknown interface.

function QueryInterface(const IID: TGUID; out Obj: ): HResult

Parameters:

  • IID: Identifier of the interface to return
  • Obj: Variable to store the returned interface reference to

SetItemName  protected override

Sets a new name for the specified item.

function SetItemName(anItem: TCollectionItem; const aName: string): string

Parameters:

  • anItem: item
  • aName: name

TriggerOnItemRemoved  override    (declared in TSearcheableCollectionCached)

Calls the event handler if it was assigned.

procedure TriggerOnItemRemoved(const iName: string)

Parameters:

  • iName: item name

TriggerOnItemRenamed  override    (declared in TSearcheableCollectionCached)

Calls the event handler if it was assigned.

procedure TriggerOnItemRenamed(const iOldName: string; const iNewName: string)

Parameters:

  • iOldName: old name
  • iNewName: new name

Unbind

Unbinds early binded collections

procedure Unbind

 

OnFieldAfterUpdate

This event is fired if field was updated

property OnFieldAfterUpdate: TDAFieldNotifyEvent read write
delegate: procedure OnFieldAfterUpdate(Sender: TDACustomField)

OnFieldBeforeUpdate

This event is fired before field was updated

property OnFieldBeforeUpdate: TDAFieldNotifyEvent read write
delegate: procedure OnFieldBeforeUpdate(Sender: TDACustomField)

OnItemRemoved    (declared in TSearcheableCollection)

Event handler for removing an item.

property OnItemRemoved: TDAItemRemovedEvent read write
delegate: procedure OnItemRemoved(aSender: TObject; const aName: string)

OnItemRenamed    (declared in TSearcheableCollection)

Event handler for renaming an item.

property OnItemRenamed: TDAItemRenamedEvent read write
delegate: procedure OnItemRenamed(aSender: TObject; const aOldName: string; const aNewName: string)