Creatio development guide
PDF
Это документация Creatio версии 7.16.0. Мы рекомендуем использовать новую версию документации.

Класс Entity

Glossary Item Box

Общие сведения

Класс Terrasoft.Core.Entities.Entity предназначен для доступа к объекту, который представляет собой запись в таблице базы данных.

Класс Terrasoft.Core.Entities.Entity

Полный перечень методов и свойств класса Entity, его родительских классов, а также реализуемых им интерфейсов, можно найти в документации ".NET библиотеки классов ядра платформы".

Конструкторы

public Entity((UserConnection userConnection))
Создает новый экземпляр класса Entity для заданного пользовательского подключения UserConnection.
public Entity((UserConnection userConnection, Guid schemaUId))
Создает новый экземпляр класса Entity для заданного пользовательского подключения UserConnection и схемы заданной идентификатором schemaUId.
public Entity((Entity source))
Создает экземпляр класса, являющийся клоном экземпляра, переданного в качестве аргумента.

Свойства

Табл. 1. — Основные свойства класса Entity

ChangeType
EntityChangeType
Тип изменения состояния объекта (добавлен, изменен, удален, без изменений).
EntitySchemaManager
EntitySchemaManager
Экземпляр менеджера схемы объекта.
EntitySchemaManagerName
string
Имя менеджера схемы объекта.
HasColumnValues
bool
Определяет, имеет ли объект хотя бы одну колонку.
HierarchyColumnValue
Guid
Значение колонки связи с родительской записью для иерархических объектов.
InstanceUId
Guid
Идентификатор экземпляра объекта.
IsDeletedFromDB
bool
Определяет, удален ли объект из базы данных.
IsInColumnValueChanged
bool
Определяет, выполняется ли обработка события ColumnValueChanged.
IsInColumnValueChanging
bool
Определяет, выполняется ли обработка события ColumnValueChanging.
IsInDefColumnValuesSet
bool
Определяет, выполняется ли обработка события DefColumnValuesSet.
IsInDeleted
bool
Определяет, выполняется ли обработка события Deleted.
IsInDeleting
bool
Определяет, выполняется ли обработка события Deleting.
IsInInserted
bool
Определяет, выполняется ли обработка события Inserted.
IsInInserting
bool
Определяет, выполняется ли обработка события Inserting.
IsInLoaded
bool
Определяет, выполняется ли обработка события Loaded.
IsInLoading
bool
Определяет, выполняется ли обработка события Loading.
IsInSaved
bool
Определяет, выполняется ли обработка события Saved.
IsInSaveError
bool
Определяет, выполняется ли обработка события SaveError.
IsInSaving
bool
Определяет, выполняется ли обработка события Saving.
IsInUpdated
bool
Определяет, выполняется ли обработка события Updated.
IsInUpdating
bool
Определяет, выполняется ли обработка события Updating.
IsInValidating
bool
Определяет, выполняется ли обработка события Validating.
IsSchemaInitialized
bool
Определяет, является ли схема объекта проинициализированной.
LicOperationPrefix
string
Префикс лицензируемой операции.
LoadState
EntityLoadState
Состояние загрузки объекта.
PrimaryColumnValue
Guid
Идентификатор первичной колонки.
PrimaryDisplayColumnValue
string
Значение для отображения первичной колонки.
Process
Process
Встроенный процесс объекта.
Schema
EntitySchema
Экземпляр схемы объекта.
SchemaName
string
Имя схемы объекта.
StoringState
StoringObjectState
Состояние объекта (изменен, добавлен, удален, без изменений).
UseAdminRights
bool
Определяет, будут ли учитываться права при вставке, обновлении, удалении и получении данных.
UseDefRights
bool
Определяет, использовать ли права по умолчанию на объект.
UseLazyLoad
bool
Определяет, использовать ли ленивую первоначальную загрузку данных объекта.
UserConnection
UserConnection
Пользовательское подключение.
ValidationMessages
EntityValidationMessageCollection
Коллекция сообщений, выводимых при проверке объекта.
ValueListSchemaManager
ValueListSchemaManager
Экземпляр менеджера перечислений объекта.
ValueListSchemaManagerName
string
Имя менеджера перечислений объекта.

