Имя: Пароль:
1C
1С v8
Автоупорядочивание при получении остатков
0 Slon747
 
18.12.13
10:18
Имеем такой запрос:

ВЫБРАТЬ
    ТоварыНаСкладахОстатки.КоличествоОстаток,
    ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура
ИЗ
    РегистрНакопления.ТоварыНаСкладах.Остатки КАК ТоварыНаСкладахОстатки

Получаем остатки на каждую номенклатуру без учета других измерений.
Теперь такой запрос:

ВЫБРАТЬ
    ТоварыНаСкладахОстатки.КоличествоОстаток,
    ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура
ИЗ
    РегистрНакопления.ТоварыНаСкладах.Остатки КАК ТоварыНаСкладахОстатки

УПОРЯДОЧИТЬ ПО
    Номенклатура
АВТОУПОРЯДОЧИВАНИЕ

Получаем дублированные позиции номенклдатуры.
Если сортировать не через автоупорядочивание, а по наименованию, то выводит без дубляжей.
Почему с автоупорядочиванием он выводит остатки так, как будто в выбранных полях присутствуют другие измерения?
1 Slon747
 
18.12.13
16:44
up
2 H A D G E H O G s
 
18.12.13
16:51
Реиндексация, пересчет итогов.
3 selenat
 
18.12.13
17:25
(0) поставить группировку и не париться.
4 Fragster
 
гуру
18.12.13
17:28
ВЫБРАТЬ * Из
(ВЫБРАТЬ
    ТоварыНаСкладахОстатки.КоличествоОстаток,
    ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура
ИЗ
    РегистрНакопления.ТоварыНаСкладах.Остатки КАК ТоварыНаСкладахОстатки) КАК Вложенный

УПОРЯДОЧИТЬ ПО
    Номенклатура

АВТОУПОРЯДОЧИВАНИЕ
5 Slon747
 
18.12.13
18:27
(3) Это понятно. Просто интересно почему.
И главное потом не забыть, чтобы снова не не наколоться.
6 Fragster
 
гуру
18.12.13
18:29
(5) ну залезь в скуляку, посмотри профайлером текст запроса. я от автоупорядочивания отказался, когда увидел _это_ (там соединение на каждый составной тип + дикий order by)
7 Wobland
 
18.12.13
18:30
то есть, автоупорядочивание добавляет данных. неплохо
8 kiruha
 
18.12.13
18:41
(0)
Потому что запрос некорректен.
В общем случае количество строк определяется автоматически по наличию полей.

В данном случае словил автоупорядочивание.
Заключи во вложенный и там выводи