0

Функция ФиксШаблон

Функция формирует строку по заданному фиксированному шаблону.

Синтаксис

Функция ФиксШаблон() имеет следующий синтаксис:

строка ФиксШаблон(Шаблон)

А также альтернативный англоязычный синтаксис:

string FixTemplate(Template)

Параметры

Описание параметров функции ФиксШаблон()

Имя параметра Тип Описание
Шаблон* Строка Строка, содержащая встроенные выражения
* — обязательный параметр

Возвращаемое значение

Строка

Внимание!
Если в шаблоне строки нет ни одного встроенного выражения, то функция вернет пустую строку!!!

Описание

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

Основное назначение данной функции — формирование печатных форм на базе текстовых документов, и вот почему: в отличие от функции Шаблон() количество символов, отведенное под значение встроенного выражения фиксировано и определяется длиной строки [Переменная], включая квадратные скобки. Значения, превышающие эту длину, усекаются, а недостающие символы заполняются пробелами.

Товар = "Сковородка Tefal";
Кол = 2;
Цена = 1250;

//под поле Товар выделим 20 символов, под остальные - 10
Сообщить(ФиксШаблон("[Товар             ][Кол     ]х[Цена    ]=[Кол*Цена]"));
//результат
//  Сковородка Tefal             2х      1250=      2500

Также встроенные выражения поддерживают форматирование значений. Для этого в конце выражения после символа # (решетка) следует разместить форматную строку. В этом случае результат встроенного выражения будет дополнительно отформатирован, аналогично вызову функции Формат().

Товар = "Сковородка Tefal";
Кол = 2;
Цена = 1250.25;
                                                  
Сообщить("+-------------------+------------+------------+----------------+");
Сообщить("|Наименование       |Количество  |Цена        |Сумма           |");
Сообщить("+-------------------+------------+------------+----------------+");   

Сообщить(ФиксШаблон("|[Товар            ]|[Кол #Ч10.3]|[Цена#Ч10.2]|[Кол*Цена#Ч10.2]|")); 

Сообщить("+-------------------+------------+------------+----------------+");

//результат
//  +-------------------+------------+------------+----------------+
//  |Наименование       |Количество  |Цена        |Сумма           |
//  +-------------------+------------+------------+----------------+
//  |Сковородка Tefal   |       2.000|     1250.25|         2500.50|
//  +-------------------+------------+------------+----------------+

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *