Class ActivityArchiveProviderBase
Base class for Activity archive providers. Activity archives can be found under the Company card, the Project card, and the Diary. These archives follow slightly different rules with regard to filtering along the axes of date, kind, repetition and booking type, as indicated by the ActivityArchiveKind parameter from the subclasses.
Inheritance
Implements
Inherited Members
Namespace: SuperOffice.CRM.ArchiveLists
Assembly: SoDataBase.dll
Syntax
public abstract class ActivityArchiveProviderBase : MultiQueryProviderBase, IArchiveMultiQueryProvider, IArchiveProvider, IArchiveProviderHasRows, IArchiveProviderHasColumns, IArchiveProviderHasEntities
Remarks
This provider accepts the row types 'appointment', 'todo' and 'document'. However, there is, in this provider, a relationship between entities and restrictions, as follows:
- If the restriction 'appointmentId' is present, then the 'document' entity will be disabled
- If the restriction 'documentId' is present, then the 'appointment' and 'todo' entities will be disabled
Constructors
ActivityArchiveProviderBase(ActivityArchiveKind, string)
Base class for Activity archive providers. Activity archives can be found under the Company card, the Project card, and the Diary. These archives follow slightly different rules with regard to filtering along the axes of date, kind, repetition and booking type, as indicated by the ActivityArchiveKind parameter from the subclasses.
Declaration
protected ActivityArchiveProviderBase(ActivityArchiveKind kind, string requiredNonZeroIdRestrictionName = null)
Parameters
Type | Name | Description |
---|---|---|
ActivityArchiveKind | kind | |
string | requiredNonZeroIdRestrictionName |
Remarks
This provider accepts the row types 'appointment', 'todo' and 'document'. However, there is, in this provider, a relationship between entities and restrictions, as follows:
- If the restriction 'appointmentId' is present, then the 'document' entity will be disabled
- If the restriction 'documentId' is present, then the 'appointment' and 'todo' entities will be disabled
Fields
EntityAppointment
Base class for Activity archive providers. Activity archives can be found under the Company card, the Project card, and the Diary. These archives follow slightly different rules with regard to filtering along the axes of date, kind, repetition and booking type, as indicated by the ActivityArchiveKind parameter from the subclasses.
Declaration
public const string EntityAppointment = "appointment"
Field Value
Type | Description |
---|---|
string |
Remarks
This provider accepts the row types 'appointment', 'todo' and 'document'. However, there is, in this provider, a relationship between entities and restrictions, as follows:
- If the restriction 'appointmentId' is present, then the 'document' entity will be disabled
- If the restriction 'documentId' is present, then the 'appointment' and 'todo' entities will be disabled
EntityDocument
Base class for Activity archive providers. Activity archives can be found under the Company card, the Project card, and the Diary. These archives follow slightly different rules with regard to filtering along the axes of date, kind, repetition and booking type, as indicated by the ActivityArchiveKind parameter from the subclasses.
Declaration
public const string EntityDocument = "document"
Field Value
Type | Description |
---|---|
string |
Remarks
This provider accepts the row types 'appointment', 'todo' and 'document'. However, there is, in this provider, a relationship between entities and restrictions, as follows:
- If the restriction 'appointmentId' is present, then the 'document' entity will be disabled
- If the restriction 'documentId' is present, then the 'appointment' and 'todo' entities will be disabled
EntityOther
Base class for Activity archive providers. Activity archives can be found under the Company card, the Project card, and the Diary. These archives follow slightly different rules with regard to filtering along the axes of date, kind, repetition and booking type, as indicated by the ActivityArchiveKind parameter from the subclasses.
Declaration
public const string EntityOther = "other"
Field Value
Type | Description |
---|---|
string |
Remarks
This provider accepts the row types 'appointment', 'todo' and 'document'. However, there is, in this provider, a relationship between entities and restrictions, as follows:
- If the restriction 'appointmentId' is present, then the 'document' entity will be disabled
- If the restriction 'documentId' is present, then the 'appointment' and 'todo' entities will be disabled
EntityToDo
Base class for Activity archive providers. Activity archives can be found under the Company card, the Project card, and the Diary. These archives follow slightly different rules with regard to filtering along the axes of date, kind, repetition and booking type, as indicated by the ActivityArchiveKind parameter from the subclasses.
Declaration
public const string EntityToDo = "todo"
Field Value
Type | Description |
---|---|
string |
Remarks
This provider accepts the row types 'appointment', 'todo' and 'document'. However, there is, in this provider, a relationship between entities and restrictions, as follows:
- If the restriction 'appointmentId' is present, then the 'document' entity will be disabled
- If the restriction 'documentId' is present, then the 'appointment' and 'todo' entities will be disabled
IconCommon
Base class for Activity archive providers. Activity archives can be found under the Company card, the Project card, and the Diary. These archives follow slightly different rules with regard to filtering along the axes of date, kind, repetition and booking type, as indicated by the ActivityArchiveKind parameter from the subclasses.
Declaration
public const string IconCommon = "Activity"
Field Value
Type | Description |
---|---|
string |
Remarks
This provider accepts the row types 'appointment', 'todo' and 'document'. However, there is, in this provider, a relationship between entities and restrictions, as follows:
- If the restriction 'appointmentId' is present, then the 'document' entity will be disabled
- If the restriction 'documentId' is present, then the 'appointment' and 'todo' entities will be disabled
Methods
GetRows(string)
Override: remove the Retired (always) and Expired (if preference says so) style hints
Declaration
public override IEnumerable<ArchiveRow> GetRows(string options)
Parameters
Type | Name | Description |
---|---|---|
string | options |
Returns
Type | Description |
---|---|
IEnumerable<ArchiveRow> |
Overrides
Remarks
This provider accepts the row types 'appointment', 'todo' and 'document'. However, there is, in this provider, a relationship between entities and restrictions, as follows:
- If the restriction 'appointmentId' is present, then the 'document' entity will be disabled
- If the restriction 'documentId' is present, then the 'appointment' and 'todo' entities will be disabled
SetDesiredEntities(params string[])
Override: Intercept and store desired entities; they will be set on base class from the GetRows method to take possible disabled entities into account
Declaration
public override void SetDesiredEntities(params string[] entities)
Parameters
Type | Name | Description |
---|---|---|
string[] | entities |
Overrides
Remarks
This provider accepts the row types 'appointment', 'todo' and 'document'. However, there is, in this provider, a relationship between entities and restrictions, as follows:
- If the restriction 'appointmentId' is present, then the 'document' entity will be disabled
- If the restriction 'documentId' is present, then the 'appointment' and 'todo' entities will be disabled
SetRestriction(ArchiveRestrictionInfo[])
Override: track restrictions to see if appointmentId or documentId has been set
Declaration
public override bool SetRestriction(ArchiveRestrictionInfo[] restrictions)
Parameters
Type | Name | Description |
---|---|---|
ArchiveRestrictionInfo[] | restrictions |
Returns
Type | Description |
---|---|
bool |
Overrides
Remarks
This provider accepts the row types 'appointment', 'todo' and 'document'. However, there is, in this provider, a relationship between entities and restrictions, as follows:
- If the restriction 'appointmentId' is present, then the 'document' entity will be disabled
- If the restriction 'documentId' is present, then the 'appointment' and 'todo' entities will be disabled