При организации закупочной деятельности в 1С:Документооборот часто возникает задача, когда одна общая заявка от сотрудника (например, прораба) требует закупки материалов у нескольких разных контрагентов. Рассмотрим, как грамотно выстроить архитектуру бизнес-процессов, чтобы обеспечить прозрачность, контроль согласования и корректное ведение учета.
Для решения поставленной задачи наиболее эффективным подходом является дробление общего процесса на несколько связанных этапов. Не пытайтесь уместить весь цикл закупки от разных поставщиков в один «тяжелый» Комплексный процесс. Вместо этого мы рекомендуем применить иерархическую структуру:
Давайте подробно рассмотрим, как реализовать эту схему на практике.
Прораб создает Внутренний документ типа «Заявка на закупку» и прикладывает файл с перечнем материалов. С помощью механизма Автоподстановки мы определяем ответственного закупщика. После регистрации документ проходит через Комплексный процесс согласования, где руководители утверждают саму необходимость закупки материалов по проекту.
После утверждения общей заявки задача попадает к закупщику. Поскольку в одном счете может быть только один контрагент, нам необходимо «разбить» исходную потребность. На этом этапе закупщик:
Внутренних документов типа «Счет от поставщика» (по одному на каждого контрагента).Связи документов, чтобы жестко привязать каждый новый счет к исходной Заявке на закупку. Это позволит в дальнейшем легко проследить всю цепочку исполнения.Для каждого созданного документа «Счет от поставщика» закупщик запускает отдельный Комплексный процесс. В этом случае каждый счет проходит свой уникальный маршрут согласования с руководителем проекта. Такой подход дает следующие преимущества:
Использование связей между документами — это фундамент 1С:Документооборот. Когда мы связываем счета с общей заявкой как Основание, мы получаем дерево связей. Открыв исходную заявку прораба, вы в любой момент сможете посмотреть, сколько счетов уже создано, кто их согласовал и на какой стадии находится каждый из них.
Для автоматизации создания связей программно можно использовать следующий подход при создании документа:
// Пример создания связи программно
ТипСвязи = Справочники.ТипыСвязей.НайтиПоНаименованию("Основание");
НоваяСвязь = РегистрыСведений.СвязиДокументов.СоздатьМенеджерЗаписи();
НоваяСвязь.Документ = НовыйСчет;
НоваяСвязь.СвязанныйДокумент = ИсходнаяЗаявка;
НоваяСвязь.ТипСвязи = ТипСвязи;
НоваяСвязь.Записать();
Чтобы работа закупщика была комфортной, рекомендуем использовать Дополнительные реквизиты для документа «Заявка». Добавьте реквизит СтатусИсполнения (например, «В работе», «Частично закуплено», «Закрыто»). Это позволит визуализировать степень готовности закупки прямо в списке документов, не заходя в каждый процесс.
Также не забывайте про Рабочие группы. При автоматическом создании счетов на основании заявки настраивайте права доступа так, чтобы закупщик имел доступ ко всему пулу документов, а прораб — только к своим заявкам. Это обеспечит необходимый уровень безопасности данных внутри системы.
Следуя этой методике, вы сможете создать гибкую и масштабируемую систему закупок, которая выдержит любую нагрузку и обеспечит полный контроль над расходованием средств по строительным проектам.