Show / Hide Table of Contents

Class RelationsTableInfo

Table 'relations': Instance of a relation, in principle between any two records, as long as they are defined in RelationDefinition. All instances of relations are held in this table; their definitions are in the RelDef table (RelDef + RelTarg define which relations you can have, this table contains the relations the user has actually entered). From 6.1 all links between appointments, sales and documents are also stored in this tabel.

Inheritance
Object
TableInfo
RelationsTableInfo
Implements
ICloneable
Inherited Members
TableInfo.ToString()
TableInfo.RegisterFields(FieldInfo[])
TableInfo.FieldInfoFromSoField(SoField)
TableInfo.Clone()
TableInfo.IsSameTable(TableInfo)
TableInfo.FindField(String)
TableInfo.ProtAll
TableInfo.HashCheckFields
TableInfo.TableName
TableInfo.DbName
TableInfo.IsDictionaryTable
TableInfo.All
TableInfo.Item[String]
TableInfo.PrimaryKeyField
Namespace: SuperOffice.CRM.Data
Assembly: SoDataBase.dll
Syntax
[DatabaseTable("relations")]
public class RelationsTableInfo : TableInfo, ICloneable
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

Fields

DictionaryTableName

Conceptual name of table Relations in the database dictionary: relations

Declaration
public const string DictionaryTableName = "relations"
Field Value
Type Description
String
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

Properties

AssociateId

Field 'associateId' in table 'relations': Dictionary type FK, target: Associate, .NET type: Int32

Owner of this relation record
Declaration
public Int32FieldInfo AssociateId { get; }
Property Value
Type Description
Int32FieldInfo
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

AssociateId_InnerJoin_Associate

Generated join from the foreign key AssociateId in this table, to its target table AssociateTableInfo.

Declaration
public TargetedInnerJoin<AssociateTableInfo> AssociateId_InnerJoin_Associate { get; }
Property Value
Type Description
TargetedInnerJoin<AssociateTableInfo>
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

Definition

Definition of the table as described in the deployed runtime dictionary

Declaration
public override SoTable Definition { get; }
Property Value
Type Description
SoTable
Overrides
TableInfo.Definition
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

DestinationRecord

Field 'destination_record' in table 'relations': Dictionary type RecordId, .NET type: Int32

Actual target record
Declaration
public Int32FieldInfo DestinationRecord { get; }
Property Value
Type Description
Int32FieldInfo
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

DestinationTable

Field 'destination_table' in table 'relations': Dictionary type TableNumber, .NET type: Int16

Actual target table
Declaration
public UInt16FieldInfo DestinationTable { get; }
Property Value
Type Description
UInt16FieldInfo
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

DictionaryTableNumber

Table number for table Relations in the database dictionary; potentially changes between databases, but always the same over the lifetime of any single database

Declaration
public int DictionaryTableNumber { get; }
Property Value
Type Description
Int32
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

EndDate

Field 'endDate' in table 'relations': Dictionary type DateTime, .NET type: DateTime

End date of validity
Declaration
public DateTimeFieldInfo EndDate { get; }
Property Value
Type Description
DateTimeFieldInfo
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

GroupIdx

Field 'group_idx' in table 'relations': Dictionary type FK, target: UserGroup, .NET type: Int32

User group owning this relation
Declaration
public Int32FieldInfo GroupIdx { get; }
Property Value
Type Description
Int32FieldInfo
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

GroupIdx_InnerJoin_UserGroup

Generated join from the foreign key GroupIdx in this table, to its target table UserGroupTableInfo.

Declaration
public TargetedInnerJoin<UserGroupTableInfo> GroupIdx_InnerJoin_UserGroup { get; }
Property Value
Type Description
TargetedInnerJoin<UserGroupTableInfo>
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

Registered

Field 'registered' in table 'relations': Dictionary type UtcDateTime, .NET type: DateTime

Registered when
Declaration
public DateTimeFieldInfo Registered { get; }
Property Value
Type Description
DateTimeFieldInfo
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

RegisteredAssociateId

Field 'registered_associate_id' in table 'relations': Dictionary type FK, target: Associate, .NET type: Int32

Registered by whom
Declaration
public Int32FieldInfo RegisteredAssociateId { get; }
Property Value
Type Description
Int32FieldInfo
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

RegisteredAssociateId_InnerJoin_Associate

Generated join from the foreign key RegisteredAssociateId in this table, to its target table AssociateTableInfo.

Declaration
public TargetedInnerJoin<AssociateTableInfo> RegisteredAssociateId_InnerJoin_Associate { get; }
Property Value
Type Description
TargetedInnerJoin<AssociateTableInfo>
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

RelationId

Field 'relation_id' in table 'relations': Dictionary type PK, .NET type: Int32

Primary key
Declaration
public Int32FieldInfo RelationId { get; }
Property Value
Type Description
Int32FieldInfo
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

Relcomment

Field 'relcomment' in table 'relations': Dictionary type String[255], .NET type: String

Comment for relation
Declaration
public StringFieldInfo Relcomment { get; }
Property Value
Type Description
StringFieldInfo
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

