Имя: Пароль:
1C
1С v8
В отчете на СКД пропадает одно значение...
0 HRom
 
22.05.12
11:12
Дурацкая какая то ситуация...
Запускаю запрос в консоли запросов, всё "Ок". Напротив документа в нужной колонке есть значение.
Копипастю текст запроса в СКД, формирую отчет, все строки и колонки есть, напротив всех доков значения есть, но напротив одного НЕТ (а в консоли запросов было).
Никаких настроек в СКД нет - выводить детальные записи. Отборов, группировок, условного оформления нет.

Блин, куда может пропадать одно!!! значение?
Что то аж фантазии не хватает...
1 Нуф-Нуф
 
22.05.12
11:17
может в скд указан тип, а выходные значения могут быть разного типа
2 HRom
 
22.05.12
11:30
почему то "Автозаполнение" в СКД ставит этой колонке роль "Измерение"(хотя там числовые значения) меняю её вручную на "Без роли"
3 HRom
 
22.05.12
12:09
а какой результат будет:
NULL + число = ???
NULL * число = ???
NULL * 0 = ???
4 ИС-2
 
naïve
22.05.12
12:16
(3) будет везде NULL. Если выводить код у пропадающего значения, тогда что?
Тестируйте под полными правами? СКД показывает только, то что есть право просмотра
5 HRom
 
22.05.12
12:30
(4) значение это число, у него нет кода
6 ИС-2
 
naïve
22.05.12
12:31
можно попробывать выводить как вычисляемое поле, переимоновать его и т.д
7 HRom
 
22.05.12
12:38
такое ощущение, что СКД как то группирует по другому, чем консоль

Есть таблица "ВТ_ПРоданоИОплачено" с колонками: ДокПоступления, ДокРеализации, Долг, СуммаРеализации.

Запрос:
ВЫБРАТЬ
       ВТ_ПРоданоИОплачено.ДокПоступления,
       СУММА(ВТ_ПРоданоИОплачено.СуммаРеализации),
   ИЗ
       ВТ_ПРоданоИОплачено КАК ВТ_ПРоданоИОплачено
   ГДЕ
       (ВТ_ПРоданоИОплачено.ДолгПокупателя = 0
               ИЛИ ВТ_ПРоданоИОплачено.ДолгПокупателя < 0
               ИЛИ ВТ_ПРоданоИОплачено.ДолгПокупателя ЕСТЬ NULL )


Пример таблицы:
Поступл.№1 Реал.№1 50 100
Поступл.№1 Реал.№2  0 150
Поступл.№1 Реал.№3  0 200

КонсольЗапросов возвращает строку:
"Поступл.№1 Реал.№1 350"

А СКД ничего не возвращает.
Т.е. такое ощущение, что СКД сначала группирует, а потом проверяет условие ГДЕ ВТ_ПРоданоИОплачено.ДолгПокупателя = 0
8 HRom
 
22.05.12
12:40
(7) поправка:

Пример таблицы:
Поступл.№1; Реал.№1; 50; 100;
Поступл.№1; Реал.№2;  0; 150;
Поступл.№1; Реал.№3;  0; 200;

КонсольЗапросов возвращает строку:
"Поступл.№1; 350"

А СКД ничего не возвращает.
9 HRom
 
22.05.12
13:19
вообщем я так понял СКД сначала группирует результат запроса, а потом на результат группировки накладывает условие из "ГДЕ". Даже если никаких группировок в Запросе не описано.
С учетом такой логики добился ожидаемого результата.