Модуль печати документов. В модуле существует один ресурс шаблон. В ресурс можно добавлять шаблоны из файла или из реестра и присваивать им уникальные название для доступа к ним. Порядок действия для заполнения документов может быть такой:
1. Загружаем нужный шаблон в ресурс из реестра или файла. Можно использовать функции СоздатьДокументИзФайла или СоздатьДокументИзРеестра.
2. Выбираем загруженный шаблон используя функции ВыбратьШаблон или УстановитьШаблон.
3. Печатаем, просматриваем или отправляем документ в редактор.
Формат вызова:
ВыбратьШаблон(Идентификатор: строка): Шаблон; /*только чтение*/
описание:
Выбирает в ресурсе по идентификатору нужный шаблон для заполнения. При этом функция ЯчейкаПоИмени будет искать ячейку именно в этом шаблоне. В отличии от функции УстановитьШаблон не просто выбирает шаблон, а делает копию и устанавливает ее активной. Поэтому функцию можно использовать много раз, и исходный шаблон будет всегда не заполненый.
результат:
Возвращает указатель на выбранный шаблон
Формат вызова:
ДокументОтправленНаПечать: целое;
описание:
Функция будет иметь значение "ДА" (1) в том случае если документ был отправлен на печать, просто функцией печати или из предварительного просмотра.
Формат вызова:
ЗаменитьЯчейку(КакуюЯчейку, НаКакуюЗаменить: Ячейка): Ячейка; /*только чтение*/
описание:
Заменяет ячейку на другую. При этом ячейки не просто переставляются, а делается копия ячейки и потом заменяется.
КопейкиВТекстовойДенежнойЗаписи
Формат вызова:
КопейкиВТекстовойДенежнойЗаписи: целое;
описание:
Переменная, которая будет указывать будут ли при печати выводится два ноля в тех случаях когда копейки равны нулю. Т. е. "Сто двадцать три рубля 00 копеек" или просто "Сто двадцать три".
КопейкиВЦифровойДенежнойЗаписи
Формат вызова:
КопейкиВЦифровойДенежнойЗаписи: целое;
описание:
Переменная, которая будет указывать будут ли при печати выводится два ноля в тех случаях когда копейки равны нулю. Т. е. 123,00 или просто 123.
Формат вызова:
КорневаяЯчейка: Ячейка; /*только чтение*/
описание:
Корневая ячейка активного шаблона.
Формат вызова:
ОчиститьРесурс; /*только чтение*/
описание:
Очищает ресурс шаблонов.
Формат вызова:
ПечатьДокумента(Заговок: строка); /*только чтение*/
описание:
Отправляет выбранный в ресурсе шаблон на печать. Функция вызывается после заполнения шаблона.
Формат вызова:
ПросмотрДокумента(Заговок: строка); /*только чтение*/
описание:
Делает предварительный просмотр для заполненного активного шаблона.
Формат вызова:
РедактироватьДокумент(Заговок: строка); /*только чтение*/
описание:
Отправлен заполненный активный шаблон в редактор отчетов, при необходимости его редактирования.
Формат вызова:
СоздатьДокументИзРеестра(Идентификатор, Узел, Значение: строка); /*только чтение*/
описание:
Загружает шаблон из реестра конфигурации системы в ресурс шаблонов, и присваивает ему название по идентификатору.
Формат вызова:
СоздатьДокументИзФайла(Идентификатор, ИмяФайла: строка); /*только чтение*/
описание:
Загружает шаблон из файла в ресурс шаблонов, и присваивает ему название по идентификатору.
Формат вызова:
СоздатьПакет(ИмяФайла: строка); /*только чтение*/
описание:
Создает файл, где одновременно будет храниться несколько шаблонов. Формируется из ресурсов шаблона модуля.
Формат вызова:
СоздатьШаблон: Шаблон; /*только чтение*/
описание:
Создает новый шаблон. После использование шаблона нужно вызвать функцию удаления объекта УдалитьОбъект
Формат вызова:
СписокРесурсов: строка; /*только чтение*/
описание:
Возвращает список названий шаблонов в ресурсе, разделенных символами возврата каретки.
Формат вызова:
СписокУстановленныхШрифтов(Список: Список); /*только чтение*/
Формат вызова:
УстановитьШаблон(Идентификатор: строка): Шаблон; /*только чтение*/
описание:
Выбирает в ресурсе по идентификатору нужный шаблон для заполнения. При этом функция ЯчейкаПоИмени будет искать ячейку именно в этом шаблоне. При повторном выборе шаблона с помощью этой функции выбирается тотже шаблон и он может быть уже заполнен. Избежать этого можно используя функцию ВыбратьШаблон.
результат:
Возвращает указатель на установленный шаблон.
Формат вызова:
ЧислоКопий: целое;
описание:
Число копий которое будет использоваться, когда документ пошлется на печать. Также это значение появится в окне предварительного просмотра над видом документа.
Формат вызова:
ЯчейкаПоИмени(Имя: строка): Ячейка; /*только чтение*/
описание:
Ищеет ячейку по имени в активном шаблоне. Если ячейка не найдена, то возникает ошибка.
Формат вызова:
СоздатьЭкселФайл(Формат: строка): ЭкселФайл; /*только чтение*/
описание:
Создает объект ЭкселФайл, который может быть заполнен из реального файла Excel (xls и xlsx для Windows и xslx для Linux) либо сформирован программно и сохранён.
пример использования:
включить "Утилиты", "Печать документов";
функция ТестExcel(ИмяФайла, ТипФайла: строка);
переменные
Excel: ЭкселФайл;
Sheet: ЭкселДиапазон;
начало
Excel := СоздатьЭкселФайл(ТипФайла);
Sheet := Excel.Диапазон(0);
Sheet.Ячейки(1,1).Текст := "10";
Sheet.Ячейки(1,2).Текст := "20";
Sheet.Ячейки(1,3).Текст := "=B2+C2";
Sheet.Ячейки(1,4).Текст := "=B2+C2";
Sheet.Ячейки(1,4).СтильГраницы(Граница_Левая) := Бордюр_Двойной;
Sheet.Ячейки(1,4).СтильГраницы(Граница_Правая) := Бордюр_Тройной;
Sheet.Ячейки(1,4).СтильГраницы(Граница_Верхняя) := Бордюр_Другой;
Sheet.Ячейки(1,4).СтильГраницы(Граница_Нижняя) := Бордюр_Штрих;
Excel.СохранитьВФайл(ИмяФайла + "." + ТипФайла);
Excel.УдалитьОбъект;
конец;
начало
ТестExcel("c:\Tmp\test1", "xls");
ТестExcel("c:\Tmp\test2", "xlsx");
Сообщение("Завершено!");
конец
Формат вызова:
ЧислоСтраницPDFДокумента(Буфер: Буфер): целое;
Формат вызова:
КэшированиеШаблоновНаДиск(ДляВсейСлужбы: целое): целое;
Формат вызова:
СоздатьПДФ: ПДФ; /*только чтение*/
описание:
Создаёт объект ПДФ. Функция и связанные с ней находится в разработке.
Формат вызова:
МаксЧислоЯчеекДляАвтоВысоты: целое;
Формат вызова:
ТекущаяЯчейка: Ячейка; /*только чтение*/
Формат вызова:
ТекущийШаблон: Шаблон; /*только чтение*/
Формат вызова:
ЗаменитьЯчейкуИзБуфераОбмена(Ячейка: Ячейка); /*только чтение*/
Формат вызова:
КопироватьЯчейкуВБуферОбмена(Ячейка: Ячейка); /*только чтение*/
функции объекта:
ШаблонФормат вызова:
ОкноСекцииШаблона.Шаблон: Шаблон; /*только чтение*/
описание:
Объект, представляющий из себя печатную форму, имеющую иерархическую структуру ячеек.
Всегда имеется главная корневая ячейка, которая рекурсивно делится по горизонтали или вертикали. При этом можно сделать документ практически любой сложности. Для создания используется функция СоздатьШаблон.
функции объекта:
HTMLФормат вызова:
Шаблон.HTML: строка; /*только чтение*/
Формат вызова:
Шаблон.XML: строка;
Формат вызова:
Шаблон.ВернийКолонтитул: строка;
Формат вызова:
Шаблон.ВывестиВФайлы(Папка, Формат: строка); /*только чтение*/
Формат вызова:
Шаблон.Заблокировать; /*только чтение*/
описание:
Блокирует пересчет формул в шаблоне. Функция необходима при заполнении документов, имеющих много сложных формул во избежании постоянного пересчета при изменении значений ячеек. В конце обязательно нужно вызвать функцию Разблокировать.
Формат вызова:
Шаблон.Заголовок: строка;
описание:
Заголовок шаблона, текст, появляющийся в окне предварительного просмотра или окне состояния принтера при печати.
Формат вызова:
Шаблон.ЗагрузитьИзБуфера(Буфер: Буфер); /*только чтение*/
описание:
Загрузка данных из буфера (временные данные, либо путь к файлу)
пример использования:
Таблица.ЗагрузитьИзБуфера(Буфер);
Формат вызова:
Шаблон.ЗагрузитьИзКонфигурации(Название: строка); /*только чтение*/
описание:
Загружает исходный образец шаблона из определенного узла реестра конфигурации, а именно "Конфигурация\Шаблоны".
Формат вызова:
Шаблон.ЗагрузитьИзРеестра(Узел, Значение: строка); /*только чтение*/
описание:
Загружает образец шаблона из реестра.
Формат вызова:
Шаблон.ЗагрузитьИзФайла(ИмяФайла, [Формат]: строка; [Размещение]: целое); /*только чтение*/
описание:
Загружает образец из файла.
Формат вызова:
Шаблон.КорневаяЯчейка: Ячейка; /*только чтение*/
описание:
Главная ячейка шаблона.
Формат вызова:
Шаблон.МасштабПечати: целое;
Формат вызова:
Шаблон.НаВыборИзСписка: целое;
Формат вызова:
Шаблон.НаЗапросПечати: целое;
Формат вызова:
Шаблон.НайтиЯчейку(Имя ...: строка): Ячейка; /*только чтение*/
описание:
Также как и ЯчейкаПоИмени ищет ячейку по имени, но только в случае если такой ячейки нет, ошибка не возникает, а просто возвращается "0".
Формат вызова:
Шаблон.НаРедактирование: целое;
Формат вызова:
Шаблон.НаСписокЗначений: целое;
Формат вызова:
Шаблон.НаУдалениеШаблона: целое;
Формат вызова:
Шаблон.НаУдалениеЯчейки: целое;
Формат вызова:
Шаблон.НаУстановкуЗначения: целое;
Формат вызова:
Шаблон.НаУстановкуПараметровСтраницы: целое;
Формат вызова:
Шаблон.НаУстановкуРазмера: целое;
Формат вызова:
Шаблон.НижнийКолонтитул: строка;
Формат вызова:
Шаблон.Ориентация: целое;
описание:
Книжная или альбомная ориентация документа.
Формат вызова:
Шаблон.Очистить; /*только чтение*/
Формат вызова:
Шаблон.ПереносПоСтраницам: целое;
Формат вызова:
Шаблон.Печать(Заговок: строка); /*только чтение*/
описание:
Печать шаблона. Работает аналогично функции ПечатьДокумента.
Формат вызова:
Шаблон.ПодогнатьВысотуЯчеек; /*только чтение*/
Формат вызова:
Шаблон.Принтер: строка;
Формат вызова:
Шаблон.ПроверитьАвтоРазмеры; /*только чтение*/
Формат вызова:
Шаблон.ПрограммаНаПечать: целое;
описание:
Код программы, которую можно будет выполнить после того как шаблон будет отправлен на печать.
Формат вызова:
Шаблон.Просмотр(Заговок: строка); /*только чтение*/
описание:
Делает предварительный просмотр шаблона. Аналогична функции ПросмотрДокумента.
Формат вызова:
Шаблон.ПутьКонфигурации: строка;
описание:
Значение, сохраняющееся в шаблоне при вызове функции Шаблон.ЗагрузитьИзКонфигурации
Формат вызова:
Шаблон.Разблокировать; /*только чтение*/
описание:
Снимает блокировку пересчета формул. Функцию нужно использовать только в паре с функцией Заблокировать.
Формат вызова:
Шаблон.Редактирование(Заговок: строка); /*только чтение*/
описание:
Отправляет заполненный шаблон на печать. Аналогична функции РедактироватьДокумент.
Формат вызова:
Шаблон.СделатьРазметку; /*только чтение*/
Формат вызова:
Шаблон.СохранитьВБуфер(Буфер: Буфер); /*только чтение*/
описание:
Сохранение данных в буфер
Если прописан путь к файлу, то данные пишутся в этот файл, иначе просто сохраняются в памяти.
Формат вызова:
Шаблон.СохранитьВФайл(ИмяФайла, [Формат]: строка; [Размещение]: целое; [ПараметрыШтампа]: СтруктурныйСписок); /*только чтение*/
описание:
Сохраняет шаблон в файле.
Формат вызова:
Шаблон.Страница: ПараметрыСтраницы; /*только чтение*/
Формат вызова:
Шаблон.ТекущаяЯчейка: Ячейка;
описание:
Обращение к текущей ячейке
Формат вызова:
Шаблон.УдалитьОбъект; /*только чтение*/
описание:
Удаляет шаблон.
Формат вызова:
Шаблон.ЧислоКопий: целое;
Формат вызова:
Шаблон.ЧислоСтраниц: целое; /*только чтение*/
Формат вызова:
Шаблон.ЯчейкаПечати: строка;
Формат вызова:
Шаблон.ЯчейкаПоИмени(Имя: строка): Ячейка; /*только чтение*/
описание:
Ищеет ячейку по имени. Если такой ячейки нет, то возникает ошибка.
Формат вызова:
Шаблон.Вызыватель: объект;
Формат вызова:
Шаблон.КлючОбъекта: объект;
Формат вызова:
Шаблон.ОбщееЧислоЯчеек(Конечные: целое): целое; /*только чтение*/
Формат вызова:
Шаблон.Представление: целое;
Формат вызова:
Шаблон.ТипВызывателя: целое;
Формат вызова:
Шаблон.ТипОбъекта: целое;
Формат вызова:
Шаблон.ЯчейкаПоМаршруту(Маршрут: строка; ТочноеРасположение: целое): Ячейка; /*только чтение*/
Формат вызова:
Шаблон.ВыгрузитьИзПамяти; /*только чтение*/
описание:
Элементарная часть шаблона. Может иметь вложенные ячейки, которые образуются в следствии деления по горизонтали или по вертикали. Соответственно ячейка всегда может обратиться к соседним ячейкам, дочерним и к родительской.
функции объекта:
АгрегатностьФормат вызова:
Ячейка.Агрегатность: целое;
описание:
Значение ячейки может еще получаться как агрегатное по дочерним ячейкам. Возможны следующие варианты.
Агрегатность_нет - (по умолчанию)
Агрегатность_сумма
Агрегатность_минимум
Агрегатность_максимум
Агрегатность_среднее
Агрегатность_количество
Формат вызова:
Ячейка.Атрибуты: целое;
описание:
Различные признаки поведения и отображения ячейки.
Атр_ЛеваяГраница - имеет левую границу
Атр_ПраваяГраница - имеет правую границу
Атр_ВерхняяГраница - имеет верхнюю границу
Атр_НижняяГраница - имеет нижнюю границу
Атр_КартинкаВРазмере - если в ячейке есть картинка, то она растягивается (сжимается под размер ячейки)
Атр_АвтоВысота - высота ячейки зависит от текста, который в ней отображается
Атр_СкрытыйТекст - текст ячейки будет не виден
Атр_ВертикальныйТекст - текст ячейки будет иметь вертикальную ориентацию
Атр_КонецСтраницы - все ячейки, расположенные ниже будут печаться на новой странице
Атр_ПечатьЦеликом - ячейки будет стараться напечатать все свои дочерние ячейки на одной странице
Атр_НеПечатать - ячейка не будет выводиться на печать
Атр_ПоддержкаШрифтов - ячейка при обработке формата будет учитывать шрифты ячеек, на которые ссылается
Атр_ОднаСтрока - при редактировании ячейки в редакторе она будет принимать только одну строку, очень удобно при настройке шаблонов, когда отчет делается по значениям ячеек
Формат вызова:
Ячейка.ВертикальноеВыравнивание: целое;
описание:
Выравнивание текста по вертикали (для вертикального текста по горизонтали). Возможные значения:
Выравнивание_Верх (по умолчанию)
Выравнивание_Центр
Выравнивание_Низ
Формат вызова:
Ячейка.ВерхнийКрай: целое; /*только чтение*/
Формат вызова:
Ячейка.ВключитьАтрибут(Атрибут: целое); /*только чтение*/
описание:
Включает указанную через "+" комбинацию атрибутов.
Формат вызова:
Ячейка.Вложенность(ОтносительноЯчейки: Ячейка): строка; /*только чтение*/
описание:
Строка с указанием уровней вложенности относительно указанной ячейки, разделенных обратным слэшем.
Формат вызова:
Ячейка.ВыполнитьДляВсех(АдресФункции, Информация: целое); /*только чтение*/
описание:
Выполняет передаваемую функцию для всех дочерних ячеек.
Функция должна иметь следующий формат:
функция ВыполнитьДляЯчейки(Ячейка: Ячейка; Информация: целое);
Формат вызова:
Ячейка.Высота: целое;
описание:
Высота ячейки.
Формат вызова:
Ячейка.ГоризонтальноеВыравнивание: целое;
описание:
Выравнивание текста по горизонтали (для вертикального текста по вертикали). Возможные значения:
Выравнивание_Лево (по умолчанию)
Выравнивание_Центр
Выравнивание_Право
Формат вызова:
Ячейка.Данные: объект;
описание:
Дополнительная ссылка на какой-либо объект. Можно использовать для различных целей.
Формат вызова:
Ячейка.ДобавитьЗначениеВСписок(Текст: строка; Значение: объект): целое; /*только чтение*/
Формат вызова:
Ячейка.ДобавитьЯчейку(Смещение: целое): Ячейка; /*только чтение*/
описание:
Добавляет новую дочернюю ячейку по указанному смещению.
Формат вызова:
Ячейка.Заблокировать; /*только чтение*/
описание:
Блокировка редактирования ячеейки
Формат вызова:
Ячейка.Заголовок: строка;
Формат вызова:
Ячейка.ЗаполнитьТаблицуПоРаскладке(Данные, Раскладка, Настройка: Отношение; Процесс: Процесс; Параметры, Нумерация, Отступ, НомерЗаписи, ПолныйНомер: целое; Иерархия, ВЕБСсылка: строка); /*только чтение*/
Формат вызова:
Ячейка.ЗначениеИзСписка(Индекс: целое): целое;
Формат вызова:
Ячейка.Идентификатор: строка;
описание:
Имя ячейки, по которой ее можно найти в родительской. Также используется в формуле и формате.
Формат вызова:
Ячейка.Имя: строка;
описание:
Имя ячейки в документе. В пределах документа имя должно быть одинаково.
Формат вызова:
Ячейка.Индекс: целое; /*только чтение*/
описание:
Индекс ячейки в родительской (начинается с ноля).
Формат вызова:
Ячейка.Информация: строка;
описание:
Дополнительное строковое значение для использования в различных целях.
Формат вызова:
Ячейка.ИсключитьАтрибут(Атрибут: целое); /*только чтение*/
описание:
Выключает указанную через "+" комбинацию атрибутов.
Формат вызова:
Ячейка.КакДробное: дробное;
описание:
Значение как дробное.
Формат вызова:
Ячейка.КакСтрока: строка;
описание:
Значение как строка (обычное).
Формат вызова:
Ячейка.КакЦелое: целое;
описание:
Значение как целое.
Формат вызова:
Ячейка.КоличествоВСписке: целое; /*только чтение*/
Формат вызова:
Ячейка.КорневаяЯчейка: Ячейка; /*только чтение*/
описание:
Ссылка на корневую ячейку документа, которому принадлежит это ячейка.
Формат вызова:
Ячейка.Крайняя: целое; /*только чтение*/
Формат вызова:
Ячейка.ЛевыйКрай: целое; /*только чтение*/
Формат вызова:
Ячейка.Маска: строка;
описание:
Маска форматирования дробных чисел (сюда же относится денеженый тип). Маска состоит из трех частей, разделенных точкой с запятой.
- первая часть описывает формат отображение если значение > 0
- вторая часть описывает формат отображения если значение < 0
- третья часть описывает формат отображения если значение = 0
Формат вызова:
Ячейка.НайтиЯчейку(Идентификатор: строка): Ячейка; /*только чтение*/
описание:
Ищет дочернюю ячейку по ее идентификатору, просматривая все уровни разбиений. Если ячейки нет, то ошибка не вызывается а возвращается 0.
Формат вызова:
Ячейка.НижнийКрай: целое; /*только чтение*/
Формат вызова:
Ячейка.НомерСтраницы: целое; /*только чтение*/
Формат вызова:
Ячейка.Ориентация: целое;
описание:
Ориентация, в которой ячейка разбивается на дочерние.
Ориентация_Вертикальная - вертикальное разбиение.
Ориентация_Горизонтальная - горизонтальное разбиение.
Формат вызова:
Ячейка.Параметры(ИмяПараметра: строка): строка;
описание:
Если текст ячейки имеет следующий вид:
Название=Фактические расходы
ИмяФайла=C:\Temp\Report.txt
Значение=101
то эти значения можно получать как параметры:
Ячейка.Параметры("Название") = "Фактические расходы";
Ячейка.Параметры("ИмяФайла") = "C:\Temp\Report.txt";
Ячейка.Параметры("Значение") = 101;
Также можно их и назначать.
Формат вызова:
Ячейка.Повторить: Ячейка; /*только чтение*/
описание:
Создает новую, соседнюю ячейку (она будет следующей) и повторяет в ней все свои атрибуты, за исключением текста. Функция используется для динамического создания записей в таблицах.
Формат вызова:
Ячейка.ПоследняяЯчейка: Ячейка; /*только чтение*/
описание:
Возвращает ссылку на последнюю дочернюю ячейку.
Формат вызова:
Ячейка.ПравыйКрай: целое; /*только чтение*/
Формат вызова:
Ячейка.ПредыдущаяЯчейка(Количество: целое): Ячейка; /*только чтение*/
описание:
Возвращает указатель на предыдущую ячейку, если таковой нет, то возвращает 0.
Формат вызова:
Ячейка.Привязка: целое;
описание:
Дополнительный целый параметр для использования в различных целях.
Формат вызова:
Ячейка.Разблокировать; /*только чтение*/
описание:
Разблокировка редактирования ячеейки
Формат вызова:
Ячейка.РазмерТекста: РазмерТекста; /*только чтение*/
описание:
Получает размер текста ячейки. Следует учесть что размер никогда не будет иметь нулевой величины. Если даже текст ячейки пустой, будет выдаваться размер одного символа "х".
Формат вызова:
Ячейка.Рисунок: Рисунок;
Формат вызова:
Ячейка.РодительскаяЯчейка: Ячейка; /*только чтение*/
описание:
Возвращает указатель на родительскую ячейку, если таковой нет (в корневой ячейке), то возвращает 0.
Формат вызова:
Ячейка.СледующаяЯчейка(Количество: целое): Ячейка; /*только чтение*/
описание:
Возвращает указатель на следующую ячейку, если таковой нет, то возвращает 0.
Формат вызова:
Ячейка.Смещение: целое;
описание:
Основной размерный параметр ячейки: отступ от левого (горизонтальное разбиение) или верхнего (вертикальное разбиение) края родительской ячейки. Все остальные размеры вычисляются на основании этого (Ширина, Высота).
Формат вызова:
Ячейка.Состояние: целое; /*только чтение*/
описание:
Возможные варианты состояния ячейки на редакторе шаблонов
СостояниеЯчейки_Нормальное
СостояниеЯчейки_Текущая
СостояниеЯчейки_Фокус
СостояниеЯчейки_Отмечена
СостояниеЯчейки_Редактор
Формат вызова:
Ячейка.СтильГраницы(Индекс: целое): целое;
описание:
Устанавливает стиль границы. Возможны следующие значения:
Бордюр_Обычный - линия обычной толщины.
Бордюр_Пунктир - пунктирная линия.
Бордюр_Штрих - штриховая линия.
Бордюр_Двойной - две обычных толщины.
Бордюр_Тройной - три обычных толщины.
Формат вызова:
Ячейка.Текст: строка;
описание:
Непосредственное значение ячейки, без формата и формулы.
Формат вызова:
Ячейка.ТекстИзСписка(Индекс: целое): строка;
Формат вызова:
Ячейка.Тип: целое;
описание:
Тип, в котором будет выводится информации ячейки. Значение ячейки получается по ее тексту, через формулу и формат и после этого можно сделать еще преобразования. Возможны следующие варианты:
Тип_Обычный - все что получается после формулы и формата
Тип_Денежный - округляется до второго знака
Тип_ДенежныйПрописью - сумма прописью
Тип_Весовой - округляется до третьего знака
Тип_Целый - округляется до целого
Тип_Дробный - просто представляется как дробное, (нужно для использования маски)
Тип_Дата - пытается преобразовать текст в дату
Тип_ПолнаяДата - тоже, но дата полным текстом
Тип_Время - пытается пребразовать текст во время
Тип_НомерСтраницы - при выводе на печать, значение - есть номер страницы
Тип_ЧислоСтраниц - при выводе на печать, значение - количество страниц в документе
Тип_ДенежныйРасчетный - хранит деньги в копейках
Тип_СчетчикЗаписей - показывает свой индекс в родительской ячейке
Формат вызова:
Ячейка.ТипСвязи: целое;
Формат вызова:
Ячейка.УдалитьЯчейку(УменьшитьРазмер: целое): Ячейка; /*только чтение*/
описание:
Удаляет саму себя из документа.
Формат вызова:
Ячейка.Уровень(ОтносительноЯчейки: Ячейка): целое; /*только чтение*/
описание:
Уровень вложенности относительно указанной ячейки.
Формат вызова:
Ячейка.Формат: строка;
описание:
Формат вывода текста ячейки. Это строка, в которую могут быть вставлены ссылки на другие ячейки. Ссылки на другие ячейки пишутся в скобках типа "<" ">". Возможно обращение к ячейкам по их именам, а также относительная адресация (для более подробного рассмотрения см. формулы ячеек. Непосредственно к ячейке, для которой мы устанавливаем формат можно обращаться используя следующую строку: <*>.
Формат вызова:
Ячейка.Формула: строка;
описание:
При формировании значения ячейки можно использовать формулы. В формулах используются все арифметические операции, при этом "+" и "-" имеют низкий приоритет, а все остальные высокий.
"+" - сложение
"-" - вычитание
"*" - умножение
"/" - деление
"^" - получение остатка от деления, и если второй аргумент 1, то результат - дробный остаток первого агрумента
":" - деление на целое, и если второй аргумент 1, то результат - целая часть второго аргумента
"&" - логическое или побитовое "И"
"|" - логическое или побитовое "ИЛИ"
"<" - если первый аргумент меньше второго то 1, иначе 0
">" - если первый аргумент больше второго то 1, иначе 0
"?" - если первый аргумент равен второму то 1, иначе 0
"#" - если второй аргумент 0, то если первый аргумент меньше ноля - результат положительный первый аргумент, иначе 0
"#" - если второй аргумент 1, то если первый аргумент больше ноля - результат положительный первый аргумент, иначе 0
"#" - если второй аргумент 3, то результатом округленное до целого значение первого аргумента
"#" - если второй аргумент не равен 0, 1, 3 тогда если первый аргумент делится без остатка на второй то результатом будет первый аргумент, иначе 0
Для записи выражений используются обычные скобки "(", ")". Для ссылок на другие ячейки используются их имена. Если нужна ячейка из другого документа, то добавляется префикс - имя корневой ячейки через точку. Также от ячейки по имени можно обращаться к ее дочерним ячейкам по их идентификаторам
Также можно использовать относительную адресацию.
NEXT, NEXT[N]: следующая ячейка.
PREV, PREV[N]: предыдущая ячейка.
CELLS, CELLS[N]: дочерняя ячейка по номеру.
CHILD, CHILD[N]: первая дочерняя ячейка.
PARENT, PARENT[N]: родительская ячейка.
ROOT: корневая ячейка.
FIRST: первая дочерняя ячейка.
LAST: последняя дочерняя ячейка.
N дублирует действие от полученной ячейки, т. е. PARENT[2] = PARENT.PARENT.PARENT. в скобках [] можно также использовать формулу -
От полученной ячейки можно также обратиться к ее дочерним по их идентификаторам через точку.
Если у ячейки, для которой пишем формулу нет имени то в выражении к ней можно обратится как SELF.
Также предусмотрено получение агрегатных значений по дочерним ячейкам.
Типы агрегатирования:
SUM - сумма по дочерним значениям
MIN - минимальное значение
MAX - максимальное значение
AVG - среднее значение
Также после агрегатора можно указать страницу или страницы, по которым вычислять сумму SUM[CurrPage] или SUM[NextPage\PrevPage]
Используются следующие правила записи:
<Тип агрегатирования>!<уникальное или относительное имя родительской ячейки>!вложенность дочерней ячейки, начиная со второго уровня>
Например: Sum!Таблица!2\3\1.
Формат вызова:
Ячейка.Цвет: целое;
описание:
Цвет фона ячейки.
Формат вызова:
Ячейка.ЦветГраницы(Индекс: целое): целое;
описание:
Устанавливает цвет границы.
Формат вызова:
Ячейка.ЧислоЯчеек: целое;
описание:
Количество дочерних ячеек.
Формат вызова:
Ячейка.Шаблон: Шаблон; /*только чтение*/
Формат вызова:
Ячейка.Ширина: целое;
описание:
Ширина ячейки.
Формат вызова:
Ячейка.Шрифт: Шрифт; /*только чтение*/
описание:
Шрифт текста ячейки.
Формат вызова:
Ячейка.Ячейка(Идентификатор: строка): Ячейка; /*только чтение*/
описание:
Ищет дочернюю ячейку по ее идентификатору, просматривая все уровни разбиений. Если ячейки нет, то вызывается ошибка.
Формат вызова:
Ячейка.ЯчейкаПоУровню(Уровень: строка): Ячейка; /*только чтение*/
Формат вызова:
Ячейка.Ячейки(Номера ...: целое): Ячейка; /*только чтение*/
описание:
Возвращает дочернюю ячейку по структуре. Например Ячейка(1, 3) - это вторая ячейка в разбиении и от нее третья ячейка в ее разбиении. Нумерация: от 0 до ЧислоЯчеек - 1.
Формат вызова:
Ячейка.Изменить(Атрибуты: строка); /*только чтение*/
Формат вызова:
Ячейка.Маршрут: строка; /*только чтение*/
Формат вызова:
Ячейка.ТекстВРазмере: строка; /*только чтение*/
Формат вызова:
Ячейка.ИскатьПервую(АдресФункции, Информация: целое): Ячейка; /*только чтение*/
функции объекта:
ЗагрузитьИзБуфераФормат вызова:
Рисунок.ЗагрузитьИзБуфера(Буфер: Буфер); /*только чтение*/
Формат вызова:
Рисунок.ЗагрузитьИзФайла(ИмяФайла: строка; [Размещение]: целое); /*только чтение*/
Формат вызова:
Рисунок.СохранитьВБуфер(Буфер: Буфер); /*только чтение*/
Формат вызова:
Рисунок.СохранитьВФайл(ИмяФайла: строка; [Размещение]: целое); /*только чтение*/
описание:
Объект, задающий параметры вывода страницы на печать.
функции объекта:
ВерхнийОтступФормат вызова:
ПараметрыСтраницы.ВерхнийОтступ: целое;
описание:
Отступ сверху
Формат вызова:
ПараметрыСтраницы.ЛевыйОтступ: целое;
описание:
Поля слева
Формат вызова:
ПараметрыСтраницы.НижнийОтступ: целое;
описание:
Отступ снизу (ограничение печати)
Формат вызова:
ПараметрыСтраницы.Ориентация: целое;
описание:
Книжная или альбомная ориентация страницы.
Формат вызова:
ПараметрыСтраницы.Параметры: целое;
описание:
Прочие параметры
Формат вызова:
ПараметрыСтраницы.ПравыйОтступ: целое;
описание:
Поля справа
описание:
Шрифт текста ячейки.
функции объекта:
ИмяФормат вызова:
Шрифт.Имя: строка;
описание:
Название шрифта.
Формат вызова:
Шрифт.КодЯзыка: целое;
описание:
Индекс кодировки. Для русской кодировки используется код 204.
Формат вызова:
Шрифт.Размер: целое;
описание:
Размер шрифтов.
Формат вызова:
Шрифт.РазмерТекста(Текст: строка): РазмерТекста; /*только чтение*/
описание:
Получает размер текста, переданного в параметры функции. Размер выдается для экранных шрифтов.
Формат вызова:
Шрифт.Стиль: целое;
описание:
Стиль шрифтов, может быть следующая комбинация:
- Шрифт_Жирный
- Шрифт_Наклонный
- Шрифт_Подчеркнутый
- Шрифт_Зачеркнутый
Формат вызова:
Шрифт.Цвет: целое;
описание:
Цвет букв.
Формат вызова:
Шрифт.РазмерТекстаЭкрана(Текст: строка): РазмерТекста; /*только чтение*/
описание:
Объект для получения информации о размере текста.
функции объекта:
ВысотаФормат вызова:
РазмерТекста.Высота: целое; /*только чтение*/
Формат вызова:
РазмерТекста.Ширина: целое; /*только чтение*/
описание:
Объект для работы с файлами формата Microsoft Excel (под Linux только xlsx)
функции объекта:
ДиапазонФормат вызова:
ЭкселФайл.Диапазон(НомерЛиста: целое): ЭкселДиапазон; /*только чтение*/
Формат вызова:
ЭкселФайл.ЗагрузитьИзБуфера(Буфер: Буфер); /*только чтение*/
Формат вызова:
ЭкселФайл.ЗагрузитьИзФайла(ИмяФайла: строка); /*только чтение*/
Формат вызова:
ЭкселФайл.СохранитьВБуфер(Буфер: Буфер); /*только чтение*/
Формат вызова:
ЭкселФайл.СохранитьВФайл(ИмяФайла: строка); /*только чтение*/
Формат вызова:
ЭкселФайл.УдалитьОбъект; /*только чтение*/
Формат вызова:
ЭкселФайл.ЧислоСтраниц: целое; /*только чтение*/
функции объекта:
ЯчейкиФормат вызова:
ЭкселДиапазон.Ячейки(Строка, Колонка: целое): ЭкселЯчейка; /*только чтение*/
функции объекта:
ВертикальноеВыравниваниеФормат вызова:
ЭкселЯчейка.ВертикальноеВыравнивание: целое;
Формат вызова:
ЭкселЯчейка.ВыравниваниеТекста: целое;
Формат вызова:
ЭкселЯчейка.ГоризонтальноеВыравнивание: целое;
Формат вызова:
ЭкселЯчейка.СтильГраницы(Номер: целое): целое;
Формат вызова:
ЭкселЯчейка.Текст: строка;
функции объекта:
АвторФормат вызова:
ПДФ.Автор: строка;
Формат вызова:
ПДФ.ВывестиИзображение(Буфер: Буфер; X, Y, Ширина, Высота: дробное): целое; /*только чтение*/
Формат вызова:
ПДФ.ВывестиТекст(Текст: строка; X, Y: дробное); /*только чтение*/
ВывестиТекстВПрямоугольнуюОбласт
Формат вызова:
ПДФ.ВывестиТекстВПрямоугольнуюОбласт(Текст: строка; X, Y, Ширина, Высота: дробное; [Выравнивание = Выравнивание_Центр]: целое); /*только чтение*/
Формат вызова:
ПДФ.Высота: дробное;
Формат вызова:
ПДФ.ДобавитьСтраницу: целое; /*только чтение*/
Формат вызова:
ПДФ.ЗавершитьЛиниюДоТочки(X, Y: дробное); /*только чтение*/
Формат вызова:
ПДФ.Заголовок: строка;
Формат вызова:
ПДФ.ЛинияДоТочки(X, Y: дробное); /*только чтение*/
Формат вызова:
ПДФ.НачалоЛинии(X, Y: дробное); /*только чтение*/
Формат вызова:
ПДФ.Прямоугольник(X, Y, Ширина, Высота: дробное); /*только чтение*/
Формат вызова:
ПДФ.РассчитатьРазмерТекста(Текст: строка; ШиринаОбласти: дробное; ПереносПоСловам: целое): целое; /*только чтение*/
Формат вызова:
ПДФ.СохранитьВБуфер(Буфер: Буфер): целое; /*только чтение*/
Формат вызова:
ПДФ.УстановитьФорматСтраницы([Формат = Формат_А4], [Ориентация = Ориентация_Книжная]: целое); /*только чтение*/
Формат вызова:
ПДФ.УстановитьЦветЛинии(Цвет: целое); /*только чтение*/
Формат вызова:
ПДФ.УстановитьЦветТекста(Цвет: целое); /*только чтение*/
Формат вызова:
ПДФ.УстановитьШиринуЛинии(Ширина: дробное); /*только чтение*/
Формат вызова:
ПДФ.УстановитьШрифтИРазмер(Буфер: Буфер; Размер: дробное): целое; /*только чтение*/
Формат вызова:
ПДФ.Ширина: дробное;
Формат вызова:
ПДФ.Эллипс(X, Y, Ширина, Высота: дробное); /*только чтение*/
Формат вызова:
ПДФ.ЗаливкаПрямоугольника(X, Y, Ширина, Высота: дробное); /*только чтение*/
Формат вызова:
ПДФ.УстановитьСтильЛинии(Стиль = Линия_Сплошная: целое); /*только чтение*/
Формат вызова:
ПДФ.УстановитьЦветКисти(Цвет: целое); /*только чтение*/