Имя: Пароль:
1C
1С v8
Проблема сортировки в форме списка.
,
0 Anton 11
 
11.07.17
18:08
Всем привет! нужна помощь. Имеется форма списка в обработке. Идёт динамическое считывание данных. Имеется реквизит строкового типа. При этом он есть в отборе, но его нету в сортировке. И сортировка по нему не возможна при нажатии на колонку таблицы. Как так и почему?
1 Anton 11
 
11.07.17
18:15
ВЫБРАТЬ
    РеестрДокументов.Ссылка КАК Ссылка,
    РеестрДокументов.НомерДокументаИБ КАК Номер,
    РеестрДокументов.ДатаДокументаИБ КАК Дата,
    РеестрДокументов.Статус КАК Статус,
    РеестрДокументов.Проведен КАК Проведен,
    РеестрДокументов.ПометкаУдаления КАК ПометкаУдаления,
    РеестрДокументов.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
    РеестрДокументов.Партнер КАК Партнер,
    РеестрДокументов.Контрагент КАК Контрагент,
    РеестрДокументов.Организация КАК Организация,
    РеестрДокументов.Подразделение КАК Подразделение,
    РеестрДокументов.МестоХранения КАК Склад,
    РеестрДокументов.Валюта КАК Валюта,
    РеестрДокументов.Сумма КАК СуммаДокумента,
    РеестрДокументов.Ответственный КАК Менеджер,
    РеестрДокументов.Комментарий КАК Комментарий,
    РеестрДокументов.НомерПервичногоДокумента КАК НомерВходящегоДокумента,
    РеестрДокументов.ДатаПервичногоДокумента КАК ДатаВходящегоДокумента,
    РеестрДокументов.Дополнительно КАК Дополнительно,
    СостоянияЭД.СостояниеВерсииЭД КАК СостояниеВерсииЭД,
    ВЫБОР
        КОГДА ДокументыСОшибкамиПроверкиКонтрагентов.Документ ЕСТЬ NULL
            ТОГДА ЛОЖЬ
        ИНАЧЕ ИСТИНА
    КОНЕЦ КАК ЕстьОшибкиПроверкиКонтрагентов,
    ВЫБОР
        КОГДА РеестрДокументов.Проведен
            ТОГДА 0
        КОГДА РеестрДокументов.ПометкаУдаления
            ТОГДА 1
        ИНАЧЕ 2
    КОНЕЦ КАК НестандартнаяКартинка,
    РеестрДокументов.ДополнительнаяЗапись КАК ДополнительнаяЗапись,
    РеестрДокументов.ТипСсылки КАК ТипСсылки,
    &СтатусПроверки КАК СтатусПроверки,
    &ИндикаторПроверки КАК ИндикаторПроверки,
    ТИПЗНАЧЕНИЯ(РеестрДокументов.Ссылка) КАК ТипЗначения,
    РеестрДокументов.Ссылка.НомерБСО КАК НомерБСО
ИЗ
    РегистрСведений.РеестрДокументов КАК РеестрДокументов
        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияЭД КАК СостоянияЭД
        ПО (СостоянияЭД.СсылкаНаОбъект = РеестрДокументов.Ссылка)
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДокументыСОшибкамиПроверкиКонтрагентов КАК ДокументыСОшибкамиПроверкиКонтрагентов
        ПО РеестрДокументов.Ссылка = ДокументыСОшибкамиПроверкиКонтрагентов.Документ
            И (&ИспользованиеПроверкиВозможно)}
{ГДЕ
    РеестрДокументов.Ссылка.* КАК Ссылка,
    РеестрДокументов.МестоХранения.* КАК Склад,
    РеестрДокументов.Организация.* КАК Организация,
    РеестрДокументов.ДатаДокументаИБ КАК Дата,
    РеестрДокументов.НомерДокументаИБ КАК Номер,
    РеестрДокументов.Статус КАК Статус,
    РеестрДокументов.ТипСсылки КАК ТипСсылки,
    РеестрДокументов.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
    РеестрДокументов.Подразделение.* КАК Подразделение,
    РеестрДокументов.Ответственный.* КАК Менеджер,
    РеестрДокументов.Дополнительно КАК Дополнительно,
    РеестрДокументов.Комментарий КАК Комментарий,
    РеестрДокументов.Проведен КАК Проведен,
    РеестрДокументов.ПометкаУдаления КАК ПометкаУдаления,
    ((РеестрДокументов.ДатаДокументаИБ >= &НачалоПериода
            ИЛИ &НачалоПериода = ДАТАВРЕМЯ(1, 1, 1))
            И (РеестрДокументов.ДатаДокументаИБ <= &КонецПериода
                ИЛИ &КонецПериода = ДАТАВРЕМЯ(1, 1, 1)))}
2 Anton 11
 
11.07.17
18:16
Интересует поле РеестрДокументов.Ссылка.НомерБСО КАК НомерБСО

при этом например РеестрДокументов.Ссылка.КодБанка сортируется отлично, хотя тоже строковое поле.

РеестрДокументов.Ссылка составного типа
3 apokrit
 
11.07.17
18:19
(2) Может это строка неограниченной длины? По таким список сортировать не умеет.
4 Mankubus
 
11.07.17
18:21
>>РеестрДокументов.Ссылка составного типа
выбор полей через точку составного типа это очень плохо
5 Anton 11
 
11.07.17
18:22
(3) длина = 10
6 Anton 11
 
11.07.17
18:23
(4) знаю что плохо, но есть необходимость
7 Генератор
 
11.07.17
18:23
может ему индексирование с доп упорядочиванием поставить?
8 Mankubus
 
11.07.17
18:26
(6) а соединение использовать, не? или Выбор когда?
9 Anton 11
 
11.07.17
18:26
Всё я понял. В одном из документов , входящих в состав, это поле неограниченной длины. Спасибо разработчикам типовой УТ за такие косяки
10 Ёпрст
 
11.07.17
18:29
Так, не покатит ?
ПередОткрытием
ТвойСписок.Порядок.Установить("НомерБСО Убыв");
11 Anton 11
 
11.07.17
18:40
(10) Неее)
Ошибка? Это не ошибка, это системная функция.