Способы заполнения закладок — различия между версиями

Материал из Формирование документов Word из 1C
Перейти к: навигация, поиск
(Заполнение закладки произвольным алгоритмом)
(Заполнение закладки алгоритмом из библиотеки)
Строка 49: Строка 49:
 
== Заполнение закладки алгоритмом из библиотеки ==
 
== Заполнение закладки алгоритмом из библиотеки ==
  
<span style="color:#ff0000">Информация для технических специалистов (программисты, консультанты, администраторы)</span>
+
Способ заполнения "[[Библиотека_алгоритмов|Алгоритмом из библиотеки]]" - для сложных ситуаций, когда невозможно описать заполнение закладки стандартными способами выбора полей.
  
Способ заполнения "[[Библиотека_алгоритмов| Алгоритмом из библиотеки]]" - для сложных ситуаций, когда невозможно описать заполнение закладки стандартным способом. Контекст алгоритма содержит следующие переменные:
+
Пользователю необходимо указать
 +
* библиотеку алгоритмов;
 +
* имя алгоритма из выбранной библиотеки;
 +
* произвольный дополнительный параметр (''можно не указывать'');
 +
* объект, к которому нужно применить алгоритм.
  
*'''Результат''' - в эту переменную должен быть присвоен результат выполнения алгоритма. Это значение будет подставлено в закладку.  Если значение - '''Неопределено''', то закладка не будет обработана (подстановка значения не производится). Значение по умолчанию - '''Неопределено'''.
+
[[Файл:LibAlgoField.png|извлечение телефона контрагента алгоритмом стандартной библиотеки]]
*'''Объект''' - ссылка на объект информационной базы 1С, на основе которого заполняется шаблон;
 
*'''ПараметрАлгоритма''' - произвольный параметр, обычно строковый, который может быть передан алгоритму;
 
*'''кэш''' - соответствие, доступное алгоритмам в процессе выполнения правила заполнения шаблона (его использование - на усмотрение программиста, чаще всего для кэширования);
 
  
Редактирование алгоритмов доступно только под полными правами.
+
В системе есть "Стандартная библиотека", в рамках которой уже реализовано множество базовых алгоритмов для извлечения
 +
* дополнительных свойств;
 +
* контактной информации;
 +
* банковских реквизитов;
 +
* контактных лиц;
 +
* паспортных данных;
 +
* присоединенных файлов.
 +
 
 +
Также возможно создание своих библиотек алгоритмов (см. раздел [[Библиотека_алгоритмов|Библиотека алгоритмов]])
  
 
== Вставка/удаление блока текста по условию ==
 
== Вставка/удаление блока текста по условию ==

Версия 12:54, 22 ноября 2017

В форме способа заполнения закладки описывается определение значения для конкретной закладки шаблона. Сначала выполняется собственно вычисление значения, после чего к этому значению может быть применено форматирование.

Можно заполнить закладку одним из 5 способов:

  • Значением поля объекта
  • Произвольным алгоритмом
  • Алгоритмом из библиотеки
  • Вставкой/удалением блока текста по условию
  • Выводом таблицы/коллекции

Заполнение закладки значением поля объекта

Заполнение значением поля объекта аналогично настройке полей в стандартных отчетах на СКД. Имеется несколько способов указания поля, рассмотрим их подробнее далее.

Простое поле

Под простым полем понимается выбор некоторого реквизита объекта 1С (или реквизита "через точку", поля табличной части).

SimpleField.png

Чаще всего указывается одно поле. В случае если значение имеет суммовой тип в некоторой валюте (сумма в рублях, например), то 2-м полем может быть выбрана валюта, что позволит корректно вывести сумму прописью в этой валюте (см. о форматировании).

Пользовательское поле

Пользовательские поля в СКД бывают 2 видов - "поле выбор" и "поле выражение". Для "поле выбор" определяется список вариантов значений, выбираемых по условию.

UserField.png

Для "поле выражение" необходимо написать формулу с использованием других полей.

UserField2.png

Статья на Инфостарте по пользовательским полям

Итоговое поле

Итоговое поле представляет собой итог по реквизиту табличной части. Чаще всего применяется для вывода итоговой суммы под таблицей.

TotalField.png

Имеется возможность рассчитать итог не по всей табличной части, а только по некоторым строкам, соответствующим отбору. Это бывает необходимо, когда табличная часть выводится частично - с отбором (см. о выводе таблиц ниже).

Заполнение закладки произвольным алгоритмом

Способ заполнения "Произвольным алгоритмом"- для сложных ситуаций, когда невозможно описать заполнение закладки стандартным способом.

Подробнее о разработке алгоритмов см. в разделе "Разработка алгоритмов"

Заполнение закладки алгоритмом из библиотеки

Способ заполнения "Алгоритмом из библиотеки" - для сложных ситуаций, когда невозможно описать заполнение закладки стандартными способами выбора полей.

Пользователю необходимо указать

  • библиотеку алгоритмов;
  • имя алгоритма из выбранной библиотеки;
  • произвольный дополнительный параметр (можно не указывать);
  • объект, к которому нужно применить алгоритм.

извлечение телефона контрагента алгоритмом стандартной библиотеки

В системе есть "Стандартная библиотека", в рамках которой уже реализовано множество базовых алгоритмов для извлечения

  • дополнительных свойств;
  • контактной информации;
  • банковских реквизитов;
  • контактных лиц;
  • паспортных данных;
  • присоединенных файлов.

Также возможно создание своих библиотек алгоритмов (см. раздел Библиотека алгоритмов)

Вставка/удаление блока текста по условию

Вставка при условии подразумевает, что блок текста, выделенный закладкой в документе, будет вставлен в текст, если выполняется заданное условие. Если условие не выполняется, то содержимое закладки удаляется. Условие задается отборами СКД.

Удаление при условии подразумевает удаление блока текста, выделенного закладкой, из документа, если выполняется заданное условие. Если условие не выполняется, то содержимое закладки остается без изменений. Условие задается также отборами СКД.

Fillbookmark 2.png

Вывод таблицы/коллекции