diff --git a/docs/form-dsl-spec.md b/docs/form-dsl-spec.md index b887549f..f2dc2378 100644 --- a/docs/form-dsl-spec.md +++ b/docs/form-dsl-spec.md @@ -355,6 +355,18 @@ Pages поддерживает `pagesRepresentation`: `None`, `TabsOnTop`, `Tabs { "picField": "Фото", "path": "Фотография" } ``` +Для поля, привязанного к булеву/числу (иконка-индикатор в колонке), задайте картинку значения через `valuesPicture` — без неё иконка не отрисуется: + +```json +{ "picField": "Картинка", "path": "Таблица.Картинка", + "valuesPicture": "StdPicture.Favorites", "loadTransparent": true } +``` + +| Свойство | Тип | Описание | +|----------|-----|----------| +| `valuesPicture` | string | Ссылка на картинку значения (`StdPicture.*`, `CommonPicture.*`) | +| `loadTransparent` | bool | Скрыть кадр «нет значения». Выводится только при `true` | + #### calendar — CalendarField ```json diff --git a/docs/web-test-guide.md b/docs/web-test-guide.md index 814616dc..7ea9f1c6 100644 --- a/docs/web-test-guide.md +++ b/docs/web-test-guide.md @@ -271,6 +271,16 @@ const t = await readTable(); `hasMore.below` присутствует всегда. `hasMore.above` тоже обычно есть — определяется по кнопкам пагинации (`vertButtonScroll`, есть у большинства дин-списков) или треку скроллбара (у табчастей). Отсутствует только в редких случаях, когда у грида нет ни кнопок, ни видимого скроллбара — тогда трактуйте отсутствие как «неизвестно». +**Колонки-картинки.** Ячейки, где выводится иконка (статусы, этапы, индикатор ЭДО, скрепка «есть файл»), читаются как `'pic:'` при наличии иконки (`N` — индекс кадра/состояния) и `''` при её отсутствии. Присутствие читается как truthy, разные иконки различаются по индексу: + +```js +const t = await readTable(); +if (t.rows[0]['Присоединенные файлы']) { /* у строки есть прикреплённый файл */ } +t.rows[0]['ЭДО'] === 'pic:1'; // подключён к 1С-ЭДО ('pic:0' = нет) +``` + +Колонки без текста в заголовке (одна иконка) тоже попадают в `columns`, именуются по тултипу заголовка или `'(picture)'` — служебное имя колонки 1С в браузер не передаёт. Картиночные значения — **только для чтения и ассертов**: отбирать/фильтровать строки по `'pic:N'` нельзя (фильтр по такому значению бросает понятную ошибку, расширенный поиск 1С такое поле не покажет). Для выбора строки фильтруйте по текстовой колонке; кликать по картиночной ячейке можно по индексу строки. + #### clickElement — клик по ячейке (spreadsheet или грид формы) Первый аргумент `clickElement` принимает объект `{ row, column }` вместо текста. Маршрутизация автоматическая: если на форме отрисован SpreadsheetDocument (отчёт) — кликаем туда (drill-down), иначе — по ячейке грида (табчасть, список). Параметр `table: 'ИмяГрида'` принудительно указывает грид, если на форме одновременно есть отчёт и таблицы.