Имя: Пароль:
1C
1С v8
Результаты запроса в СКД и запроса
,
0 Алексей777
 
30.04.15
14:18
Всем привет. Понимаю, что тема уже не новая. Если с виртуальными таблицами ещё как-то понятно почему и как это настроить, то в моей ситуации есть только вопрос, без ответа.

Есть вот такой запрос:
ВЫБРАТЬ
    МойРегистр.Измерение1.Реквизит1,
    МойРегистр.Измерение2,
    МойРегистр.Измерение2.Реквизит2,
    1 КАК Количество
ПОМЕСТИТЬ ВР_Табл
ИЗ
    РегистрСведений.МойРегистр КАК МойРегистр

СГРУППИРОВАТЬ ПО
    МойРегистр.Измерение1.Реквизит1,
    МойРегистр.Измерение2,
    МойРегистр.Измерение2.Реквизит2
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВР_Табл.Реквизит1 КАК Реквизит1,
    ВР_Табл.Реквизит2 КАК Реквизит2,
    СУММА(ВР_Табл.Количество) КАК Количество
ИЗ
    ВР_Табл КАК ВР_Табл

СГРУППИРОВАТЬ ПО
    ВР_Табл.Реквизит1,
    ВР_Табл.Реквизит2

Если выполнять запрос средствами СКД, то результат будет Результат1, если же запрос выгрузить не средствами СКД в таблицу значений, то будет уже Результат2.

Прилагаю также ссылку на dt файл:
https://yadi.sk/d/Toyji_angMGMs
1 Cyberhawk
 
30.04.15
14:19
(0) "есть только вопрос, без ответа"
Что-то и вопроса-то нет...
2 Лефмихалыч
 
30.04.15
14:21
(0) я вопроса не понял
3 Necessitudo
 
30.04.15
14:22
Да, СКД меняет текст запроса. Сто раз уже обсасывалось.
4 sapphire
 
30.04.15
14:26
(3) Вы фсио вгёте (с)
Запросы писать надо нормально и не будет СКД их менять.
5 1976vas
 
30.04.15
14:26
(0) Сравни в консоли СКД запросы.
6 Necessitudo
 
30.04.15
14:27
(4) Чего??? СКД наоборот оптимизирует запрос.
7 sapphire
 
30.04.15
14:28
(6) Смотря какой запрос и как написан
8 Алексей777
 
30.04.15
14:28
может dt посмотрите? там все понятно. Сравните результаты двух отчетов.
9 Алексей777
 
30.04.15
14:29
(3) и моя ситуация также рассосалась? тогда каков ответ?
10 Necessitudo
 
30.04.15
14:29
(7) Ну это само собой)
11 Алексей777
 
30.04.15
14:29
(4) и каков тогда будет нормальный запрос?
12 Necessitudo
 
30.04.15
14:30
(9) 42
13 Алексей777
 
30.04.15
14:30
(10) и есть выход? в смысле как запрос переделать?
14 Necessitudo
 
30.04.15
14:31
(13) Это все зависит от настроек компоновки.
15 Алексей777
 
30.04.15
14:33
(14) какой именно настройки?
16 1976vas
 
30.04.15
14:36
(15) Тебе в лом сравнить запросы?
17 Алексей777
 
30.04.15
14:39
(16) в профилировщике? нет. И что это даст? Там не будет написано какой именно запрос скормить скд.
18 Necessitudo
 
30.04.15
14:42
(17) Профилировщик? Ты вообще хоть что-то об СКД знаешь?
19 ХардHard
 
30.04.15
14:42
(0) В запросе поменяй &НачалоПериода на &НачалоПериода1 допустим.
20 1976vas
 
30.04.15
14:43
(17) В консоли СКД посмотри, что получается после компоновки макета, какой запрос.
21 sapphire
 
30.04.15
14:43
(8) Ну посмотрел
22 sapphire
 
30.04.15
14:44
(9) Ответ прост, учи мат часть!
Почему у тебя в обоих вариантах ответ неверный?
23 sapphire
 
30.04.15
14:45
+ (22) Записей в РС  - 4
из них 3 по каналу 1 и 1 по каналу 2?
24 sapphire
 
30.04.15
14:45
+(23)
SELECT
    ОбъектыРемонта.РемонтнаяГруппа ОбъектРемонтаРемонтнаяГруппа
   ,КаналыСвязи.Характеристика КаналСвязиХарактеристика
   ,COUNT(*) Количество
FROM
   РегистрСведений.КаналыСвязи РС      
LEFT JOIN Справочник.ОбъектыРемонта ОбъектыРемонта
ON РС.ОбъектРемонта=ОбъектыРемонта.Ссылка
LEFT JOIN Справочник.КаналыСвязи КаналыСвязи
ON РС.КаналСвязи=КаналыСвязи.Ссылка  
GROUP BY
    ОбъектыРемонта.РемонтнаяГруппа
   ,КаналыСвязи.Характеристика
25 Алексей777
 
30.04.15
14:45
(23) спасибо, что вникаешь
26 Алексей777
 
30.04.15
14:49
(24) я это понимаю, как тогда правильно построить запрос в скд
27 sapphire
 
30.04.15
14:49
(26) ????
28 Алексей777
 
30.04.15
14:50
(22) но запросы то, одинаковые.
29 sapphire
 
30.04.15
14:50
+(27) код из (24) в СКД
30 sapphire
 
30.04.15
14:51
(28) Гондурас беспокоит?
31 sapphire
 
30.04.15
14:51
+ (30) см (4)
32 Алексей777
 
30.04.15
14:54
(31) спасибо, добрый человек.
33 sapphire
 
30.04.15
14:58
(32) Бесполезно оптимизировать код, который не работает (с)
Если ни то, ни другое, не выдаёт верный результат, какой смысл разбираться почему в обоих случаях?

Ответ прост, хотя и не очевиден.
Источник ошибки в обоих случаях один и это текст запроса.
Если запрос написан так, что его можно трактовать только так и никоим другим образом, то результат будет ВСЕГДА одинаков.

В данном случае, старайтесь избегать многоточий в запросах.
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс