• Модуль: sender
  • Путь к файлу: ~/bitrix/modules/sender/lib/group.php
  • Класс: BitrixSenderGroupTable
  • Вызов: GroupTable::getMap
static function getMap()
{
	return array(
		'ID' => array(
			'data_type' => 'integer',
			'primary' => true,
			'autocomplete' => true,
		),
		'CODE' => array(
			'data_type' => 'string',
			'validation' => function ()
			{
				return array(
					//new EntityValidatorUnique
				);
			}
		),
		'NAME' => array(
			'data_type' => 'string',
			'required' => true,
			'title' => Loc::getMessage('SENDER_ENTITY_GROUP_FIELD_TITLE_NAME')
		),
		'DATE_INSERT' => array(
			'data_type' => 'datetime',
			'required' => true,
			'default_value' => new TypeDateTime(),
		),
		'DATE_UPDATE' => array(
			'data_type' => 'datetime',
			'required' => true,
			'default_value' => new TypeDateTime(),
		),
		'DATE_USE' => array(
			'data_type' => 'datetime',
		),
		'DATE_USE_EXCLUDE' => array(
			'data_type' => 'datetime',
		),
		'ACTIVE' => array(
			'data_type' => 'boolean',
			'required' => true,
			'default_value' => 'Y',
			'values' => array('N', 'Y'),
		),
		'HIDDEN' => array(
			'data_type' => 'boolean',
			'required' => true,
			'default_value' => 'N',
			'values' => array('N', 'Y'),
		),
		'IS_SYSTEM' => array(
			'data_type' => 'boolean',
			'required' => true,
			'default_value' => 'N',
			'values' => array('N', 'Y'),
		),
		'DESCRIPTION' => array(
			'data_type' => 'string',
			'title' => Loc::getMessage('SENDER_ENTITY_GROUP_FIELD_TITLE_DESCRIPTION'),
			'validation' => array(__CLASS__, 'validateDescription'),
		),
		'SORT' => array(
			'data_type' => 'integer',
			'required' => true,
			'default_value' => 100,
			'title' => Loc::getMessage('SENDER_ENTITY_GROUP_FIELD_TITLE_SORT')
		),
		'ADDRESS_COUNT' => array(
			'data_type' => 'integer',
			'default_value' => 0,
			'required' => true,
		),
		'USE_COUNT' => array(
			'data_type' => 'integer',
			'default_value' => 0,
			'required' => true,
		),
		'USE_COUNT_EXCLUDE' => array(
			'data_type' => 'integer',
			'default_value' => 0,
			'required' => true,
		),
		'GROUP_CONNECTOR' => array(
			'data_type' => 'BitrixSenderGroupConnectorTable',
			'reference' => array('=this.ID' => 'ref.GROUP_ID'),
		),
		'MAILING_GROUP' => array(
			'data_type' => 'BitrixSenderMailingGroupTable',
			'reference' => array('=this.ID' => 'ref.GROUP_ID'),
		),
		'DEAL_CATEGORY' => new ReferenceField(
				'DEAL_CATEGORY',
				GroupDealCategoryTable::class,
				[
					'=this.ID' => 'ref.GROUP_ID',
				],
				['join_type' => 'LEFT']
		),
		'STATUS' => [
			'data_type' => 'string',
			'default_value' => self::STATUS_NEW,
			'values' => [
				self::STATUS_NEW,
				self::STATUS_IN_PROGRESS,
				self::STATUS_READY_TO_USE,
				self::STATUS_DONE,
			]
		],
	);
}