ReldefId

Field 'reldef_id' in table 'relations': Dictionary type FK, target: RelationDefinition, .NET type: Int32

Reference to definition
Declaration
public Int32FieldInfo ReldefId { get; }
Property Value
Type Description
Int32FieldInfo
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

ReldefId_InnerJoin_RelationDefinition

Generated join from the foreign key ReldefId in this table, to its target table RelationDefinitionTableInfo.

Declaration
public TargetedInnerJoin<RelationDefinitionTableInfo> ReldefId_InnerJoin_RelationDefinition { get; }
Property Value
Type Description
TargetedInnerJoin<RelationDefinitionTableInfo>
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

RelFlags

Field 'relFlags' in table 'relations': Dictionary type UInt, .NET type: UInt32

Relation flags, meaning as yet unspecified
Declaration
public FieldInfo RelFlags { get; }
Property Value
Type Description
FieldInfo
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

Reversed

Field 'reversed' in table 'relations': Dictionary type UShort, .NET type: Int16

Is direction reversed relative to definition
Declaration
public UInt16FieldInfo Reversed { get; }
Property Value
Type Description
UInt16FieldInfo
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

RuntimeDefinition

Definition of the table as described in the deployed runtime dictionary

Declaration
public static SoTable RuntimeDefinition { get; }
Property Value
Type Description
SoTable
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

SourceRecord

Field 'source_record' in table 'relations': Dictionary type RecordId, .NET type: Int32

Actual source record
Declaration
public Int32FieldInfo SourceRecord { get; }
Property Value
Type Description
Int32FieldInfo
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

SourceTable

Field 'source_table' in table 'relations': Dictionary type TableNumber, .NET type: Int16

Actual source table
Declaration
public UInt16FieldInfo SourceTable { get; }
Property Value
Type Description
UInt16FieldInfo
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

StartDate

Field 'startDate' in table 'relations': Dictionary type DateTime, .NET type: DateTime

Start date of validity
Declaration
public DateTimeFieldInfo StartDate { get; }
Property Value
Type Description
DateTimeFieldInfo
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

Updated

Field 'updated' in table 'relations': Dictionary type UtcDateTime, .NET type: DateTime

Last updated when
Declaration
public DateTimeFieldInfo Updated { get; }
Property Value
Type Description
DateTimeFieldInfo
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

UpdatedAssociateId

Field 'updated_associate_id' in table 'relations': Dictionary type FK, target: Associate, .NET type: Int32

Last updated by whom
Declaration
public Int32FieldInfo UpdatedAssociateId { get; }
Property Value
Type Description
Int32FieldInfo
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

UpdatedAssociateId_InnerJoin_Associate

Generated join from the foreign key UpdatedAssociateId in this table, to its target table AssociateTableInfo.

Declaration
public TargetedInnerJoin<AssociateTableInfo> UpdatedAssociateId_InnerJoin_Associate { get; }
Property Value
Type Description
TargetedInnerJoin<AssociateTableInfo>
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

UpdatedCount

Field 'updatedCount' in table 'relations': Dictionary type UShort, .NET type: Int16

Number of updates made to this record
Declaration
public UInt16FieldInfo UpdatedCount { get; }
Property Value
Type Description
UInt16FieldInfo
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

Methods

IdxDestinationTable(Int16)

Shortcut method for looking up using the database index DestinationTable, which spans the following fields:

FieldDescription
DestinationTableActual target table
Declaration
public Restriction IdxDestinationTable(short destinationTable)
Parameters
Type Name Description
Int16 destinationTable
Returns
Type Description
Restriction
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

IdxDestinationTableDestinationRecord(Int16, Int32)

Shortcut method for looking up using the database index DestinationTableDestinationRecord, which spans the following fields:

FieldDescription
DestinationTableActual target table
DestinationRecordActual target record
Declaration
public Restriction IdxDestinationTableDestinationRecord(short destinationTable, int destinationRecord)
Parameters
Type Name Description
Int16 destinationTable
Int32 destinationRecord
Returns
Type Description
Restriction
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

IdxSourceTable(Int16)

Shortcut method for looking up using the database index SourceTable, which spans the following fields:

FieldDescription
SourceTableActual source table
Declaration
public Restriction IdxSourceTable(short sourceTable)
Parameters
Type Name Description
Int16 sourceTable
Returns
Type Description
Restriction
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

IdxSourceTableSourceRecord(Int16, Int32)

Shortcut method for looking up using the database index SourceTableSourceRecord, which spans the following fields:

FieldDescription
SourceTableActual source table
SourceRecordActual source record
Declaration
public Restriction IdxSourceTableSourceRecord(short sourceTable, int sourceRecord)
Parameters
Type Name Description
Int16 sourceTable
Int32 sourceRecord
Returns
Type Description
Restriction
Remarks

An instance of this class represents one instance of this table in an SQL statement. In most cases each table appears only once in a SELECT, but in cases where you need to self-join, or there are multiple occurrences for other reasons (typically additional restrictions in the joins), then you will need multiple instances.
Instances of this class are created by calling .

Implements

System.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