helpf.pro
Регистрация
 +3 
Распечатать

1С 8.3 : Как запретить изменять документы после 8 часов с момента их создания

Обратился ко мне клиент с задачей: Нужно запретить изменение всех видов платежных документов (ПП, РКО, ПКО) спустя 8 часов с момента проведения соответствующего документа

Для реализации этого я использовал Подписку на событие: ПередЗаписьюДокументаДатаЗапретаРедактирования

В конце процедуры обработчика добавил вызов своей процедуры

Вот ее код:

Код 1C v 8.3
 Процедура ПроверкаВремениСозданияИИзмененияДокумента(Источник, Отказ)
Если РольДоступна("ПолныеПрава") Тогда
//Все можно
ИначеЕсли Источник.Проведен Тогда //Обрабатывае только Проведенные
ТекДата=ТекущаяДата(); ЧасовРазрешено=24;
Если ТипЗнч(Источник) = Тип("ДокументОбъект.РасходныйКассовыйОрдер") Тогда
ЧасовРазрешено=8;
Если НЕ (ТекДата-Источник.Дата)/60 < ЧасовРазрешено*60 Тогда Отказ=Истина; Конецесли;
ИначеЕсли ТипЗнч(Источник) = Тип("ДокументОбъект.ПриходныйКассовыйОрдер") Тогда
ЧасовРазрешено=8;
Если НЕ (ТекДата-Источник.Дата)/60 < ЧасовРазрешено*60 Тогда Отказ=Истина; Конецесли;
ИначеЕсли ТипЗнч(Источник) = Тип("ДокументОбъект.ПлатежноеПоручениеВходящее") Тогда
ЧасовРазрешено=8;
Если НЕ (ТекДата-Источник.Дата)/60 < ЧасовРазрешено*60 Тогда Отказ=Истина; Конецесли;
    ИначеЕсли ТипЗнч(Источник) = Тип("ДокументОбъект.ПлатежноеПоручениеИсходящее") Тогда
ЧасовРазрешено=8;
Если НЕ (ТекДата-Источник.Дата)/60 < ЧасовРазрешено*60 Тогда Отказ=Истина; Конецесли;
КонецЕсли;
КонецЕсли;
#Если Клиент Тогда
Если Отказ Тогда
Сообщить("Прошло более "+Строка(ЧасовРазрешено)+" часов с момента создания документа! Изменение запрещено и документ не может быть записан...", СтатусСообщения.Важное);
КонецЕсли;
#КонецЕсли
КонецПроцедуры

Пока документ не проведен, его можно менять сколько угодно, но после первого проведения и истечения указанного количества часов, документ заблокируется, и при проведении будет выведено сообщение:

Разместил:   Версии: | 8.x | 8.2 УП | 8.3 |  Дата:   Прочитано: 14651
 +3 
Распечатать
Возможно, вас также заинтересует
Где скачать классификатор ФИАС (вместо КЛАДР) для загрузки в 1С и как установить ФИАС? 2
Думаю, уже многие слышали что KLADR заменен на ФИАС (Федеральная информационная адресная система) Единой информацией из ФИАС будут обязаны пользоваться все ведомства – ГИБДД, Росреестр, ЗАГС, ФМС России и др, в частности Почта России – которая ис
Дерево значений в таблицу значений или в табличную часть и обратно 10
Для одной организации надо было реализовать документы, где вместо табличной части надо использовать дерево и все это на управляемых формах. Но дерево нельзя сохранить в базе в текущем виде. Пришлось использовать табличную часть документа для хранени
Как преобразовать дату в формат RFC 822 и обратно? 0
Создавая обмены данными между 1С и сайтами, часто приходится форматировать вывод даты в стандарт RCF-822 или преобразовывать его в понятную для 1С ДатуВремя. Дата в формате RFC-822 выглядит так: Tue, 12 Aug 2013 14:15:00 +0400 Небольшая справка п
Настройка автоматического резервного копирования 1С:Предприятия с помощью Effector saver 6
Effector saver - это специализированная программа для автоматического резервного копирования 1С:Предприятия.Программа позволяет создавать резервные копии баз данных 1С:Предприятия, баз Microsoft SQL или PostgreSQL серверов, пользовательских папок и
Невозможно применить фиксированные настройки. Пересекаются элементы отбора. 0
В некоторых релизах конфигураций на управляемом приложении на платформе 1С: Предприятие 8.3 можно получить следующую ошибку: Текст по кнопочке “Подробно”: Параметры Отбора, Сортировки, Группировки или список отображаемых полей заданы неверно.
Посмотреть все результаты поиска похожих
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.