Исходный код вики 09_table

Редактировал(а) Bimit Administrator 25.12.2025, 14:03

Скрыть последних авторов
Bimit Administrator 1.2 1 Это интерфейс для отображения результата работы плагина в табличном виде в системе BIMIT
2 В нем доступны следующий функции:
Bimit Administrator 2.2 3
Bimit Administrator 1.2 4 * [[addHeaderRow>>path:#_Toc1]] - добавление строки с заголовками в таблицу
5 * [[addRow>>path:#_Toc2]] - добавление строки
Bimit Administrator 7.1 6 * [[insertRow>>path:#_Toc14]] - добавление содержимого строки
Bimit Administrator 1.2 7 * [[addCell>>path:#_Toc3]] - добавление ячейки в таблицу
8 * [[addButton>>path:#_Toc4]] - добавление кнопки с действием жирный/простой
9 * [[setPageSize>>path:#_Toc5]] - установка количества элементов на одной странице
10 * [[showPage>>path:#_Toc6]] - установка текущей отображаемой таблиц
Bimit Administrator 5.3 11 * [[replaceRow>>path:#_Toc7]] - замена содержимого строки по указанному индексу с указанием новых данных
12 * [[sortASC>>path:#_Toc8]] - установка параметров для сортировки данных в таблице по возрастанию с указанием столбца
13 * [[sortDESC>>path:#_Toc9]] - установка параметров для сортировки данных в таблице по убыванию с указанием столбца
14 * [[createGroupElements>>path:#_Toc10]] - создание группы элементов с указанием цвета группы и списка элементов
15 * [[saveTempTable>>path:#_Toc11]] - сохранение временной таблицы (перед сохранением сортирует данные)
16 * [[xlsxToJSON>>path:#_Toc12]] - преобразование документа Excel (XLSX, XLS) в формат JSON
17 * [[xlsxToJSON>>path:#_Toc13]] - преобразование документа Excel (XLSX, XLS) в формат JSON с учетом пагинации
Bimit Administrator 7.15 18 * [[setFontBold>>path:#_Toc14]] - применение жирного шрифта
19 * [[setFontItalic>>path:#_Toc15]] - применение курсива
20 * [[setFontSize>>path:#_Toc16]] - применение размера шрифта
Bimit Administrator 7.16 21 * [[setCellAlignment>>path:#_Toc17]] - применение выравнивания
Bimit Administrator 1.1 22
Bimit Administrator 1.2 23 (% class="box infomessage" %)
24 (((
25 **{{id name="_Toc1"/}}addHeaderRow** - добавление строки с заголовками в таблицу
26 )))
Bimit Administrator 2.2 27
Bimit Administrator 5.2 28 * **table.addHeaderRow ("Заголовок 1","Заголовок 2","Заголовок 3")** - сколько заголовков, столько и столбцов в итоговой странице
Bimit Administrator 3.2 29
Bimit Administrator 1.2 30 **Пример использования:**
Bimit Administrator 3.4 31
Bimit Administrator 3.2 32 {{code language="java"}}
Bimit Administrator 3.8 33 table.addHeaderRow("Заголовок 1","Заголовок 2","Заголовок 3")
Bimit Administrator 3.2 34 {{/code}}
35
36
37 (% class="box infomessage" %)
38 (((
39 **{{id name="_Toc2"/}}addRow** - добавление строки
40 )))
41
Bimit Administrator 5.2 42 * **table.addRow ("Строка 1","Строка 2","Строка 3")** - создает строку с выбранными данными
43 * **table.addRow ()** - создает пустую строку
Bimit Administrator 3.2 44
45 **Примеры использования:**
46
47 {{code language="java"}}
Bimit Administrator 3.8 48 table.addRow("Строка 1","Строка 2","Строка 3")
Bimit Administrator 3.2 49 {{/code}}
50
51 {{code language="java"}}
Bimit Administrator 3.8 52 table.addRow()
Bimit Administrator 3.2 53 {{/code}}
54
55
56 (% class="box infomessage" %)
57 (((
Bimit Administrator 7.1 58 **{{id name="_Toc14"/}}insertRow** - добавление содержимого строки
59 )))
60
61 * **table.insertRow (int indexRow, Map<Object, Object>... inp)** - добавление содержимого строки по указанному индексу
62 * **table.insertRow (int indexRow, Object... inp)** - добавление содержимого строки по указанному индексу
63
64 **Пример использования:**
65
66 {{code language="java"}}{{/code}}
67
68 {{code language="java"}}{{/code}}
69
70
71 (% class="box infomessage" %)
72 (((
Bimit Administrator 3.2 73 **{{id name="_Toc3"/}}addCell** - добавление ячейки в таблицу
74 )))
75
Bimit Administrator 5.2 76 * **table.addCell (индекс строки, индекс столбца, данные)**
77 * **table.addCell (1,1, "123")** - создает ячейку в указанном поле или заменяет существующую
78 * **table.addCell (индекс столбца, данные)**
79 * **table.addCell (1, "123")** - заменяет существующую в указанном столбце
Bimit Administrator 3.2 80
81 **Примеры использования:**
82
83 {{code language="java"}}
Bimit Administrator 3.8 84 table.addCell(индекс строки, индекс столбца, данные)
Bimit Administrator 3.2 85 {{/code}}
86
87 {{code language="java"}}
Bimit Administrator 3.11 88 table.addCell(1,1, "123")
Bimit Administrator 3.2 89 {{/code}}
90
Bimit Administrator 3.4 91 {{code language="java"}}
Bimit Administrator 3.8 92 table.addCell(индекс столбца, данные)
Bimit Administrator 3.4 93 {{/code}}
94
95 {{code language="java"}}
Bimit Administrator 3.12 96 table.addCell(1, "123")
Bimit Administrator 3.4 97 {{/code}}
98
99
Bimit Administrator 3.2 100 (% class="box infomessage" %)
101 (((
102 **{{id name="_Toc4"/}}addButton** - добавление кнопки с действием
103 )))
104
Bimit Administrator 5.3 105 * **table.addButton (int indexColumn, int indexRow, String buttonName, String ACTION_TYPE, Object... args)**
Bimit Administrator 3.2 106 Количество и тип передаваемых данных зависит от действия
107
Bimit Administrator 3.5 108 **Типы действий:**
Bimit Administrator 3.2 109
Bimit Administrator 5.1 110 (% cellspacing="0" style="border-collapse:collapse; border:none; width:850px" %)
111 |(% style="border-color:#000000; border-style:solid; border-width:1px; padding:7px; vertical-align:top; width:363px" %)**SHOW_ELEMENTS**|(% style="border-color:#000000; border-style:solid; border-width:1px; padding:7px; vertical-align:top; width:485px" %)подсветка элементов на модели по defoult (обычная выборка)
112 |(% style="border-color:#000000; border-style:solid; border-width:1px; padding:7px; vertical-align:top; width:363px" %)**SHOW_GROUP_ELEMENTS**|(% style="border-color:#000000; border-style:solid; border-width:1px; padding:7px; vertical-align:top; width:485px" %)подсветка элементов на модели в соответствии с назначенными для них цветами (если цвет не назначен, то по defoult)
Bimit Administrator 3.2 113
Bimit Administrator 5.1 114 **Примеры использования:**
Bimit Administrator 3.2 115
116
Bimit Administrator 5.2 117 {{code language="java"}}
118 table.addButton(1,3,"click","SHOW_ELEMENTS",["29dec5b9-bfe8-4189-82c7-7aec4c858fce", "98cff622-b2a9-475b-be6d-77f443f0ed53"])
119 {{/code}}
Bimit Administrator 5.1 120
Bimit Administrator 3.5 121 {{code language="java"}}
Bimit Administrator 3.6 122 table.addButton(1,1, "color el", "SHOW_GROUP_ELEMENTS", "#FF0000",
123 ["98cff622-b2a9-475b-be6d-77f443f0ed53", "bd70e912-ffaf-4374-8185-e1d44bd4461e", "29dec5b9-bfe8-4189-82c7-7aec4c858fce"])
Bimit Administrator 3.5 124 {{/code}}
125
Bimit Administrator 3.13 126 {{code language="java"}}
127 def arr = []
128 def conditionOne = bim.createCondition("class", "eq", "IfcPile")
129
130 def el = bim.getElements(conditionOne)
131
132 arr.add(el[0].uuid)
133 arr.add(new Colored("#F322dd", el[1]))
134 arr.add(new Colored("#F30011", el[3].uuid))
135 arr.add(new Colored("#F399dd", "493105b3-d8ab-422e-95ea-dbaab48c8a68"))
136 arr.add(new Colored("#002fff", "2049c986-1f49-4a39-8c1a-dc19348f9d40"))
Bimit Administrator 3.5 137
Bimit Administrator 3.13 138 table.addButton(1,1, "color group", "SHOW_GROUP_ELEMENTS", "#ff6600", arr)
139 table.addButton(2,1, "group", "SHOW_GROUP_ELEMENTS", arr)
140 {{/code}}
141
142
Bimit Administrator 3.2 143 (% class="box infomessage" %)
144 (((
145 **{{id name="_Toc5"/}}setPageSize** - установка количества элементов на одной странице
146 )))
147
Bimit Administrator 5.4 148 * **table.setPageSize (количество элементов на странице)** - устанавливает количество отображаемых элементов  (по умолчанию 10)
Bimit Administrator 3.2 149
150 **Примеры использования:**
151
152 {{code language="java"}}
Bimit Administrator 3.8 153 table.setPageSize(10)
Bimit Administrator 3.2 154 {{/code}}
155
156
157 (% class="box infomessage" %)
158 (((
159 **{{id name="_Toc6"/}}showPage** - установка текущей отображаемой таблиц
160 )))
161
Bimit Administrator 6.1 162 * **table.showPage (индекс текущей страницы)** - устанавливает текущую страницу (нумерация начинается с 1)
Bimit Administrator 3.2 163
164 **Примеры использования:**
165
166 {{code language="java"}}
Bimit Administrator 3.8 167 table.showPage(1)
Bimit Administrator 3.4 168 {{/code}}
Bimit Administrator 5.3 169
170 (% class="box infomessage" %)
171 (((
172 **{{id name="_Toc7"/}}replaceRow** - замена содержимого строки по указанному индексу с указанием новых данных
173 )))
174
175 * **table.replaceRow (int indexRow, Object... inp)**
176
177 **Пример использования:**
178
Bimit Administrator 5.4 179 {{code language="java"}}{{/code}}
Bimit Administrator 5.3 180
181 (% class="box infomessage" %)
182 (((
183 **{{id name="_Toc8"/}}sortASC** - установка параметров для сортировки данных в таблице по возрастанию с указанием столбца
184 )))
185
186 * **table.sortASC (int indexColumn)**
187
188 **Пример использования:**
189
Bimit Administrator 5.4 190 {{code language="java"}}{{/code}}
Bimit Administrator 5.3 191
192 (% class="box infomessage" %)
193 (((
194 **{{id name="_Toc9"/}}sortDESC** - установка параметров для сортировки данных в таблице по убыванию с указанием столбца
195 )))
196
197 * **table.sortDESC (int indexColumn)**
198
199 **Пример использования:**
200
Bimit Administrator 5.4 201 {{code language="java"}}{{/code}}
Bimit Administrator 5.3 202
203 (% class="box infomessage" %)
204 (((
205 **{{id name="_Toc10"/}}createGroupElements** - создание группы элементов с указанием цвета группы и списка элементов
206 )))
207
208 * **table.createGroupElements (String color, List<T> elements)**
209
210 **Пример использования:**
211
Bimit Administrator 5.4 212 {{code language="java"}}{{/code}}
Bimit Administrator 5.3 213
214 (% class="box infomessage" %)
215 (((
216 **{{id name="_Toc11"/}}saveTempTable** - сохранение временной таблицы (перед сохранением сортирует данные)
217 )))
218
219 * **table.saveTempTable ()**
220
221 **Пример использования:**
222
Bimit Administrator 5.4 223 {{code language="java"}}{{/code}}
Bimit Administrator 5.3 224
225 (% class="box infomessage" %)
226 (((
227 **{{id name="_Toc12"/}}xlsxToJSON** - преобразование документа Excel (XLSX, XLS) в формат JSON
228 )))
229
230 * **table.xlsxToJSON ()**
231
232 **Пример использования:**
233
Bimit Administrator 5.4 234 {{code language="java"}}{{/code}}
Bimit Administrator 5.3 235
236 (% class="box infomessage" %)
237 (((
238 **{{id name="_Toc13"/}}xlsxToJSON** - преобразование документа Excel (XLSX, XLS) в формат JSON с учетом пагинации
239 )))
240
241 * **table.xlsxToJSON (int page, int pageSize)**
242
243 **Пример использования:**
244
Bimit Administrator 5.4 245 {{code language="java"}}{{/code}}
Bimit Administrator 7.13 246
247 (% class="box infomessage" %)
248 (((
249 **{{id name="_Toc14"/}}setFontBold** - применение жирного шрифта
250 )))
251
252 * **table.setFontBold (индекс столбца, индекс строки)**
253
254 **Пример использования:**
255
256 {{code language="java"}}
257 //Применить на всю таблицу
258 table.setFontBold(0, 0)
Bimit Administrator 7.14 259
Bimit Administrator 7.13 260 //Применить на конкретную строку
261 table.setFontBold(0, 2)
Bimit Administrator 7.14 262
Bimit Administrator 7.13 263 //Применить на конкретный столбец
264 table.setFontBold(4, 0)
Bimit Administrator 7.14 265
Bimit Administrator 7.13 266 //Применить на конкретную ячейку
267 table.setFontBold(4, 2)
268 {{/code}}
269
Bimit Administrator 7.15 270
271 (% class="box infomessage" %)
272 (((
273 **{{id name="_Toc15"/}}setFontItalic** - применение курсива
274 )))
275
276 * **table.setFontItalic (индекс столбца, индекс строки)**
277
278 **Пример использования:**
279
280 {{code language="java"}}
281 //Применить на всю таблицу
282 table.setFontItalic(0, 0)
283
284 //Применить на конкретную строку
285 table.setFontItalic(0, 2)
286
287 //Применить на конкретный столбец
288 table.setFontItalic(4, 0)
289
290 //Применить на конкретную ячейку
291 table.setFontItalic(4, 2)
292 {{/code}}
293
294
295 (% class="box infomessage" %)
296 (((
297 **{{id name="_Toc16"/}}setFontSize** - применение размера шрифта
298 )))
299
300 * **table.setFontSize (размер шрифта, индекс столбца, индекс строки)**
301
302 **Пример использования:**
303
304 {{code language="java"}}
305 //Применить на всю таблицу
306 table.setFontSize(12, 0, 0)
307
308 //Применить на конкретную строку
309 table.setFontSize(15, 0, 2)
310
311 //Применить на конкретный столбец
312 table.setFontSize(8, 4, 0)
313
314 //Применить на конкретную ячейку
315 table.setFontSize(20, 4, 2)
316 {{/code}}
317
318
319 (% class="box infomessage" %)
320 (((
Bimit Administrator 7.16 321 **{{id name="_Toc17"/}}setCellAlignment** - применение выравнивания
Bimit Administrator 7.15 322 )))
323
324 * **table.setCellAlignment (сторона выравнивания, индекс столбца, индекс строки)**
325
326 **Пример использования:**
327
328 {{code language="java"}}
329 //Применить на всю таблицу
330 table.setFontSize("left", 0, 0)
331
332 //Применить на конкретную строку
333 table.setFontSize("center", 0, 2)
334
335 //Применить на конкретный столбец
336 table.setFontSize("right", 4, 0)
337
338 //Применить на конкретную ячейку
339 table.setFontSize("left", 4, 2)
340 {{/code}}