Методы

Табл. 2. — Основные методы класса Entity

void AddDefRights(())
void AddDefRights((Guid primaryColumnValue))
void AddDefRights((IEnumerable<Guid> primaryColumnValues))
Для данного объекта устанавливает права по умолчанию.
virtual object Clone(())
Создает клон текущего экземпляра Entity.
Insert CreateInsert((bool skipLookupColumnValues))
Создает запрос на добавление данных в базу.
Update CreateUpdate((bool skipLookupColumnValues))
Создает запрос на обновление данных в базе.
virtual bool Delete(())
virtual bool Delete((object keyValue))
Удаляет из базы данных запись объекта. Параметр keyValue определяет первичный ключ записи.
bool DeleteWithCancelProcess(())
Удаляет из базы данных запись объекта и отменяет запущенный процесс.
static Entity DeserializeFromJson((UserConnection userConnection, string jsonValue))
Создает объект типа Entity, используя пользовательское подключение userConnection, и заполняет значения его полей из указанной строки формата JSON jsonValue.
bool ExistInDB((EntitySchemaColumn conditionColumn, object conditionValue))
bool ExistInDB((string conditionColumnName, object conditionValue))
bool ExistInDB((object keyValue))
bool ExistInDB((Dictionary<string,object> conditions))
Определяет, существует ли в базе данных запись, отвечающая заданному условию запроса conditionValue к заданной колонке схемы объекта conditionColumn либо с заданным первичным ключом keyValue.
bool FetchFromDB((EntitySchemaColumn conditionColumn, object conditionValue, bool useDisplayValues))
bool FetchFromDB((string conditionColumnName, object conditionValue, bool useDisplayValues))
bool FetchFromDB((object keyValue, bool useDisplayValues))
bool FetchFromDB((Dictionary<string,object> conditions, bool useDisplayValues))
bool FetchFromDB((EntitySchemaColumn conditionColumn, object conditionValue, IEnumerable<EntitySchemaColumn> columnsToFetch, bool useDisplayValues))
bool FetchFromDB((string conditionColumnName, object conditionValue, IEnumerable<string>columnNamesToFetch, bool useDisplayValues))

По заданному условию загружает объект из базы данных.

Параметры:

  • conditionColumn — колонка, для которой задается условие выборки;
  • conditionColumnName — название колонки, для которой задается условие выборки;
  • conditionValue — значение колонки условия для выбираемых данных;
  • columnsToFetch — список колонок, которые будут выбраны;
  • columnNamesToFetch — список названий колонок, которые будут выбраны;
  • conditions — набор условий фильтрации выборки записей объекта;
  • keyValue — значение ключевого поля;
  • useDisplayValues — признак получения в запросе первичных отображаемых значений. Если параметр равен true, в запросе будут возвращены первичные отображаемые значения.

