Четверг, 10.10.2024, 13:04
Главная Регистрация RSS
Приветствую Вас, Гость
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Глобальное меню для табдока: различные значения колонки
MaxДата: Вторник, 16.02.2021, 19:06 | Сообщение # 1
Генерал-майор
Группа: Пользователи
Сообщений: 276
Репутация: 148
Статус: Оффлайн
Дано: любой типовой отчет в любой типовой конфигурации.
Пример (выбрать любого пользователя, кроме "Продавец"): https://platform.demo.1c.ru/demo83....асчетам

Хочу получить различные значения колонки отчета (табличного документа). Сейчас для этого приходится выделять все ячейки какого-либо столбца.
Но в отчетах по умолчанию заголовки (цифра с номером столбца, куда можно щелкнуть и выделить весь столбец) не отображаются, поэтому выделить весь столбец весьма хлопотно.
Хотелось бы просто встать в любую ячейку столбца табличного документа и по команде глобального меню чтоб весь этот столбец передавался в таблицу / в список различных значений.
Сделать такое поведение, например, только если выделена только одна ячейка, т.к. вроде как в этом случае выполнение команды (выводить одну ячейку) не имеет смысла. Или реализовать под это дело отдельную команду, или реализовать вопрос перед выполнением команды "Вывести данные", например "Выделена одна ячейка. Хотите вывести весь столбец?" с вариантом "Да" по умолчанию в этом случае.
 
tormozitДата: Вторник, 16.02.2021, 19:26 | Сообщение # 2
Генералиссимус
Группа: Администраторы
Сообщений: 6386
Репутация: 165
Статус: Оффлайн
1. Колонка может быть очень большой.
2. Шапка и подвал будут всегда попадать в такой список значений и опознать эти лишние текстовые значения может быть непросто, особенно если их не будет в видимой области.
3. Нужен скриншот ситуации, в которой ты хочешь это применять. Также нужен сам табличный документ со скриншота.
 
MaxДата: Вторник, 16.02.2021, 19:47 | Сообщение # 3
Генерал-майор
Группа: Пользователи
Сообщений: 276
Репутация: 148
Статус: Оффлайн
Пример отчета:


Колонка "Клиент". Хочу вывести список всех различных клиентов, чтобы воспользоваться поиском среди них по ссылке, а не по представлению.
Прикрепления: New.mxl (24.2 Kb) · 4626049.png (61.8 Kb)
 
tormozitДата: Вторник, 16.02.2021, 20:07 | Сообщение # 4
Генералиссимус
Группа: Администраторы
Сообщений: 6386
Репутация: 165
Статус: Оффлайн
Ссылки тут будут только если это результат компоновки в форме отчета. А там ты в большинстве случаев можешь "Отладить компоновку" через то же глобальное меню и уже в консоли компоновки вывести результат в таблицу значений. У это команды намного меньше потерь информации будет и выше стабильность работы.

Основная проблема для меня здесь будет - как найти где начинается и кончается область строк таблицы и часто будут группировки, с которым непонятно как поступать. Если ее пользователь выделяет сам, то проблема отпадает. Поэтому решать это на автомате очень сложно в общем случае.

Попробуй для своего пример написать код который хоть сколько то универсально найдет начало и конец строк таблицы. Думаю тогда станет понятнее сложность задачи.

Кстати для таблиц без группировок в табличных документах я похожую задачу для простых случаев решил в инструменте "Загрузка табличных данных". В твоем примере он правильно находит шапку но не находит подвал.
 
tormozitДата: Вторник, 16.02.2021, 20:38 | Сообщение # 5
Генералиссимус
Группа: Администраторы
Сообщений: 6386
Репутация: 165
Статус: Оффлайн
Создал задачу для обдумывания https://www.hostedredmine.com/issues/920275
 
MaxДата: Среда, 17.02.2021, 09:52 | Сообщение # 6
Генерал-майор
Группа: Пользователи
Сообщений: 276
Репутация: 148
Статус: Оффлайн
Цитата tormozit ()
А там ты в большинстве случаев можешь "Отладить компоновку"
Для встроенных отчетов всегда отладкой компоновки раньше и пользовался. А теперь вот для дополнительных (подключаемых к БСП) понадобилось, поэтому и полез через команду "Вывести данные".
Цитата tormozit ()
Попробуй для своего пример написать код который хоть сколько то универсально найдет начало и конец строк таблицы. Думаю тогда станет понятнее сложность задачи.
Для режима, который только значения расшифровки (меня интересуют только ссылки в ячейках) будет получать, можно вообще ничего не определять и не отсекать. Пусть алгоритм бежит по всем ячейкам с заданным (активным на момент вызова команды) номером столбца.
Для режима, который будет собирать текстовые значения ячеек, тоже можно ничего не отсекать - меня полностью устроил бы вариант с охватом всего столбца. Пусть там и будет несколько ненужных значений.

Другое дело, захочешь ли ты добавлять в ИР такую "корявую" (грубую) функциональность.
 
tormozitДата: Понедельник, 01.03.2021, 08:03 | Сообщение # 7
Генералиссимус
Группа: Администраторы
Сообщений: 6386
Репутация: 165
Статус: Оффлайн
Реализовано в 5.81
 
tormozitДата: Среда, 17.03.2021, 12:23 | Сообщение # 8
Генералиссимус
Группа: Администраторы
Сообщений: 6386
Репутация: 165
Статус: Оффлайн
Попробовал новую возможность для решения своей задачи? Если да, то хотелось бы узнать, насколько удобно она решается.
 
MaxДата: Среда, 17.03.2021, 18:09 | Сообщение # 9
Генерал-майор
Группа: Пользователи
Сообщений: 276
Репутация: 148
Статус: Оффлайн
Не пробовал, т.к. перешел на вариант "Подсистема" несколько месяцев назад, из-за чего лишился оперативной возможности обновления версий ИР.

Добавлено (08.04.2021, 13:29)
---------------------------------------------
Попробовал команду "Вывести данные выделенных ячеек". Если выделена одна ячейка, то задается вопрос - с этим все отлично.
Только если табдок в первой строке содержит заголовок / параметры / отбор (полагаю, это можно заменить на условие "первая строка табдока не содержит шапку отчета"), то выдается сообщение-вопрос о том, что ячейки не содержат расшифровки, и в результат вывода всегда попадают представления ячеек, несмотря на то, что в столбце отчета есть расшифровка и ссылки.

Это неожидаемое поведение, хоть и повторяет сценарий, когда я выделяю несколько ячеек этого же самого столбца вместе с заголовком (в этом случае тоже выдается сообщение об отсутствии расшифровки и в результат вывода попадают только строки).

А вот если я выделяю несколько ячеек, не захватывая ячейку заголовка, то никакие вопросы не задаются и в результат вывода попадают значения из расшифровки.

Полагаю, поведение нового режима (для одной строки) повторяет поведение, как если бы столбец выделялся целиком весь (с захватом ячейки шапки) и поэтому к текущей теме не относится. Заведу про это отдельную тему.

 
  • Страница 1 из 1
  • 1
Поиск: