Changes for page Интерфейс file

Last modified by Bimit Administrator on 02.10.2024, 11:55

From version 1.3
edited by Bimit Administrator
on 15.02.2022, 09:33
Change comment: There is no comment for this version
To version 4.2
edited by Bimit Administrator
on 15.02.2022, 14:15
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -2,16 +2,13 @@
2 2  В нем доступны следующий функции:
3 3  
4 4  * [[create>>||anchor="Hcreate"]] - функция конструктор, создает и подготавливает файл для приема данных
5 -* [[addTitle>>||anchor="HaddTitle"]] - добавление заголовка в документ MS Word (DOCX) c базовыми настройками
6 -* [[addTitle>>||anchor="HaddTitle"]] - добавление заголовка в документ MS Word (DOCX), с указанием размера шрифта, и указанием жирный/простой
7 -* [[addParagraph>>||anchor="HaddParagraph"]] - функция создания нового параграфа в документе MS Word (DOCX) с базовыми настройками
8 -* [[addParagraph>>||anchor="HaddParagraph"]] - функция создания нового параграфа в документе MS Word (DOCX) с указанием отступа, размера шрифта, и указанием жирный/простой
5 +* [[addTitle>>||anchor="HaddTitle"]] - добавление заголовка в документ MS Word (DOCX)
6 +* [[addParagraph>>||anchor="HaddParagraph"]] - функция создания нового параграфа в документе MS Word (DOCX)
9 9  * [[addCenterParagraph>>||anchor="HaddCenterParagraph"]] - функция создания нового параграфа в документе MS Word (DOCX) с размещением текста посередине и с указанием размера шрифта, и указанием жирный/простой
10 10  * [[addRightParagraph>>||anchor="HaddRightParagraph"]] - функция создания нового параграфа в документе MS Word (DOCX) с размещением текста справа и с указанием размера шрифта, и указанием жирный/простой
11 11  * [[addLeftParagraph>>||anchor="HaddLeftParagraph"]] - функция создания нового параграфа в документе MS Word (DOCX) с размещением текста слева и с указанием размера шрифта, и указанием жирный/простой
12 12  * [[addTextBreak>>||anchor="HaddTextBreak"]] - функция перевода каретки указателя на новую строку в документе MS Word (DOCX)
13 -* [[addText>>||anchor="HaddText"]] - функция добавления строки с данным в документ MS Word (DOCX) с указанием размера текста и указанием жирный/простой
14 -* [[addText>>||anchor="HaddText"]] - функция добавления строки с данным в текстовый файл с опциями (file.addText(“Строка, которая появится в файле”))
11 +* [[addText>>||anchor="HaddText"]] - функция добавления строки с данным в документ MS Word (DOCX)
15 15  * [[addHeaderRow>>||anchor="HaddHeaderRow"]] - функция которая формирует заголовок на странице эксель файла
16 16  * [[addRow>>||anchor="HaddRow"]] - функция которая формирует строку на странице эксель файла
17 17  * [[getDocument>>||anchor="HgetDocument"]] - получение интерфейса текущего документа XWPFDocument (docx) (https:~/~/poi.apache.org/apidocs/4.1/org/apache/poi/xwpf/usermodel/XWPFDocument.html), предоставляет полный доступ к инструментарию формирования документа MSWord
... ... @@ -26,45 +26,51 @@
26 26  )))
27 27  
28 28  **Пример использования:**
29 -{{code language="java"}}file.create("XLS"); или file.create("TXT");{{/code}}
30 30  
31 31  
28 +{{code language="java"}}
29 +file.create("XLS"); или file.create("TXT");
30 +{{/code}}
31 +
32 +
32 32  (% class="box infomessage" %)
33 33  (((
34 -**addTitle** - добавление заголовка в документ MS Word (DOCX) c базовыми настройками
35 +**addTitle** - добавление заголовка в документ MS Word (DOCX)
35 35  )))
36 36  
37 -**Пример использования:**
38 -{{code language="java"}}addTitle("Заголовок"){{/code}}
38 +* с базовыми настройками
39 +* с указанием размера шрифта, и указанием жирный/простой
39 39  
41 +**Примеры использования:**
40 40  
41 -(% class="box infomessage" %)
42 -(((
43 -**addTitle** - добавление заголовка в документ MS Word (DOCX), с указанием размера шрифта, и указанием жирный/простой
44 -)))
43 +{{code language="java"}}
44 +addTitle("Заголовок")
45 +{{/code}}
45 45  
46 -**Пример использования:**
47 -{{code language="java"}}addTitle("Заголовок", 30, true){{/code}}
47 +{{code language="java"}}
48 +addTitle("Заголовок", 30, true)
49 +{{/code}}
48 48  
49 49  
50 50  (% class="box infomessage" %)
51 51  (((
52 -**addParagraph** - функция создания нового параграфа в документе MS Word (DOCX) с базовыми настройками
54 +**addParagraph** - функция создания нового параграфа в документе MS Word (DOCX)
53 53  )))
54 54  
55 -**Пример использования:**
56 -{{code language="java"}}addParagraph("Текст")
57 -addText("Продолжение текста"){{/code}}
57 +* с базовыми настройками
58 +* с указанием отступа, размера шрифта, и указанием жирный/простой
58 58  
60 +**Примеры использования:**
59 59  
60 -(% class="box infomessage" %)
61 -(((
62 -**addParagraph** - функция создания нового параграфа в документе MS Word (DOCX) с указанием отступа, размера шрифта, и указанием жирный/простой
63 -)))
62 +{{code language="java"}}
63 +addParagraph("Текст")
64 +addText("Продолжение текста")
65 +{{/code}}
64 64  
65 -**Пример использования:**
66 -{{code language="java"}}addParagraph("Текст", 20, 10, true)
67 -addText("Продолжение текста"){{/code}}
67 +{{code language="java"}}
68 +addParagraph("Текст", 20, 10, true)
69 +addText("Продолжение текста")
70 +{{/code}}
68 68  
69 69  
70 70  (% class="box infomessage" %)
... ... @@ -73,9 +73,14 @@
73 73  )))
74 74  
75 75  **Пример использования:**
76 -{{code language="java"}}addCenterParagraph("Текст", 10, true){{/code}}
77 77  
78 78  
81 +
82 +{{code language="java"}}
83 +addCenterParagraph("Текст", 10, true)
84 +{{/code}}
85 +
86 +
79 79  (% class="box infomessage" %)
80 80  (((
81 81  **addRightParagraph** - функция создания нового параграфа в документе MS Word (DOCX) с размещением текста справа и с указанием размера шрифта, и указанием жирный/простой
... ... @@ -82,9 +82,13 @@
82 82  )))
83 83  
84 84  **Пример использования:**
85 -{{code language="java"}}addRightParagraph("Текст", 10, true){{/code}}
86 86  
87 87  
95 +{{code language="java"}}
96 +addRightParagraph("Текст", 10, true)
97 +{{/code}}
98 +
99 +
88 88  (% class="box infomessage" %)
89 89  (((
90 90  **addLeftParagraph** - функция создания нового параграфа в документе MS Word (DOCX) с размещением текста слева и с указанием размера шрифта, и указанием жирный/простой
... ... @@ -91,9 +91,13 @@
91 91  )))
92 92  
93 93  **Пример использования:**
94 -{{code language="java"}}addLeftParagraph("Текст", 10, true){{/code}}
95 95  
96 96  
108 +{{code language="java"}}
109 +addLeftParagraph("Текст", 10, true)
110 +{{/code}}
111 +
112 +
97 97  (% class="box infomessage" %)
98 98  (((
99 99  **addTextBreak** - функция перевода каретки указателя на новую строку в документе MS Word (DOCX)
... ... @@ -100,47 +100,58 @@
100 100  )))
101 101  
102 102  **Пример использования:**
103 -{{code language="java"}}file.addTextBreak(){{/code}}
104 104  
105 105  
121 +{{code language="java"}}
122 +file.addTextBreak()
123 +{{/code}}
124 +
125 +
106 106  (% class="box infomessage" %)
107 107  (((
108 -**addText** - функция добавления строки с данным в документ MS Word (DOCX) с указанием размера текста и указанием жирный/простой
128 +**addText** - функция добавления строки с данным в документ MS Word (DOCX)
109 109  )))
110 110  
111 -**Пример использования:**
112 -{{code language="java"}}file.addText("Строка, которая появится в файле"), 10, false){{/code}}
131 +* с указанием размера текста и указанием жирный/простой
132 +* с опциями (file.addText(Строка, которая появится в файле))
113 113  
134 +**Примеры использования:**
114 114  
115 -(% class="box infomessage" %)
116 -(((
117 -**addText** - функция добавления строки с данным в текстовый файл с опциями (file.addText(“Строка, которая появится в файле”))
118 -)))
136 +{{code language="java"}}
137 +file.addText("Строка, которая появится в файле"), 10, false)
138 +{{/code}}
119 119  
120 -**Пример использования:**
121 -{{code language="java"}}file.addText("Строка, которая появится в файле"){{/code}}
140 +{{code language="java"}}
141 +file.addText("Строка, которая появится в файле")
142 +{{/code}}
122 122  
123 123  
124 124  (% class="box infomessage" %)
125 125  (((
126 -
127 127  **addHeaderRow **- функция которая формирует заголовок на странице эксель файла (пример: file.addHeaderRow(“Заголовок 1”, “Заголовок 2”,....”Заголовок N”))
128 128  )))
129 129  
130 130  **Пример использования:**
131 -{{code language="java"}}file.addHeaderRow("Код", "Название", "Ед. изм.", "Кол. во.");{{/code}}
132 132  
133 133  
153 +{{code language="java"}}
154 +file.addHeaderRow("Код", "Название", "Ед. изм.", "Кол. во.");
155 +{{/code}}
156 +
157 +
134 134  (% class="box infomessage" %)
135 135  (((
136 -
137 137  **addRow** - функция которая формирует строку на странице эксель файла (пример: file.addRow(“Данные 1”, “Данные 2”,....”Данные N”))
138 138  )))
139 139  
140 140  **Пример использования:**
141 -{{code language="java"}}file.addRow( row.get("code"), row.get("title"), row.get("units"), row.get("quantityAll"));{{/code}}
142 142  
143 143  
166 +{{code language="java"}}
167 +file.addRow( row.get("code"), row.get("title"), row.get("units"), row.get("quantityAll"));
168 +{{/code}}
169 +
170 +
144 144  (% class="box infomessage" %)
145 145  (((
146 146  **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/)]]
... ... @@ -148,13 +148,11 @@
148 148  
149 149  (% class="box infomessage" %)
150 150  (((
151 -
152 152  **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/)]]
153 153  )))
154 154  
155 155  (% class="box infomessage" %)
156 156  (((
157 -
158 158  **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/)
159 159  )))
160 160  
... ... @@ -163,4 +163,105 @@
163 163  **getSheet** - получение интерфейса текущей страницы с таблицей (https:~/~/poi.apache.org/apidocs/4.1/org/apache/poi/ss/usermodel/Sheet.html) документа таблицы эксель (полную документацию см. https:~/~/poi.apache.org/apidocs/4.1/)
164 164  )))
165 165  
166 -
191 +**Общий пример:**
192 +
193 +{{code language="java"}}
194 +def start() {
195 + file.create("XLS");
196 + file.addHeaderRow("Код", "Название", "Ед. изм.", "Кол. во.", "Колонка 5"..);
197 + def data = params.get("data");
198 + for (int i in 0..data.size()-1) {
199 + def row = data.get(i);
200 + file.addRow(
201 + row.get("code"),
202 + row.get("title"),
203 + row.get("units"),
204 + row.get("quantityAll"), );
205 + }
206 +}
207 +{{/code}}
208 +
209 +
210 +**Наименование используемых строк row.get:**
211 +
212 +
213 +(((
214 +(% cellspacing="0" style="border-collapse:collapse; border:none; table-layout:fixed; width:850px" %)
215 +|(% 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" %)(((
216 +(% style="line-height:1.2" %)
217 +(% 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
218 +)))|(% 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" %)(((
219 +(% style="line-height:1.2" %)
220 +(% 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" %)Позиция
221 +)))
222 +|(% 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" %)(((
223 +(% style="line-height:1.2" %)
224 +(% 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
225 +)))|(% 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" %)(((
226 +(% style="line-height:1.2" %)
227 +(% 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" %)Обоснование
228 +)))
229 +|(% 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" %)(((
230 +(% style="line-height:1.2" %)
231 +(% 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
232 +)))|(% 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" %)(((
233 +(% style="line-height:1.2" %)
234 +(% 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" %)Наименование
235 +)))
236 +|(% 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" %)(((
237 +(% style="line-height:1.2" %)
238 +(% 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
239 +)))|(% 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" %)(((
240 +(% style="line-height:1.2" %)
241 +(% 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" %)Единицы измерений
242 +)))
243 +|(% 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" %)(((
244 +(% style="line-height:1.2" %)
245 +(% 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
246 +)))|(% 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" %)(((
247 +(% style="line-height:1.2" %)
248 +(% 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" %)Количество на ед.
249 +)))
250 +|(% 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" %)(((
251 +(% style="line-height:1.2" %)
252 +(% 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
253 +)))|(% 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" %)(((
254 +(% style="line-height:1.2" %)
255 +(% 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" %)Количество всего
256 +)))
257 +|(% 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" %)(((
258 +(% style="line-height:1.2" %)
259 +(% 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
260 +)))|(% 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" %)(((
261 +(% style="line-height:1.2" %)
262 +(% 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" %)Стоимость единицы всего
263 +)))
264 +|(% 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" %)(((
265 +(% style="line-height:1.2" %)
266 +(% 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
267 +)))|(% 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" %)(((
268 +(% style="line-height:1.2" %)
269 +(% 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" %)Стоимость единицы Осн. з/п
270 +)))
271 +|(% 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" %)(((
272 +(% style="line-height:1.2" %)
273 +(% 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
274 +)))|(% 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" %)(((
275 +(% style="line-height:1.2" %)
276 +(% 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" %)Стоимость единицы Эк.маш
277 +)))
278 +|(% 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" %)(((
279 +(% style="line-height:1.2" %)
280 +(% 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
281 +)))|(% 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" %)(((
282 +(% style="line-height:1.2" %)
283 +(% 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" %)Стоимость единицы З/пМех
284 +)))
285 +|(% 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" %)(((
286 +(% style="line-height:1.2" %)
287 +(% 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
288 +)))|(% 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" %)(((
289 +(% style="line-height:1.2" %)
290 +(% 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" %)Стоимость единицы Мат
291 +)))
292 +)))