Wiki source code of 05_file

Version 33.1 by Bimit Administrator on 04.03.2026, 10:23

Show last authors
1 Это интерфейс создания и заполнения файлов отчет/смет
2 В нем доступны следующий функции:
3
4 * [[create>>path:#_Toc1]] - функция конструктор, создает и подготавливает файл для приема данных
5 * [[setStyle>>path:#_Toc33]] - применение указанного стиля к тексту указанной ячейки Excel файла при работе с отчетом
6 * [[addTitle>>path:#_Toc2]] - добавление заголовка в документ MS Word (DOCX)
7 * [[addParagraph>>path:#_Toc3]] - функция создания нового параграфа в документе MS Word (DOCX)
8 * [[addCenterParagraph>>path:#_Toc4]] - функция создания нового параграфа в документе MS Word (DOCX) с размещением текста посередине и с указанием размера шрифта, и указанием жирный/простой
9 * [[addRightParagraph>>path:#_Toc5]] - функция создания нового параграфа в документе MS Word (DOCX) с размещением текста справа и с указанием размера шрифта, и указанием жирный/простой
10 * [[addLeftParagraph>>path:#_Toc6]] - функция создания нового параграфа в документе MS Word (DOCX) с размещением текста слева и с указанием размера шрифта, и указанием жирный/простой
11 * [[addTextBreak>>path:#_Toc7]] - функция перевода каретки указателя на новую строку в документе MS Word (DOCX)
12 * [[addText>>path:#_Toc8]] - функция добавления строки с данным в документ MS Word (DOCX)
13 * (% style="color:#000000; font-family:Arial,sans-serif; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; text-decoration:none; white-space:pre-wrap" %)[[createStyle>>path:#_Toc28]] - cоздание нового стиля для форматирования текста и формата ячеек Excel при работе с отчетом
14 * [[setSizeColumns>>path:#_Toc34]] - устанавливает ширину и высоту для ячеек заданной колонки
15 * [[setCenterAlignment>>path:#_Toc35]] - устанавливает выравнивание по центру для всех ячеек заданной колонки
16 * [[setBorder>>path:#_Toc36]] - устанавливает границы для указанного диапазона ячеек
17 * [[addHeaderRow>>path:#_Toc9]] - функция которая формирует заголовок на странице Excel файла
18 * [[addRow>>path:#_Toc10]] - функция которая формирует строку на странице эксель файла
19 * [[insertRow>>path:#_Toc15]] - функция которая вставляет строку на указанную позицию на странице эксель файла
20 * [[replaceRow>>path:#_Toc16]] - функция которая замещает строку на указанной позицию на странице эксель файла
21 * [[addMatrix>>path:#_Toc37]] - создание таблицы Excel (XLSX, XLS) с данными из List
22 * [[addCellWrap>>path:#_Toc38]] - создание ячейки с переносом текста в указанный столбец и строку текущего листа таблицы Excel (XLSX, XLS) с указанным значением
23 * [[deleteRow>>path:#_Toc17]] - функция которая удаляет строку с указанной позиции на странице эксель файла
24 * [[autoSizeColumns>>path:#_Toc18]] - функция установки автоматической ширины колонок страницы эксель файла
25 * [[getDocument>>path:#_Toc11]] - получение интерфейса текущего документа XWPFDocument (docx) (https:~/~/poi.apache.org/apidocs/4.1/org/apache/poi/xwpf/usermodel/XWPFDocument.html), предоставляет полный доступ к инструментарию формирования документа MSWord
26 * [[getParagraph>>path:#_Toc12]] - получение интерфейса текущего параграфа XWPFParagraph (https:~/~/poi.apache.org/apidocs/4.1/org/apache/poi/xwpf/usermodel/XWPFParagraph.html) документа MSWord
27 * [[getWorkbook>>path:#_Toc13]] - получение интерфейса текущего табличного документа Workbook (XSSFWorkbook для xlsx и HSSFWorkbook для xls) (https:~/~/poi.apache.org/apidocs/4.1/org/apache/poi/ss/usermodel/Workbook.html), предоставляет полный доступ к инструментарию формирования документа таблицы эксель
28 * [[getSheet>>path:#_Toc14]] - получение интерфейса текущей страницы с таблицей (https:~/~/poi.apache.org/apidocs/4.1/org/apache/poi/ss/usermodel/Sheet.html) документа таблицы эксель
29 * [[addAreaBreak>>path:#_Toc30]] - добавление разрыва области PDF документа
30 * [[addImage>>path:#_Toc31]] - добавление изображения в документ Ms Word(DOCX) или PDF, ести тип файла другой, запись идет в поток
31 * [[addDrawing>>path:#_Toc32]] - добавление чертежа в документ MS Word (DOCX) или PDF, метод принимает на вход массив байтов, содержащий чертеж и двумерный массив, содержащий координаты точек чертежа
32 * [[addCell>>path:#_Toc22]] - создание ячейки в указанный столбец
33 * [[replaceRow>>path:#_Toc23]] - замена значений указанной строки новыми значениями текущего листа таблицыи Excel (XLSX, XLS)
34 * [[sortASC>>path:#_Toc24]] - сортировка таблицы документа Excel (XLSX, XLS) в порядке возрастания по значению в указанном столбце
35 * [[sortDESC>>path:#_Toc25]] - сортировка таблицы документа Excel (XLSX, XLS) в порядке убывания по значению в указанном столбце
36 * [[saveTempTable>>path:#_Toc26]] - сохранение значений из потока в таблицу Excel (XLSX, XLS), находящейся по указанному пути
37 * [[xlsxToJSON>>path:#_Toc27]] - преобразование содержимого документа Excel (XLSX, XLS)
38 * [[getResource>>path:#_Toc28]] - метод возвращает объект Ms Word (DOCX), PDF, текстовый файл (TXT) или Excel (XLSX, XLS)
39 * [[makeGrandSmetaExelTable>>path:#_Toc29]] - создание документа Excel (XLSX, XLS) для отчета о гранд-смете
40 * [[getImage>>path:#_Toc39]] - получение картинки из общей коллекции
41
42 **Генерация документа с использованием шаблона**
43
44 * [[templateToPdf>>path:#_Toc19]] - генерация pdf документа из шаблона
45
46 **Генерация отчета по коллизиям и атрибутам**
47
48 * [[collisionsToPdf>>path:#_Toc20]] - генерация pdf по списку коллизий
49 * [[attributesToPdf>>path:#_Toc21]] - генерация pdf по списку атрибутов
50
51 [[Примеры использования в плагинах>>2_developers.02_plugin_api.05_file.exampl_file.WebHome]]
52
53
54 (% class="box infomessage" %)
55 (((
56 **{{id name="_Toc1"/}}create** - функция конструктор, создает и подготавливает файл для приема данных, доступны варианта: таблица эксель (XLS, XLSX), текстовый файл(TXT), документ MS Word (DOCX), документ PDF (PDF)
57 )))
58
59 * **file.create(формат создаваемого файла)**
60
61 **Пример использования:**
62
63
64 {{code language="java"}}
65 file.create("XLS"); или file.create("TXT");
66 {{/code}}
67
68
69 (% class="box infomessage" %)
70 (((
71 **{{id name="_Toc33"/}}setStyle** - применение указанного стиля к тексту указанной ячейки Excel файла при работе с отчетом
72 )))
73
74 * **file.setStyle (Sheet sheet, Workbook workbook, int indexRow, int indexColumn, ExcelStyleManager)**
75
76 **Пример использования:**
77
78 {{code language="java"}}{{/code}}
79
80 * **file.setStyle (Sheet sheet, Workbook workbook, int indexRow, int indexColumn, ExcelStyleManager)**
81
82 (% class="box infomessage" %)
83 (((
84 **{{id name="_Toc2"/}}addTitle** - добавление заголовка в документ MS Word (DOCX)
85 )))
86
87 * **file.addTitle(Текст)** - с базовыми настройками
88 * **file.addTitle(Текст, Размер шрифта, жирный/не жирный)** - с указанием размера шрифта, и указанием жирный/простой
89
90 **Примеры использования:**
91
92 {{code language="java"}}
93 addTitle("Заголовок")
94 {{/code}}
95
96 {{code language="java"}}
97 addTitle("Заголовок", 30, true)
98 {{/code}}
99
100 (% class="box infomessage" %)
101 (((
102 **{{id name="_Toc3"/}}addParagraph** - функция создания нового параграфа в документе MS Word (DOCX)
103 )))
104
105 * **file.addParagraph("Текст")** - с базовыми настройками
106 * **file.addParagraph("Текст", размер отступа, размер шрифта, жирный/не жирный)** - с указанием отступа, размера шрифта, и указанием жирный/простой
107
108 **Примеры использования:**
109
110 {{code language="java"}}
111 addParagraph("Текст")
112 addText("Продолжение текста")
113 {{/code}}
114
115 {{code language="java"}}
116 addParagraph("Текст", 20, 10, true)
117 addText("Продолжение текста")
118 {{/code}}
119
120
121 (% class="box infomessage" %)
122 (((
123 **{{id name="_Toc4"/}}addCenterParagraph** - функция создания нового параграфа в документе MS Word (DOCX) с размещением текста посередине и с указанием размера шрифта, и указанием жирный/простой
124 )))
125
126 * **file.addCenterParagraph("текст", размер шрифта, жирный/не жирный)**
127
128 **Пример использования:**
129
130
131 {{code language="java"}}
132 addCenterParagraph("Текст", 10, true)
133 {{/code}}
134
135 (% class="box infomessage" %)
136 (((
137 (% id="cke_bm_264586S" style="display:none" %)** **
138 )))
139
140
141 (% class="box infomessage" %)
142 (((
143 **{{id name="_Toc5"/}}addRightParagraph** - функция создания нового параграфа в документе MS Word (DOCX) с размещением текста справа и с указанием размера шрифта, и указанием жирный/простой
144 )))
145
146 * **file.addRightParagraph("текст", размер шрифта, жирный/не жирный)**
147
148 **Пример использования:**
149
150
151 {{code language="java"}}
152 addRightParagraph("Текст", 10, true)
153 {{/code}}
154
155
156 (% class="box infomessage" %)
157 (((
158 **{{id name="_Toc6"/}}addLeftParagraph** - функция создания нового параграфа в документе MS Word (DOCX) с размещением текста слева и с указанием размера шрифта, и указанием жирный/простой
159 )))
160
161 * **file.addLeftParagraph("текст", размер шрифта, жирный/не жирный)**
162
163 **Пример использования:**
164
165
166 {{code language="java"}}
167 addLeftParagraph("Текст", 10, true)
168 {{/code}}
169
170
171 (% class="box infomessage" %)
172 (((
173 **{{id name="_Toc7"/}}addTextBreak** - функция перевода каретки указателя на новую строку в документе MS Word (DOCX)
174 )))
175
176 * **file.addTextBreak()**
177
178 **Пример использования:**
179
180
181 {{code language="java"}}
182 file.addTextBreak()
183 {{/code}}
184
185
186 (% class="box infomessage" %)
187 (((
188 **{{id name="_Toc8"/}}addText** - функция добавления строки с данным в документ MS Word (DOCX)
189 )))
190
191 * **file.addText(Object objectValue)** - добавление объекта в строковом представлении
192 * **file.addText(“Строка, которая появится в файле”, размер шрифта, жирный/не жирный)**
193 * **file.addText(“Строка, которая появится в файле”)**
194 * **file.addText(long longValue)** - добавление числа типа long в строковом представлении
195 * **file.addText(double doubleValue)** - добавление числа типа double в строковом представлении
196
197 **Примеры использования:**
198
199 {{code language="java"}}{{/code}}
200 {{code language="java"}}file.addText("Строка, которая появится в файле"), 10, false){{/code}}
201
202 {{code language="java"}}
203 file.addText("Строка, которая появится в файле")
204 {{/code}}
205
206 {{code language="java"}}{{/code}}
207
208 {{code language="java"}}{{/code}}
209
210
211 (% class="box infomessage" %)
212 (((
213 **{{id name="_Toc34"/}}setSizeColumns** - устанавливает ширину и высоту для ячеек заданной колонки
214 )))
215
216 * **file.setSizeColumns (int indexColumn, int indexRowStart, int width, int height)** - устанавливает ширину и высоту для ячеек заданной колонки
217 * **file.setSizeColumns (int indexColumn, int width)** - устанавливает ширину для ячеек заданной колонки
218
219 **Пример использования:**
220
221 {{code language="java"}}{{/code}}
222
223 {{code language="java"}}{{/code}}
224
225
226 (% class="box infomessage" %)
227 (((
228 **{{id name="_Toc35"/}}setCenterAlignment** - устанавливает выравнивание по центру для всех ячеек заданной колонки
229 )))
230
231 * **file.setCenterAlignment (int indexColumn)** - устанавливает выравнивание по центру для всех ячеек заданной колонки
232
233 **Пример использования:**
234
235 {{code language="java"}}{{/code}}
236
237
238 (% class="box infomessage" %)
239 (((
240 **{{id name="_Toc36"/}}setBorder** - устанавливает границы для указанного диапазона ячеек
241 )))
242
243 * **file.setBorder (int startColumn, int endColumn, int startRow, int endRow)** - устанавливает границы для указанного диапазона ячеек
244
245 **Пример использования:**
246
247 {{code language="java"}}{{/code}}
248
249
250 (% class="box infomessage" %)
251 (((
252 **{{id name="_Toc9"/}}addHeaderRow **- функция которая формирует заголовок на странице эксель файла
253 )))
254
255 * **file.addHeaderRow(“Заголовок 1”, “Заголовок 2”,....”Заголовок N”)**
256
257 **Пример использования:**
258
259
260 {{code language="java"}}
261 file.addHeaderRow("Код", "Название", "Ед. изм.", "Кол. во.");
262 {{/code}}
263
264
265 (% class="box infomessage" %)
266 (((
267 **{{id name="_Toc10"/}}addRow** - функция которая формирует строку на странице эксель файла
268 )))
269
270 * **file.addRow(Object... inp)**
271 * **file.addRow(Map<Object, Object>... inp)**
272
273 **Пример использования:**
274
275
276 {{code language="java"}}
277 file.addRow( row.get("code"), row.get("title"), row.get("units"), row.get("quantityAll"));
278 {{/code}}
279
280 {{code language="java"}}{{/code}}
281
282
283 (% class="box infomessage" %)
284 (((
285 **{{id name="_Toc15"/}}insertRow** - функция которая вставляет строку на указанную позицию на странице эксель файла
286 )))
287
288 * **file.insertRow(индекс, “Данные 1”, “Данные 2”,....”Данные N”)**
289
290 **Пример использования:**
291
292 {{code language="java"}}
293 file.insertRow(6, "Вставленная строка", 1 , 2.453, new Date(), Calendar.getInstance());
294 {{/code}}
295
296
297 (% class="box infomessage" %)
298 (((
299 **{{id name="_Toc16"/}}replaceRow** - функция которая замещает строку на указанной позицию на странице эксель файла
300 )))
301
302 * **file.replaceRow(индекс, “Данные 1”, “Данные 2”,....”Данные N”)**
303
304 **Пример использования:**
305
306 {{code language="java"}}
307 file.replaceRow(7, "Замещенная строка", 4 , 5.678, new Date(), Calendar.getInstance());
308 {{/code}}
309
310
311 (% class="box infomessage" %)
312 (((
313 **{{id name="_Toc37"/}}addMatrix** - создание таблицы Excel (XLSX, XLS) с данными из List
314 )))
315
316 * **file.addMatrix (List... matrix)** - создание таблицы Excel (XLSX, XLS) с данными из List<List>
317 * **file.addMatrix (Map... matrix)** - создание таблицы Excel (XLSX, XLS) с данными из List<Map>
318
319 **Пример использования:**
320
321 {{code language="java"}}{{/code}}
322
323 {{code language="java"}}{{/code}}
324
325
326 (% class="box infomessage" %)
327 (((
328 **{{id name="_Toc38"/}}addCellWrap** - создание ячейки с переносом текста в указанный столбец и строку текущего листа таблицы Excel (XLSX, XLS) с указанным значением
329 )))
330
331 * **file.addCellWrap (int indexColumn, int indexRow, Object value)** - создание ячейки с переносом текста в указанный столбец и строку текущего листа таблицы Excel (XLSX, XLS) с указанным значением
332
333 **Пример использования:**
334
335 {{code language="java"}}{{/code}}
336
337
338 (% class="box infomessage" %)
339 (((
340 **{{id name="_Toc17"/}}deleteRow** - функция которая удаляет строку с указанной позиции на странице эксель файла
341 )))
342
343 * **file.deleteRow(индекс)**
344
345 **Пример использования:**
346
347 {{code language="java"}}
348 file.deleteRow(3);
349 {{/code}}
350
351
352 (% class="box infomessage" %)
353 (((
354 **{{id name="_Toc18"/}}autoSizeColumns** - функция установки автоматической ширины колонок страницы эксель файла
355 )))
356
357 * **file.autoSizeColumns()** - для всех колонок на странице
358 * **file.autoSizeColumns(индекс колонки)** - для конкретной колонки на странице
359
360 **Пример использования:**
361
362 {{code language="java"}}
363 file.autoSizeColumns()
364 {{/code}}
365
366
367 (% class="box infomessage" %)
368 (((
369 **{{id name="_Toc11"/}}getDocument** - получение интерфейса текущего документа XWPFDocument (docx) (https:~/~/poi.apache.org/apidocs/4.1/org/apache/poi/xwpf/usermodel/XWPFDocument.html), предоставляет полный доступ к инструментарию формирования документа MSWord (полную документацию см. [[https:~~/~~/poi.apache.org/apidocs/4.1/)>>https://poi.apache.org/apidocs/4.1/)]]
370 )))
371
372 (% class="box infomessage" %)
373 (((
374 **{{id name="_Toc12"/}}getParagraph** - получение интерфейса текущего параграфа XWPFParagraph (https:~/~/poi.apache.org/apidocs/4.1/org/apache/poi/xwpf/usermodel/XWPFParagraph.html) документа MSWord  (полную документацию см. [[https:~~/~~/poi.apache.org/apidocs/4.1/)>>https://poi.apache.org/apidocs/4.1/)]]
375 )))
376
377 (% class="box infomessage" %)
378 (((
379 **{{id name="_Toc13"/}}getWorkbook** - получение интерфейса текущего табличного документа Workbook (XSSFWorkbook для xlsx и HSSFWorkbook для xls) (https:~/~/poi.apache.org/apidocs/4.1/org/apache/poi/ss/usermodel/Workbook.html), предоставляет полный доступ к инструментарию формирования документа таблицы эксель (полную документацию см. https:~/~/poi.apache.org/apidocs/4.1/)
380 )))
381
382 (% class="box infomessage" %)
383 (((
384 **{{id name="_Toc14"/}}getSheet** - получение интерфейса текущей страницы с таблицей (https:~/~/poi.apache.org/apidocs/4.1/org/apache/poi/ss/usermodel/Sheet.html) документа таблицы эксель (полную документацию см. https:~/~/poi.apache.org/apidocs/4.1/)
385 )))
386
387 **Общий пример:**
388
389 {{code language="java"}}
390 def start() {
391 file.create("XLS");
392 file.addHeaderRow("Код", "Название", "Ед. изм.", "Кол. во.", "Колонка 5"..);
393 def data = params.get("data");
394 for (int i in 0..data.size()-1) {
395 def row = data.get(i);
396 file.addRow(
397 row.get("code"),
398 row.get("title"),
399 row.get("units"),
400 row.get("quantityAll"), );
401 }
402 }
403 {{/code}}
404
405
406 (% class="box infomessage" %)
407 (((
408 **{{id name="_Toc19"/}}templateToPdf** - генерация pdf документа из шаблона
409 )))
410
411 * **[[template>>doc:API.Плагин API.template.WebHome]].add(“название тега в шаблоне”, данные)**
412 * **file.templateToPdf(template)**
413
414 **Пример использования:**
415
416 {{code language="java"}}
417 def project = bim.getProject()
418 template.add("project", project)
419 file.templateToPdf(template)
420 {{/code}}
421
422
423 (% class="box infomessage" %)
424 (((
425 **{{id name="_Toc20"/}}collisionsToPdf** - генерация pdf по списку коллизий
426 )))
427
428 * **file.collisionsToPdf(template, list, params):**
429 * **template** - необязательный параметр (указывается в том случае, если таблицу коллизий необходимо добавить в конец какого-либо шаблона). Если не указывать, то создается новый пустой файл, в который заносится таблица коллизий
430 * **list** - список коллизий. Обязательное поле. Получить данный лист необходимо командой [[bim.getCollisionsForReport()>>https://wiki.bimit.ru/bin/view/API/%D0%9F%D0%BB%D0%B0%D0%B3%D0%B8%D0%BD%20API/%D0%98%D0%BD%D1%82%D0%B5%D1%80%D1%84%D0%B5%D0%B9%D1%81%20bim/#_Toc26]]
431 * **params** - необязательный параметр (описание ниже)
432
433 Параметры при генерации отчета по коллизиям:
434 pageSize - 1, 2, 3 или 4 (соответствует размеру страницы А1, А2, А3, А4)
435 fontSize - int значение размера шрифта (в pt)
436
437 **Пример использования:**
438
439 {{code language="java"}}
440 def param = [:]
441 param.add("pageSize", 3)
442 param.add("fontSize", 12)
443 {{/code}}
444
445 По умолчанию параметры принимают следующие значения:
446 pageSize - 4
447 fontSize - 8
448
449
450 **Пример использования:**
451
452 {{code language="java"}}
453 def collisionList = bim.getCollisionsForReport()
454 def param = [:]
455 param.add("pageSize", 3)
456 param.add("fontSize", 12)
457 file.collisionsToPdf(template, collisionList, param)
458 {{/code}}
459
460 {{code language="java"}}
461 def collisionList = bim.getCollisionsForReport()
462 file.collisionsToPdf(collisionList)
463 {{/code}}
464
465
466 (% class="box infomessage" %)
467 (((
468 **{{id name="_Toc21"/}}attributesToPdf** - генерация pdf по списку атрибутов
469 )))
470
471 * **file.attributesToPdf(template, list, params)**
472
473 (% class="box infomessage" %)
474 (((
475 **{{id name="_Toc30"/}}addAreaBreak** - добавление разрыва области PDF документа
476 )))
477
478 * **file.addAreaBreak() **
479
480 **Пример использования:**
481
482 {{code language="java"}}{{/code}}
483
484 (% class="box infomessage" %)
485 (((
486 **{{id name="_Toc31"/}}addImage** - добавление изображения в документ Ms Word(DOCX) или PDF, ести тип файла другой, запись идет в поток
487 )))
488
489 * **file.addImage(byte[] imageFile) **
490
491 **Пример использования:**
492
493 {{code language="java"}}{{/code}}
494
495 (% class="box infomessage" %)
496 (((
497 **{{id name="_Toc32"/}}addDrawing** - добавление чертежа в документ MS Word (DOCX) или PDF, метод принимает на вход массив байтов, содержащий чертеж и двумерный массив, содержащий координаты точек чертежа
498 )))
499
500 * **file.addDrawing(byte[] drawingPage, double[][] arr) **
501
502 **Пример использования:**
503
504 {{code language="java"}}{{/code}}
505
506 (% class="box infomessage" %)
507 (((
508 **{{id name="_Toc22"/}}addCell** - создание ячейки в указанный столбец
509 )))
510
511 * **file.addCell(int indexColumn, int indexRow, Object value) ** - создание ячейки в указанный столбец и строку текущего листа таблицы Excel (XLSX, XLS) с указанным значением
512 * **file.addCell(int indexColumn, Object value) ** - создание ячейки в указанный столбец в конец строки текущего листа таблицы Excel (XLSX, XLS) с указанным значением
513
514 **Пример использования:**
515
516 {{code language="java"}}{{/code}}
517
518 (% class="box infomessage" %)
519 (((
520 **{{id name="_Toc23"/}}replaceRow** - замена значений указанной строки новыми значениями текущего листа таблицыи Excel (XLSX, XLS)
521 )))
522
523 * **file.replaceRow(int indexRow, Object... inp) **
524
525 **Пример использования:**
526
527 {{code language="java"}}{{/code}}
528
529 (% class="box infomessage" %)
530 (((
531 **{{id name="_Toc24"/}}sortASC** - сортировка таблицы документа Excel (XLSX, XLS) в порядке возрастания по значению в указанном столбце
532 )))
533
534 * **file.sortASC(int indexColumn) **
535
536 **Пример использования:**
537
538 {{code language="java"}}{{/code}}
539
540 (% class="box infomessage" %)
541 (((
542 **{{id name="_Toc25"/}}sortDESC** - сортировка таблицы документа Excel (XLSX, XLS) в порядке убывания по значению в указанном столбце
543 )))
544
545 * **file.sortDESC(int indexColumn) **
546
547 **Пример использования:**
548
549 {{code language="java"}}{{/code}}
550
551 (% class="box infomessage" %)
552 (((
553 **{{id name="_Toc26"/}}saveTempTable** - сохранение значений из потока в таблицу Excel (XLSX, XLS), находящейся по указанному пути
554 )))
555
556 * **file.saveTempTable(String tablesTempLocation) **
557
558 **Пример использования:**
559
560 {{code language="java"}}{{/code}}
561
562 (% class="box infomessage" %)
563 (((
564 **{{id name="_Toc27"/}}xlsxToJSON** - преобразование содержимого документа Excel (XLSX, XLS)
565 )))
566
567 * **file.xlsxToJSON(int page, int pageSize) ** - преобразование содержимого документа Excel (XLSX, XLS) с указанной страницы, с указанным количеством строк в формат JSON
568 * **file.xlsxToJSON(String tablesTempLocation, int page, int pageSize) ** - преобразование содержимого документа Excel (XLSX, XLS), находящегося по указанному пути в формате JSON, с учетом указанной страницы и указанных количество строк
569
570 **Пример использования:**
571
572 {{code language="java"}}{{/code}}
573
574 (% class="box infomessage" %)
575 (((
576 **{{id name="_Toc28"/}}getResource** - метод возвращает объект Ms Word (DOCX), PDF, текстовый файл (TXT) или Excel (XLSX, XLS)
577 )))
578
579 * **file.getResource() **
580
581 **Пример использования:**
582
583 {{code language="java"}}{{/code}}
584
585 (% class="box infomessage" %)
586 (((
587 **{{id name="_Toc29"/}}makeGrandSmetaExelTable** - создание документа Excel (XLSX, XLS) для отчета о гранд-смете
588 )))
589
590 * **file.makeGrandSmetaExelTable() **
591
592 **Пример использования:**
593
594 {{code language="java"}}{{/code}}
595
596 (% class="box infomessage" %)
597 (((
598 (% id="cke_bm_467759S" style="display:none" %)** **(%%)**{{id name="_Toc3"/}}**createStyle - создание нового стиля для формирования текста и формата ячеек Excel при работе с отчетом
599 )))
600
601 * **file.createStyle(Шрифт строки, размер строки, цвет строки)**
602
603 **Пример использования:**
604
605
606 {{code language="java"}}
607 createStyle(10, 15, green)
608 {{/code}}
609
610 (% class="box infomessage" %)
611 (((
612 **{{id name="_Toc39"/}}getImage** - получение картинки из общей коллекции
613 )))
614
615 * **file.getImage("путь до картинки")** - получение картинки
616 * **img.crop (X1, Y1, X2, Y2)** - обрезать текущую картинку
617 * **Images.joinHorizontal (img1, img2)** - склеивание картинок по горизонтали
618 * **Images.joinVertical (img1, img2)** - склеивание картинок по вертикали
619
620 **Пример использования:**
621
622 {{code language="java"}}
623 def img1 = file.getImage("collections/images/Arm/IFC_Арматура_Кольцо_ГОСТ_5781-82.png")
624 def img2 = file.getImage("collections/images/Arm/О_(23).png")
625 def img3 = Images.joinHorizontal(img1, img2.crop(10, 10, 400, 200))
626 def img4 = Images.joinVertical(img1, img2.crop(10, 10, 400, 200))
627 {{/code}}
628
629
630 **Наименование используемых строк row.get:**
631
632
633 (((
634 (% cellspacing="0" style="border-collapse:collapse; border:none; table-layout:fixed; width:850px" %)
635 |(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
636 (% style="line-height:1.2" %)
637 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)pos
638 )))|(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
639 (% style="line-height:1.2" %)
640 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:10pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)Позиция
641 )))
642 |(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
643 (% style="line-height:1.2" %)
644 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)code
645 )))|(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
646 (% style="line-height:1.2" %)
647 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)Обоснование
648 )))
649 |(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
650 (% style="line-height:1.2" %)
651 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)title
652 )))|(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
653 (% style="line-height:1.2" %)
654 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)Наименование
655 )))
656 |(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
657 (% style="line-height:1.2" %)
658 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)units
659 )))|(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
660 (% style="line-height:1.2" %)
661 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)Единицы измерений
662 )))
663 |(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)unit|(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)Единица измерения
664 |(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
665 (% style="line-height:1.2" %)
666 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)quantityPerUnit
667 )))|(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
668 (% style="line-height:1.2" %)
669 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)Количество на ед.
670 )))
671 |(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
672 (% style="line-height:1.2" %)
673 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)quantityAll
674 )))|(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
675 (% style="line-height:1.2" %)
676 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)Количество всего
677 )))
678 |(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)quantity|(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)Количество
679 |(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
680 (% style="line-height:1.2" %)
681 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)priceAll
682 )))|(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
683 (% style="line-height:1.2" %)
684 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)Стоимость единицы всего
685 )))
686 |(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
687 (% style="line-height:1.2" %)
688 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)unitPrice_1
689 )))|(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
690 (% style="line-height:1.2" %)
691 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)Стоимость единицы Осн. з/п
692 )))
693 |(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
694 (% style="line-height:1.2" %)
695 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)unitPrice_2
696 )))|(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
697 (% style="line-height:1.2" %)
698 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)Стоимость единицы Эк.маш
699 )))
700 |(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
701 (% style="line-height:1.2" %)
702 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)unitPrice_3
703 )))|(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
704 (% style="line-height:1.2" %)
705 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)Стоимость единицы З/пМех
706 )))
707 |(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
708 (% style="line-height:1.2" %)
709 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)unitPrice_4
710 )))|(% style="border-bottom:1px solid #000000; border-left:1px solid #000000; border-right:1px solid #000000; border-top:1px solid #000000; padding:7px 7px 7px 7px; vertical-align:top" width="NaN" %)(((
711 (% style="line-height:1.2" %)
712 (% style="background-color:#ffffff; color:#000000; font-family:Arial; font-size:11pt; font-style:normal; font-variant:normal; font-weight:400; overflow-wrap:break-word; overflow:hidden; text-decoration:none; white-space:pre-wrap" %)Стоимость единицы Мат
713 )))
714 )))