|
запрос ... левое соединение | ☑ | ||
---|---|---|---|---|
0
lamme
14.06.16
✎
09:29
|
Задача.
Сделать ведомость по отгрузкам с учетом оплаты и просрочено/не просрочено на дн. Все продажи (99%) идут по схеме - заказ/реализация/оплата и 1% - делается просто - реализацией/оплата. Под эти 99% сделал запрос - выборка всех отгрузок - выборка всех оплат по заказу - левое соединение по заказу. Все красиво выходит. Кроме этих вот .. 1% отгрузок. в запросе я бы поменял типа Выбор когда Докотгрузки.Сделка ЕстьNULL тогда - левое соединение одно иначе - левое соединение другое --- как правильно такое сделать ? |
|||
1
kubik_live
14.06.16
✎
09:33
|
Как оплата привязана? По договору или по документу расчетов?
|
|||
2
kubik_live
14.06.16
✎
09:34
|
Есть ли частичная оплата?
|
|||
3
FIXXXL
14.06.16
✎
09:37
|
(0) 1% - это старье какое-то или так работают?
если старье, создай заказы-пустышки, проставь в реализации и оплаты |
|||
4
torgm
14.06.16
✎
09:37
|
(0) не должно выходить красиво с случае частичных оплат.
структура регистров взаиморасчетов какая? |
|||
5
lamme
14.06.16
✎
09:40
|
(1)
оплата вешается на заказ. (2) есть и частичная и предоплата (3) так работают для перегонки между своими фирмами |
|||
6
lamme
14.06.16
✎
09:42
|
(3)
не старье есть свежие |
|||
7
lamme
14.06.16
✎
09:43
|
(4)
выходит. на заказе же все висит. |
|||
8
lamme
14.06.16
✎
09:43
|
(4)
вопрос переформулируй. что значит "структура регистров какая "? типовая я бы сказал |
|||
9
ViSo76
14.06.16
✎
09:46
|
в запросе я бы поменял
типа Выбор когда Докотгрузки.Сделка ЕстьNULL тогда - левое соединение одно иначе - левое соединение другое --- как правильно такое сделать ? Делай так: левое соединение одно КАК одно по Докотгрузки.Сделка ЕстьNULL и одно. левое соединение другое КАК другое по Не Докотгрузки.Сделка ЕстьNULL и другое. |
|||
10
lamme
14.06.16
✎
09:47
|
(9)
эм ... пардон - первый раз встречаю такое .. а можно пример конкретный ? |
|||
11
lamme
14.06.16
✎
09:48
|
первый раз такую конструкцию встречаю ...
|
|||
12
ViSo76
14.06.16
✎
09:53
|
Представь себе что перед соединением идёт проверка простых вещей, истина или ложь, если ложь то смысла в соединении нет. Докотгрузки.Сделка это то что было получено ранее, перед соединением идёт проверка и если нет "или", а везде "и" то естественно соединения не произойдёт.
|
|||
13
lamme
14.06.16
✎
10:01
|
туплю.
не уловил |
|||
14
RomanYS
14.06.16
✎
10:03
|
(0) Докотгрузки.Сделка у вас никогда не будет NULL (если Докотгрузки - левая таблица).
В случае незаполненного значения там может быть Неопределено или пустая ссылка на счет или заказ. |
|||
15
FIXXXL
14.06.16
✎
10:04
|
(13) сделай тогда тупо два запроса через ОБЪЕДЕНИТЬ
в одном данные с заказами. во втором - без |
|||
16
RomanYS
14.06.16
✎
10:04
|
и проверка на NULL пишется так
ЧтоТо Есть NULL //с пробелом А ЕстьNULL - это функция заменяющая NULL |
|||
17
lamme
14.06.16
✎
10:07
|
(15)
логично хороший совет (16) ну это ж общее ... интересна общая идея ... |
|||
18
hhhh
14.06.16
✎
10:20
|
(17) делайте 2 левых соединения. Без Выбор Когда
|
|||
19
Salimbek
14.06.16
✎
10:22
|
(15) Поддерживаю
|
|||
20
lamme
14.06.16
✎
10:25
|
спасибо
вопрос закрыт про (15) чего то и не додумался ) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |