Библиотека алгоритмов — различия между версиями

Материал из Формирование документов Word из 1C
Перейти к: навигация, поиск
Строка 1: Строка 1:
Библиотека алгоритмов представляет собой список алгоритмов - блоков программного кода на встроенном языке 1С. К алгоритмам можно обращаться из [[Правила_заполнения|правил заполнения]] шаблонов. Алгоритмы используются в ситуациях, когда невозможно извлечь необходимые для заполнения шаблона данные  стандартными средствами (через укаказние поля объекта).
+
Библиотека алгоритмов представляет собой список алгоритмов - блоков программного кода на встроенном языке 1С. К алгоритмам можно обращаться из [[Правила_заполнения_шаблонов|правил заполнения шаблонов]]. Алгоритмы используются в ситуациях, когда невозможно извлечь необходимые для заполнения шаблона данные  стандартными средствами (через укаказние поля объекта).
  
 
Каждый алгоритм библиотеки имеет имя, и описывается программным кодом на встроенном языке 1С.
 
Каждый алгоритм библиотеки имеет имя, и описывается программным кодом на встроенном языке 1С.
Строка 13: Строка 13:
 
Использование библиотек алгоритмов
 
Использование библиотек алгоритмов
 
Библиотеки алгоритмов можно сравнить с общими модулями в структуре конфигурации 1С, а отдельные алгоритмы - с функциями. Использование библиотек алгоритмов позволяет  
 
Библиотеки алгоритмов можно сравнить с общими модулями в структуре конфигурации 1С, а отдельные алгоритмы - с функциями. Использование библиотек алгоритмов позволяет  
* упростить описание [[Правила_заполнения|правил заполнения]] шаблонов (при описании способа заполнения закладки не нужно будет каждый раз писать программный код алгоритма получения данных - достаточно указать библиотеку и алгоритм);
+
* упростить описание [[Правила_заполнения_шаблонов|правил заполнения шаблонов]] (при описании способа заполнения закладки не нужно будет каждый раз писать программный код алгоритма получения данных - достаточно указать библиотеку и алгоритм);
 
* сделать программный код подготовки данных для заполнения шаблонов более модульным (возможен вызов одного алгоритма из другого как функции).
 
* сделать программный код подготовки данных для заполнения шаблонов более модульным (возможен вызов одного алгоритма из другого как функции).
  
Строка 22: Строка 22:
 
* '''ПараметрАлгоритма''' - произвольный параметр, обычно строковый, который может быть передан алгоритму;
 
* '''ПараметрАлгоритма''' - произвольный параметр, обычно строковый, который может быть передан алгоритму;
 
* '''кэш''' - соответствие, доступное алгоритмам в процессе выполнения правила заполнения шаблона (его использование - на усмотрение программиста, чаще всего для кэширования);
 
* '''кэш''' - соответствие, доступное алгоритмам в процессе выполнения правила заполнения шаблона (его использование - на усмотрение программиста, чаще всего для кэширования);
* '''текВалюта''' - данную переменную желательно устанавливать в случаях, когда алгоритм возвращает суммовые данные (в рублях или в валюте). Это позволит корректно выводить эту сумму прописью (см. о форматировании в разделе о [[Правила_заполнения|правилах заполнения]]).
+
* '''текВалюта''' - данную переменную желательно устанавливать в случаях, когда алгоритм возвращает суммовые данные (в рублях или в валюте). Это позволит корректно выводить эту сумму прописью (см. о форматировании в разделе о [[Правила_заполнения_шаблонов|правилах заполнения]]).
  
 
Алгоритм библиотеки может быть вызван из другого алгоритма путем следующей строки кода:
 
Алгоритм библиотеки может быть вызван из другого алгоритма путем следующей строки кода:

Версия 07:23, 15 ноября 2017

Библиотека алгоритмов представляет собой список алгоритмов - блоков программного кода на встроенном языке 1С. К алгоритмам можно обращаться из правил заполнения шаблонов. Алгоритмы используются в ситуациях, когда невозможно извлечь необходимые для заполнения шаблона данные стандартными средствами (через укаказние поля объекта).

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

Библиотека алгоритмов

На закладке "Алгоритмы" в верхней части формы - список алгоритмов, а ниже - программный код выбранного алгоритма.

Редактирование алгоритмов доступно только под полными правами.

На закладке "Описание" - текстовое описание библиотеки алгоритмов.

Использование библиотек алгоритмов Библиотеки алгоритмов можно сравнить с общими модулями в структуре конфигурации 1С, а отдельные алгоритмы - с функциями. Использование библиотек алгоритмов позволяет

  • упростить описание правил заполнения шаблонов (при описании способа заполнения закладки не нужно будет каждый раз писать программный код алгоритма получения данных - достаточно указать библиотеку и алгоритм);
  • сделать программный код подготовки данных для заполнения шаблонов более модульным (возможен вызов одного алгоритма из другого как функции).

Алгоритмы выполняются на сервере. Контекст алгоритма библиотеки содержит следующие переменные:

  • Результат - в эту переменную должен быть присвоен результат выполнения алгоритма;
  • Объект - ссылка на объект информационной базы 1С, на основе которого заполняется шаблон;
  • ПараметрАлгоритма - произвольный параметр, обычно строковый, который может быть передан алгоритму;
  • кэш - соответствие, доступное алгоритмам в процессе выполнения правила заполнения шаблона (его использование - на усмотрение программиста, чаще всего для кэширования);
  • текВалюта - данную переменную желательно устанавливать в случаях, когда алгоритм возвращает суммовые данные (в рублях или в валюте). Это позволит корректно выводить эту сумму прописью (см. о форматировании в разделе о правилах заполнения).

Алгоритм библиотеки может быть вызван из другого алгоритма путем следующей строки кода:

РезультатВыполненияАлгоритма = ПолучитьРезультатВыполненияАлгоритмаБиблиотеки(Библиотека, ИмяАлгоритма, ПараметрАлгоритма, Объект)

где

  • Библиотека - имя библиотеки алгоритмов;
  • ИмяАлгоритма - имя алгоритма внутри указанной библиотеки;
  • ПараметрАлгоритма - произвольный параметр, передаваемый алгоритму (параметр передается по значению);
  • Объект - обычно в данный параметр передается ссылка на объект 1С, на основе которого заполняется шаблон (если объект не нужен, то можно, например, передать Неопределено).