Универсальный нумератор для документов
Задачи пользователя - Перенумераторы
Файлы
ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний
Оформите подписку на компанию для решения рабочих задач
Оформить подписку и скачать решение со скидкойВы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
Созданный нумератор это расширение конфигурации, функционал заимствован из типовой конфигурации. Адаптированние проводилось на конфигурации ЗиК БУ 3.1(аналог ЗУП 3.1, думаю подойдёт) версии 3.1.9 и выше платформа у меня 8.3.14(но думаю можно от 8.3.10, но не тестировал). Также предполагаю, что подойдет и для УП(основа это присутствие справочников Организации, ПодразделенияОрганизации, Пользователи и еще один общий модуль(опишу отдельно)).
Первым делом добавляем расширение рис.1 (1), снимаем безопасный режим (3), и перезагружаем.
Заполняем справочник типов документов (Нумератор типы документов)Рис.2.
Создаём сам нумератор(Нумератор нумераторы)(наименование, периодичность, формат номера, для каких типов документов применяется, независимость) Рис.3,4.
В работе учавствуют 3 регистра:
-Нумератор настройки нумерации (заполняется при создании нумератора);
-Индексы объектов нумерации заполняются по необходимости(логика очевидна);
-Нумератор нумерация необходимо заполнить первую запись(с начальным номером) Рис.5, в дальнейшем здесь осуществляется коррекция последнего номера.
На этапе базовых настроек этого достаточно. Более широкий функционал(деление по подразделениям, ответственным) может работать, но пока тестируется.
Новый номер создаётся только у новых объектов с типом "документ", для документов не указанных в нумераторе остаётся типовая нумерация.
т.к. расширение на начальной стадии стоимость ниже.
P.S. по поводу применения расширения для других конфигураций, что бы не изменять типовую я нашёл процедуру в общем модуле, через которую проходят почти все сохранения документов и добавил её в расширение &После. и добавил код:
Если ТекущийОбъект.ЭтоНовый() и СтрНайти(XMLТипЗнч(ТекущийОбъект).ИмяТипа,"DocumentObject.") = 1 Тогда
НомерЧисло = 1;
Нумератор_Нумирация.СформироватьЧисловойНомерДокумента(ТекущийОбъект, НомерЧисло);
ОписанияОшибок = Новый СписокЗначений;
СтруктураПараметров = Нумератор_НумерацияКлиентСервер.ПолучитьПараметрыНумерации(ТекущийОбъект,НомерЧисло);
Нумератор_Нумирация.СформироватьСтроковыйНомерДокумента(СтруктураПараметров, ТекущийОбъект.Номер, ОписанияОшибок);
КонецЕсли;
Если в других конфигурациях этой процедуры нет, то можно найти другую. Конечно было бы правильно добавить "Подписку на события", но в расширениях пока этого не сделать.
ЗЫ Чуть не забыл про права, я добавил роль "Нумератор_ОсновнаяРоль" своим кадровикам и разрешил им все делать с новыми объектами(они у меня супер), но вы корректируйте на своё усмотрение.
Вступайте в нашу телеграмм-группу Инфостарт