Интерфейс file
Это интерфейс создания и заполнения файлов отчет/смет
В нем доступны следующий функции:
- create - функция конструктор, создает и подготавливает файл для приема данных
- addTitle - добавление заголовка в документ MS Word (DOCX)
- addParagraph - функция создания нового параграфа в документе MS Word (DOCX)
- addCenterParagraph - функция создания нового параграфа в документе MS Word (DOCX) с размещением текста посередине и с указанием размера шрифта, и указанием жирный/простой
- addRightParagraph - функция создания нового параграфа в документе MS Word (DOCX) с размещением текста справа и с указанием размера шрифта, и указанием жирный/простой
- addLeftParagraph - функция создания нового параграфа в документе MS Word (DOCX) с размещением текста слева и с указанием размера шрифта, и указанием жирный/простой
- addTextBreak - функция перевода каретки указателя на новую строку в документе MS Word (DOCX)
- addText - функция добавления строки с данным в документ MS Word (DOCX)
- addHeaderRow - функция которая формирует заголовок на странице эксель файла
- addRow - функция которая формирует строку на странице эксель файла
- insertRow - функция которая вставляет строку на указанную позицию на странице эксель файла
- replaceRow - функция которая замещает строку на указанной позицию на странице эксель файла
- deleteRow - функция которая удаляет строку с указанной позиции на странице эксель файла
- autoSizeColumns - функция установки автоматической ширины колонок страницы эксель файла
- getDocument - получение интерфейса текущего документа XWPFDocument (docx) (https://poi.apache.org/apidocs/4.1/org/apache/poi/xwpf/usermodel/XWPFDocument.html), предоставляет полный доступ к инструментарию формирования документа MSWord
- getParagraph - получение интерфейса текущего параграфа XWPFParagraph (https://poi.apache.org/apidocs/4.1/org/apache/poi/xwpf/usermodel/XWPFParagraph.html) документа MSWord
- getWorkbook - получение интерфейса текущего табличного документа Workbook (XSSFWorkbook для xlsx и HSSFWorkbook для xls) (https://poi.apache.org/apidocs/4.1/org/apache/poi/ss/usermodel/Workbook.html), предоставляет полный доступ к инструментарию формирования документа таблицы эксель
- getSheet - получение интерфейса текущей страницы с таблицей (https://poi.apache.org/apidocs/4.1/org/apache/poi/ss/usermodel/Sheet.html) документа таблицы эксель
Генерация документа с использованием шаблона
- templateToPdf - генерация pdf документа из шаблона
Генерация отчета по коллизиям и атрибутам
- collisionsToPdf - генерация pdf по списку коллизий
- attributesToPdf - генерация pdf по списку атрибутов
Примеры использования в плагинах
- file.create(формат создаваемого файла)
Пример использования:
- file.addTitle(Текст) - с базовыми настройками
- file.addTitle(Текст, Размер шрифта, жирный/не жирный) - с указанием размера шрифта, и указанием жирный/простой
Примеры использования:
- addParagraph("Текст") - с базовыми настройками
- addParagraph("Текст", размер отступа, размер шрифта, жирный/не жирный) - с указанием отступа, размера шрифта, и указанием жирный/простой
Примеры использования:
addText("Продолжение текста")
addText("Продолжение текста")
- addCenterParagraph("текст", размер шрифта, жирный/не жирный)
Пример использования:
- addRightParagraph("текст", размер шрифта, жирный/не жирный)
Пример использования:
- addLeftParagraph("текст", размер шрифта, жирный/не жирный)
Пример использования:
- file.addTextBreak()
Пример использования:
- file.addText(“Строка, которая появится в файле”, размер шрифта, жирный/не жирный)
- file.addText(“Строка, которая появится в файле”)
Примеры использования:
- file.addHeaderRow(“Заголовок 1”, “Заголовок 2”,....”Заголовок N”)
Пример использования:
- file.addRow(“Данные 1”, “Данные 2”,....”Данные N”)
Пример использования:
- file.insertRow(индекс, “Данные 1”, “Данные 2”,....”Данные N”)
Пример использования:
- file.replaceRow(индекс, “Данные 1”, “Данные 2”,....”Данные N”)
Пример использования:
- file.deleteRow(индекс)
Пример использования:
- file.autoSizeColumns() - для всех колонок на странице
- file.autoSizeColumns(индекс колонки) - для конкретной колонки на странице
Пример использования:
Общий пример:
file.create("XLS");
file.addHeaderRow("Код", "Название", "Ед. изм.", "Кол. во.", "Колонка 5"..);
def data = params.get("data");
for (int i in 0..data.size()-1) {
def row = data.get(i);
file.addRow(
row.get("code"),
row.get("title"),
row.get("units"),
row.get("quantityAll"), );
}
}
- template.add(“название тега в шаблоне”, переменная из плагина)
- file.templateToPdf(template)
Пример использования:
template.add("project", project)
file.templateToPdf(template)
- file.collisionsToPdf(template, list, params):
- template - необязательный параметр (указывается в том случае, если таблицу коллизий необходимо добавить в конец какого-либо шаблона). Если не указывать, то создается новый пустой файл, в который заносится таблица коллизий
- list - список коллизий. Обязательное поле. Получить данный лист необходимо командой bim.getCollisionsForReport()
- params - необязательный параметр (описание ниже)
Параметры при генерации отчета по коллизиям:
pageSize - 1, 2, 3 или 4 (соответствует размеру страницы А1, А2, А3, А4)
fontSize - int значение размера шрифта (в pt)
Пример использования:
param.add("pageSize", 3)
param.add("fontSize", 12)
По умолчанию параметры принимают следующие значения:
pageSize - 4
fontSize - 8
Пример использования:
def param = [:]
param.add("pageSize", 3)
param.add("fontSize", 12)
file.collisionsToPdf(template, collisionList, param)
file.collisionsToPdf(collisionList)
Наименование используемых строк row.get:
unit | Единица измерения |
quantity | Количество |