Имя: Пароль:
1C
1С v8
Запрос не работает в СКД
,
0 УдавВПопугаях
 
15.10.20
09:21
Доброго всем. Запрос

ВЫБРАТЬ РАЗЛИЧНЫЕ ПЕРВЫЕ 20
    Таблица.Период КАК Период,
    Таблица.СопроводительныйЛист,
    Таблица.Счетчик,
    Таблица.ИДОперации
ПОМЕСТИТЬ ВТ
ИЗ
    РегистрСведений.РегистрСведений1.СрезПоследних КАК РегистрСведений1
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.РегистрСведений2 КАК РегистрСведений2
            ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.РегистрСведений3 КАК РегистрСведений3
            ПО РегистрСведений2.Счетчик = РегистрСведений3.Счетчик
        ПО РегистрСведений1.Счетчик = РегистрСведений2.Счетчик

УПОРЯДОЧИТЬ ПО
    РегистрСведений1.Период

в консоли запросов вопросов не вызывает. Если поле упорядочивания не добавить в выборку, то ругань, понятно, добавляем - все ок. Копируем текст запроса с выбранным полем в СКД и снова ругань, конструктор запроса ошибки не выдает, только когда начинает компоноваться, так понимаю еще в самом начале, когда набор данных создает

В запросе с предложением РАЗЛИЧНЫЕ все поля, по которым происходит упорядочивание, должны присутствовать в списке выборки
<<?>>РегистрСведений1.Период

кто сталкивался, как решить?
1 fisher
 
15.10.20
09:30
Что такое "Таблица" в ВЫБРАТЬ? В запросе я такого синонима не вижу.
2 УдавВПопугаях
 
15.10.20
09:31
ВЫБРАТЬ РАЗЛИЧНЫЕ ПЕРВЫЕ 20
    РегистрСведений1.Период КАК Период,
    РегистрСведений1.СопроводительныйЛист,
    РегистрСведений1.Счетчик,
    РегистрСведений1.ИДОперации
ПОМЕСТИТЬ ВТ
ИЗ
    РегистрСведений.РегистрСведений1.СрезПоследних КАК РегистрСведений1
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.РегистрСведений2 КАК РегистрСведений2
            ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.РегистрСведений3 КАК РегистрСведений3
            ПО РегистрСведений2.Счетчик = РегистрСведений3.Счетчик
        ПО РегистрСведений1.Счетчик = РегистрСведений2.Счетчик

УПОРЯДОЧИТЬ ПО
    РегистрСведений1.Период
3 УдавВПопугаях
 
15.10.20
09:32
звиняйте
4 fisher
 
15.10.20
09:34
Отсюда не видно, но похоже что СКД в режиме автоматических настроек думает, что РегистрСведений1.Период нигде не используется и поэтому исключает его из выборки при построении результирующего запроса.
Навскидку могу предложить только отключить автозаполнение настроек и прописать все руками. Либо добавить, если это допустимо, явное использование поля Период.
5 alkorolev
 
15.10.20
09:38
ну дык ты из ВТ данные вытащи для схемы. Либо вообще туда не помещай
6 fisher
 
15.10.20
09:38
Чтобы точно понять, что происходит, нужно подсмотреть у СКД текст результирующего запроса. У продвинутых консолей есть такая опция.
7 toypaul
 
гуру
15.10.20
09:41
в последнем пакете запроса нужно поле "Период" добавить. например как

Максимум(Период)

для начала надо подумать накой нужен упорядочить во временной таблице. уже здесь что-то не ладно.
8 УдавВПопугаях
 
15.10.20
09:41
(4) мля, ну точно, не понимает / не видит она

Большое спасибо :)

(6) для 8.2 есть такие? или как обычно называются, как погуглить?
9 УдавВПопугаях
 
15.10.20
09:42
спасибо Олл)
10 toypaul
 
гуру
15.10.20
09:43
11 toypaul
 
гуру
15.10.20
09:44
вот здесь http://catalog.mista.ru/courses/1300078/ рассказывал про отладку СКД чуть подробнее чем в (10)
12 fisher
 
15.10.20
10:02
(8) Я пользуюсь "Инструментами разработчика" от tormozit: http://catalog.mista.ru/public/15126/
13 fisher
 
15.10.20
10:03
У них есть и portable-версия
14 TormozIT
 
гуру
15.10.20
10:05
15 УдавВПопугаях
 
15.10.20
10:20
ёпырст, там целая подсистема, надо разбираться, спасибо, качнул, лайкнул
16 GANR
 
15.10.20
11:03
А в консоль системы компоновки данных которая с ИТС загонял запрос? Не видно, во что СКД его преобразует. Еще есть такой флажок Автозаполнение на закладке наборы данных. Его отключение что-то меняет?
17 УдавВПопугаях
 
15.10.20
11:26
(16) не пробовал, по логике должно помочь, в моем случае разницы откуда взять период нет, добавил в итоговую выборку из вт поле сортировки - скд поняла, что поле есть, ругаться перестала