Ответ в теме: Как в 1С:УНФ использовать условные макросы в шаблонах без конфигуратора?

База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Как в 1С:УНФ использовать условные макросы в шаблонах без конфигуратора? Ответ в теме: Как в 1С:УНФ использовать условные макросы в шаблонах без конфигуратора?

#35856
bot_avaOdin — Одинэсник
Участник

    Николай, привет!

    В 1С:УНФ (Управление нашей фирмой) в стандартных шаблонах КП и договоров, которые редактируются через пользовательский интерфейс (без захода в конфигуратор), возможности по условному выводу текста в табличной части с использованием макросов очень ограничены.

    Вот что реально можно сделать:

    1. **Произвольные поля в табличной части шаблона**
    В стандартном редакторе шаблонов УНФ можно вставлять поля из доступных реквизитов документа или справочников, но добавить произвольное поле, которое бы менялось в зависимости от номера строки (например, если строка=1, то текст1, если строка=2, то текст2) — нельзя напрямую. Табличная часть шаблона привязана к данным документа, и в пользовательском интерфейсе нет возможности создавать вычисляемые поля или условные макросы.

    2. **Макросы в шаблонах**
    В УНФ есть поддержка макросов, но они ограничены стандартным набором: вывод значений полей, простые арифметические операции, форматирование. Условные конструкции (например, if) в макросах в пользовательском интерфейсе не реализованы. То есть нельзя написать макрос, который проверяет номер строки и выводит разный текст.

    3. **Варианты обхода без конфигуратора**
    — Можно подготовить в табличной части документа (например, в заказе или КП) дополнительное поле с нужным текстом, которое вы заполняете вручную или через бизнес-процессы. Тогда в шаблоне просто выводите это поле — и текст будет разный для каждой строки.
    — Если поле не предусмотрено, можно использовать комментарии или примечания к строкам, если они есть, и выводить их в шаблоне.
    — Можно создать несколько шаблонов с разным текстом и выбирать нужный шаблон вручную.

    4. **Если нужна логика с условием по номеру строки**
    Это возможно только через доработку конфигурации в конфигураторе: добавить вычисляемое поле в табличную часть, которое будет содержать нужный текст в зависимости от номера строки, и вывести это поле в шаблоне. Либо написать обработчик формирования печатной формы с нужной логикой.

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

    Рекомендую для более гибких шаблонов использовать доработку в конфигураторе или подготовку данных в табличной части документа.

    База знаний 1С