|
Ошибка в запросе, таблицы соединились неожиданно | ☑ | ||
---|---|---|---|---|
0
fazendoid
21.01.13
✎
12:44
|
Добрый день.
Есть такой лапшезапрос:
По моей логике он должен вывести товары из поступлений за период и, если за тот же период есть и допрасходы с такими наименованиями, приджойнить информацию из них сюда. Но на деле получается, что выводится только та номенклатура, которая есть в допрасходах. Если же убрать И ПоступлениеДопРасходовТовары.Ссылка.Дата МЕЖДУ &НачалоПериода И &КонецПериода , то вся нужная номенклатура выводится, но, естественно, ломается логика вывода.
Как победить сие? |
|||
1
Wobland
21.01.13
✎
12:46
|
естьNULL победит
|
|||
2
Reset
21.01.13
✎
12:47
|
"таблицы соединились неожиданно"
"ПО ПоступлениеТоваровУслугТовары.Номенклатура = ПоступлениеДопРасходовТовары.Номенклатура" В условии соединения написано соединять с любым документом, лишь бы номенклатура совпала. |
|||
3
sapphire
21.01.13
✎
12:47
|
!@#$%^&*()_!!!!!!
использовать UNION и агрегировать результат. |
|||
4
dauster
21.01.13
✎
12:47
|
(0) во-первых, правильнее строить запрос по регистрам, а не по документам.
во-вторых, условие по ДопРасходам нужно поставить в условие соединения соединение , а не в ГДЕ. |
|||
5
Reset
21.01.13
✎
12:49
|
Если (2) устраивает, то см (1) на дату
|
|||
6
Reset
21.01.13
✎
12:50
|
ну или (4)
|
|||
7
fazendoid
21.01.13
✎
13:04
|
(4)
1. Учту 2. Помогло, спасибо :) |
|||
8
fazendoid
21.01.13
✎
13:13
|
(2) Ну для меня же неожиданно :)
|
|||
9
fazendoid
21.01.13
✎
13:43
|
Видоизменил так:
В СебестоимостьПоКоличествуДопрасходов и СебестоимостьПоКоличествуПоступлений (при пустых допрасходах) тоже идет ноль хотя вроде должно быть СРЕДНЕЕ(ПоступлениеТоваровУслугТовары.Цена). Или если выражение натыкается на деление на 0, оно не считается совсем? |
|||
10
pessok
21.01.13
✎
13:44
|
(9) а как оно должно считаться?
|
|||
11
Reset
21.01.13
✎
13:48
|
(9) Там не 0 встречается, а NULL
|
|||
12
fazendoid
21.01.13
✎
13:49
|
(11) Там же ж ЕСТЬNULL(ПоступлениеДопРасходовТовары.Сумма,0)
|
|||
13
Reset
21.01.13
✎
13:50
|
Вообще, если связи м/у документами отсутствуют или не важны, напрашивается (3) - т.е. соединение не нужно
|
|||
14
Reset
21.01.13
✎
13:51
|
(12) Где?
ВЫРАЗИТЬ((СРЕДНЕЕ(ПоступлениеТоваровУслугТовары.Цена) + СУММА(ПоступлениеДопРасходовТовары.Сумма) / СУММА(ПоступлениеДопРасходовТовары.Количество)) КАК ЧИСЛО(10, 2)) КАК СебестоимостьПоКоличествуПоступлений |
|||
15
fazendoid
21.01.13
✎
13:52
|
(10)
(СРЕДНЕЕ(ПоступлениеТоваровУслугТовары.Цена) + СУММА(ПоступлениеДопРасходовТовары.Сумма) / СУММА(ПоступлениеТоваровУслугТовары.Количество))
Я бы на месте выражения вернул СРЕДНЕЕ(ПоступлениеТоваровУслугТовары.Цена) |
|||
16
fazendoid
21.01.13
✎
13:57
|
(14) Чёрт. Все никак не привыкну.
Теперь "Деление на ноль значения типа Numeric" |
|||
17
fazendoid
21.01.13
✎
14:09
|
Сделал так:
Но это ведь безумно громоздко! |
|||
18
fazendoid
21.01.13
✎
15:52
|
(4) Насчет регистров: у меня «Поступление доп. расходов» по регистрам вообще не идет. Каким образом мне тогда их учитывать здесь?
|
|||
19
Reset
21.01.13
✎
15:53
|
(18) Если оно не идет по регистрам, значит его не нужно учитывать :)
|
|||
20
fazendoid
21.01.13
✎
16:11
|
(19) Ага, теперь это надо начальнику объяснить, которая хочет видеть расчет себестоимости и прибыли :)
|
|||
21
Reset
21.01.13
✎
16:16
|
(20) Я не шутил в (19), несмотря на смайлик.
Объяснять начальнику нужно не "почему не нужно учитывать", а почему нет движений. |
|||
22
Reset
21.01.13
✎
16:17
|
Нет движений - значит документ на расчет не влияет
|
|||
23
fazendoid
21.01.13
✎
16:22
|
(22) Так и я тоже не шутил, требуют. В том и дело, «что есть движения, нет движений — нам сугубо фиолетово, выньте да положьте наглядственно». (и почему их нет? КА, РАУЗ — упр и регл)
|
|||
24
Reset
21.01.13
✎
16:25
|
Ну тогда нужно искать профессионала, могущего нарисовать семь перпендикулярных друг другу линий красного цвета, нарисованных разными цветами.
|
|||
25
fazendoid
21.01.13
✎
16:27
|
Тут дело в том, что хотят видеть цену = закупка + доп.расход. в связи с этим одно время был суперкостыль, изобретенный шабашником, — в обработке проведения ПоступлениеТоваровУслуг вткнул кусок, расчитывающий и записывающий эту самую цену в регистр.
Ну и плюс — нерабочий отчет «Валовая прибыль»… |
|||
26
fazendoid
21.01.13
✎
16:27
|
(24) Ну, тут все просто: берем семимерное пространство и дальтоника :)
|
|||
27
Reset
21.01.13
✎
16:29
|
(25) Уууууу :\
Сочувствую |
|||
28
fazendoid
21.01.13
✎
16:33
|
(27) Да сейчас соображу что-нибудь, вариант, черпающий инфу из ТЧ документов, уже работает. Похоже даже, что правильно :) Сейчас переделываю на оборотные регистры.
А насчет профессионалов-дальтоников у меня свое мнение. Его только в личку, а то еще они заметят :) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |