Имя: Пароль:
1C
1С v8
Не получается настроить сортировку в динамическом списке
0 slafor
 
26.02.23
20:38
Есть обработка с динамическим списком, информация берется из Заказов покупателей. Никаких соединений, ни левых, ни правых там нет. Используется только основная таблица - "ИЗ Документ.ЗаказПокупателя". Запрос произвольный (потому что к части текстовых полей приходится добавлять свою текстовую информацию), но основная таблицы там есть. Так вот, в Заказе есть нетиповые, новые реквизиты - "Тип", "Город", "Срочность" и т.д. Это те, которые являются объектами ссылочного типа. Реквизит "Тип" я просто добавляю в список полей, и по нему автоматически включается возможность сортировки по этой колонке. А в других реквизитах появляется ошибка "Нельзя упорядочить список по колонке "<ИмяКолонки>"! Выберите другу колонку для упорядочивания.": https://disk.yandex.ru/i/EkoXmyJ9FZRXBA .

Почему это происходит и как можно обойти?
1 slafor
 
26.02.23
20:39
+(0) Да, более того - колонки почему-то выходят пустыми, хотя данные там точно есть!
И когда я этот же произвольный запрос запускаю в "Консоли запросов", все данные у меня в результате правильные.
2 Chameleon1980
 
26.02.23
20:44
А события приполученииданнызнасервере нет случайно?
3 eddy_n
 
26.02.23
20:48
В Настройках динамического списка на вкладке Запрос в качестве основной таблицы что указано?
4 slafor
 
26.02.23
21:27
(3) Таблица документа: https://disk.yandex.ru/i/LVKiy8tR4T87Zw .
5 slafor
 
26.02.23
21:29
(2) Там вообще нет такого события. Это же не СКД, это Динамический список на форме обработки.
6 eddy_n
 
26.02.23
22:20
Какой-то нетипичный параметр в запросе. Подозреваю, что есть ещё что-то нетипичное, что не позволяет штатному механизму работать штатно.
7 slafor
 
26.02.23
22:24
Вот что я тут неправильно мог ввести?

Пример запроса: https://disk.yandex.ru/i/LVKiy8tR4T87Zw . Я его уже показывал.

А вот я лезу в настройку списка уже в пользовательском режиме. И, как ни странно, поле "Тип заказа" там есть (хотя оно тоже не типовое, добавлено в реквизиты документа), а вот Города и Срочности нет: https://disk.yandex.ru/i/CrV1zguhNL1umw .
8 eddy_n
 
26.02.23
22:33
(7) Индексирование по этим двум полям в свойствах этого документа включено?
9 eddy_n
 
26.02.23
22:37
Это конечно проблему не решит, но так на всякий спросил.
10 eddy_n
 
26.02.23
22:39
Через Ссылка.Город тоже сортировка не устанавливается?
11 eddy_n
 
26.02.23
22:42
Недоступность сортировки динамического сможет быть из-за отсутствия активированной галочки "Включать в пользовательские настройки" вкладки "Порядок" в настройках динамического списка.
12 slafor
 
26.02.23
22:43
(8) Если речь идет про индексирование в настройках реквизита, то нет.
В реквизите Город такие настройки: https://disk.yandex.ru/i/VqKNGt_ud_izUg .
НО: в реквизите Тип заказа (который выводится и по которому все нормально сортируется) - такие же: https://disk.yandex.ru/i/mwHh5H0aQf026Q !

А если этот же запрос запускать с помощью консоли запросов - то все ОК, все поля видно в результате: https://disk.yandex.ru/i/CReorU85Bk_LyA .
13 slafor
 
26.02.23
22:44
(11) Галка есть.
14 eddy_n
 
26.02.23
22:46
(13) Верю, в противном случае нельзя было сделать сортировку ни по одному полю. Зря я спросил.
15 eddy_n
 
26.02.23
22:47
Индексирование - это тоже из разряда мёртвому припарка. Оно лишь на быстродействие динамики влияет.
16 eddy_n
 
26.02.23
22:51
А в самом запросе динамич. списка попробовать прикрутить секцию УПОРЯДОЧИТЬ ПО (естественно для начала по этим полям). Что платформа на это выдаст?
17 eddy_n
 
26.02.23
22:54
(16) + А может у тебя эти два поля имеют составной тип данных или строки неограниченной длины?
18 eddy_n
 
26.02.23
22:55
Или допустим Любая ссылка, любой справочник?
19 eddy_n
 
26.02.23
22:56
Надеюсь, что это не ХАРАКТЕРИСТИКИ?
20 slafor
 
26.02.23
23:08
Всем спасибо!

Это я сам виноват. Запутался "на пустом месте". Оказывается, в тексте модуля формы меняется текст запроса. То есть получается так: я создаю текст запроса а динамическом списке, вывожу новые колонки на табличную часть формы, а потом... текст запроса меняется, и там этих новых полей уже нет! И получается, что я мало того что не вывожу эти поля как колонки табличной части, так еще и сортировать по ним пытаюсь!

И ладно бы, если б я не знал о том, что текст запроса динамического списка меняется программно, так я еще сам эту часть и писал. Хм... А вроде не пятница ))
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший