Interface IArchiveProviderDoesExtend
This interface defines the methods needed to extend an archive provider with additional columns. The standard base class ExtenderBase implements this interface.
Namespace: SuperOffice.CRM.ArchiveLists
Assembly: SoDataBase.dll
Syntax
public interface IArchiveProviderDoesExtend
Properties
MainTableName
The name of the table that this node is the handler for
Declaration
string MainTableName { get; }
Property Value
Type | Description |
---|---|
string |
Methods
ForceDisable()
Calling this method will force the extender to disable itself and its own extenders. Disabling means that it will return 'false' to the IsQueryNeeded and IsQueryRestriction, and will not expect to be called for ModifyQuery or PopulateRowFromReader.
Declaration
void ForceDisable()
IsQueryNeeded()
Is the query of this provider required to be part of the generated query? The answer is yes if any of the columns provided by this provider or any of its extenders has been selected.
Declaration
bool IsQueryNeeded()
Returns
Type | Description |
---|---|
bool |
IsQueryRestriction()
Does the query of this provider add restrictions to the generated query? The answer is yes if any of the restrictions match one handled by this extender, or any of its own extenders
Declaration
bool IsQueryRestriction()
Returns
Type | Description |
---|---|
bool |
ModifyQuery()
This method is called before the execution of an archive provider. It should modify the parent's query as required by this extender, generally by adding a join and some return fields. If the recommended standard base class ExtenderBase is used, it implements this method and instead calls some inner, more specific methods.
Declaration
void ModifyQuery()
PopulateRowFromReader(SoDataReader, ArchiveRow)
Using the provided data reader in its current state, extract the needed columns and populate the provided ArchiveRow
Declaration
void PopulateRowFromReader(SoDataReader reader, ArchiveRow row)
Parameters
Type | Name | Description |
---|---|---|
SoDataReader | reader | The data reader containing raw data for the row |
ArchiveRow | row | The row to be populated/added to by the provider |
SetParent(IArchiveProviderExtensible)
This method is called during the addition of an extender to its parent, so that the extender may know who the parent is. This information will generally be used by the ModifyQuery method so it can find the root query it is supposed to modify.
Declaration
void SetParent(IArchiveProviderExtensible parent)
Parameters
Type | Name | Description |
---|---|---|
IArchiveProviderExtensible | parent | Parent to extend |