Проверка документов

26.06.25

Функциональные - Документооборот и делопроизводство (СЭД)

Расширение, позволяет устанавливать отметки проверки к любому виду документа (Флаг, Ответственный и Время) и запрет редактирования проверенного документа.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
(Устарело) Расширение: Проверка документов (версия 09.04.2023 23:20)
.cfe 52,29Kb
8 2 500 руб. Купить
(Устарело) Расширение: Проверка документов (версия 11.04.2023 12:00)
.cfe 52,49Kb
5 2 500 руб. Купить
(Устарело) Расширение: Проверка документов (версия 16.04.2023 13:40)
.cfe 55,86Kb
63 3 000 руб. Купить
Расширение: Проверка документов (версия 24.05.2025 15:30)
.cfe 55,71Kb
19 3 000 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Работает автоматически для всех видов документов.

ВНИМАНИЕ: В расширении используется Привилегированный режим, он не дает пользователям доступ к конфиденциальным данным. Используется в подписке на событие перед записью для проверки состояния изменяемого документа давая право чтения регистра расширения. У пользователей не будет роли к чтению или редактированию регистра, но проверка состояние документа и запрет в редактировании будет. И чтобы у них ошибки не возникало в ходе обращения к регистру расширения и был добавлен привилегированный режим.

Примечание: Для форм, где есть вызов в ПриСозданииНаСервере() функционала подключаемых команд (в последних продуктах 1С практически везде подключаемые команды вызываются в формах.

 

Рис.1 Колонки [Проверка документов] отображаются в формах списка и выбора документов

 

Рис.2 Включение/Отключение секции с информацией о проверке в меню формы - Ещё - Изменить форму - группы [Проверка документов]

 

Рис.3 Кнопка [Проверка документа] в формах документов

 

Возможности расширения

  • Проверка документа - в форме документа в командной панели нажать кнопку [Проверка документа], картинка изменится с  на , в подсказке кнопки появится {Ответственный и Время}, в открытых списках автоматически обновятся данные в колонках {Флаг, Ответственный и Время}. Документ будет запрещен для редактирования пользователям.
  • Отмена проверки документа - в форме документа в командной панели нажать кнопку [Проверка документа], картинка изменится с  на  , в открытых списках автоматически обновятся данные в колонках {Флаг, Ответственный и Время}. Документ будет разрешен для редактирования пользователям.

Права доступа

Возможность устанавливать и снимать отметку проверки документа имеют пользователи с ролями: Полные права или Добавление изменение проверки документов (Расширение: Проверка документов).

Остальным пользователям должна быть назначена роль Чтение проверки документов (Расширение: Проверка документов), чтобы не возникала ошибка при открытии форм списков. Создаете новый профиль с одной этой ролью, группу доступа и включаете в нее всех пользователей.

Работоспособность расширения

Проверял на платформе 1С:Предприятие 8.3 (8.3.22.1750)

Режим совместимости расширения от версии платформы 8.3.17 и выше.

Работа проверялась в программах:

  • 1С:Управление холдингом, редакция 3.2 (3.2.4.2)
  • 1С:Бухгалтерия предприятия, редакция 3.0 (3.0.132.34) 
  • 1С:Управление торговлей 11 (11.5.8.309)

- будет работать и на других продуктах 1С построенных на основе библиотеки стандартных подсистем. Во всех клиентах: тонкий, толстый, веб.

Работает и для форм, где список не на базе произвольного запроса.

Состав расширения

4 общих модуля, 2 роли, 2 картинки, 1 подписка на событие, 1 регистр сведений

 

 

Примечание (уже не актуально, в новых версиях добавил автоматическую проверку платформы)

В версии платформы 8.3.22 есть возможность связи по УникальномуИдентификатору(...). Я такой код вставил, но он отключен, т.к. многие работают на меньших платформах. Альтернативой стоит связь по номеру и дате. У кого 8.3.22 поставьте связь по уникальному идентификатору в ОбщийМодуль.провдок_Сервер, в следующем коде в первом условии изменив Ложь на Истина.

//Конструируем запрос списка № 2
Если Ложь Тогда  
	//Будет работать когда версия платформы станет 8.3.22, 
	//там есть возможность получать Уникальный идентификатор в запросе
	//или придется затаскивать функционал расширения в конфигурацию  
	ВставкаСоединения = Найти(Форма[ИмяЭлементаСписка].ТекстЗапроса, " КАК " + ПсевдонимОсновнойТаблицы);
	Если ВставкаСоединения > 0 Тогда
		ВставкаСоединения = ВставкаСоединения + СтрДлина(" КАК " + ПсевдонимОсновнойТаблицы);       
		
		Форма[ИмяЭлементаСписка].ТекстЗапроса = Лев(Форма[ИмяЭлементаСписка].ТекстЗапроса, ВставкаСоединения) +  
		" 
		|ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.провдок_ПроверенныеДокументы КАК провдок_ПроверенныеДокументы
		|ПО УникальныйИдентификатор(" + ПсевдонимОсновнойТаблицы + ".Ссылка) = провдок_ПроверенныеДокументы.УИОбъекта
		|" + Сред(Форма[ИмяЭлементаСписка].ТекстЗапроса, ВставкаСоединения);
	Иначе
		Форма[ИмяЭлементаСписка].ТекстЗапроса = Форма[ИмяЭлементаСписка].ТекстЗапроса + 
		" 
		|ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.провдок_ПроверенныеДокументы КАК провдок_ПроверенныеДокументы
		|ПО УникальныйИдентификатор(" + ПсевдонимОсновнойТаблицы + ".Ссылка) = провдок_ПроверенныеДокументы.УИОбъекта"; 
	КонецЕсли;
Иначе
	//Пока сделаем по номеру и дате  
	ВставкаСоединения = Найти(Форма[ИмяЭлементаСписка].ТекстЗапроса, " КАК " + ПсевдонимОсновнойТаблицы);    
	Если ВставкаСоединения > 0 Тогда
		ВставкаСоединения = ВставкаСоединения + СтрДлина(" КАК " + ПсевдонимОсновнойТаблицы);       
		
		Форма[ИмяЭлементаСписка].ТекстЗапроса = Лев(Форма[ИмяЭлементаСписка].ТекстЗапроса, ВставкаСоединения) + 
		" 
		|ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.провдок_ПроверенныеДокументы КАК провдок_ПроверенныеДокументы
		|ПО " + ПсевдонимОсновнойТаблицы + ".Номер = провдок_ПроверенныеДокументы._НомерДокумента 
		| И " + ПсевдонимОсновнойТаблицы + ".Дата = провдок_ПроверенныеДокументы._ДатаДокумента 
		|" + Сред(Форма[ИмяЭлементаСписка].ТекстЗапроса, ВставкаСоединения);    
		
	Иначе        
		Форма[ИмяЭлементаСписка].ТекстЗапроса = Форма[ИмяЭлементаСписка].ТекстЗапроса + 
		" 
		|ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.провдок_ПроверенныеДокументы КАК провдок_ПроверенныеДокументы
		|ПО " + ПсевдонимОсновнойТаблицы + ".Номер = провдок_ПроверенныеДокументы._НомерДокумента 
		| И " + ПсевдонимОсновнойТаблицы + ".Дата = провдок_ПроверенныеДокументы._ДатаДокумента";     
	КонецЕсли;
	
КонецЕсли;
 
 Подключение расширения к 1С
 
 Другие публикации автора