Show / Hide Table of Contents

Class Contact

Companies and Organisations.

This table features a special record containing information about the contact that owns the database.

Entity Object for table 'contact'. Entity objects represent full entities with both the base table object and all related objects, such as udef, and things like owner associate and whatever else is logically related to the base object.
Inheritance
object
NestedPersist
EntityBase
Contact
Implements
INestedPersist
ITableRowLoadHandler
IEntityUdefHelperContainer
Inherited Members
EntityBase._onGetRelatedObjects
EntityBase.GetAdditionalRelatedNestedPersistViaBaseClassAsync(List<INestedPersist>, bool, CancellationToken)
EntityBase.GetAdditionalRelatedNestedPersistAsync(List<INestedPersist>, bool, CancellationToken)
EntityBase.OnPrimaryKeyRequestAsync(PKContainer)
EntityBase.OnPrimaryKeyUpdateAsync(PKContainer)
EntityBase.OnSavedAsync(bool)
EntityBase.SetMarkedForDeleteOnRelatedObjects(bool)
EntityBase.OnPreIdUpdateImplementationAsync()
EntityBase.OnIdUpdateImplementation()
EntityBase.UpdateSentryRelatedTableInfoInstance<MainTableInfoType>(SentryCollection, TableInfo)
EntityBase.IsDirty
EntityBase.OnGetRelatedObjects
NestedPersist._saveOwner
NestedPersist._isSaving
NestedPersist.SetSaveOwner(INestedPersist)
NestedPersist.SaveAsync()
NestedPersist.IsSaving
NestedPersist.OnElementSaved
NestedPersist.OnElementIdUpdate
object.ToString()
object.Equals(object)
object.Equals(object, object)
object.ReferenceEquals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
Namespace: SuperOffice.CRM.Entities
Assembly: SoDataBase.dll
Syntax
public class Contact : EntityBase, INestedPersist, ITableRowLoadHandler, IEntityUdefHelperContainer
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Constructors

Contact(ContactIdxBase)

Constructor for class Contact.
This object represents a row in table 'contact'. Table contact: Companies and Organisations

Declaration
protected Contact(Contact.ContactIdxBase idx)
Parameters
Type Name Description
Contact.ContactIdxBase idx

ContactRowContactRow.ContactRowIdx object that the Contact encapsulates.

Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Contact(ContactRow, ContactIdxBase)

Companies and Organisations.

This table features a special record containing information about the contact that owns the database.

Entity Object for table 'contact'. Entity objects represent full entities with both the base table object and all related objects, such as udef, and things like owner associate and whatever else is logically related to the base object.
Declaration
protected Contact(ContactRow row, Contact.ContactIdxBase idx)
Parameters
Type Name Description
ContactRow row
Contact.ContactIdxBase idx
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Fields

_appointments

Related HDB object(s).

Declaration
protected AppointmentCollection _appointments
Field Value
Type Description
AppointmentCollection
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_associate

Related HDB object(s).

Declaration
protected AssociateRow _associate
Field Value
Type Description
AssociateRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_business

Related HDB object(s).

Declaration
protected BusinessRow _business
Field Value
Type Description
BusinessRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_category

Related HDB object(s).

Declaration
protected CategoryRow _category
Field Value
Type Description
CategoryRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_companyDomains

Related HDB object(s).

Declaration
protected CompanyDomainRows _companyDomains
Field Value
Type Description
CompanyDomainRows
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_country

Related HDB object(s).

Declaration
protected CountryRow _country
Field Value
Type Description
CountryRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_createdAssociate

Related HDB object(s).

Declaration
protected AssociateRow _createdAssociate
Field Value
Type Description
AssociateRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_emails

Related HDB object(s).

Declaration
protected EmailRows _emails
Field Value
Type Description
EmailRows
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_faxes

Related HDB object(s).

Declaration
protected PhoneRows _faxes
Field Value
Type Description
PhoneRows
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_group

Related HDB object(s).

Declaration
protected UserGroupRow _group
Field Value
Type Description
UserGroupRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_info

Related HDB object(s).

