Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Запрет на проведение, но разрешить проведение для заполнения РС
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.3
Constantus
Приветствую, Форумчане!
1с8.3.12, БСП, самопис, УФ

С помощью подписки на событие при определенных условиях (дата документа больше 11-ого числа текущего месяца) введен запрет на проведение (перепроведение) документа (их несколько).

Но вот есть одно "но". На этих документах есть кнопочка "Принять ФО", которая выполняет следующие функции:
1. Вносит в документ в реквизит "Принято" (значения: Принят, Отклонен, Принят с замечанием") изменения с заполнением одним из значений
2. заносит эти изменения в Регистр Сведений "Отметка финансового отдела", куда заносится статус этого документа. Причем при проведении этого документа!!!

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

Данный регистр не влияет на основные движения по документам, например, ПКО, он чисто информационный. Понимаю, что его можно отвязать и программно заполнять как независимый, но в моей ситуации это невозможно.

Понимаю абсурдность моего вопроса, но тем не менее, а вдруг есть возможность при запрете на проведение осуществить "частичное" проведение только по одному Движению с этим регистром "Отметка финансового отдела"?

И чтобы совсем усугубить ситуацию: можно ли это сделать в неком отдельном модуле, чтобы не вносить изменения во все документы в раздел проведения, типа подписки на события?
daveal
Constantus @ Сегодня, 12:46 необходимо зарегистрироваться для просмотра ссылки ,
А если по кнопке записывать через Набор Записей РС, как партионка, а не через проведение? Я же так понимаю запрете именно на запись документа, а не набора записей?
Фигово, что прийдется задублировать запись статуса и по кнопке и при проведении, но по сути можно сделать универсально через набор записей - и вызывать из проведения ту жу процедуру.
Constantus
daveal @ Сегодня, 15:27 необходимо зарегистрироваться для просмотра ссылки ,

Делаю через подписку на событие при записи

Процедура ЗаписьВРСЗакрытНаПроведениеПриЗаписи(Источник, Отказ) Экспорт
    // Вставить содержимое обработчика.
    
    НаборЗаписей = РегистрыСведений.ДокументыСданные.СоздатьНаборЗаписей();

    НаборЗаписей.Отбор.Регистратор.Установить(Источник);

    НоваяЗапись = НаборЗаписей.Добавить();
    НоваяЗапись.Период = ТекущаяДата();
    НоваяЗапись.Пользователь = Источник.Принял;
    НоваяЗапись.ДатаПринятия = Источник.ДатаПринятия;
    НоваяЗапись.Сдан = Истина;
    НоваяЗапись.Документ = Источник;

    НаборЗаписей.Записать();

    
КонецПроцедуры


Выдает ошибку: Не установлен отбор по регистратору (РегистрСведений: ДокументыСданные)

Вопрос решен...

НаборЗаписей.Отбор.Регистратор.Установить(Источник); - неправильно

НаборЗаписей.Отбор.Регистратор.Установить(Источник.Ссылка);
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.