Show / Hide Table of Contents

Class QuoteLineSentry

Inheritance
object
Sentry
Sentry<QuoteLineTableInfo>
QuoteLineSentry
Implements
ICloneable
Inherited Members
Sentry<QuoteLineTableInfo>.GetInterestingFieldsInTable(TableInfo)
Sentry<QuoteLineTableInfo>.InterestedInAnyInstanceOf<T>()
Sentry<QuoteLineTableInfo>.ComputeDerivedTableRights()
Sentry<QuoteLineTableInfo>.SuperComputeDerivedTableRights()
Sentry<QuoteLineTableInfo>.ComputeDerivedTableRight(TableRight)
Sentry<QuoteLineTableInfo>.SuperComputeTableRights()
Sentry<QuoteLineTableInfo>.AddInterestingTables(params TableInfo[])
Sentry<QuoteLineTableInfo>.ComputeLicenseExpiration()
Sentry<QuoteLineTableInfo>.SuperComputeFieldRights()
Sentry<QuoteLineTableInfo>.CanCoverTable(TableInfo)
Sentry<QuoteLineTableInfo>.IsTableCovered(TableInfo)
Sentry<QuoteLineTableInfo>.SetAllTableRights(ETableRight, string)
Sentry<QuoteLineTableInfo>.GetOwnerFieldRight()
Sentry<QuoteLineTableInfo>.GetMainRight()
Sentry<QuoteLineTableInfo>.AnalyzeQuery(PrivateSelect)
Sentry<QuoteLineTableInfo>.ToString()
Sentry<QuoteLineTableInfo>.InterestingFields
Sentry<QuoteLineTableInfo>.SentryQueryInfo
Sentry<QuoteLineTableInfo>.MainTable
Sentry.kTableRights
Sentry.kFieldRights
Sentry._tableRights
Sentry._fieldRights
Sentry._lookups
Sentry.DemandPlugins()
Sentry.CreateSentry(TableInfo)
Sentry.CreateSentries(Select)
Sentry.BeginIgnoreSentry()
Sentry.BeginIgnoreRowSentry()
Sentry.IgnoreRowSentry()
Sentry.IgnoreSentry()
Sentry.IterateLookups(LookupCollection)
Sentry.GetIntField(params FieldInfo[])
Sentry.GetPersistedIntField(params FieldInfo[])
Sentry.GetIsGhostField(FieldInfo)
Sentry.GetDateTimeField(FieldInfo)
Sentry.GetStringField(FieldInfo)
Sentry.ClearRights()
Sentry.GetRecordOwnershipIndex()
Sentry.GetRecordOwnershipIndex(int, int)
Sentry.MapTableToFieldRights(TableInfo, TableRight, FieldInfo[])
Sentry.MakeFieldFromTableRight(TableRight)
Sentry.MakeFieldFromTableRight(TableRight, ETableRight)
Sentry.MakeFieldFromTableRight(ETableRight)
Sentry.GetTableRight(TableInfo)
Sentry.GetFieldRight(FieldInfo)
Sentry.CanTableDo(TableInfo, ETableRight, bool)
Sentry.CanFieldDo(FieldInfo, EFieldRight, bool)
Sentry.IsFieldCovered(FieldInfo)
Sentry.GetGroupFromAssociate(int)
Sentry.IsContactDatabaseOwner(int)
Sentry.IsContactEmployeeUserOwner(int)
Sentry.IsContactSatelliteOwner(int)
Sentry.IsContactLicenseOwner(int)
Sentry.IsContactCurrentDatabaseOwner(int)
Sentry.IsPersonAssociate(int, bool)
Sentry.IsAssociatesOwnerContact(int, int)
Sentry.Lookups
Sentry.Parent
Sentry.Registered
Sentry.RegisteredAssociateId
object.Equals(object)
object.Equals(object, object)
object.ReferenceEquals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
Namespace: SuperOffice.CRM.Security
Assembly: SoDataBase.dll
Syntax
public class QuoteLineSentry : Sentry<QuoteLineTableInfo>, ICloneable

Constructors

QuoteLineSentry(QuoteLineTableInfo)

Create a contact sentry.

Declaration
public QuoteLineSentry(QuoteLineTableInfo quoteLineTableInfo)
Parameters
Type Name Description
QuoteLineTableInfo quoteLineTableInfo

QuoteLineSentry(QuoteLineTableInfo, ISoDataLookup)

Declaration
public QuoteLineSentry(QuoteLineTableInfo quoteLineTableInfo, ISoDataLookup lookup)
Parameters
Type Name Description
QuoteLineTableInfo quoteLineTableInfo
ISoDataLookup lookup

QuoteLineSentry(QuoteLineSentryQueryInfo)

Declaration
public QuoteLineSentry(QuoteLineSentryQueryInfo quoteLineSentryQueryInfo)
Parameters
Type Name Description
QuoteLineSentryQueryInfo quoteLineSentryQueryInfo

Properties

AssociateId

Returns the associate id based on the row provided to the sentry. This method must be overridden by the sub-class.

Declaration
public override int AssociateId { get; }
Property Value
Type Description
int
Overrides
Sentry.AssociateId

GroupId

Returns the group id of the associate based on the row provided to the sentry. This method must be overridden by the sub-class. If the row does not contain the group id of the associate, then the function must look up the appropriate group id in the associate table.

TODO CM: add multi-db aware caching mechanism for associate->usergroup mapping

Declaration
public override int GroupId { get; }
Property Value
Type Description
int
Overrides
Sentry.GroupId

IsGhostRow

Returns whether the primary key field is a ghost

Declaration
public override bool IsGhostRow { get; }
Property Value
Type Description
bool
Overrides
Sentry.IsGhostRow

IsNew

Has the row been saved to teh database yet.

Declaration
public override bool IsNew { get; }
Property Value
Type Description
bool
Overrides
Sentry.IsNew

QuoteAlternativeTableInfo

TableInfo for the contact table related to the person's contactId.

Declaration
public QuoteAlternativeTableInfo QuoteAlternativeTableInfo { get; set; }
Property Value
Type Description
QuoteAlternativeTableInfo

QuoteTableInfo

TableInfo for the contact table related to the person's contactId.

Declaration
public QuoteTableInfo QuoteTableInfo { get; set; }
Property Value
Type Description
QuoteTableInfo

QuoteVersionTableInfo

TableInfo for the contact table related to the person's contactId.

Declaration
public QuoteVersionTableInfo QuoteVersionTableInfo { get; set; }
Property Value
Type Description
QuoteVersionTableInfo

RegisteredAssociateIdField

The field that holds the associate id of teh user first creating the item.

Declaration
public override FieldInfo RegisteredAssociateIdField { get; }
Property Value
Type Description
FieldInfo
Overrides
Sentry.RegisteredAssociateIdField

RegisteredField

The field that holds information about when the item was first created.

Declaration
public override FieldInfo RegisteredField { get; }
Property Value
Type Description
FieldInfo
Overrides
Sentry.RegisteredField

RowId

Returns the primary key id based on the row provided to the sentry. This method must be overridden by the sub-class.

Declaration
public override int RowId { get; }
Property Value
Type Description
int
Overrides
Sentry.RowId

SaleTableInfo

TableInfo for the contact table related to the person's contactId.

Declaration
public SaleTableInfo SaleTableInfo { get; set; }
Property Value
Type Description
SaleTableInfo

Methods

ComputeFieldRights()

Computes the field rights based on the associate and group info in the row. The sub-class will handle its particular special cases here. This function is called from SuperComputeFieldRights() which does the standard calculations first, then allows this function to add any special restrictions afterwards.

This function computes a map of rights to all fields that can be determined, both on the primary table and any dependent tables. Each field has an entry in the map, which contains a bitwise OR of all rights the principal user has to that field. If the user has no update rights to a field, the corresponding GUI control should be read-only. If the user has no Read rights to a field, its value should not be shown at all. In the case of write but not read rights, the sanity of the underlying rules should be questioned.

Declaration
protected override void ComputeFieldRights()
Overrides
Sentry<QuoteLineTableInfo>.ComputeFieldRights()
Remarks

Place the results of the computation in the _fieldRights member.

ComputeTableRights()

Computes the table rights based on the associate and group info in the row. The sub-class will handle its particular special cases here. This function is called from SuperComputeTableRights() which does the standard calculations first, then allows this function to add any special restrictions afterwards.

Declaration
protected override void ComputeTableRights()
Overrides
Sentry<QuoteLineTableInfo>.ComputeTableRights()
Remarks

Leave the result of the computation in the _tableRights member.

GetRowSentry()

Create a copy of the Sentry holding the right instances of table and field infos.

Declaration
public override Sentry GetRowSentry()
Returns
Type Description
Sentry

New instance of the Sentry.

Overrides
Sentry.GetRowSentry()

Implements

ICloneable

Extension Methods

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