|
Разные результаты выполнения запроса в консоли и в СКД | ☑ | ||
---|---|---|---|---|
0
KindLion
09.07.15
✎
12:07
|
Столкнулся с тем, что запрос выдает разные результаты при выполнении в консоли запросов и в СКД.
В консоли отрабатывает правильно, в СКД - выдает не все данные. С чем м.б. связано? Как лечить, подскажите, пожалуйста... Запрос переписал уже несколько раз - результат одинаков :( Платформа - 8.3.6.2014, в конфигурации включен режим совместимости с Версия 8.2.13 |
|||
1
Mitriy
09.07.15
✎
12:08
|
консолью компоновки данных и анализом запроса, который строит компоновка...
|
|||
2
Лодырь
09.07.15
✎
12:09
|
параметры проверь.
|
|||
3
SeraFim
09.07.15
✎
12:12
|
Связано с особенностью работы СКД)
"Количество различных" считаешь? Или есть много временных таблиц? |
|||
4
Господин ПЖ
09.07.15
✎
12:13
|
>С чем м.б. связано? Как лечить, подскажите, пожалуйста...
скд временами слишком умная выкидывает таблицы если поля не участвуют в выводе в отчет |
|||
5
KindLion
09.07.15
✎
12:20
|
(3) Виртуальные таблицы есть, да.
В одном варианте запроса их было 13, в другом - 5. Это много? |
|||
6
KindLion
09.07.15
✎
12:24
|
(4) Да, подозреваю ее в излишнем уме.
В запросе два запроса к одной виртуальной таблице с разными периодами. Похоже, СКД берет один (минимальный) период из двух. |
|||
7
KindLion
09.07.15
✎
12:25
|
(4) Как можно предотвратить выкидывание таблиц?
|
|||
8
Господин ПЖ
09.07.15
✎
12:29
|
(7) роль поля - обязательное
>В запросе два запроса к одной виртуальной таблице с разными периодами. а тут возможен другой эффект "наложение" - собственные параметры vs стандартные |
|||
9
KindLion
09.07.15
✎
12:32
|
(8) Не очень понял вопрос про собственные или стандартные параметры.
Я уже использовал и стандартный период, и руками даты вводил |
|||
10
Господин ПЖ
09.07.15
✎
12:35
|
||||
11
Cube
09.07.15
✎
12:35
|
(0) Очередная жертва не указавщая параметры виртуальных таблиц на закладке "Компоновка" в запросе...
|
|||
12
KindLion
09.07.15
✎
12:52
|
(11) Очередная жертва скоропалительных выводов.
Про "компоновку" в запросе знаю. Параметры там указал. Возможно, с ошибкой... :( |
|||
13
KindLion
09.07.15
✎
12:55
|
(11)
<code> ВЫБРАТЬ ПродажиОбороты.Номенклатура КАК Номенклатура, СУММА(ПродажиОбороты.КоличествоОборот) КАК КоличествоПродаж, СУММА(ПродажиОбороты.СтоимостьОборот - ПродажиОбороты.НДСОборот) КАК ВыручкаБезНДС, ПродажиОбороты.Период КАК Период ПОМЕСТИТЬ вт_Продажи {ВЫБРАТЬ Номенклатура.*, Период} ИЗ РегистрНакопления.Продажи.Обороты( &НачалоПериода1, &КонецПериода, Регистратор, НЕ Номенклатура.Услуга И Номенклатура.ВидВоспроизводства = ЗНАЧЕНИЕ(Перечисление.ВидыВоспроизводстваНоменклатуры.Производство)) КАК ПродажиОбороты ГДЕ ПродажиОбороты.Период >= &НачалоПериода {ГДЕ ПродажиОбороты.Период} СГРУППИРОВАТЬ ПО ПродажиОбороты.Номенклатура, ПродажиОбороты.Период ; </code> |
|||
14
Cube
09.07.15
✎
12:55
|
(12) Ну раз знаешь, то я спокоен.
Нам угадать надо, что ты там понаписал? |
|||
15
Cube
09.07.15
✎
12:59
|
(13) См (11)
У тебя не указаны. |
|||
16
KindLion
09.07.15
✎
13:00
|
(15) ОК. Расскажи, пожалуйста, что и где дописать.
|
|||
17
KindLion
09.07.15
✎
13:04
|
(10) Спасибо огромное за ссылку.
Похоже, что текст внизу (после UPD) - это мой случай. Только пока не соображу, как прикрутить это знание к моей башке, и, собственно, к запросу. :) |
|||
18
Cube
09.07.15
✎
13:05
|
(16) Как-то так:
ИЗ РегистрНакопления.Продажи.Обороты( &НачалоПериода1 {(&НачалоПериода)}, &КонецПериода {(&КонецПериода)}, Регистратор, НЕ Номенклатура.Услуга И Номенклатура.ВидВоспроизводства = ЗНАЧЕНИЕ(Перечисление.ВидыВоспроизводстваНоменклатуры.Производство)) КАК ПродажиОбороты ГДЕ |
|||
19
Cube
09.07.15
✎
13:06
|
(18) Ой, очепятка... Исправляюсь:
ИЗ РегистрНакопления.Продажи.Обороты( &НачалоПериода1 {(&НачалоПериода1)}, &КонецПериода {(&КонецПериода)}, Регистратор, НЕ Номенклатура.Услуга И Номенклатура.ВидВоспроизводства = ЗНАЧЕНИЕ(Перечисление.ВидыВоспроизводстваНоменклатуры.Производство)) КАК ПродажиОбороты ГДЕ |
|||
20
KindLion
09.07.15
✎
13:08
|
(18), (19) - спасибо, да, все получилось!
|
|||
21
Cube
09.07.15
✎
13:09
|
(20) Пожалуйста)
И не делай "скоропалительных выводов" как в (12) =)) |
|||
22
KindLion
09.07.15
✎
13:16
|
(21) Ну, я понял что оба мы торопыги. :)
|
|||
23
KindLion
09.07.15
✎
13:22
|
(19)
Хм.. отвлеку тебя еще на секунду. Я написал вот так: ИЗ РегистрНакопления._ЕВ_УпрСебестоимость.Обороты( {(&НачалоПериода1)}, {(&КонецПериода)}, Месяц, Номенклатура В (ВЫБРАТЬ вт_Продажи.Номенклатура ИЗ вт_Продажи КАК вт_Продажи)) КАК _ЕВ_УпрСебестоимостьОбороты {ГДЕ _ЕВ_УпрСебестоимостьОбороты.Период} СГРУППИРОВАТЬ ПО _ЕВ_УпрСебестоимостьОбороты.Номенклатура, _ЕВ_УпрСебестоимостьОбороты.Период Как более правильно? |
|||
24
KindLion
09.07.15
✎
13:28
|
(23) О, сорри, не ту таблицу привел:
ВЫБРАТЬ ПродажиОбороты.Номенклатура КАК Номенклатура, СУММА(ПродажиОбороты.КоличествоОборот) КАК КоличествоПродаж, СУММА(ПродажиОбороты.СтоимостьОборот - ПродажиОбороты.НДСОборот) КАК ВыручкаБезНДС, ПродажиОбороты.Период КАК Период ПОМЕСТИТЬ вт_Продажи {ВЫБРАТЬ Номенклатура.*, Период} ИЗ РегистрНакопления.Продажи.Обороты( {(&НачалоПериода1)}, {(&КонецПериода)}, Регистратор, НЕ Номенклатура.Услуга И Номенклатура.ВидВоспроизводства = ЗНАЧЕНИЕ(Перечисление.ВидыВоспроизводстваНоменклатуры.Производство)) КАК ПродажиОбороты ГДЕ ПродажиОбороты.Период >= &НачалоПериода {ГДЕ ПродажиОбороты.Период} СГРУППИРОВАТЬ ПО ПродажиОбороты.Номенклатура, ПродажиОбороты.Период ; |
|||
25
Cube
09.07.15
✎
13:35
|
(24) Для работы в СКД можно и так и так, но в (19) более универсально, если придется отладить запрос в консоли не нужно будет заморачиваться с прописыванием параметров в текст запроса...
|
|||
26
Одинесю
09.07.15
✎
13:39
|
(25) Воистину Велик!
|
|||
27
TormozIT
гуру
10.07.15
✎
02:25
|
Есть инструмент для отладки компоновки https://www.youtube.com/watch?v=0LKGaFo9tXw
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |