Исходный код вики Интерфейс file

Версия 16.7 от Bimit Administrator на 27.08.2024, 10:08

Последние авторы
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 * [[addHeaderRow>>path:#_Toc9]] - функция которая формирует заголовок на странице эксель файла
14 * [[addRow>>path:#_Toc10]] - функция которая формирует строку на странице эксель файла
15 * [[insertRow>>path:#_Toc15]] - функция которая вставляет строку на указанную позицию на странице эксель файла
16 * [[replaceRow>>path:#_Toc16]] - функция которая замещает строку на указанной позицию на странице эксель файла
17 * [[deleteRow>>path:#_Toc17]] - функция которая удаляет строку с указанной позиции на странице эксель файла
18 * [[autoSizeColumns>>path:#_Toc18]] - функция установки автоматической ширины колонок страницы эксель файла
19 * [[getDocument>>path:#_Toc11]] - получение интерфейса текущего документа XWPFDocument (docx) (https:~/~/poi.apache.org/apidocs/4.1/org/apache/poi/xwpf/usermodel/XWPFDocument.html), предоставляет полный доступ к инструментарию формирования документа MSWord
20 * [[getParagraph>>path:#_Toc12]] - получение интерфейса текущего параграфа XWPFParagraph (https:~/~/poi.apache.org/apidocs/4.1/org/apache/poi/xwpf/usermodel/XWPFParagraph.html) документа MSWord
21 * [[getWorkbook>>path:#_Toc13]] - получение интерфейса текущего табличного документа Workbook (XSSFWorkbook для xlsx и HSSFWorkbook для xls) (https:~/~/poi.apache.org/apidocs/4.1/org/apache/poi/ss/usermodel/Workbook.html), предоставляет полный доступ к инструментарию формирования документа таблицы эксель
22 * [[getSheet>>path:#_Toc14]] - получение интерфейса текущей страницы с таблицей (https:~/~/poi.apache.org/apidocs/4.1/org/apache/poi/ss/usermodel/Sheet.html) документа таблицы эксель
23 * [[addAreaBreak>>path:#_Toc30]] - добавление разрыва области PDF документа
24 * [[addImage>>path:#_Toc31]] - добавление изображения в документ Ms Word(DOCX) или PDF, ести тип файла другой, запись идет в поток
25 * [[addDrawing>>path:#_Toc32]] - добавление чертежа в документ MS Word (DOCX) или PDF, метод принимает на вход массив байтов, содержащий чертеж и двумерный массив, содержащий координаты точек чертежа
26 * [[addCell>>path:#_Toc22]] - создание ячейки в указанный столбец
27 * [[replaceRow>>path:#_Toc23]] - замена значений указанной строки новыми значениями текущего листа таблицыи Excel (XLSX, XLS)
28 * [[sortASC>>path:#_Toc24]] - сортировка таблицы документа Excel (XLSX, XLS) в порядке возрастания по значению в указанном столбце
29 * [[sortDESC>>path:#_Toc25]] - сортировка таблицы документа Excel (XLSX, XLS) в порядке убывания по значению в указанном столбце
30 * [[saveTempTable>>path:#_Toc26]] - сохранение значений из потока в таблицу Excel (XLSX, XLS), находящейся по указанному пути
31 * [[xlsxToJSON>>path:#_Toc27]] - преобразование содержимого документа Excel (XLSX, XLS)
32 * [[getResource>>path:#_Toc28]] - метод возвращает объект Ms Word (DOCX), PDF, текстовый файл (TXT) или Excel (XLSX, XLS)
33 * [[makeGrandSmetaExelTable>>path:#_Toc29]] - создание документа Excel (XLSX, XLS) для отчета о гранд-смете
34
35 **Генерация документа с использованием шаблона**
36
37 * [[templateToPdf>>path:#_Toc19]] - генерация pdf документа из шаблона
38
39 **Генерация отчета по коллизиям и атрибутам**
40
41 * [[collisionsToPdf>>path:#_Toc20]] - генерация pdf по списку коллизий
42 * [[attributesToPdf>>path:#_Toc21]] - генерация pdf по списку атрибутов
43
44 [[Примеры использования в плагинах>>Примеры использования в плагинах]]
45
46
47 (% class="box infomessage" %)
48 (((
49 **{{id name="_Toc1"/}}create** - функция конструктор, создает и подготавливает файл для приема данных, доступны варианта: таблица эксель (XLS, XLSX), текстовый файл(TXT), документ MS Word (DOCX), документ PDF (PDF)
50 )))
51
52 * **file.create(формат создаваемого файла)**
53
54 **Пример использования:**
55
56
57 {{code language="java"}}
58 file.create("XLS"); или file.create("TXT");
59 {{/code}}
60
61
62 (% class="box infomessage" %)
63 (((
64 **{{id name="_Toc33"/}}setStyle** - применение указанного стиля к тексту указанной ячейки Excel файла при работе с отчетом
65 )))
66
67 * **file.setStyle (Sheet sheet, Workbook workbook, int indexRow, int indexColumn, ExcelStyleManager)**
68
69 **Пример использования:**
70
71 {{code language="java"}}
72 {{/code}}
73
74
75 (% class="box infomessage" %)
76 (((
77 **{{id name="_Toc2"/}}addTitle** - добавление заголовка в документ MS Word (DOCX)
78 )))
79
80 * **file.addTitle(Текст)** - с базовыми настройками
81 * **file.addTitle(Текст, Размер шрифта, жирный/не жирный)** - с указанием размера шрифта, и указанием жирный/простой
82
83 **Примеры использования:**
84
85 {{code language="java"}}
86 addTitle("Заголовок")
87 {{/code}}
88
89 {{code language="java"}}
90 addTitle("Заголовок", 30, true)
91 {{/code}}
92
93
94 (% class="box infomessage" %)
95 (((
96 **{{id name="_Toc3"/}}addParagraph** - функция создания нового параграфа в документе MS Word (DOCX)
97 )))
98
99 * **file.addParagraph("Текст")** - с базовыми настройками
100 * **file.addParagraph("Текст", размер отступа, размер шрифта, жирный/не жирный)** - с указанием отступа, размера шрифта, и указанием жирный/простой
101
102 **Примеры использования:**
103
104 {{code language="java"}}
105 addParagraph("Текст")
106 addText("Продолжение текста")
107 {{/code}}
108
109 {{code language="java"}}
110 addParagraph("Текст", 20, 10, true)
111 addText("Продолжение текста")
112 {{/code}}
113
114
115 (% class="box infomessage" %)
116 (((
117 **{{id name="_Toc4"/}}addCenterParagraph** - функция создания нового параграфа в документе MS Word (DOCX) с размещением текста посередине и с указанием размера шрифта, и указанием жирный/простой
118 )))
119
120 * **file.addCenterParagraph("текст", размер шрифта, жирный/не жирный)**
121
122 **Пример использования:**
123
124
125 {{code language="java"}}
126 addCenterParagraph("Текст", 10, true)
127 {{/code}}
128
129
130 (% class="box infomessage" %)
131 (((
132 **{{id name="_Toc5"/}}addRightParagraph** - функция создания нового параграфа в документе MS Word (DOCX) с размещением текста справа и с указанием размера шрифта, и указанием жирный/простой
133 )))
134
135 * **file.addRightParagraph("текст", размер шрифта, жирный/не жирный)**
136
137 **Пример использования:**
138
139
140 {{code language="java"}}
141 addRightParagraph("Текст", 10, true)
142 {{/code}}
143
144
145 (% class="box infomessage" %)
146 (((
147 **{{id name="_Toc6"/}}addLeftParagraph** - функция создания нового параграфа в документе MS Word (DOCX) с размещением текста слева и с указанием размера шрифта, и указанием жирный/простой
148 )))
149
150 * **file.addLeftParagraph("текст", размер шрифта, жирный/не жирный)**
151
152 **Пример использования:**
153
154
155 {{code language="java"}}
156 addLeftParagraph("Текст", 10, true)
157 {{/code}}
158
159
160 (% class="box infomessage" %)
161 (((
162 **{{id name="_Toc7"/}}addTextBreak** - функция перевода каретки указателя на новую строку в документе MS Word (DOCX)
163 )))
164
165 * **file.addTextBreak()**
166
167 **Пример использования:**
168
169
170 {{code language="java"}}
171 file.addTextBreak()
172 {{/code}}
173
174
175 (% class="box infomessage" %)
176 (((
177 **{{id name="_Toc8"/}}addText** - функция добавления строки с данным в документ MS Word (DOCX)
178 )))
179
180 * **file.addText(Object objectValue)** - добавление объекта в строковом представлении
181 * **file.addText(“Строка, которая появится в файле”, размер шрифта, жирный/не жирный)**
182 * **file.addText(“Строка, которая появится в файле”)**
183 * **file.addText(long longValue)** - добавление числа типа long в строковом представлении
184 * **file.addText(double doubleValue)** - добавление числа типа double в строковом представлении
185
186 **Примеры использования:**
187
188 {{code language="java"}}
189 {{/code}}
190 {{code language="java"}}
191 file.addText("Строка, которая появится в файле"), 10, false)
192 {{/code}}
193
194 {{code language="java"}}
195 file.addText("Строка, которая появится в файле")
196 {{/code}}
197
198 {{code language="java"}}
199 {{/code}}
200
201 {{code language="java"}}
202 {{/code}}
203
204
205 (% class="box infomessage" %)
206 (((
207 **{{id name="_Toc9"/}}addHeaderRow **- функция которая формирует заголовок на странице эксель файла
208 )))
209
210 * **file.addHeaderRow(“Заголовок 1”, “Заголовок 2”,....”Заголовок N”)**
211
212 **Пример использования:**
213
214
215 {{code language="java"}}
216 file.addHeaderRow("Код", "Название", "Ед. изм.", "Кол. во.");
217 {{/code}}
218
219
220 (% class="box infomessage" %)
221 (((
222 **{{id name="_Toc10"/}}addRow** - функция которая формирует строку на странице эксель файла
223 )))
224
225 * **file.addRow(Object... inp)**
226 * **file.addRow(Map<Object, Object>... inp)**
227
228 **Пример использования:**
229
230
231 {{code language="java"}}
232 file.addRow( row.get("code"), row.get("title"), row.get("units"), row.get("quantityAll"));
233 {{/code}}
234
235 {{code language="java"}}
236 {{/code}}
237
238
239 (% class="box infomessage" %)
240 (((
241 **{{id name="_Toc15"/}}insertRow** - функция которая вставляет строку на указанную позицию на странице эксель файла
242 )))
243
244 * **file.insertRow(индекс, “Данные 1”, “Данные 2”,....”Данные N”)**
245
246 **Пример использования:**
247
248 {{code language="java"}}
249 file.insertRow(6, "Вставленная строка", 1 , 2.453, new Date(), Calendar.getInstance());
250 {{/code}}
251
252
253 (% class="box infomessage" %)
254 (((
255 **{{id name="_Toc16"/}}replaceRow** - функция которая замещает строку на указанной позицию на странице эксель файла
256 )))
257
258 * **file.replaceRow(индекс, “Данные 1”, “Данные 2”,....”Данные N”)**
259
260 **Пример использования:**
261
262 {{code language="java"}}
263 file.replaceRow(7, "Замещенная строка", 4 , 5.678, new Date(), Calendar.getInstance());
264 {{/code}}
265
266
267 (% class="box infomessage" %)
268 (((
269 **{{id name="_Toc17"/}}deleteRow** - функция которая удаляет строку с указанной позиции на странице эксель файла
270 )))
271
272 * **file.deleteRow(индекс)**
273
274 **Пример использования:**
275
276 {{code language="java"}}
277 file.deleteRow(3);
278 {{/code}}
279
280
281 (% class="box infomessage" %)
282 (((
283 **{{id name="_Toc18"/}}autoSizeColumns** - функция установки автоматической ширины колонок страницы эксель файла
284 )))
285
286 * **file.autoSizeColumns()** - для всех колонок на странице
287 * **file.autoSizeColumns(индекс колонки)** - для конкретной колонки на странице
288
289 **Пример использования:**
290
291 {{code language="java"}}
292 file.autoSizeColumns()
293 {{/code}}
294
295
296 (% class="box infomessage" %)
297 (((
298 **{{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/)]]
299 )))
300
301 (% class="box infomessage" %)
302 (((
303 **{{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/)]]
304 )))
305
306 (% class="box infomessage" %)
307 (((
308 **{{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/)
309 )))
310
311 (% class="box infomessage" %)
312 (((
313 **{{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/)
314 )))
315
316 **Общий пример:**
317
318 {{code language="java"}}
319 def start() {
320 file.create("XLS");
321 file.addHeaderRow("Код", "Название", "Ед. изм.", "Кол. во.", "Колонка 5"..);
322 def data = params.get("data");
323 for (int i in 0..data.size()-1) {
324 def row = data.get(i);
325 file.addRow(
326 row.get("code"),
327 row.get("title"),
328 row.get("units"),
329 row.get("quantityAll"), );
330 }
331 }
332 {{/code}}
333
334
335 (% class="box infomessage" %)
336 (((
337 **{{id name="_Toc19"/}}templateToPdf** - генерация pdf документа из шаблона
338 )))
339
340 * **[[template>>doc:API.Плагин API.template.WebHome]].add(“название тега в шаблоне”, данные)**
341 * **file.templateToPdf(template)**
342
343 **Пример использования:**
344
345 {{code language="java"}}
346 def project = bim.getProject()
347 template.add("project", project)
348 file.templateToPdf(template)
349 {{/code}}
350
351
352 (% class="box infomessage" %)
353 (((
354 **{{id name="_Toc20"/}}collisionsToPdf** - генерация pdf по списку коллизий
355 )))
356
357 * **file.collisionsToPdf(template, list, params):**
358 * **template** - необязательный параметр (указывается в том случае, если таблицу коллизий необходимо добавить в конец какого-либо шаблона). Если не указывать, то создается новый пустой файл, в который заносится таблица коллизий
359 * **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]]
360 * **params** - необязательный параметр (описание ниже)
361
362 Параметры при генерации отчета по коллизиям:
363 pageSize - 1, 2, 3 или 4 (соответствует размеру страницы А1, А2, А3, А4)
364 fontSize - int значение размера шрифта (в pt)
365
366 **Пример использования:**
367
368 {{code language="java"}}
369 def param = [:]
370 param.add("pageSize", 3)
371 param.add("fontSize", 12)
372 {{/code}}
373
374 По умолчанию параметры принимают следующие значения:
375 pageSize - 4
376 fontSize - 8
377
378
379 **Пример использования:**
380
381 {{code language="java"}}
382 def collisionList = bim.getCollisionsForReport()
383 def param = [:]
384 param.add("pageSize", 3)
385 param.add("fontSize", 12)
386 file.collisionsToPdf(template, collisionList, param)
387 {{/code}}
388
389 {{code language="java"}}
390 def collisionList = bim.getCollisionsForReport()
391 file.collisionsToPdf(collisionList)
392 {{/code}}
393
394
395 (% class="box infomessage" %)
396 (((
397 **{{id name="_Toc21"/}}attributesToPdf** - генерация pdf по списку атрибутов
398 )))
399
400 * **file.attributesToPdf(template, list, params)**
401
402 (% class="box infomessage" %)
403 (((
404 **{{id name="_Toc30"/}}addAreaBreak** - добавление разрыва области PDF документа
405 )))
406
407 * **file.addAreaBreak() **
408
409 **Пример использования:**
410
411 {{code language="java"}}{{/code}}
412
413 (% class="box infomessage" %)
414 (((
415 **{{id name="_Toc31"/}}addImage** - добавление изображения в документ Ms Word(DOCX) или PDF, ести тип файла другой, запись идет в поток
416 )))
417
418 * **file.addImage(byte[] imageFile) **
419
420 **Пример использования:**
421
422 {{code language="java"}}{{/code}}
423
424 (% class="box infomessage" %)
425 (((
426 **{{id name="_Toc32"/}}addDrawing** - добавление чертежа в документ MS Word (DOCX) или PDF, метод принимает на вход массив байтов, содержащий чертеж и двумерный массив, содержащий координаты точек чертежа
427 )))
428
429 * **file.addDrawing(byte[] drawingPage, double[][] arr) **
430
431 **Пример использования:**
432
433 {{code language="java"}}{{/code}}
434
435 (% class="box infomessage" %)
436 (((
437 **{{id name="_Toc22"/}}addCell** - создание ячейки в указанный столбец
438 )))
439
440 * **file.addCell(int indexColumn, int indexRow, Object value) ** - создание ячейки в указанный столбец и строку текущего листа таблицы Excel (XLSX, XLS) с указанным значением
441 * **file.addCell(int indexColumn, Object value) ** - создание ячейки в указанный столбец в конец строки текущего листа таблицы Excel (XLSX, XLS) с указанным значением
442
443 **Пример использования:**
444
445 {{code language="java"}}{{/code}}
446
447 (% class="box infomessage" %)
448 (((
449 **{{id name="_Toc23"/}}replaceRow** - замена значений указанной строки новыми значениями текущего листа таблицыи Excel (XLSX, XLS)
450 )))
451
452 * **file.replaceRow(int indexRow, Object... inp) **
453
454 **Пример использования:**
455
456 {{code language="java"}}{{/code}}
457
458 (% class="box infomessage" %)
459 (((
460 **{{id name="_Toc24"/}}sortASC** - сортировка таблицы документа Excel (XLSX, XLS) в порядке возрастания по значению в указанном столбце
461 )))
462
463 * **file.sortASC(int indexColumn) **
464
465 **Пример использования:**
466
467 {{code language="java"}}{{/code}}
468
469 (% class="box infomessage" %)
470 (((
471 **{{id name="_Toc25"/}}sortDESC** - сортировка таблицы документа Excel (XLSX, XLS) в порядке убывания по значению в указанном столбце
472 )))
473
474 * **file.sortDESC(int indexColumn) **
475
476 **Пример использования:**
477
478 {{code language="java"}}{{/code}}
479
480 (% class="box infomessage" %)
481 (((
482 **{{id name="_Toc26"/}}saveTempTable** - сохранение значений из потока в таблицу Excel (XLSX, XLS), находящейся по указанному пути
483 )))
484
485 * **file.saveTempTable(String tablesTempLocation) **
486
487 **Пример использования:**
488
489 {{code language="java"}}{{/code}}
490
491 (% class="box infomessage" %)
492 (((
493 **{{id name="_Toc27"/}}xlsxToJSON** - преобразование содержимого документа Excel (XLSX, XLS)
494 )))
495
496 * **file.xlsxToJSON(int page, int pageSize) ** - преобразование содержимого документа Excel (XLSX, XLS) с указанной страницы, с указанным количеством строк в формат JSON
497 * **file.xlsxToJSON(String tablesTempLocation, int page, int pageSize) ** - преобразование содержимого документа Excel (XLSX, XLS), находящегося по указанному пути в формате JSON, с учетом указанной страницы и указанных количество строк
498
499 **Пример использования:**
500
501 {{code language="java"}}{{/code}}
502
503 (% class="box infomessage" %)
504 (((
505 **{{id name="_Toc28"/}}getResource** - метод возвращает объект Ms Word (DOCX), PDF, текстовый файл (TXT) или Excel (XLSX, XLS)
506 )))
507
508 * **file.getResource() **
509
510 **Пример использования:**
511
512 {{code language="java"}}{{/code}}
513
514 (% class="box infomessage" %)
515 (((
516 **{{id name="_Toc29"/}}makeGrandSmetaExelTable** - создание документа Excel (XLSX, XLS) для отчета о гранд-смете
517 )))
518
519 * **file.makeGrandSmetaExelTable() **
520
521 **Пример использования:**
522
523 {{code language="java"}}{{/code}}
524
525 **Наименование используемых строк row.get:**
526
527
528 (((
529 (% cellspacing="0" style="border-collapse:collapse; border:none; table-layout:fixed; width:850px" %)
530 |(% 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" %)(((
531 (% style="line-height:1.2" %)
532 (% 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
533 )))|(% 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" %)(((
534 (% style="line-height:1.2" %)
535 (% 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" %)Позиция
536 )))
537 |(% 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" %)(((
538 (% style="line-height:1.2" %)
539 (% 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
540 )))|(% 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" %)(((
541 (% style="line-height:1.2" %)
542 (% 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" %)Обоснование
543 )))
544 |(% 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" %)(((
545 (% style="line-height:1.2" %)
546 (% 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
547 )))|(% 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" %)(((
548 (% style="line-height:1.2" %)
549 (% 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" %)Наименование
550 )))
551 |(% 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" %)(((
552 (% style="line-height:1.2" %)
553 (% 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
554 )))|(% 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" %)(((
555 (% style="line-height:1.2" %)
556 (% 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" %)Единицы измерений
557 )))
558 |(% 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" %)Единица измерения
559 |(% 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" %)(((
560 (% style="line-height:1.2" %)
561 (% 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
562 )))|(% 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" %)(((
563 (% style="line-height:1.2" %)
564 (% 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" %)Количество на ед.
565 )))
566 |(% 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" %)(((
567 (% style="line-height:1.2" %)
568 (% 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
569 )))|(% 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" %)(((
570 (% style="line-height:1.2" %)
571 (% 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" %)Количество всего
572 )))
573 |(% 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" %)Количество
574 |(% 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" %)(((
575 (% style="line-height:1.2" %)
576 (% 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
577 )))|(% 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" %)(((
578 (% style="line-height:1.2" %)
579 (% 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" %)Стоимость единицы всего
580 )))
581 |(% 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" %)(((
582 (% style="line-height:1.2" %)
583 (% 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
584 )))|(% 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" %)(((
585 (% style="line-height:1.2" %)
586 (% 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" %)Стоимость единицы Осн. з/п
587 )))
588 |(% 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" %)(((
589 (% style="line-height:1.2" %)
590 (% 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
591 )))|(% 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" %)(((
592 (% style="line-height:1.2" %)
593 (% 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" %)Стоимость единицы Эк.маш
594 )))
595 |(% 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" %)(((
596 (% style="line-height:1.2" %)
597 (% 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
598 )))|(% 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" %)(((
599 (% style="line-height:1.2" %)
600 (% 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" %)Стоимость единицы З/пМех
601 )))
602 |(% 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" %)(((
603 (% style="line-height:1.2" %)
604 (% 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
605 )))|(% 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" %)(((
606 (% style="line-height:1.2" %)
607 (% 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" %)Стоимость единицы Мат
608 )))
609 )))