Declaration
protected TextRow _info
Field Value
Type Description
TextRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_interests

Related HDB object(s).

Declaration
protected ContactInterestRows _interests
Field Value
Type Description
ContactInterestRows
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_ownerContactLinks

Related HDB object(s).

Declaration
protected OwnerContactLinkRows _ownerContactLinks
Field Value
Type Description
OwnerContactLinkRows
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_persons

Related HDB object(s).

Declaration
protected PersonCollection _persons
Field Value
Type Description
PersonCollection
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_phones

Related HDB object(s).

Declaration
protected PhoneRows _phones
Field Value
Type Description
PhoneRows
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_postalAddress

Related HDB object(s).

Declaration
protected AddressRow _postalAddress
Field Value
Type Description
AddressRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_projectMemberships

Related HDB object(s).

Declaration
protected ProjectMemberCollection _projectMemberships
Field Value
Type Description
ProjectMemberCollection
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_row

HDB object this entity is a facade for.

Declaration
protected ContactRow _row
Field Value
Type Description
ContactRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_rowIdx

Companies and Organisations.

This table features a special record containing information about the contact that owns the database.

Entity Object for table 'contact'. Entity objects represent full entities with both the base table object and all related objects, such as udef, and things like owner associate and whatever else is logically related to the base object.
Declaration
protected Contact.ContactIdxBase _rowIdx
Field Value
Type Description
Contact.ContactIdxBase
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_saintCounterValue

Related HDB object(s).

Declaration
protected CounterValueRows _saintCounterValue
Field Value
Type Description
CounterValueRows
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_saintStatusValue

Related HDB object(s).

Declaration
protected StatusValueRows _saintStatusValue
Field Value
Type Description
StatusValueRows
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_saleHistory

Related HDB object(s).

Declaration
protected SaleHistRows _saleHistory
Field Value
Type Description
SaleHistRows
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_sales

Related HDB object(s).

Declaration
protected SaleCollection _sales
Field Value
Type Description
SaleCollection
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_satellites

Related HDB object(s).

Declaration
protected SatelliteRows _satellites
Field Value
Type Description
SatelliteRows
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_selectionMemberships

Related HDB object(s).

Declaration
protected SelectionMemberRows _selectionMemberships
Field Value
Type Description
SelectionMemberRows
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_streetAddress

Related HDB object(s).

Declaration
protected AddressRow _streetAddress
Field Value
Type Description
AddressRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_udefLarge

Related HDB object(s).

Declaration
protected UDContactLargeRow _udefLarge
Field Value
Type Description
UDContactLargeRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_udefSmall

Related HDB object(s).

Declaration
protected UDContactSmallRow _udefSmall
Field Value
Type Description
UDContactSmallRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_updatedAssociate

Related HDB object(s).

Declaration
protected AssociateRow _updatedAssociate
Field Value
Type Description
AssociateRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

_urls

Related HDB object(s).

Declaration
protected URLRows _urls
Field Value
Type Description
URLRows
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Properties

ActiveInterests

"Number of records in cintr table; select count(*) from cintr ci where ci.contact_id = this.contact_id == activeInterests is always true"

Declaration
public short ActiveInterests { get; set; }
Property Value
Type Description
short
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Associate

Related object AssociateRow: Employees, resources and other users - except for External persons

Declaration
public AssociateRow Associate { get; set; }
Property Value
Type Description
AssociateRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Business

Related object BusinessRow: Business list table

Declaration
public BusinessRow Business { get; set; }
Property Value
Type Description
BusinessRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Category

Related object CategoryRow: Category list table

Declaration
public CategoryRow Category { get; set; }
Property Value
Type Description
CategoryRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

ContactId

Primary key

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

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Country

Related object CountryRow: Country information

Declaration
public CountryRow Country { get; set; }
Property Value
Type Description
CountryRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

CreatedAssociate

Related object AssociateRow: Employees, resources and other users - except for External persons

Declaration
public AssociateRow CreatedAssociate { get; set; }
Property Value
Type Description
AssociateRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

CustomFields

Companies and Organisations.

This table features a special record containing information about the contact that owns the database.

Entity Object for table 'contact'. Entity objects represent full entities with both the base table object and all related objects, such as udef, and things like owner associate and whatever else is logically related to the base object.
Declaration
public EntityCustomFieldsHelper CustomFields { get; }
Property Value
Type Description
EntityCustomFieldsHelper
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Department

Department

Declaration
public string Department { get; set; }
Property Value
Type Description
string
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

ExtraFields

Companies and Organisations.

This table features a special record containing information about the contact that owns the database.

Entity Object for table 'contact'. Entity objects represent full entities with both the base table object and all related objects, such as udef, and things like owner associate and whatever else is logically related to the base object.
Declaration
public EntityExtraFieldsHelper ExtraFields { get; }
Property Value
Type Description
EntityExtraFieldsHelper
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Faxes

Related object PhoneRows: Contact and Person phonenumbers (+fax)

Declaration
public PhoneRows Faxes { get; }
Property Value
Type Description
PhoneRows
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Group

Related object UserGroupRow: Secondary user groups

Declaration
public UserGroupRow Group { get; set; }
Property Value
Type Description
UserGroupRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Info

Related object TextRow: Long text fields from all over the system

Declaration
public TextRow Info { get; set; }
Property Value
Type Description
TextRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

IsDeleted

Is the row deleted?

Declaration
public override bool IsDeleted { get; }
Property Value
Type Description
bool
Overrides
NestedPersist.IsDeleted
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

IsMarkedForDelete

Gets or sets a value indicating whether this instance is marked for delete.

Declaration
public override bool IsMarkedForDelete { get; set; }
Property Value
Type Description
bool

true if this instance is marked for delete; otherwise, false.

Overrides
NestedPersist.IsMarkedForDelete
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

IsNew

Is the row new, e.g. not been inserted to the database?

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

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Kananame

Contact kana name, used in Japanese versions only

Declaration
public string Kananame { get; set; }
Property Value
Type Description
string
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

MainRow

Return the main row for the Entity.

Declaration
protected override TableRowBase MainRow { get; }
Property Value
Type Description
TableRowBase
Overrides
EntityBase.MainRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

MotherId

Reserved

Declaration
public int MotherId { get; set; }
Property Value
Type Description
int
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Name

Contact name

Declaration
public string Name { get; set; }
Property Value
Type Description
string
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Nomailing

No mailings flags

Declaration
public short Nomailing { get; set; }
Property Value
Type Description
short
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Number1

Alphanumeric user field

Declaration
public string Number1 { get; set; }
Property Value
Type Description
string
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Number2

Alphanumeric user field

Declaration
public string Number2 { get; set; }
Property Value
Type Description
string
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

OrgNr

VAT number or similar

Declaration
public string OrgNr { get; set; }
Property Value
Type Description
string
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Persons

Related object PersonCollection: Persons in a company or an organisation

Declaration
public PersonCollection Persons { get; }
Property Value
Type Description
PersonCollection
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Phones

Related object PhoneRows: Contact and Person phonenumbers (+fax)

Declaration
public PhoneRows Phones { get; }
Property Value
Type Description
PhoneRows
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

PostalAddress

Related object AddressRow: Contact and Person addresses

Declaration
public AddressRow PostalAddress { get; set; }
Property Value
Type Description
AddressRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

ProjectMemberships

Related object ProjectMemberCollection: Project members

Declaration
public ProjectMemberCollection ProjectMemberships { get; }
Property Value
Type Description
ProjectMemberCollection
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Registered

Date registered

Declaration
public DateTime Registered { get; set; }
Property Value
Type Description
DateTime
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Row

The encapsulated object ContactRow.

Declaration
public ContactRow Row { get; }
Property Value
Type Description
ContactRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Sales

Related object SaleCollection: Sales

Declaration
public SaleCollection Sales { get; }
Property Value
Type Description
SaleCollection
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

SoundEx

What the name sounds like, for duplicate detection

Declaration
public string SoundEx { get; set; }
Property Value
Type Description
string
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Source

