Заполнить регистр сведений 8.3 Управляемые Формы
Доброго дня, Подскажите пожалуйста есть документ заявка, имеем реквизит СтатусЗаявки (Перечесления; Новая, в работе, закончен)
как сделать так чтобы в регистре сведений отображать изменения этого статуса, так скажем чтобы записывал именно новой записью. а не замещал что есть.
К примеру:
Документ:№1, Статус :Новая, Дата:27.10.2020 10:51:10
Документ:№1, Статус :В работе, Дата:27.10.2020 11: 20:12
как мне вот добиться такого не могу понять. Буду благодарен совету.
как сделать так чтобы в регистре сведений отображать изменения этого статуса, так скажем чтобы записывал именно новой записью. а не замещал что есть.
К примеру:
Документ:№1, Статус :Новая, Дата:27.10.2020 10:51:10
Документ:№1, Статус :В работе, Дата:27.10.2020 11: 20:12
как мне вот добиться такого не могу понять. Буду благодарен совету.
По теме из базы знаний
- Просмотр и очистка регистра сведений (управляемые формы)
- Сотрудник не отражается при подборе. Обработка заполнения регистра "Основные сотрудники физических лиц"
- Удаление документов для любых баз на управляемых формах
- Редактор констант и записей независимых регистров сведений (управляемые формы)
- Редактор регистров сведений для управляемых форм 8.3
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) Могу расшифровать один из предложенных Вам вариантов другими участниками форума. Создайте независимый периодический регистр сведений для хранения статусов. В модуле объекта документа при записи проверьте, что статус изменился, и если так, добавьте запись в регистр.
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
Если ЭтоНовый() Тогда
ОбновитьСтатус = Истина;
ИначеЕсли ЭтотОбъект.Статус <> ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Ссылка, "Статус") Тогда
ОбновитьСтатус = Истина;
Иначе
ОбновитьСтатус = Ложь;
КонецЕсли;
ДополнительныеСвойства.Вставить("НеобходимоОбновитьСтатус", ОбновитьСтатус);
КонецПроцедуры
Процедура ПриЗаписи(Отказ)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
ОбновитьСтатус = Ложь;
Если ДополнительныеСвойства.Свойство("НеобходимоОбновитьСтатус", ОбновитьСтатус) И ОбновитьСтатус Тогда
ЗаписьСтатуса = РегистрыСведений.СтатусыДокументов.СоздатьМенеджерЗаписи();
ЗаписьСтатуса.Период = ТекущаяДатаСеанса();
ЗаписьСтатуса.Документ = Ссылка;
ЗаписьСтатуса.Статус = Статус;
ЗаписьСтатуса.Записать();
КонецЕсли;
КонецПроцедуры
Показать
(4) Это функция из БСП - возвращает значение реквизита по имени для переданной ссылки. Если у Вас такой нет, можете написать свою. Ну или в крайнем случае, исключительно для тестирования приведенного кода, можете заменить вызов функции на обращение к полям ссылки:
ЭтотОбъект.Статус <> Ссылка.Статус
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот