|
Как в запросе убрать исключения | ☑ | ||
---|---|---|---|---|
0
DmitryPavlik
20.06.12
✎
16:28
|
Добрый!
УПП Есть запрос ВЫБРАТЬ ХозрасчетныйОстаткиИОбороты.Субконто1 КАК Номенклатура, СУММА(ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстаток) КАК СуммаНачальныйОстаток, СУММА(ХозрасчетныйОстаткиИОбороты.СуммаОборотДт) КАК СуммаПриход, //СУММА(ХозрасчетныйОстаткиИОбороты.СуммаОборотКт) КАК СуммаРасход, СУММА(ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстаток) КАК СуммаКонечныйОстаток, СУММА(ВЫБОР КОГДА ХозрасчетныйОстаткиИОбороты.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг ИЛИ ХозрасчетныйОстаткиИОбороты.Регистратор ССЫЛКА Документ.ОтчетОРозничныхПродажах ТОГДА ХозрасчетныйОстаткиИОбороты.СуммаОборотКт ИНАЧЕ 0 КОНЕЦ) КАК СуммаРеализация, СУММА(ВЫБОР КОГДА НЕ ХозрасчетныйОстаткиИОбороты.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг И НЕ ХозрасчетныйОстаткиИОбороты.Регистратор ССЫЛКА Документ.ОтчетОРозничныхПродажах ТОГДА ХозрасчетныйОстаткиИОбороты.СуммаОборотКт ИНАЧЕ 0 КОНЕЦ) КАК СуммаПрочиеВыбытия //,ХозрасчетныйОстаткиИОбороты.Регистратор ИЗ РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты( &НачПериода, &КонПериода, Авто, , Счет В (&Счета), , Организация = &Организация И Субконто1 = &Субконто1) КАК ХозрасчетныйОстаткиИОбороты СГРУППИРОВАТЬ ПО ХозрасчетныйОстаткиИОбороты.Субконто1 //,ХозрасчетныйОстаткиИОбороты.Регистратор Если убрать строки с "Выбор когда", то всё правильно считает, но если их использовать, то складываются все строки, получается не правильный результат. Как можно избавиться от этого? |
|||
1
PR
20.06.12
✎
16:32
|
Да
|
|||
2
Ненавижу 1С
гуру
20.06.12
✎
16:33
|
неправильный результат в каких полях? остатков?
|
|||
3
andrewks
20.06.12
✎
16:33
|
(1) отвечать "Да" на вопрос "Как" - это моветон :)
|
|||
4
Ненавижу 1С
гуру
20.06.12
✎
16:33
|
(1) как можно на вопрос "как?" ответить "да"?
))) да |
|||
5
Ненавижу 1С
гуру
20.06.12
✎
16:34
|
(0) сделать через "объединить все"
|
|||
6
andrewks
20.06.12
✎
16:34
|
"Если убрать строки с "Выбор когда", то всё правильно считает" т.е. вопроса нет? или что?
|
|||
7
PR
20.06.12
✎
16:39
|
(6) Если у человека каша в голове, то лучше всего с ним согласиться :))
|
|||
8
DmitryPavlik
20.06.12
✎
16:40
|
Пока что (5) решение предлагает самое адекватное! :)
(6) Дело в том, что добавлении поля с "выбор когда регистратор ссылка ...", строки, например, с начальным остатком, начинают складываться и после группировки сумма будет ого-го. |
|||
9
PR
20.06.12
✎
16:46
|
(8) Дело в том, что считать остатки с исключением некоторых регистраторов — это вообще черт-те знает что.
|
|||
10
DmitryPavlik
20.06.12
✎
16:47
|
(9) так ни один регистратор не исключен: в одну колонку попадают данные по двум регистраторам, а в другую - по всем остальным.
|
|||
11
DmitryPavlik
20.06.12
✎
16:51
|
всё окей
ВЫБРАТЬ ТаблицаОстатков.Номенклатура, СУММА(ТаблицаОстатков.СуммаНачальныйОстаток) КАК СуммаНачальныйОстаток, СУММА(ТаблицаОстатков.СуммаПриход) КАК СуммаПриход, СУММА(ТаблицаОстатков.СуммаКонечныйОстаток) КАК СуммаКонечныйОстаток, СУММА(ТаблицаОстатков.СуммаРеализации) КАК СуммаРеализации, СУММА(ТаблицаОстатков.СуммаПрочиеВыбытия) КАК СуммаПрочиеВыбытия ИЗ (ВЫБРАТЬ ХозрасчетныйОстаткиИОбороты.Субконто1 КАК Номенклатура, СУММА(ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстаток) КАК СуммаНачальныйОстаток, СУММА(ХозрасчетныйОстаткиИОбороты.СуммаОборотДт) КАК СуммаПриход, СУММА(ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстаток) КАК СуммаКонечныйОстаток, 0 КАК СуммаРеализации, 0 КАК СуммаПрочиеВыбытия ИЗ РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты( &НачПериода, &КонПериода, Авто, , Счет В (&Счета), , Организация = &Организация И Субконто1 = &Субконто1) КАК ХозрасчетныйОстаткиИОбороты СГРУППИРОВАТЬ ПО ХозрасчетныйОстаткиИОбороты.Субконто1 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ХозрасчетныйОстаткиИОбороты.Субконто1, 0, 0, 0, СУММА(ВЫБОР КОГДА ХозрасчетныйОстаткиИОбороты.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг ИЛИ ХозрасчетныйОстаткиИОбороты.Регистратор ССЫЛКА Документ.ОтчетОРозничныхПродажах ТОГДА ХозрасчетныйОстаткиИОбороты.СуммаОборотКт ИНАЧЕ 0 КОНЕЦ), СУММА(ВЫБОР КОГДА НЕ ХозрасчетныйОстаткиИОбороты.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг И НЕ ХозрасчетныйОстаткиИОбороты.Регистратор ССЫЛКА Документ.ОтчетОРозничныхПродажах ТОГДА ХозрасчетныйОстаткиИОбороты.СуммаОборотКт ИНАЧЕ 0 КОНЕЦ) ИЗ РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты( &НачПериода, &КонПериода, Регистратор, , Счет В (&Счета), , Организация = &Организация И Субконто1 = &Субконто1) КАК ХозрасчетныйОстаткиИОбороты СГРУППИРОВАТЬ ПО ХозрасчетныйОстаткиИОбороты.Субконто1) КАК ТаблицаОстатков СГРУППИРОВАТЬ ПО ТаблицаОстатков.Номенклатура (5) шарит |
|||
12
PR
20.06.12
✎
16:51
|
(10) Ну да, ты же не в одном, а в двух местах исключил регистраторы.
Тогда да, все хуже в два раза :)) |
|||
13
Ненавижу 1С
гуру
20.06.12
✎
16:52
|
(9) дело в том, что 1с криво начинает транслировать расчет остатков
но вообще неудивительно, задача нетривиальная |
|||
14
Ненавижу 1С
гуру
20.06.12
✎
16:53
|
(12) он не исключал их из выборки, просто применил оператор, причем в другом поле
|
|||
15
DmitryPavlik
20.06.12
✎
16:54
|
(13) это ошибка, особенность работы или всё правильно?)))
|
|||
16
PR
20.06.12
✎
17:05
|
(14) То есть просто принудительно сделал выборку до регистратора, да.
|
|||
17
PR
20.06.12
✎
17:06
|
(15) Второе и третье.
|
|||
18
Ненавижу 1С
гуру
20.06.12
✎
17:12
|
(15) скорее второе
голый SQL без оконных функций такое не умеет, там сложная интерпретация |
|||
19
DmitryPavlik
20.06.12
✎
17:14
|
(18) на скл виртуальных таблиц-то нет, конечно, поэтому группировками только
|
|||
20
Ненавижу 1С
гуру
20.06.12
✎
17:18
|
(19) виртуальные таблицы это макросы, которые движок разворачивает
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |