Show / Hide Table of Contents

Class InvitationProvider

Invitation provider multichannel combiner, consisting of simple, cancelled, rejected, repeating and response invitations. You can also call up appointments explicitly through the Explicit provider.

Inheritance
Object
InMemoryProviderBase<ArchiveInvitationRow>
TypedInMemoryProviderBase<ArchiveInvitationRow>
BufferedQueryProviderBase<ArchiveInvitationRow, InvitationProviderCombiner>
InvitationProvider
Implements
IArchiveInvitationProvider
IArchiveTypedProvider<ArchiveInvitationRow>
IArchiveTypedProviderBase
IArchiveProvider
IArchiveProviderHasRows
IArchiveProviderHasColumns
IArchiveProviderHasEntities
Inherited Members
BufferedQueryProviderBase<ArchiveInvitationRow, InvitationProviderCombiner>.SetPagingInfo(Int32, Int32)
BufferedQueryProviderBase<ArchiveInvitationRow, InvitationProviderCombiner>.GetAvailableColumns()
BufferedQueryProviderBase<ArchiveInvitationRow, InvitationProviderCombiner>.SetDesiredColumns(String[])
BufferedQueryProviderBase<ArchiveInvitationRow, InvitationProviderCombiner>.SetOrderBy(ArchiveOrderByInfo[])
BufferedQueryProviderBase<ArchiveInvitationRow, InvitationProviderCombiner>.SetRestriction(ArchiveRestrictionInfo[])
BufferedQueryProviderBase<ArchiveInvitationRow, InvitationProviderCombiner>.GetAvailableEntities()
BufferedQueryProviderBase<ArchiveInvitationRow, InvitationProviderCombiner>.SetDesiredEntities(String[])
BufferedQueryProviderBase<ArchiveInvitationRow, InvitationProviderCombiner>.InnerProvider
BufferedQueryProviderBase<ArchiveInvitationRow, InvitationProviderCombiner>.InnerOrderBy
BufferedQueryProviderBase<ArchiveInvitationRow, InvitationProviderCombiner>.AdditionalDesiredColumns
BufferedQueryProviderBase<ArchiveInvitationRow, InvitationProviderCombiner>.ExternalDesiredColumns
TypedInMemoryProviderBase<ArchiveInvitationRow>.GetRows(String)
TypedInMemoryProviderBase<ArchiveInvitationRow>.GetStandardColumnNames()
TypedInMemoryProviderBase<ArchiveInvitationRow>.SetAdditionalColumns(String[])
InMemoryProviderBase<ArchiveInvitationRow>._entityHelper
InMemoryProviderBase<ArchiveInvitationRow>.Visible
InMemoryProviderBase<ArchiveInvitationRow>.Invisible
InMemoryProviderBase<ArchiveInvitationRow>.AllowOrderBy
InMemoryProviderBase<ArchiveInvitationRow>.DenyOrderBy
InMemoryProviderBase<ArchiveInvitationRow>.Options
InMemoryProviderBase<ArchiveInvitationRow>.RegisterEntity(ArchiveRowTypeInfo)
InMemoryProviderBase<ArchiveInvitationRow>.GetReader(String)
InMemoryProviderBase<ArchiveInvitationRow>.GetResultInformation()
InMemoryProviderBase<ArchiveInvitationRow>.SortData(List<ArchiveInvitationRow>)
InMemoryProviderBase<ArchiveInvitationRow>.Close()
InMemoryProviderBase<ArchiveInvitationRow>.SetPagingInfo(Int32, Int32)
InMemoryProviderBase<ArchiveInvitationRow>.GetAvailableColumns()
InMemoryProviderBase<ArchiveInvitationRow>.SetDesiredColumns(String[])
InMemoryProviderBase<ArchiveInvitationRow>.SetOrderBy(ArchiveOrderByInfo[])
InMemoryProviderBase<ArchiveInvitationRow>.GetAvailableEntities()
InMemoryProviderBase<ArchiveInvitationRow>.SetDesiredEntities(String[])
InMemoryProviderBase<ArchiveInvitationRow>.EntityHelper
InMemoryProviderBase<ArchiveInvitationRow>.ColumnHelper
Object.ToString()
Object.Equals(Object)
Object.Equals(Object, Object)
Object.ReferenceEquals(Object, Object)
Object.GetHashCode()
Object.GetType()
Object.MemberwiseClone()
Namespace: SuperOffice.CRM.ArchiveLists
Assembly: SoDataBase.dll
Syntax
[ArchiveProvider("Invitation", 1073741823)]
public class InvitationProvider : BufferedQueryProviderBase<ArchiveInvitationRow, InvitationProviderCombiner>, IArchiveInvitationProvider, IArchiveTypedProvider<ArchiveInvitationRow>, IArchiveTypedProviderBase, IArchiveProvider, IArchiveProviderHasRows, IArchiveProviderHasColumns, IArchiveProviderHasEntities, IPlugin
Remarks

SimpleInvitationProviderCancelledInvitationProvider RejectedInvitationProviderExplicitInvitationProvider The final result set needs filtering to remove repeating records if we are running in "compressed" mode, and also reordering to make sure we get the right order. We also need to filter repeating bookings against explicit records to remove duplicates there, because someone may explicitly request an instance an a recurring booking, so that all other instances should be suppressed.

Constructors

InvitationProvider()

Declaration
public InvitationProvider()

Fields

_colInvitationStatusNotSeenByMe

Declaration
protected ArchiveColumnInfo _colInvitationStatusNotSeenByMe
Field Value
Type Description
ArchiveColumnInfo

ProviderName

Declaration
public const string ProviderName = "Invitation"
Field Value
Type Description
String

Properties

AdditionalDesiredColumns

Declaration
protected override string[] AdditionalDesiredColumns { get; }
Property Value
Type Description
String[]
Overrides
SuperOffice.CRM.ArchiveLists.BufferedQueryProviderBase<SuperOffice.CRM.ArchiveLists.ArchiveInvitationRow, SuperOffice.CRM.ArchiveLists.InvitationProviderCombiner>.AdditionalDesiredColumns

BaseClassShouldFilterColumns

Override: Let the inner provider (not the InMemoryProvider base class) filter columns

Declaration
protected override bool BaseClassShouldFilterColumns { get; }
Property Value
Type Description
Boolean
Overrides
SuperOffice.CRM.ArchiveLists.InMemoryProviderBase<SuperOffice.CRM.ArchiveLists.ArchiveInvitationRow>.BaseClassShouldFilterColumns

BaseClassShouldFilterEntities

Override: Let the base class filter entitities, we will mark them for filtering

Declaration
protected override bool BaseClassShouldFilterEntities { get; }
Property Value
Type Description
Boolean
Overrides
SuperOffice.CRM.ArchiveLists.InMemoryProviderBase<SuperOffice.CRM.ArchiveLists.ArchiveInvitationRow>.BaseClassShouldFilterEntities

BaseClassShouldPage

Override: Let the base class do paging (this stategy fails if there are a gazillion invitations!)

Declaration
protected override bool BaseClassShouldPage { get; }
Property Value
Type Description
Boolean
Overrides
SuperOffice.CRM.ArchiveLists.InMemoryProviderBase<SuperOffice.CRM.ArchiveLists.ArchiveInvitationRow>.BaseClassShouldPage

BaseClassShouldSort

Override: Let the base class do orderBy, since our filtering may mess up the orderby

Declaration
protected override bool BaseClassShouldSort { get; }
Property Value
Type Description
Boolean
Overrides
SuperOffice.CRM.ArchiveLists.InMemoryProviderBase<SuperOffice.CRM.ArchiveLists.ArchiveInvitationRow>.BaseClassShouldSort

Methods

GetResultData()

Declaration
protected override List<ArchiveInvitationRow> GetResultData()
Returns
Type Description
List<ArchiveInvitationRow>
Overrides
SuperOffice.CRM.ArchiveLists.InMemoryProviderBase<SuperOffice.CRM.ArchiveLists.ArchiveInvitationRow>.GetResultData()

SetAssociateId(Int32)

Set the id of the associate we wish to fetch invitations for. This is equivalent to setting the 'associateId' restriction with a unique value.

Declaration
public void SetAssociateId(int associateId)
Parameters
Type Name Description
Int32 associateId

Associate id to fetch invitations for

SetRestriction(ArchiveRestrictionInfo[])

Override: Extract and drop any restriction relating to Status, since that is handled here in the final filtering step

Declaration
public override bool SetRestriction(params ArchiveRestrictionInfo[] restrictions)
Parameters
Type Name Description
ArchiveRestrictionInfo[] restrictions
Returns
Type Description
Boolean
Overrides
SuperOffice.CRM.ArchiveLists.BufferedQueryProviderBase<SuperOffice.CRM.ArchiveLists.ArchiveInvitationRow, SuperOffice.CRM.ArchiveLists.InvitationProviderCombiner>.SetRestriction(SuperOffice.CRM.ArchiveLists.ArchiveRestrictionInfo[])

Implements

IArchiveInvitationProvider
IArchiveTypedProvider<StronglyTypedRow>
IArchiveTypedProviderBase
IArchiveProvider
IArchiveProviderHasRows
IArchiveProviderHasColumns
IArchiveProviderHasEntities

Extension Methods

EnumUtil.MapEnums<From, To>(From)
ObjectExtensions.AssignByReflection<T>(T, T)
ObjectExtensions.GraphCopy<T>(T)
Converters.MapEnums<From, To>(From)
© SuperOffice. All rights reserved.
SuperOffice |  Community |  Release Notes |  Privacy |  Site feedback |  Search Docs |  About Docs |  Contribute |  Back to top