Тип: Ссылка на объект информационной базы. Параметр содержит ссылку на исполнителя.
Полное описание, параметры и ограничения
Расширение табличного поля списка задач.Исполнитель (Task list table box extension.Performer)
Расширение табличного поля списка задач (Task list table box extension)
Исполнитель (Performer)
Доступен, начиная с версии 8.0.
Использование:
Чтение и запись.
Описание:
Тип: Ссылка на объект информационной базы.
Параметр содержит ссылку на исполнителя.
Доступность:
Толстый клиент.
Примечание:
Используется при установленном свойстве ОтображениеЗадач = ПоИсполнителю.
Использование в версии:
Доступен, начиная с версии 8.0.
Методическая информация
Практические примеры
Задачи: сентябрь, собственный исполнитель A и сброс фильтров при смене режима
На четырёх настоящих своих записях разберём источник списка, месячный отбор и UI без выполнения задач или запуска процессов.
Где и как запускать
Полный модуль собственной обычной формы УчебныеСпискиПроцессов85 → Обработки → Уч85СписокЗадач → Формы → Список; общий модуль и Пульт ниже. Не выполнялся.
Подготовка
НОВАЯ отдельная файловая база 8.5.1.1343, конфигурация УчебныеСпискиПроцессов85, совместимость НеИспользовать, обычное приложение, толстый клиент. Не рабочая база и не её копия. Нет расширений, разделителей, общих реквизитов, подписок, внешних/фоновых обработчиков; одна учебная сессия. runtimeVerifiedScenarios=0.
Задача Уч85Задача: номер Строка(9), автонумерация, наименование 100. Дополнительные Уч85Ключ Строка(8) и Уч85Текст Строка(100), оба Индексировать, без проверки заполнения. Реквизит адресации Уч85Исполнитель типа СправочникСсылка.Уч85Сотрудники, основной реквизит адресации. Модули задачи пустые.
Бизнес-процесс Уч85Процесс: номер Строка(9), автонумерация; собственные Уч85Ключ Строка(8) и Уч85Текст Строка(100), оба Индексировать. В свойстве Задача выберите Уч85Задача. Маршрут: Старт → одиночное действие Уч85Действие → Финиш. Никаких обработчиков/групповых/условных/вложенных точек. Процессы НЕ запускать, задачи НЕ выполнять.
Справочник Уч85Сотрудники: неиерархический, код Строка(8), имя 100, без реквизитов/обработчиков. Вручную сохраните только A/Учебный сотрудник A и B/Учебный сотрудник B, без пометок удаления. Это собственные справочные записи, не пользователи информационной базы.
Регистр сведений Уч85Адресация: независимый, непериодический, единственное измерение Уч85Исполнитель типа СправочникСсылка.Уч85Сотрудники, без ресурсов/реквизитов/обработчиков. В Задача → Адресация выберите этот регистр; у реквизита адресации Уч85Исполнитель свойство ИзмерениеАдресации свяжите с одноимённым измерением. Регистр оставьте пустым: все учебные задачи имеют непустое персональное назначение, ролевую адресацию здесь не испытываем.
Параметр сеанса Уч85ТекущийИсполнитель типа СправочникСсылка.Уч85Сотрудники; в метаданных задачи ТекущийИсполнитель укажите этот параметр. Модуль сеанса пустой. В варианте задач общий модуль явно инициализирует только этот собственный параметр перед открытием; это будущая настройка своей сессии, не запись сотрудников/задач и не смена пользователя ИБ.
Для каждого вида вручную сохраните ровно четыре записи без запуска/выполнения/пометок: A — 01.09.2026 00:00:00, Уч85Текст=01. Первая учебная запись; B — 15.09.2026 12:00:00, текст=02. Вторая учебная запись; C — 30.09.2026 23:59:59, текст=03. Граница сентября; D — 01.10.2026 00:00:00, текст=04. Первый октябрьский. Уч85Ключ A/B/C/D. У задач Наименование равно Уч85Текст; персональный Уч85Исполнитель A у A/C/D, B у B. Задачи самостоятельные, не созданы запуском маршрута. Показывайте секунды даты.
Общий модуль УчебныеСписки85: неглобальный, Клиент (обычное приложение)=Да, Сервер=Нет, Привилегированный=Нет, другие клиентские флаги=Нет. Полный общий модуль ниже, основной блок — модуль списка. Вставляйте один вариант, не оба общих модуля одновременно.
Обработка УчебныеСписки85 → обычная основная форма Пульт → кнопка Выполнить, действие ВыполнитьНажатие; полный модуль формы отдельно. F7 и обновление только своего стенда. Примеры не вызывают Записать/Старт/ВыполнитьЗадачу/удаление/сеть/почту/файлы/печать.
Обработка Уч85СписокЗадач → обычная основная форма Список. Реквизит СписокРасчетов типа ЗадачаСписок.Уч85Задача; поле Виды связано с ним. Колонки Дата/Уч85Текст/Уч85Ключ связаны с одноимёнными полями. ТолькоПросмотр=Да, стандартных команд записи/создания/выполнения/старта/удаления нет.
Кнопки ТолькоB, Восстановить, Фиксированный, Настраиваемый, АвтоОбновление, РазрешитьПериод, ЗапретитьПериод, Закрыть: назначьте действия *Нажатие и ПриОткрытии. Оставьте стандартный диалог настройки списка в контекстном меню поля. Основной полный блок вставьте в модуль списка.
В списке задач добавьте колонки Наименование и Уч85Исполнитель, связанные с одноимёнными полями, и кнопку СотрудникA → СотрудникAНажатие. Не добавляйте СтандартныйПериод: в данном расширении задач это свойство отсутствует.
Перем Подготовлено;
Перем СвоиЗаписи;
Перем РазрешалисьИзмененияПериода;
Процедура ПодготовитьДоОткрытия() Экспорт
Подготовлено = Ложь;
РазрешалисьИзмененияПериода = Ложь;
Если ЭтаФорма.Открыта() Или ТипЗнч(СписокРасчетов) <> Тип("ЗадачаСписок.Уч85Задача") Тогда
ВызватьИсключение "Нужен настоящий реквизит списка своей закрытой обычной формы";
КонецЕсли;
СвоиЗаписи = УчебныеСписки85.ПрочитатьСвоюПодготовку();
Колонки = СписокРасчетов.Колонки;
Для Каждого Имя Из СтрРазделить("Дата,Уч85Текст,Уч85Ключ,Наименование,Уч85Исполнитель", ",") Цикл
Если Колонки.Найти(Имя) = Неопределено Тогда
Колонки.Добавить(Имя);
КонецЕсли;
КонецЦикла;
Поле = ЭлементыФормы.Виды;
НастроитьПоле(Ложь);
Поле.Автонумерация = АвтонумерацияВФорме.НеИспользовать;
Поле.ОтображениеЗадач = РежимСпискаЗадач.ВсеЗадачи;
Если Поле.Автонумерация <> АвтонумерацияВФорме.НеИспользовать Тогда
ВызватьИсключение "Автонумерация в своём поле должна быть отключена";
КонецЕсли;
УстановитьДоступностьПериода(Ложь);
УстановитьСентябрь();
Подготовлено = Истина;
КонецПроцедуры
Процедура ПриОткрытии()
Если Подготовлено <> Истина Тогда
ВызватьИсключение "Открывайте свой список через Пульт после подготовки";
КонецЕсли;
УстановитьСентябрь();
СписокРасчетов.Обновить();
Сообщить("Проверьте сентябрьские A,B,C. C в 30.09 23:59:59 включена, D в 01.10 00:00:00 исключена.");
КонецПроцедуры
Процедура ПроверитьСвойОткрытыйСписок()
Если Подготовлено <> Истина Или Не ЭтаФорма.Открыта() Тогда
ВызватьИсключение "Нужен свой подготовленный открытый список";
КонецЕсли;
Повторно = УчебныеСписки85.ПрочитатьСвоюПодготовку();
Для Каждого Ключ Из СтрРазделить("A,B,C,D", ",") Цикл
Если Повторно.Ссылки[Ключ] <> СвоиЗаписи.Ссылки[Ключ] Тогда
ВызватьИсключение "Своя подготовленная запись заменена другим кодом";
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Процедура ПроверитьФиксированныйПериод()
Если РазрешалисьИзмененияПериода = Истина Тогда
ВызватьИсключение "После разрешения ручного интервала откройте новый собственный опыт для фиксированных ожиданий";
КонецЕсли;
КонецПроцедуры
Процедура УстановитьСентябрь()
ПроверитьФиксированныйПериод();
СписокРасчетов.Отбор.Сбросить();
ДатаОтбора = СписокРасчетов.Отбор.Найти("Дата");
Если ДатаОтбора = Неопределено Тогда
ВызватьИсключение "В своём списке нет стандартного отбора Дата";
КонецЕсли;
ДатаОтбора.ВидСравнения = ВидСравнения.ИнтервалВключаяГраницы;
ДатаОтбора.ЗначениеС = Дата(2026, 9, 1, 0, 0, 0);
ДатаОтбора.ЗначениеПо = Дата(2026, 9, 30, 23, 59, 59);
ДатаОтбора.Использование = Истина;
СписокРасчетов.Порядок.Установить("Наименование Возр");
Если ДатаОтбора.ВидСравнения <> ВидСравнения.ИнтервалВключаяГраницы Или Не ДатаОтбора.Использование
Или ДатаОтбора.ЗначениеС <> Дата(2026, 9, 1, 0, 0, 0) Или ДатаОтбора.ЗначениеПо <> Дата(2026, 9, 30, 23, 59, 59) Тогда
ВызватьИсключение "Не подтверждены точные границы своего сентября";
КонецЕсли;
КонецПроцедуры
Процедура ТолькоBНажатие(Кнопка)
ПроверитьСвойОткрытыйСписок();
ЭлементыФормы.Виды.ОтображениеЗадач = РежимСпискаЗадач.ВсеЗадачи;
УстановитьСентябрь();
СписокРасчетов.Отбор.Уч85Ключ.Установить("B", Истина);
СписокРасчетов.Обновить();
Сообщить("Проверьте только свою B с датой 15.09 и учебным ключом B.");
КонецПроцедуры
Процедура ВосстановитьНажатие(Кнопка)
ПроверитьСвойОткрытыйСписок();
ЭлементыФормы.Виды.ОтображениеЗадач = РежимСпискаЗадач.ВсеЗадачи;
УстановитьСентябрь();
СписокРасчетов.Обновить();
Сообщить("Проверьте снова A,B,C за сентябрь; октябрьская D скрыта, но не удалена.");
КонецПроцедуры
Процедура РазрешитьПериодНажатие(Кнопка)
ПроверитьСвойОткрытыйСписок();
УстановитьДоступностьПериода(Истина);
Сообщить("Команда Установить интервал дат разрешена даже при недоступном ручном отборе Дата. После ручного опыта закройте окно и запустите новый Пульт для исходных границ.");
КонецПроцедуры
Процедура ЗапретитьПериодНажатие(Кнопка)
ПроверитьСвойОткрытыйСписок();
УстановитьДоступностьПериода(Ложь);
КонецПроцедуры
Процедура УстановитьДоступностьПериода(Разрешено)
Поле = ЭлементыФормы.Виды;
УправлениеДатой = Поле.НастройкаОтбора.Найти("Дата");
Если УправлениеДатой = Неопределено Тогда
ВызватьИсключение "Нет собственного элемента управления отбором Дата";
КонецЕсли;
УправлениеДатой.Доступность = Ложь;
Поле.РазрешитьНастройкуПериода = Разрешено;
Если Разрешено Тогда
РазрешалисьИзмененияПериода = Истина;
КонецЕсли;
Если УправлениеДатой.Доступность Или Поле.РазрешитьНастройкуПериода <> Разрешено Тогда
ВызватьИсключение "Не совпали доступности даты и отдельной команды периода";
КонецЕсли;
КонецПроцедуры
Процедура ЗакрытьНажатие(Кнопка)
ПроверитьСвойОткрытыйСписок();
ЭлементыФормы.Виды.АвтоОбновление = Ложь;
ЭтаФорма.Закрыть();
КонецПроцедуры
Процедура НастроитьПоле(Интерактивно)
Поле = ЭлементыФормы.Виды;
УправлениеОтбором = Поле.НастройкаОтбора.Найти("Уч85Ключ");
УправлениеПорядком = Поле.НастройкаПорядка.Найти("Наименование");
Если УправлениеОтбором = Неопределено Или УправлениеПорядком = Неопределено Тогда
ВызватьИсключение "Нет собственных элементов управления отбором ключа и порядком наименования";
КонецЕсли;
Поле.АвтоОбновление = Ложь;
Поле.ПериодАвтоОбновления = 10;
Поле.ВосстанавливатьТекущуюСтроку = Ложь;
Поле.ИзменятьАвтоОбновление = Интерактивно;
Поле.ИзменятьСпособРедактирования = Интерактивно;
Если Интерактивно Тогда
Поле.СпособРедактирования = СпособРедактированияСписка.ВСписке;
Поле.ПроверкаОтображенияНовойСтроки = ВариантПроверкиОтображенияНовойСтроки.НеПроверять;
Иначе
Поле.СпособРедактирования = СпособРедактированияСписка.ВДиалоге;
Поле.ПроверкаОтображенияНовойСтроки = ВариантПроверкиОтображенияНовойСтроки.СообщатьОНесоответствииОтбору;
КонецЕсли;
УправлениеОтбором.Доступность = Интерактивно;
УправлениеПорядком.Доступность = Интерактивно;
Поле.ТолькоПросмотр = Истина;
ПроверитьПрофиль(Интерактивно);
КонецПроцедуры
Процедура ПроверитьПрофиль(Интерактивно)
Поле = ЭлементыФормы.Виды;
Если Поле.АвтоОбновление Или Поле.ПериодАвтоОбновления <> 10 Или Поле.ВосстанавливатьТекущуюСтроку
Или Поле.ИзменятьАвтоОбновление <> Интерактивно Или Поле.ИзменятьСпособРедактирования <> Интерактивно
Или Не Поле.ТолькоПросмотр Тогда
ВызватьИсключение "Флаги своего профиля не совпали";
КонецЕсли;
Если Поле.НастройкаОтбора.Найти("Уч85Ключ").Доступность <> Интерактивно
Или Поле.НастройкаПорядка.Найти("Наименование").Доступность <> Интерактивно Тогда
ВызватьИсключение "Интерактивная доступность отбора/порядка не совпала";
КонецЕсли;
Если Интерактивно Тогда
Если Поле.СпособРедактирования <> СпособРедактированияСписка.ВСписке
Или Поле.ПроверкаОтображенияНовойСтроки <> ВариантПроверкиОтображенияНовойСтроки.НеПроверять Тогда
ВызватьИсключение "Не совпали режим и проверка настраиваемого профиля";
КонецЕсли;
Иначе
Если Поле.СпособРедактирования <> СпособРедактированияСписка.ВДиалоге
Или Поле.ПроверкаОтображенияНовойСтроки <> ВариантПроверкиОтображенияНовойСтроки.СообщатьОНесоответствииОтбору Тогда
ВызватьИсключение "Не совпали режим и проверка фиксированного профиля";
КонецЕсли;
КонецЕсли;
КонецПроцедуры
Процедура НастраиваемыйНажатие(Кнопка)
ПроверитьСвойОткрытыйСписок();
НастроитьПоле(Истина);
Сообщить("Откройте стандартный диалог настройки списка: отбор по ключу, порядок наименования и настройки автообновления доступны. Запись строк по-прежнему запрещена настройкой ТолькоПросмотр.");
КонецПроцедуры
Процедура ФиксированныйНажатие(Кнопка)
ПроверитьСвойОткрытыйСписок();
НастроитьПоле(Ложь);
ВосстановитьНажатие(Неопределено);
Сообщить("Фиксированный профиль восстановлен. Программный отбор кнопкой ТолькоB работает независимо от запрета его интерактивного изменения.");
КонецПроцедуры
Процедура АвтоОбновлениеНажатие(Кнопка)
ПроверитьСвойОткрытыйСписок();
Поле = ЭлементыФормы.Виды;
Поле.ИзменятьАвтоОбновление = Ложь;
Поле.ПериодАвтоОбновления = 10;
Поле.АвтоОбновление = Не Поле.АвтоОбновление;
Сообщить(СтрШаблон("АвтоОбновление=%1, период=%2 секунд, интерактивное изменение=%3",
Поле.АвтоОбновление, Поле.ПериодАвтоОбновления, Поле.ИзменятьАвтоОбновление));
КонецПроцедуры
Процедура СотрудникAНажатие(Кнопка)
ПроверитьСвойОткрытыйСписок();
Поле = ЭлементыФормы.Виды;
Поле.ОтображениеЗадач = РежимСпискаЗадач.ВсеЗадачи;
Поле.Исполнитель = СвоиЗаписи.Сотрудники.A;
Поле.ОтображениеЗадач = РежимСпискаЗадач.ПоИсполнителю;
Если СписокРасчетов.Отбор.Уч85Ключ.Использование Тогда
ВызватьИсключение "При реальной смене режима прежний отбор B должен сброситься";
КонецЕсли;
УстановитьСентябрь();
Если Поле.Исполнитель <> СвоиЗаписи.Сотрудники.A Или Поле.ОтображениеЗадач <> РежимСпискаЗадач.ПоИсполнителю Тогда
ВызватьИсключение "Не подтверждены свой исполнитель и режим";
КонецЕсли;
СписокРасчетов.Обновить();
Сообщить("Проверьте A,C за сентябрь, назначенные сотруднику A. Прежний отбор B снят; октябрьская D этого же сотрудника вне периода.");
КонецПроцедурыУчебныеСписки85.Пульт
УчебныеСпискиПроцессов85 → Обработки → УчебныеСписки85 → Формы → Пульт → Модуль
Полный модуль обычного Пульта; не выполнялся.
Процедура ВыполнитьНажатие(Кнопка)
УчебныеСписки85.ВыполнитьПример();
КонецПроцедурыУчебныеСписки85.ОбщийМодуль
УчебныеСпискиПроцессов85 → Общие модули → УчебныеСписки85
Полный обычный клиентский общий модуль чтения своей подготовки и запуска списка; не выполнялся.
Процедура ВыполнитьПример() Экспорт
Свои = ПрочитатьСвоюПодготовку();
ПараметрыСеанса.Уч85ТекущийИсполнитель = Свои.Сотрудники.A;
Ключ = Новый УникальныйИдентификатор;
Окно = Обработки.Уч85СписокЗадач.ПолучитьФорму("Список", , Ключ);
Если Окно = Неопределено Тогда
ВызватьИсключение "Не создана собственная обычная форма Список";
КонецЕсли;
Если ТипЗнч(Окно) <> Тип("Форма") Тогда
ВызватьИсключение "Нужна обычная форма толстого клиента";
КонецЕсли;
Если Окно.Открыта() Или Окно.КлючУникальности <> Ключ Тогда
ВызватьИсключение "Ожидалась новая закрытая форма, не чужое окно";
КонецЕсли;
Окно.КлючСохраненияПоложенияОкна = "Уч85.Уч85СписокЗадач." + Строка(Ключ);
Окно.ПодготовитьДоОткрытия();
Окно.Открыть();
КонецПроцедуры
Процедура ПроверитьСвойКонтекст()
Если Метаданные.РежимСовместимости <> Метаданные.СвойстваОбъектов.РежимСовместимости.НеИспользовать Тогда
ВызватьИсключение "Нужен собственный стенд УчебныеСпискиПроцессов85 платформы 8.5.1.1343";
КонецЕсли;
Если ТранзакцияАктивна() Тогда
ВызватьИсключение "Учебный вывод не должен выполняться внутри чужой транзакции";
КонецЕсли;
КонецПроцедуры
Функция ПрочитатьСвоюПодготовку() Экспорт
ПроверитьСвойКонтекст();
Сотрудники = ПрочитатьСвоихСотрудников();
Ожидания = Новый Структура;
Ожидания.Вставить("A", Новый Структура("Дата,Текст,Исполнитель", Дата(2026, 9, 1, 0, 0, 0), "01. Первая учебная запись", "A"));
Ожидания.Вставить("B", Новый Структура("Дата,Текст,Исполнитель", Дата(2026, 9, 15, 12, 0, 0), "02. Вторая учебная запись", "B"));
Ожидания.Вставить("C", Новый Структура("Дата,Текст,Исполнитель", Дата(2026, 9, 30, 23, 59, 59), "03. Граница сентября", "A"));
Ожидания.Вставить("D", Новый Структура("Дата,Текст,Исполнитель", Дата(2026, 10, 1, 0, 0, 0), "04. Первый октябрьский", "A"));
Ссылки = Новый Структура;
Выборка = Задачи.Уч85Задача.Выбрать(, "Наименование Возр");
Пока Выборка.Следующий() Цикл
Ключ = Выборка.Уч85Ключ;
Ожидание = Неопределено;
Если Не Ожидания.Свойство(Ключ, Ожидание) Или Ссылки.Свойство(Ключ) Тогда
ВызватьИсключение "В своём наборе неизвестный или повторный учебный ключ";
КонецЕсли;
Если Выборка.Дата <> Ожидание.Дата Или Выборка.Уч85Текст <> Ожидание.Текст
Или Выборка.ПометкаУдаления Тогда
ВызватьИсключение "Не совпали дата, текст или пометка своей записи";
КонецЕсли;
Если Выборка.Выполнена Или Выборка.Наименование <> Ожидание.Текст
Или Выборка.Уч85Исполнитель <> Сотрудники[Ожидание.Исполнитель] Тогда
ВызватьИсключение "Задача должна быть невыполненной с реальным персональным назначением";
КонецЕсли;
Ссылки.Вставить(Ключ, Выборка.Ссылка);
КонецЦикла;
Если Ссылки.Количество() <> 4 Тогда
ВызватьИсключение "Вручную подготовьте ровно четыре собственные записи A/B/C/D";
КонецЕсли;
Возврат Новый Структура("Ссылки,Сотрудники", Ссылки, Сотрудники);
КонецФункции
Функция ПрочитатьСвоихСотрудников()
A = Справочники.Уч85Сотрудники.НайтиПоКоду("A");
B = Справочники.Уч85Сотрудники.НайтиПоКоду("B");
Если A.Пустая() Или B.Пустая() Или A = B Или A.Наименование <> "Учебный сотрудник A"
Или B.Наименование <> "Учебный сотрудник B" Или A.ПометкаУдаления Или B.ПометкаУдаления Тогда
ВызватьИсключение "Вручную подготовьте настоящих собственных сотрудников A/B";
КонецЕсли;
Выборка = Справочники.Уч85Сотрудники.Выбрать();
Количество = 0;
Пока Выборка.Следующий() Цикл
Если Выборка.Ссылка <> A И Выборка.Ссылка <> B Тогда
ВызватьИсключение "В своём справочнике есть посторонний сотрудник";
КонецЕсли;
Количество = Количество + 1;
КонецЦикла;
Если Количество <> 2 Тогда
ВызватьИсключение "Нужны ровно два своих сотрудника";
КонецЕсли;
Описание = Метаданные.Задачи.Уч85Задача;
Основной = Описание.ОсновнойРеквизитАдресации;
Реквизит = Описание.РеквизитыАдресации.Найти("Уч85Исполнитель");
Если Основной = Неопределено Или Реквизит = Неопределено Или Описание.РеквизитыАдресации.Количество() <> 1 Тогда
ВызватьИсключение "У своей задачи нужен единственный основной реквизит адресации";
КонецЕсли;
Если Основной <> Реквизит Или Описание.Адресация <> Метаданные.РегистрыСведений.Уч85Адресация
Или Реквизит.ИзмерениеАдресации <> Метаданные.РегистрыСведений.Уч85Адресация.Измерения.Уч85Исполнитель Тогда
ВызватьИсключение "Не совпали собственные настройки адресации";
КонецЕсли;
Адресация = РегистрыСведений.Уч85Адресация.Выбрать();
Если Адресация.Следующий() Тогда
ВызватьИсключение "В этом опыте регистр ролевой адресации должен быть пуст";
КонецЕсли;
Возврат Новый Структура("A,B", A, B);
КонецФункцииРазбор по шагам
Свой набор A/B/C/D содержит две точные границы месяца: C на последней секунде сентября и D в первую секунду октября. Общий модуль читает даты/тексты/ключи и незапущенное/невыполненное состояние, не создавая новых записей.
Источник СписокРасчетов имеет конкретный прикладной тип списка, Виды — визуальное поле. Колонки источника добавляются по именам собственных полей, визуальные колонки заранее связаны с ними в своей обычной форме.
Пульт получает новую закрытую форму по уникальному ключу. Основной полный блок вставляется в модуль Список, отдельные блоки — в общий модуль и Пульт. ПриОткрытии отклоняет неподготовленный прямой запуск.
УстановитьСентябрь использует настоящий ЭлементОтбора Дата: ИнтервалВключаяГраницы, ЗначениеС 01.09 00:00:00, ЗначениеПо 30.09 23:59:59 и Использование=Истина. Проверяет назначенные границы, затем Обновить перечитывает базу.
У задачи собственный основной реквизит адресации Уч85Исполнитель связан с измерением пустого регистра. Все A/B/C/D имеют непустое персональное назначение: A/C/D сотруднику A, B сотруднику B; ролевые задачи не имитируются.
ПараметрыСеанса доступны здесь в толстом клиенте. Свой параметр сначала явно инициализируется сотрудником A, без чтения неинициализированного значения. Metadata.ТекущийИсполнитель по справке всегда Неопределено и не является способом прочитать значение параметра.
СотрудникA принудительно проходит ВсеЗадачи → ПоИсполнителю, задаёт настоящую ссылку A и проверяет сброс прежнего отбора B. Только затем УстановитьСентябрь заново задаёт период: ожидаем A/C, но не октябрьскую D и не B другого исполнителя.
Порядок задачи задаётся Наименование Возр — документированное поле этого списка; имена с префиксами 01…04 совпадают с учебной последовательностью. У менеджеров задач/процессов разные позиции параметров Выбрать, они не копируются механически.
Ожидаем A/B/C, не D. ТолькоB добавляет собственный индексированный ключ; Восстановить возвращает сентябрь. Сообщения — инструкции будущей ручной проверки, а не доказательство отображённых строк.
НастройкаОтбора и НастройкаПорядка readonly как свойства поля. Найти может вернуть Неопределено. Их Доступность относится к ручной настройке, а Отбор источника — к фактической фильтрации.
РазрешитьНастройкуПериода отдельно управляет командой Установить интервал дат, даже когда ручная настройка Дата недоступна. После разрешения ручного интервала действия с фиксированным сентябрём блокируются до нового собственного окна, даже если человек ещё не изменил даты; прежние ожидания не выдаются за доказательство.
Фиксированный/Настраиваемый меняют доступность настройки автообновления и режима редактирования. ТолькоПросмотр остаётся включённым; настройка проверки новой строки не выдаётся за выполненный ввод или испытанное сообщение.
АвтоОбновление переключается программно при периоде 10 секунд; native-минимум 5. ИзменятьАвтоОбновление не запрещает программное изменение. ВосстанавливатьТекущуюСтроку выключен для нового независимого окна.
Закрыть выключает таймер своего поля и закрывает только свой список. Задачи не выполняются, маршрут не стартует, сотрудники/записи/адресация не записываются. Никакого запуска 1С здесь не было.
Как проверить результат
Будущий тест: три полных блока вставить в разные указанные модули, назначить действия/ПриОткрытии и связать колонки, F7, открыть через свой Пульт.
Сентябрь: реальные A,B,C; C 30.09 23:59:59 включена, D 01.10 00:00:00 отсутствует. Осмотреть поле, не только строку Сообщить.
ТолькоB: одна B. Восстановить: три сентябрьские записи. Все четыре по-прежнему существуют в стандартном списке своего вида.
РазрешитьПериод/ЗапретитьПериод: проверить доступность отдельной команды при недоступной ручной настройке Дата. После разрешения ручного интервала Восстановить отклоняется; закрыть окно и повторить с новым уникальным ключом.
Настраиваемый/Фиксированный и АвтоОбновление: сверить фактические флаги, период 10 и диалог. Реальная работа таймера и восстановление позиции не объявляются проверенными.
Закрыть своё окно; записи без пометок и в исходном состоянии. Никаких новых задач маршрута, выполнений или сохранений из кода нет.
После ТолькоB нажать СотрудникA: A/C, отбор B не используется; D этого же сотрудника исключена сентябрём. Восстановить возвращает ВсеЗадачи и A/B/C.
Ожидаемый результат
Будущий список показывает A/B/C за сентябрь, не октябрьскую D; задачи дополнительно фильтруются по настоящему собственному сотруднику A. Данные не записываются, UI и 1С здесь не запускались.
На что обратить внимание
Это обычные формы толстого клиента, не ДинамическийСписок управляемой формы. Источник и визуальное поле — разные объекты.
Readonly свойства коллекций не заменяются; изменяются элементы/методы полученных объектов. Доступность UI и ТолькоПросмотр не являются правами базы.
Сравнение ИнтервалВключаяГраницы корректно для дат, но не для ссылочных данных. Конец месяца задан до последней секунды, не 30.09 00:00:00.
Разрешение ручной смены периода может изменить реальный состав списка. Уже после разрешения нужен новый собственный опыт для фиксированных ожиданий; прежние строки сообщения не доказывают новый результат.
Настройка способа редактирования/автонумерации/проверки строки не означает выполненный ввод. Таймер/UI и 1С здесь не запускались: runtimeVerifiedScenarios=0.
Собственные сотрудники не равны пользователям ИБ. Персональная и ролевая адресация отличаются; рабочие задачи, маршруты и регистры не использовать.
Изменение ОтображениеЗадач сбрасывает фильтры. Период и другие необходимые отборы назначаются ПОСЛЕ смены режима. Исполнитель используется при ПоИсполнителю, не является сменой пользователя ИБ.
Инициализация собственного параметра изменяет только свою учебную сессию; прежнее неинициализированное состояние не обещается восстановленным. Это не запись задач/каталога и не применение к рабочему сеансу.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.