• Модуль: timeman
  • Путь к файлу: ~/bitrix/modules/timeman/lib/model/schedule/calendar/calendartable.php
  • Класс: BitrixTimemanModelScheduleCalendarCalendarTable
  • Вызов: CalendarTable::getMap
static function getMap()
{
	return [
		(new FieldsIntegerField('ID'))
			->configurePrimary(true)
			->configureAutocomplete(true)
		,
		(new FieldsStringField('NAME'))
			->configureDefaultValue(function () {
				return '';
			})
		,
		(new FieldsIntegerField('PARENT_CALENDAR_ID'))
			->configureDefaultValue(function () {
				return 0;
			})
		,
		(new FieldsEnumField('SYSTEM_CODE'))
			->configureValues(static::getAllSystemCodes())
			->configureDefaultValue(static::SYSTEM_CODE_NONE)
		,

		# relations
		(new FieldsRelationsOneToMany('EXCLUSIONS', CalendarExclusionTable::class, 'CALENDAR'))
			->configureJoinType('LEFT')
		,
		(new FieldsRelationsReference('PARENT_CALENDAR', CalendarTable::class,
			Join::on('this.PARENT_CALENDAR_ID', 'ref.ID')))
			->configureJoinType('LEFT')
		,
	];
}