Объектный тип ТФ_АТР_МАКРОСА
Тип ТФ_АТР_МАКРОСА представляет атрибуты данных ячейки типа "макрос".
Поля
Тип | Поле | Описание | Значение по умолчанию |
---|---|---|---|
СТРОКА | тип | Тип макроса. Определяется одной из констант ТФ_МАКРО_... | ТФ_МАКРО_НЕТ |
СТРОКА | парам | Строковый параметр макроса, который может использоваться в контексте конкретного макроса определенным образом. | |
СТРОКА | маска | Текстовая маска, используемая для формирования отображаемого текста по вычисленному значению макроса (детали см. ниже). | |
ЛОГИКА | только_стр | Признак вычисления макроса только в случае доступности информации о странице (при предварительном просмотре и печати). Имеет смысл определять этот признак для специальных макросов, реализуемых пользователем, в зависимости от кода обработчика макрос табличной формы. |
Позицию подстановки значения в маску определяет символ #. Непосредственно за ним в фигурных скобках может следовать строка формата, используемого для преобразования значения. Для преобразования чисел, дат и времени используются строковые представления форматов, составленные по правилам модуля FORMAT.
Примеры масок:
- "Страница #" – при подстановке целого 3 получается: "Страница 3"
- "Курс: #{F(;3)} руб." – при подстановке вещественного 27.8542 получается: "Курс: 27.854 руб."
В следующей таблице приведена информация о реализованных макросах:
Константа | Тип значения | Используется разбивка на страницы | Смысл поля парам |
---|---|---|---|
ТФ_МАКРО_НЕТ | - | - | - |
ТФ_МАКРО_СПЕЦ | любой | возможно | передается в обработчик макрос в составе ТФ_ПАРАМ_МАКРОСА |
ТФ_МАКРО_ЗАГОЛОВОК | строка | нет | нет |
ТФ_МАКРО_РАЗДЕЛ | строка | нет | нет |
ТФ_МАКРО_СТРАНИЦА | целое | да | нет |
ТФ_МАКРО_ТЕКДАТА | дата | нет | нет |
ТФ_МАКРО_ТЕКВРЕМЯ | время | нет | нет |
ТФ_МАКРО_КОЛСТРАНИЦ | целое | да | нет |
ТФ_МАКРО_СУММА | число | возможно | строковый идентификатор столбца, строки или список строковых идентификаторов ячеек (подробности см. ниже) |
ТФ_МАКРО_ПРОИЗВЕДЕНИЕ* | число | возможно | строковый идентификатор столбца, строки или список строковых идентификаторов ячеек (подробности см. ниже) |
ТФ_МАКРО_РАЗНОСТЬ* | число | нет | пара строковых идентификаторов ячеек (подробности см. ниже) |
ТФ_МАКРО_ЧАСТНОЕ* | число | нет | пара строковых идентификаторов ячеек (подробности см. ниже) |
* – доступны начиная с версии 10.2.
Использования поля парам для ТФ_МАКРО_СУММА (и ТФ_МАКРО_ПРОИЗВЕДЕНИЕ):
"" | – | сумма по текущему столбцу на текущей странице (или в разделе, если разбивка недоступна). |
"ст" | – | сумма по столбцу со строковым идентификатором ст на текущей странице (или в разделе, если разбивка недоступна). |
"ст[2]" | – | сумма по столбцу с одномерным строковым идентификатором ст[2] на текущей странице (или в разделе, если разбивка недоступна). |
"%" | – | сумма по текущей строке. |
"%ст" | – | сумма по строке со строковым идентификатором ст. |
"%ст[3]" | – | сумма по строке с одномерным строковым идентификатором ст[3]. |
"(яч;я[2,1];д[2];д[3])" | – | сумма по ячейкам со строковыми идентификаторами (простыми, одномерными или двумерными) яч я[2,1] д[2] д[3]. |
Для ТФ_МАКРО_РАЗНОСТЬ и ТФ_МАКРО_ЧАСТНОЕ в поле парам задается список из двух ячеек. Например: "(я[2,1];д[2])". Значение из первой ячейки является уменьшаемым (делимым), а из второй – вычитаемым (делителем).
Тип ТФ_АТР_МАКРОСА используется методами типа ТАБ_ФОРМА. Для получения атрибутов макроса для заданной ячейки служит метод ДАННЫЕ_ЯЧЕЙКИ. Для установки атрибутов макроса заданной ячейки служит метод УСТ_ДАННЫЕ_ЯЧЕЙКИ. В этих методах наряду с типом ТФ_АТР_МАКРОСА может использоваться значение типа СТРОКА. При этом, считываться и устанавливаться будет только поле маска атрибутов макроса.
Более подробное описание синтаксиса параметров макроса приведено в статье Использование макросов