Имя: Пароль:
1C
1С v8
СКД При наложении отбора пропадают значения в некоторых колонках отчета
0 Shpagoid
 
30.01.13
17:36
В запросе по остаткам я определяю последнюю дату снятия товара с резерва. Использую СКД - все замечательно. Как только накладываю отбор по складу - поле "ДатаСнятияСРезерва" становится пустым.

Резерв на товар естественно мог быть снять на любом складе. А при наложении отбора эти склады игнорируются.

СКД накладывает отбор не на результат, а на измерения регистров?
Как обойти эту проблему?

ВЫБРАТЬ
   ТоварыНаСкладахОстатки.Склад,
   ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура,
   ТоварыНаСкладахОстатки.СерияНоменклатуры КАК СерияНоменклатуры,
   МАКСИМУМ(ТоварыВРезервеНаСкладахОбороты.Период) КАК ДатаСнятияРезерва
ИЗ
   РегистрНакопления.ТоварыНаСкладах.Остатки КАК ТоварыНаСкладахОстатки
       ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыВРезервеНаСкладах.Обороты(, , Регистратор, ) КАК ТоварыВРезервеНаСкладахОбороты
       ПО ТоварыНаСкладахОстатки.СерияНоменклатуры = ТоварыВРезервеНаСкладахОбороты.СерияНоменклатуры

СГРУППИРОВАТЬ ПО
   ТоварыНаСкладахОстатки.Склад,
   ТоварыНаСкладахОстатки.Номенклатура,
   ТоварыНаСкладахОстатки.СерияНоменклатуры
1 IBTM
 
30.01.13
17:46
Метод тыка не предлогать? Косяк скорее в соединении. Возми консоль там попробуй с условием по своему полю склад. Ваще еще наверн соединять надо и по складам...
2 Shpagoid
 
30.01.13
17:51
Делаю управленческий отчет, изначально было куча регистров и соединений, я уже натыкался расковыряв его и найдя причину - наложение отбора.

В консоли все замечательно работает и с условием и без...
И как раз таки товар лежит на одном складе, а на каком складе был снят резерв, мне не интересно, важно только когда такое было последний раз, поэтому и не соединяю по складам.
3 Полотенчик
 
30.01.13
18:42
Возможно, аналогичная ситуация - v8: СКД, оптимизатор запроса
4 Shpagoid
 
31.01.13
16:52
(3) Посмотрел, изменил имя реквизита в итоговом запросе (Склад с английской "с") - помогло.
Но после этого время формирования отчета что с отбором, что без стало одинаково(

Пока сделал такой костыль: Программно отлавливаю запрос (МакетКомпоновкиДанных.НаборыДанных[0].Запрос) после формирования макетаКД компоновщиком и  с помощью "СТРЗаменить" удаляю в нужном мне месте наложенный отбор.

Пойду-ка помучаю закладку "Компоновка"