How did we get this contact? For future integration needs

Declaration
public short Source { get; set; }
Property Value
Type Description
short
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

StreetAddress

Related object AddressRow: Contact and Person addresses

Declaration
public AddressRow StreetAddress { get; set; }
Property Value
Type Description
AddressRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

TableInfo

Get a TableInfo object for the contact table.

Declaration
public ContactTableInfo TableInfo { get; }
Property Value
Type Description
ContactTableInfo
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

UdefHelper

Get the Udef class of EntityUdefHelper for working with udef fields

Declaration
public EntityUdefHelper UdefHelper { get; }
Property Value
Type Description
EntityUdefHelper
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

UdefLarge

Related object UDContactLargeRow: User-defined fields for contact (long strings)

Declaration
public UDContactLargeRow UdefLarge { get; set; }
Property Value
Type Description
UDContactLargeRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

UdefSmall

Related object UDContactSmallRow: User-defined fields for contact

Declaration
public UDContactSmallRow UdefSmall { get; set; }
Property Value
Type Description
UDContactSmallRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Updated

Date last updated

Declaration
public DateTime Updated { get; set; }
Property Value
Type Description
DateTime
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

UpdatedAssociate

Related object AssociateRow: Employees, resources and other users - except for External persons

Declaration
public AssociateRow UpdatedAssociate { get; set; }
Property Value
Type Description
AssociateRow
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

UpdatedCount

Number of times updated

Declaration
public short UpdatedCount { get; set; }
Property Value
Type Description
short
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Xstop

STOP flag

Declaration
public short Xstop { get; set; }
Property Value
Type Description
short
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Methods

CreateNew()

Create a new instance of the Contact entity.

Declaration
public static Contact CreateNew()
Returns
Type Description
Contact

A new instance of the Contact entity.

Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

CreateNew(ContactIdxBase)

Create a new instance of the Contact entity, by reading from the database using the specified index (represented by a nested index class).

Declaration
public static Contact CreateNew(Contact.ContactIdxBase idx)
Parameters
Type Name Description
Contact.ContactIdxBase idx

Index search, represented by a subclass if the Contact.ContactIdxBase nested index class

Returns
Type Description
Contact

A new instance of the Contact entity.

Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

DeleteAsync()

Delete the row.

Declaration
public override Task DeleteAsync()
Returns
Type Description
Task
Overrides
EntityBase.DeleteAsync()
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

ForceEntityUpdate()

Force Updated and UpdatedAssociate to be updated with current time and Currently logged in associate. This will again be overridden in the Database update operation by a query processor.

Declaration
protected override void ForceEntityUpdate()
Overrides
EntityBase.ForceEntityUpdate()
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

FromContactRow(ContactRow)

Operator asigning a Contact from a ContactRow.

Declaration
public static Contact FromContactRow(ContactRow row)
Parameters
Type Name Description
ContactRow row

ContactRow object

Returns
Type Description
Contact

Contact Entity

Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

FromContactRow(ContactRow, ContactIdxBase)

Companies and Organisations.

This table features a special record containing information about the contact that owns the database.

Entity Object for table 'contact'. Entity objects represent full entities with both the base table object and all related objects, such as udef, and things like owner associate and whatever else is logically related to the base object.
Declaration
public static Contact FromContactRow(ContactRow row, Contact.ContactIdxBase idx)
Parameters
Type Name Description
ContactRow row
Contact.ContactIdxBase idx
Returns
Type Description
Contact
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

GetAppointmentsAsync(CancellationToken)

Related object AppointmentCollection: "Tasks, appointments, followups, phone calls; and documents"

Declaration
public Task<AppointmentCollection> GetAppointmentsAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<AppointmentCollection>
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

GetCompanyDomainsAsync(CancellationToken)

Related object SelectionMemberRows: Selection members

Declaration
public Task<CompanyDomainRows> GetCompanyDomainsAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<CompanyDomainRows>
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

GetEmailsAsync(CancellationToken)

Related object EmailRows: Email addresses

Declaration
public Task<EmailRows> GetEmailsAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<EmailRows>
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

GetFromCustomSearch(CustomSearch)

Create a new instance of the Contact object, and populate it with data from a custom search. If the search returns no results, an empty entity will be returned; if the result contains rows, one Contact object representing the first row will be returned. Any further rows in the result will be ignored.

Declaration
public static Contact GetFromCustomSearch(Contact.CustomSearch query)
Parameters
Type Name Description
Contact.CustomSearch query

The custom search to execute against the database

Returns
Type Description
Contact

A new instance of the Contact object, reflecting the result of the query.

Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

GetFromCustomSearchAsync(CustomSearch, CancellationToken)

Create a new instance of the Contact object, and populate it with data from a custom search. If the search returns no results, an empty entity will be returned; if the result contains rows, one Contact object representing the first row will be returned. Any further rows in the result will be ignored.

Declaration
[CreateSyncVersion(OmitNullableDirective = true)]
public static Task<Contact> GetFromCustomSearchAsync(Contact.CustomSearch query, CancellationToken cancellationToken = default)
Parameters
Type Name Description
Contact.CustomSearch query

The custom search to execute against the database

CancellationToken cancellationToken
Returns
Type Description
Task<Contact>

A new instance of the Contact object, reflecting the result of the query.

Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

GetFromIdxContactId(int)

Create a new instance of the Contact object, by querying the database table via the index 'IDXContId'. This method is intended to make it easy to use efficient queries that match a database index.

Declaration
public static Contact GetFromIdxContactId(int contactId)
Parameters
Type Name Description
int contactId

Primary key

Returns
Type Description
Contact

Row object that represents the result of the search. IsNew will be true if the query did not match any row in the table

Remarks

This method represents one of the unique indexes on the Contact table. Non-unique indexes have corresponding inner classes and methods in the ContactCollection collection, since they may return more than one row.

GetFromIdxContactIdAsync(int, CancellationToken)

Create a new instance of the Contact object, by querying the database table via the index 'IDXContId'. This method is intended to make it easy to use efficient queries that match a database index.

Declaration
[CreateSyncVersion(OmitNullableDirective = true)]
public static Task<Contact> GetFromIdxContactIdAsync(int contactId, CancellationToken cancellationToken = default)
Parameters
Type Name Description
int contactId

Primary key

CancellationToken cancellationToken
Returns
Type Description
Task<Contact>

Row object that represents the result of the search. IsNew will be true if the query did not match any row in the table

Remarks

This method represents one of the unique indexes on the Contact table. Non-unique indexes have corresponding inner classes and methods in the ContactCollection collection, since they may return more than one row.

GetInterestHelperAsync(CancellationToken)

Interest helper. The helpers provide functionality that combines MDO list and 'what is actually selected', i.e., they combine entity subcollections with mdo lists. See the base class InterestHelper for more information!

Declaration
public Task<IInterestHelper> GetInterestHelperAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<IInterestHelper>
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

GetInterestsAsync(CancellationToken)

Related object ContactInterestRows: Link table between contact and contact interest

Declaration
public Task<ContactInterestRows> GetInterestsAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<ContactInterestRows>
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

GetOwnerContactLinksAsync(CancellationToken)

Related object OwnerContactLinkRows: Table that specifies which contacts can own associates

Declaration
public Task<OwnerContactLinkRows> GetOwnerContactLinksAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<OwnerContactLinkRows>
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

GetRelatedNestedPersistAsync(List<INestedPersist>, bool, CancellationToken)

Append all the related objects to a list of INestedPersist.

Declaration
protected override Task GetRelatedNestedPersistAsync(List<INestedPersist> relatedObjects, bool lacyFetchIfNeeded, CancellationToken cancellationToken = default)
Parameters
Type Name Description
List<INestedPersist> relatedObjects

List to append related objects to.

bool lacyFetchIfNeeded
CancellationToken cancellationToken
Returns
Type Description
Task
Overrides
EntityBase.GetRelatedNestedPersistAsync(List<INestedPersist>, bool, CancellationToken)
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

GetSaintCounterValueAsync(CancellationToken)

Related object CounterValueRows: Visible for rights

Declaration
public Task<CounterValueRows> GetSaintCounterValueAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<CounterValueRows>
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

GetSaintStatusValueAsync(CancellationToken)

Related object StatusValueRows: Values for statuses

Declaration
public Task<StatusValueRows> GetSaintStatusValueAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<StatusValueRows>
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

GetSaleHistoryAsync(CancellationToken)

Related object SaleHistRows: Mirror image of the Sale table, providing a full transaction history

Declaration
public Task<SaleHistRows> GetSaleHistoryAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<SaleHistRows>
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

GetSatellitesAsync(CancellationToken)

Related object SatelliteRows: Definition of Satellites

Declaration
public Task<SatelliteRows> GetSatellitesAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<SatelliteRows>
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

GetSelectionMembershipsAsync(CancellationToken)

Related object SelectionMemberRows: Selection members

Declaration
public Task<SelectionMemberRows> GetSelectionMembershipsAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<SelectionMemberRows>
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

GetUrlsAsync(CancellationToken)

Related object URLRows: Unified Resource Locators

Declaration
public Task<URLRows> GetUrlsAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<URLRows>
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

IsNumberValidAsync(CancellationToken)

Validate number2 field - is it unique/blank according to numbering rules?

Declaration
public Task<bool> IsNumberValidAsync(CancellationToken cancellationToken)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<bool>

true if Number2 is ok

Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

OnIdUpdateAsync()

Update related objects with correct id's to make sure that relations are consistent before saving to the database.

Declaration
protected override Task OnIdUpdateAsync()
Returns
Type Description
Task
Overrides
EntityBase.OnIdUpdateAsync()
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

OnPostSaveMe()

Handle actions needed to be taken after this object has been saved, but before saving objects depending upon this one.

Declaration
protected virtual void OnPostSaveMe()
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

OnPreIdUpdateAsync()

Allow for "fake id's" to be forced upon related objects.

Declaration
protected override Task OnPreIdUpdateAsync()
Returns
Type Description
Task
Overrides
EntityBase.OnPreIdUpdateAsync()
Remarks

In order to figure out which objects taking part of the nested save operation that actually needs to be saved, this method allows for "fake id's" to be forced upon related objects. Upon receiving the "fake id", the objects receiving such an id can determine if they needs to be persisted (e.g. saved) to the database. However, the fake id's forced upon related objects must be set to correct id's in the OnIdUpdate method taking place later in the save operation.

OnPreSaveMe()

Handle actions needed to be taken after objects this object depends on have been saved, but before this object is saved.

Declaration
protected virtual void OnPreSaveMe()
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

OnRowLoad(SoDataReader, TableRowBase)

Event raised when the row is loaded from the database

Declaration
protected override void OnRowLoad(SoDataReader reader, TableRowBase row)
Parameters
Type Name Description
SoDataReader reader
TableRowBase row
Overrides
EntityBase.OnRowLoad(SoDataReader, TableRowBase)
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

OnRowLoaded()

Companies and Organisations.

This table features a special record containing information about the contact that owns the database.

Entity Object for table 'contact'. Entity objects represent full entities with both the base table object and all related objects, such as udef, and things like owner associate and whatever else is logically related to the base object.
Declaration
protected override void OnRowLoaded()
Overrides
EntityBase.OnRowLoaded()
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

OnSaveAsync(BatchSave)

Update the number of active interests so it reflects the current state

Declaration
protected override Task OnSaveAsync(BatchSave batchSave)
Parameters
Type Name Description
BatchSave batchSave
Returns
Type Description
Task
Overrides
EntityBase.OnSaveAsync(BatchSave)
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

SetDefaultsAsync(DefaulterStrategy, CancellationToken)

Set default values for the entity.

Declaration
public Task SetDefaultsAsync(DefaulterStrategy strategy, CancellationToken cancellationToken = default)
Parameters
Type Name Description
DefaulterStrategy strategy

Strategy used when appliying default values.

CancellationToken cancellationToken
Returns
Type Description
Task
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

SetDefaultsAsync(CancellationToken)

Set default values for the entity.

Declaration
public Task SetDefaultsAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

UndeleteAsync(CancellationToken)

Companies and Organisations.

This table features a special record containing information about the contact that owns the database.

Entity Object for table 'contact'. Entity objects represent full entities with both the base table object and all related objects, such as udef, and things like owner associate and whatever else is logically related to the base object.
Declaration
public Task UndeleteAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

ValidateAsync(CancellationToken)

Check the entity and related objects for consistency and required fields, and return fields and error messages.

Declaration
public override Task<Dictionary<string, string>> ValidateAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<Dictionary<string, string>>

Field names and error messages

Overrides
EntityBase.ValidateAsync(CancellationToken)
Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Operators

explicit operator Contact(ContactRow)

Operator assigning a Contact from a ContactRow.

Declaration
public static explicit operator Contact(ContactRow row)
Parameters
Type Name Description
ContactRow row

ContactRow object

Returns
Type Description
Contact

Contact Entity

Remarks

Entity objects can be created in several ways.

  • Use the static CreateNew() method to create a new, empty object. After populating it with values, you call the SuperOffice.CRM.Data.Contact.Save method and corresponding row(s) in the database are created, and the objects' primary key field updated. This is the preferred way to insert new entities into the database.
  • You can create a (nested) Contact Contact.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch(CustomSearch) method to apply the query to the database and obtain the result as an Entity object. This is how you select existing entities from the database when you have a query that does not correspond to any of the existing database indexes.
  • For each unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy. Note that if you try to fetch a row that does not exist (for instance, by using the primary key index and specifying a primary key that does not exist in the database), you will get a Row object with the SuperOffice.CRM.Data.Contact.IsNew and SuperOffice.CRM.Data.Contact.IsDirty properties set to true. Such an Entity object is called a 'ghost' and cannot be updated, saved or deleted. You can also get a ghost if the row does exist in the database, but the Sentry system denies Select rights to the row.
Non-unique indexes are handled through the ContactCollection collection, which has nested classes and GetFromIdx methods for each non-unique index. There are no 'GetFromReader' methods, since that would be rather complex (multiple TableInfo objects required).

Unique indexes on Contact are:
Index fieldsNested index class name
ContactIdContactId:

Primary key

Nested index class: Contact.IdxContactId

Static Get method: GetFromIdxContactId(int)
Non-unique indexes on table Contact are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ContactCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSoundEx
KananameKananame:

JPN

Nested index class: ContactCollection.IdxKananame

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxKananame
MotherIdMotherId:

<not used>

Nested index class: ContactCollection.IdxMotherId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxMotherId
BusinessIdxBusinessIdx:

List: business

Nested index class: ContactCollection.IdxBusinessIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxBusinessIdx
NameName:

Name

Nested index class: ContactCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxName
UserdefIdUserdefId:

User-defined table record 1

Nested index class: ContactCollection.IdxUserdefId

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdefId
OrgNrOrgNr:

VAT number or similar, takes dynamic lead text from Country table

Nested index class: ContactCollection.IdxOrgNr

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxOrgNr
Number1Number1:

Alphanumeric user field, contains auto-assigned number if numbering is in use.

Nested index class: ContactCollection.IdxNumber1

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber1
Number2Number2:

Alphanumeric user field

Nested index class: ContactCollection.IdxNumber2

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNumber2
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ContactCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxUserdef2Id
DepartmentDepartment:

Department

Nested index class: ContactCollection.IdxDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxDepartment
Name, DepartmentName:

Name

Department:

Department

Nested index class: ContactCollection.IdxNameDepartment

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxNameDepartment
CategoryIdxCategoryIdx:

List: category

Nested index class: ContactCollection.IdxCategoryIdx

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxCategoryIdx
SourceSource:

How did we get this contact? For future integration needs

Nested index class: ContactCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ContactCollection.GetFromIdxSource

Implements

INestedPersist
ITableRowLoadHandler
IEntityUdefHelperContainer

Extension Methods

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