Show / Hide Table of Contents

Class Project

Projects

Entity Object for table 'project'. Entity objects represent full entities with both the base table object and all related objects, such as udef, publish, and things like owner associate and whatever else is logically related to the base object.
Inheritance
object
NestedPersist
EntityBase
Project
Implements
INestedPersist
ITableRowLoadHandler
IEntityUdefHelperContainer
Inherited Members
EntityBase._onGetRelatedObjects
EntityBase.GetAdditionalRelatedNestedPersistViaBaseClassAsync(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 Project : 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

Constructors

Project(ProjectIdxBase)

Constructor for class Project.
This object represents a row in table 'project'. Table contact: Projects

Declaration
protected Project(Project.ProjectIdxBase idx)
Parameters
Type Name Description
Project.ProjectIdxBase idx

ContactRowProjectRow.ProjectRowIdx 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

Project(ProjectRow, ProjectIdxBase)

Projects

Entity Object for table 'project'. Entity objects represent full entities with both the base table object and all related objects, such as udef, publish, and things like owner associate and whatever else is logically related to the base object.
Declaration
protected Project(ProjectRow row, Project.ProjectIdxBase idx)
Parameters
Type Name Description
ProjectRow row
Project.ProjectIdxBase 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

_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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

_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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

_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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

_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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

_members

Related HDB object(s).

Declaration
protected ProjectMemberCollection _members
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

_projectStatus

Related HDB object(s).

Declaration
protected ProjStatusRow _projectStatus
Field Value
Type Description
ProjStatusRow
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

_projectText

Related HDB object(s).

Declaration
protected TextRow _projectText
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

_projectType

Related HDB object(s).

Declaration
protected ProjTypeRow _projectType
Field Value
Type Description
ProjTypeRow
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

_row

HDB object this entity is a facade for.

Declaration
protected ProjectRow _row
Field Value
Type Description
ProjectRow
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

_rowIdx

Projects

Entity Object for table 'project'. Entity objects represent full entities with both the base table object and all related objects, such as udef, publish, and things like owner associate and whatever else is logically related to the base object.
Declaration
protected Project.ProjectIdxBase _rowIdx
Field Value
Type Description
Project.ProjectIdxBase
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

_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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

_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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

_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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

_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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

_udefLarge

Related HDB object(s).

Declaration
protected UDProjectLargeRow _udefLarge
Field Value
Type Description
UDProjectLargeRow
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

_udefSmall

Related HDB object(s).

Declaration
protected UDProjectSmallRow _udefSmall
Field Value
Type Description
UDProjectSmallRow
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

_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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

_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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

_userGroup

Related HDB object(s).

Declaration
protected UserGroupRow _userGroup
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

Properties

ActiveLinks

Number of active links to documents and such

Declaration
public uint ActiveLinks { get; set; }
Property Value
Type Description
uint
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

CustomFields

Projects

Entity Object for table 'project'. Entity objects represent full entities with both the base table object and all related objects, such as udef, publish, 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

Done

Projects

Entity Object for table 'project'. Entity objects represent full entities with both the base table object and all related objects, such as udef, publish, and things like owner associate and whatever else is logically related to the base object.
Declaration
public short Done { 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

ExtraFields

Projects

Entity Object for table 'project'. Entity objects represent full entities with both the base table object and all related objects, such as udef, publish, 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

Members

Related object ProjectMemberCollection: Project members

Declaration
public ProjectMemberCollection Members { 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

Name

Project 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

ProjectId

Primary key

Declaration
public int ProjectId { 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

ProjectNumber

Automatically generated number

Declaration
public string ProjectNumber { 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

ProjectStatus

Related object ProjStatusRow: ProjStatus list table

Declaration
public ProjStatusRow ProjectStatus { get; set; }
Property Value
Type Description
ProjStatusRow
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

ProjectText

Related object TextRow: Long text fields from all over the system

Declaration
public TextRow ProjectText { 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

ProjectType

Related object ProjTypeRow: ProjType list table

Declaration
public ProjTypeRow ProjectType { get; set; }
Property Value
Type Description
ProjTypeRow
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

PublishHelper

Get the helper class for working with the publish-state of the entity.
Published means that it is available for external persons in applications like SuperOffice Audience.

Declaration
public EntityPublishHelper PublishHelper { get; }
Property Value
Type Description
EntityPublishHelper
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

Registered

Registered date

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

Row

The encapsulated object ProjectRow.

Declaration
public ProjectRow Row { get; }
Property Value
Type Description
ProjectRow
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

Source

How did we get this project? 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

TableInfo

Get a TableInfo object for the project table.

Declaration
public ProjectTableInfo TableInfo { get; }
Property Value
Type Description
ProjectTableInfo
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

UdefLarge

Related object UDProjectLargeRow: User-defined fields

Declaration
public UDProjectLargeRow UdefLarge { get; set; }
Property Value
Type Description
UDProjectLargeRow
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

UdefSmall

Related object UDProjectSmallRow: User-defined fields

Declaration
public UDProjectSmallRow UdefSmall { get; set; }
Property Value
Type Description
UDProjectSmallRow
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

Updated

Last updated date

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

UpdatedCount

Projects

Entity Object for table 'project'. Entity objects represent full entities with both the base table object and all related objects, such as udef, publish, and things like owner associate and whatever else is logically related to the base object.
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

UserGroup

Related object UserGroupRow: Secondary user groups

Declaration
public UserGroupRow UserGroup { 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

Methods

CreateNew()

Create a new instance of the Project entity.

Declaration
public static Project CreateNew()
Returns
Type Description
Project

A new instance of the Project 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

CreateNew(ProjectIdxBase)

Create a new instance of the Project entity, by reading from the database using the specified index (represented by a nested index class).

Declaration
public static Project CreateNew(Project.ProjectIdxBase idx)
Parameters
Type Name Description
Project.ProjectIdxBase idx

Index search, represented by a subclass if the Project.ProjectIdxBase nested index class

Returns
Type Description
Project

A new instance of the Project 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

FromProjectRow(ProjectRow)

Operator asigning a Project from a ProjectRow.

Declaration
public static Project FromProjectRow(ProjectRow row)
Parameters
Type Name Description
ProjectRow row

ProjectRow object

Returns
Type Description
Project

Project 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

FromProjectRow(ProjectRow, ProjectIdxBase)

Projects

Entity Object for table 'project'. Entity objects represent full entities with both the base table object and all related objects, such as udef, publish, and things like owner associate and whatever else is logically related to the base object.
Declaration
public static Project FromProjectRow(ProjectRow row, Project.ProjectIdxBase idx)
Parameters
Type Name Description
ProjectRow row
Project.ProjectIdxBase idx
Returns
Type Description
Project
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

GetAdditionalRelatedNestedPersistAsync(List<INestedPersist>, bool, CancellationToken)

Add the Links Helper to the list of related nestedpersist objects, to ensure it gets a chance to do its save operations

Declaration
protected override Task GetAdditionalRelatedNestedPersistAsync(List<INestedPersist> relatedObjects, bool lacyFetchIfNeeded, CancellationToken cancellationToken = default)
Parameters
Type Name Description
List<INestedPersist> relatedObjects
bool lacyFetchIfNeeded
CancellationToken cancellationToken
Returns
Type Description
Task
Overrides
EntityBase.GetAdditionalRelatedNestedPersistAsync(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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

GetFromCustomSearch(CustomSearch)

Create a new instance of the Project 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 Project object representing the first row will be returned. Any further rows in the result will be ignored.

Declaration
public static Project GetFromCustomSearch(Project.CustomSearch query)
Parameters
Type Name Description
Project.CustomSearch query

The custom search to execute against the database

Returns
Type Description
Project

A new instance of the Project 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

GetFromCustomSearchAsync(CustomSearch)

Create a new instance of the Project 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 Project object representing the first row will be returned. Any further rows in the result will be ignored.

Declaration
[CreateSyncVersion(OmitNullableDirective = true)]
public static Task<Project> GetFromCustomSearchAsync(Project.CustomSearch query)
Parameters
Type Name Description
Project.CustomSearch query

The custom search to execute against the database

Returns
Type Description
Task<Project>

A new instance of the Project 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

GetFromIdxProjectIdAsync(int, CancellationToken)

Create a new instance of the Project object, by querying the database table via the index 'IDXProjId'. This method is intended to make it easy to use efficient queries that match a database index.

Declaration
public static Task<Project> GetFromIdxProjectIdAsync(int projectId, CancellationToken cancellationToken = default)
Parameters
Type Name Description
int projectId

Primary key

CancellationToken cancellationToken
Returns
Type Description
Task<Project>

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 Project table. Non-unique indexes have corresponding inner classes and methods in the ProjectCollection collection, since they may return more than one row.

GetLinksHelperAsync(CancellationToken)

Links helper The helper manages the links belonging to the project Helper updates the project's ActiveLinks property

Declaration
public Task<ActivityLinksHelper> GetLinksHelperAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<ActivityLinksHelper>
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

IsNumberValidAsync(CancellationToken)

Validate ProjectNumber field - is it unique/blank according to numbering rules?

Declaration
public Task<bool> IsNumberValidAsync(CancellationToken cancellationToken = default)
Parameters
Type Name Description
CancellationToken cancellationToken
Returns
Type Description
Task<bool>

true if ProjectNumber 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

OnRowLoaded()

Projects

Entity Object for table 'project'. Entity objects represent full entities with both the base table object and all related objects, such as udef, publish, 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

OnSaveAsync(BatchSave)

Projects

Entity Object for table 'project'. Entity objects represent full entities with both the base table object and all related objects, such as udef, publish, and things like owner associate and whatever else is logically related to the base object.
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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

Operators

explicit operator Project(ProjectRow)

Operator assigning a Project from a ProjectRow.

Declaration
public static explicit operator Project(ProjectRow row)
Parameters
Type Name Description
ProjectRow row

ProjectRow object

Returns
Type Description
Project

Project 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.Project.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) Project Project.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.Project.IsNew and SuperOffice.CRM.Data.Project.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 ProjectCollection 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 Project are:
Index fieldsNested index class name
ProjectIdProjectId:

Primary key

Nested index class: Project.IdxProjectId

Static Get method: GetFromIdxProjectIdAsync(int, CancellationToken)
Non-unique indexes on table Project are:
Index fieldsNested index class name
SoundExSoundEx:

What the name sounds like, for duplicate detection

Nested index class: ProjectCollection.IdxSoundEx

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSoundEx
SourceSource:

How did we get this project? For future integration needs

Nested index class: ProjectCollection.IdxSource

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxSource
ProjectNumberProjectNumber:

Automatically generated number

Nested index class: ProjectCollection.IdxProjectNumber

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxProjectNumber
Userdef2IdUserdef2Id:

User-defined table record 2

Nested index class: ProjectCollection.IdxUserdef2Id

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxUserdef2Id
NameName:

Project name

Nested index class: ProjectCollection.IdxName

Static Get method: SuperOffice.CRM.Entities.ProjectCollection.GetFromIdxName

Implements

INestedPersist
ITableRowLoadHandler
IEntityUdefHelperContainer

Extension Methods

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