Имя: Пароль:
1C
 
В каком случае СКД может выкидывать строки из результата запроса?
0 МнеТолько Спросить
 
17.06.22
04:38
Всем привет! В СКД получаю представления таблицы регистра кадровая история. Я в курсе про представления кадровых сведений сотрудников, мне нужны все даты, когда человек менял филиал. Получаю даты приблизительно таким образом:

ВЫБРАТЬ
    ДАТАВРЕМЯ(1, 1, 1) КАК Период,
    ЗНАЧЕНИЕ(Справочник.Сотрудники.ПустаяСсылка) КАК Сотрудник,
    ЗНАЧЕНИЕ(Справочник.Организации.ПустаяСсылка) КАК Организация,
ПОМЕСТИТЬ Представления_ТаблицаРегистра_КадроваяИсторияСотрудников
ИЗ
    ВТОтборДляТаблицыРегистра КАК ОтборДляТаблицыРегистра

Потом группирую по полям сотрудник и организация и все хорошо. На выходе у меня столько записей, сколько разных филиалов было у этого сотрудника. Если вывести эти три поля или использовать в любом другом запросе, то все хорошо. Но если отключить поле организация(в СКД или просто выбрать данные без него) то я получаю одну запись - последнюю. Группировок нет. Да и даже при их наличии поле период всегда разное. Как может работать эта магия?
1 toypaul
 
гуру
17.06.22
08:08
все формирования временных таблиц должны выглядеть не так

выбрать поле_которое_используется,поле_которое_не_используется, например_сумма(поле)
поместить вт
из т
сгруппировать по
поле_которое_используется, поле_которое_не_используется

а так

выбрать поле_которое_используется, например_сумма(поле)
поместить вт
из т
сгруппировать по
поле_которое_используется,поле_которое_не_используется
2 МнеТолько Спросить
 
17.06.22
08:50
(1)Непонятно в чем разница, но в силу потребностей в отчете работает именно так
Первая таблица представления
Вторая таблица группирует данные из таблицы представлений
Третий запрос выбирает данные из второй таблицы
3 toypaul
 
гуру
17.06.22
12:39
(2) надо осилить и найти в чем разница. это проще детской игры
4 МнеТолько Спросить
 
17.06.22
12:45
(3)Ну типа ок. Положил в другую таблицу. Ничего не изменилось. Оптимизатор по прежнему выкидывает, так как считает, что оно не нужно. Что еще можно сделать с этим?
5 rozer76
 
17.06.22
13:14
(4) может попробовать описать поля набора вручную а не через галку "автозаполнение" ...