bool FetchPrimaryColumnFromDB((object keyValue))
По заданному условию keyValue загружает из базы данных объект с первичной колонкой.
bool FetchPrimaryInfoFromDB((EntitySchemaColumn conditionColumn, object conditionValue))
bool FetchPrimaryInfoFromDB((string conditionColumnName, object conditionValue))
По заданному условию загружает из базы данных объект с первичными колонками, включая колонку, первичную для отображения.
byte[] GetBytesValue((string valueName))
Возвращает значение заданной колонки объекта в виде массива байт.
IEnumerable<EntityColumnValue> GetChangedColumnValues(())
Возвращает коллекцию имен колонок объекта, которые были изменены.
string GetColumnDisplayValue((EntitySchemaColumn column))
Возвращает значение для отображения свойства объекта, соответствующее заданной колонке схемы объекта.
object GetColumnOldValue((string valueName))
object GetColumnOldValue((EntitySchemaColumn column))
Возвращает предыдущее значение заданного свойства объекта.
virtual object GetColumnValue((string valueName))
virtual object GetColumnValue((EntitySchemaColumn column))
Возвращает значение колонки объекта с заданным именем, cоответствующее переданной колонке схемы объекта.
IEnumerable<string> GetColumnValueNames(())
Возвращает коллекцию имен колонок объекта.
virtual bool GetIsColumnValueLoaded((string valueName))
bool GetIsColumnValueLoaded((EntitySchemaColumn column))
Возвращает признак, определяющий, загружено ли заданное свойство объекта.
virtual MemoryStream GetStreamValue((string valueName))
Возвращает преобразованное в экземпляр типа System.IO.MemoryStream значение переданной колонки схемы объекта.
virtual TResult GetTypedColumnValue<TResult>((string valueName))
TResult GetTypedColumnValue<TResult>((EntitySchemaColumn column))
Возвращает типизированное значение свойства объекта, соответствующее заданной колонке схемы объекта.
TResult GetTypedOldColumnValue<TResult>((string valueName))
TResult GetTypedOldColumnValue<TResult>((EntitySchemaColumn column))
Возвращает типизированное предыдущее значение свойства объекта, соответствующее заданной колонке схемы объекта.
virtual bool InsertToDB((bool skipLookupColumnValues, bool validateRequired))

Добавляет запись текущего объекта в базу данных с учетом переданных параметров:

  • skipLookupColumnValues — параметр, определяющий необходимость добавления в базу данных колонок типа справочник. Если параметр равен true, то колонки типа справочник не будут добавлены в базу. Значение по умолчанию — false.
  • validateRequired — параметр, определяющий необходимость проверки заполнения обязательных значений. Значение по умолчанию — true.

bool IsColumnValueLoaded((string valueName))
bool IsColumnValueLoaded((EntitySchemaColumn column))
Определяет, загружено ли значение свойства объекта с заданным именем.
virtual bool Load((DataRow dataRow))
virtual bool Load((DataRow dataRow, Dictionary<string,string> columnMap))
virtual bool Load((IDataReader dataReader))
virtual bool Load((IDataReader dataReader, IDictionary<string,string> columnMap))
virtual bool Load((object dataSource))
virtual bool Load((object dataSource, IDictionary<string,string> columnMap))

Заполняет объект переданными данными.

Параметры:

  • dataRow — экземпляр System.Data.DataRow, из которого загружаются данные в объект;
  • dataReader — экземпляр System.Data.IDataReader, из которого загружаются данные;
  • dataSource — экземпляр System.Object, из которого загружаются данные;
  • columnMap — свойства объекта, заполняемые данными.

void LoadColumnValue((string columnValueName, IDataReader dataReader, int fieldIndex, int binaryPackageSize))
void LoadColumnValue((string columnValueName, IDataReader dataReader, int fieldIndex))
void LoadColumnValue((string columnValueName, object value))
void LoadColumnValue((EntitySchemaColumn column, object value))

Для свойства с заданным именем загружает его значение из переданного экземпляра.

Параметры:

  • columnValueName — имя свойства объекта;
  • column — колонка схемы объекта;
  • dataReader — экземпляр System.Data.IDataReader, из которого загружается значение свойства;
  • fieldIndex — индекс загружаемого из System.Data.IDataReader поля;
  • binaryPackageSize — размер загружаемого значения;
  • value — загружаемое значение свойства.

static Entity Read((UserConnection userConnection, DataReader dataReader))
Возвращает значение текущего свойства типа Entity из потока ввода.
void ReadData((DataReader reader))
void ReadData((DataReader reader, EntitySchema schema))
Считывает данные из схемы объекта в заданный объект типа System.Data.IDataReader.
void ResetColumnValues(())
Для всех свойств объекта отменяет изменения.
void ResetOldColumnValues(())
Для всех свойств объекта отменяет изменения, устанавливая предыдущее значение.
bool Save((bool validateRequired))
Сохраняет объект в базе данных. Параметр validateRequired определяет необходимость проверки заполнения обязательных значений. Значение по умолчанию — true.
static string SerializeToJson((Entity entity))
Преобразует объект entity в строку формата JSON.
virtual void SetBytesValue((string valueName, byte[] streamBytes))
Устанавливает для заданного свойства объекта переданное значение типа System.Byte.
bool SetColumnBothValues((EntitySchemaColumn column, object value, string displayValue))
bool SetColumnBothValues((string columnValueName, object value, string displayColumnValueName, string displayValue))

Устанавливает свойству объекта, соответствующему заданной колонке схемы, переданные значение value и значение для отображения displayValue.


bool SetColumnValue((string valueName, object value))
bool SetColumnValue((EntitySchemaColumn column, object value))

Устанавливает заданной колонке схемы переданное значение value.


void SeddefColumnValue((string columnValueName, object defValue))
void SeddefColumnValue((string columnValueName))

Устанавливает значение по умолчанию свойству с заданным именем.


void SeddefColumnValues(())
Для всех свойств объекта устанавливает значения по умолчанию.
bool SetStreamValue((string valueName, Stream value))
Устанавливает для заданного свойства объекта переданное значение типа System.IO.Stream.
virtual bool UpdateInDB((bool validateRequired))
Обновляет запись объекта в базе данных. Параметр validateRequired определяет необходимость проверки заполнения обязательных значений. Значение по умолчанию — true.
bool Validate(())
Проверяет заполнение обязательных полей.
static void Write((DataWriter dataWriter, Entity entity, string propertyName))
static void Write((DataWriter dataWriter, Entity entity, string propertyName, bool couldConvertForXml))

Осуществляет запись значения типа Entity в поток вывода с заданными именем.

Параметры:

  • dataWriter — экземпляр класса Terrasoft.Common.DataWriter, предоставляющий методы последовательной записи значений в поток вывода;
  • entity — значение для записи типа Entity;
  • propertyName — имя объекта;
  • couldConvertForXml — разрешить преобразование для xml-сериализации.

void Write((DataWriter dataWriter, string propertyName))
Осуществляет запись значения типа Entity в поток вывода с заданными именем.
void WriteData((DataWriter writer))
void WriteData((DataWriter writer, EntitySchema schema))
Осуществляет запись в поток вывода для указанной либо текущей схемы объекта.

События

Табл. 3. — События класса Entity

event EventHandler<EntityColumnAfterEventArgs> ColumnValueChanged
Обработчик события, возникающего после изменения значения колонки объекта.

Обработчик события получает аргумент типа EntityColumnAfterEventArgs.

Свойства EntityColumnAfterEventArgs предоставляющие сведения, относящиеся к событию:

  • ColumnValueName;
  • DisplayColumnValueName.

event EventHandler<EntityColumnBeforeEventArgs> ColumnValueChanging
Обработчик события, возникающего перед изменением значения колонки объекта.

Обработчик события получает аргумент типа EntityColumnBeforeEventArgs.

Свойства EntityColumnBeforeEventArgs предоставляющие сведения, относящиеся к событию:

  • ColumnStreamValue;
  • ColumnValue;
  • ColumnValueName;
  • DisplayColumnValue;
  • DisplayColumnValueName.

event EventHandler<EventArgs> DefColumnValuesSet
Обработчик события, возникающего после установки значений по умолчанию полей объекта.

event EventHandler<EntityAfterEventArgs> Deleted
Обработчик события, возникающего после удаления объекта.

Обработчик события получает аргумент типа EntityAfterEventArgs.

Свойства EntityAfterEventArgs предоставляющие сведения, относящиеся к событию:

  • ModifiedColumnValues;
  • PrimaryColumnValue.

event EventHandler<EntityBeforeEventArgs> Deleting
Обработчик события, возникающего перед удалением объекта.

Обработчик события получает аргумент типа EntityBeforeEventArgs.

Свойства EntityBeforeEventArgs предоставляющие сведения, относящиеся к событию:

  • AdditionalCondition;
  • IsCanceled;
  • KeyValue.

event EventHandler<EntityAfterEventArgs> Inserted
Обработчик события, возникающего после вставки объекта.

Обработчик события получает аргумент типа EntityAfterEventArgs.

Свойства EntityAfterEventArgs предоставляющие сведения, относящиеся к событию:

  • ModifiedColumnValues;
  • PrimaryColumnValue.

event EventHandler<EntityBeforeEventArgs> Inserting
Обработчик события, возникающего перед вставкой объекта.

Обработчик события получает аргумент типа EntityBeforeEventArgs.

Свойства EntityBeforeEventArgs предоставляющие сведения, относящиеся к событию:

  • AdditionalCondition;
  • IsCanceled;
  • KeyValue.

event EventHandler<EntityAfterLoadEventArgs> Loaded
Обработчик события, возникающего после загрузки объекта.

Обработчик события получает аргумент типа EntityAfterLoadEventArgs.

Свойства EntityAfterLoadEventArgs предоставляющие сведения, относящиеся к событию:

  • ColumnMap;
  • DataSource.

event EventHandler<EntityBeforeLoadEventArgs> Loading
Обработчик события, возникающего перед загрузкой объекта.

Обработчик события получает аргумент типа EntityBeforeLoadEventArgs.

Свойства EntityBeforeLoadEventArgs предоставляющие сведения, относящиеся к событию:

  • ColumnMap;
  • DataSource;
  • IsCanceled.

event EventHandler<EntityAfterEventArgs> Saved
Обработчик события, возникающего после сохранения объекта.

Обработчик события получает аргумент типа EntityAfterEventArgs.

Свойства EntityAfterEventArgs предоставляющие сведения, относящиеся к событию:

  • ModifiedColumnValues;
  • PrimaryColumnValue.

event EventHandler<EntitySaveErrorEventArgs> SaveError
Обработчик события, возникающего при ошибке сохранения объекта.

Обработчик события получает аргумент типа EntitySaveErrorEventArgs.

Свойства EntitySaveErrorEventArgs предоставляющие сведения, относящиеся к событию:

  • Exception;
  • IsHandled.

event EventHandler<EntityBeforeEventArgs> Saving
Обработчик события, возникающего перед сохранением объекта.

Обработчик события получает аргумент типа EntityBeforeEventArgs.

Свойства EntityBeforeEventArgs предоставляющие сведения, относящиеся к событию:

  • AdditionalCondition;
  • IsCanceled;
  • KeyValue.

event EventHandler<EntityAfterEventArgs> Updated
Обработчик события, возникающего после обновления объекта.

Обработчик события получает аргумент типа EntityAfterEventArgs.

Свойства EntityAfterEventArgs предоставляющие сведения, относящиеся к событию:

  • ModifiedColumnValues;
  • PrimaryColumnValue.

event EventHandler<EntityBeforeEventArgs>Updating
Обработчик события, возникающего перед обновлением объекта.

Обработчик события получает аргумент типа EntityBeforeEventArgs.

Свойства EntityBeforeEventArgs предоставляющие сведения, относящиеся к событию:

  • AdditionalCondition;
  • IsCanceled;
  • KeyValue.

event EventHandler<EntityValidationEventArgs> Validating
Обработчик события, возникающего при проверке объекта.

Обработчик события получает аргумент типа EntityValidationEventArgs.

Свойства EntityValidationEventArgs предоставляющие сведения, относящиеся к событию:

  • Messages.

Смотрите также:

© Terrasoft 2002-2020.

Был ли данный материал полезен?

Как можно улучшить эту статью?