|
Соединение строк с вычислением суммы | ☑ | ||
---|---|---|---|---|
0
Kasad
14.02.17
✎
22:02
|
Добрый день!
Есть простенький отчёт: посчитать сумму выручки и, по нужности из выручки вычесть доставку. УТ 8.3 Сам запрос: ВЫБРАТЬ РАЗЛИЧНЫЕ ЗаказКлиента.Менеджер КАК АвторПродажи, ЗаказКлиента.СуммаДокумента КАК Продажа, ЗаказКлиента.Дата, ЗаказКлиента.Партнер КАК Клиент, ЗаказПоставщику.Ссылка КАК ЗаказПоставщику, ЗаказПоставщику.Менеджер КАК АвторЗаказа, ЗаказПоставщику.СуммаДокумента КАК Закупка, ЗаказПоставщику.Дата КАК Дата1, ЗаказПоставщику.Контрагент КАК Поставщик, ЗаказПоставщику.ДокументОснование КАК ПродажаКлиенту ИЗ Документ.ЗаказПоставщику КАК ЗаказПоставщику ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказКлиента КАК ЗаказКлиента ПО ЗаказПоставщику.ДокументОснование = ЗаказКлиента.Ссылка ГДЕ ЗаказКлиента.Дата МЕЖДУ &Дата0 И &Дата1 И ЗаказПоставщику.Дата МЕЖДУ &Дата0 И &Дата1 СГРУППИРОВАТЬ ПО ЗаказПоставщику.ДокументОснование, ЗаказКлиента.Менеджер, ЗаказКлиента.СуммаДокумента, ЗаказКлиента.Дата, ЗаказКлиента.Партнер, ЗаказПоставщику.Ссылка, ЗаказПоставщику.Менеджер, ЗаказПоставщику.СуммаДокумента, ЗаказПоставщику.Дата, ЗаказПоставщику.Контрагент Выручку считает, но есть две проблемы: 1) не могу разобраться, как добавить редактируемое поле для суммы доставки, чтобы минусовалось от выручки 2) заказ поставщику делается на основании заказа клиента, заказов поставщику может быть несколько, как их объединить в одну строку по основанию с суммой всех таких заказов поставщику. Сейчас он выводит все строки заказов отдельно, с суммой основания в каждой P.S.: заранее простите за глупые вопросы, только учусь |
|||
1
trooba
14.02.17
✎
22:08
|
(0) объединение
|
|||
2
Kasad
14.02.17
✎
22:13
|
Пыталась через объединение, не работает :(
|
|||
3
trooba
14.02.17
✎
22:15
|
(2) Null не забывайте
|
|||
4
Kasad
14.02.17
✎
22:43
|
эх...видимо придётся фотку выкладывать... :)
|
|||
5
Kasad
15.02.17
✎
00:39
|
Если делать один запрос
ВЫБРАТЬ ЗаказПоставщику.ДокументОснование КАК ПродажаКлиенту ИЗ Документ.ЗаказПоставщику КАК ЗаказПоставщику ОБЪЕДИНИТЬ ВЫБРАТЬ ЗаказПоставщику.ДокументОснование ИЗ Документ.ЗаказПоставщику КАК ЗаказПоставщику то работает, как только начинаю добавлять поля - перестает |
|||
6
Kasad
15.02.17
✎
00:41
|
Объединять вообще все поля мне не нужно, только заказ и продажу, причём заказ с суммированием
|
|||
7
Kasad
15.02.17
✎
01:15
|
Наверное не так объяснила. Заказ поставщику делается на основании Заказа Клиента. Заказов поставщику может быть 2,3(под разными номерами)..и т.д., но делаются они на основании одного и того же документа. Если одина продажа = одна закупка, то все хорошо, но если одна продажа = 3 закупки, то начинаются проблемы
|
|||
8
Kasad
15.02.17
✎
01:16
|
а т.к. закупки под разными номерами, то и объединить их не получается :(
|
|||
9
Kasad
15.02.17
✎
01:18
|
Думала сделать что-то вроде: если закупок по одному основанию >1 то выводить сумму закупок
|
|||
10
Злопчинский
15.02.17
✎
01:25
|
(9) "один" - это частный случай "много"
|
|||
11
GreyK
15.02.17
✎
01:31
|
(9) Ты уж определись с группировками, как "СуммаДокумента" заказа может участвовать в группировке?
|
|||
12
Kasad
15.02.17
✎
01:32
|
С группировка уже определилась, проблему решить это не помогло
|
|||
13
Kasad
15.02.17
✎
01:37
|
В таком виде задвоений нет, оно и понятно, нет основания
ВЫБРАТЬ ЗаказПоставщику.ДокументОснование.Ссылка, ЗаказПоставщику.ДокументОснование.Партнер, ЗаказПоставщику.ДокументОснование.СуммаДокумента, ЗаказПоставщику.ДокументОснование.Менеджер ИЗ Документ.ЗаказПоставщику КАК ЗаказПоставщику ОБЪЕДИНИТЬ ВЫБРАТЬ ЗаказПоставщику.ДокументОснование.Ссылка, ЗаказПоставщику.ДокументОснование.Партнер, ЗаказПоставщику.ДокументОснование.СуммаДокумента, ЗаказПоставщику.ДокументОснование.Менеджер ИЗ Документ.ЗаказПоставщику КАК ЗаказПоставщику |
|||
14
Kasad
15.02.17
✎
01:39
|
Скриншотов сейчас сделаю, для наглядности. Добавила закупку у поставщика
ВЫБРАТЬ ЗаказПоставщику.ДокументОснование.Ссылка, ЗаказПоставщику.ДокументОснование.Партнер, ЗаказПоставщику.ДокументОснование.СуммаДокумента, ЗаказПоставщику.ДокументОснование.Менеджер, ЗаказПоставщику.Ссылка ИЗ Документ.ЗаказПоставщику КАК ЗаказПоставщику ОБЪЕДИНИТЬ ВЫБРАТЬ ЗаказПоставщику.ДокументОснование.Ссылка, ЗаказПоставщику.ДокументОснование.Партнер, ЗаказПоставщику.ДокументОснование.СуммаДокумента, ЗаказПоставщику.ДокументОснование.Менеджер, NULL ИЗ Документ.ЗаказПоставщику КАК ЗаказПоставщику |
|||
15
GreyK
15.02.17
✎
01:42
|
(12) Убери из текста запроса в (0) группировку по "ЗаказКлиента.СуммаДокумента" и посмотри результат.
|
|||
16
Kasad
15.02.17
✎
01:44
|
https://yadi.sk/i/AC5N5jus3E6Cq6 без основания, все норм
https://yadi.sk/i/2bt4EO9g3E6Cq4 с основанием оба запроса написаны выше, первый уже 10 раз переписан |
|||
17
Kasad
15.02.17
✎
01:46
|
Ставила и все группировки, и отдельные поля, и совсем без группировок - ничего не помогает :(
|
|||
18
Kasad
15.02.17
✎
01:50
|
ВЫБРАТЬ РАЗЛИЧНЫЕ
ЗаказКлиента.Менеджер КАК АвторПродажи, СУММА(ЗаказКлиента.СуммаДокумента) КАК Продажа, ЗаказКлиента.Дата, ЗаказКлиента.Партнер КАК Клиент, ЗаказПоставщику.Ссылка КАК ЗаказПоставщику, ЗаказПоставщику.Менеджер КАК АвторЗаказа, ЗаказПоставщику.Дата КАК Дата1, ЗаказПоставщику.Контрагент КАК Поставщик, ЗаказПоставщику.ДокументОснование КАК ПродажаКлиенту, СУММА(ЗаказПоставщику.СуммаДокумента) КАК Закупка, NULL КАК Поле1 ИЗ Документ.ЗаказПоставщику КАК ЗаказПоставщику ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказКлиента КАК ЗаказКлиента ПО ЗаказПоставщику.ДокументОснование = ЗаказКлиента.Ссылка ГДЕ ЗаказКлиента.Дата МЕЖДУ &Дата0 И &Дата1 И ЗаказПоставщику.Дата МЕЖДУ &Дата0 И &Дата1 СГРУППИРОВАТЬ ПО ЗаказПоставщику.ДокументОснование, ЗаказКлиента.Менеджер, ЗаказКлиента.Дата, ЗаказКлиента.Партнер, ЗаказПоставщику.Ссылка, ЗаказПоставщику.Менеджер, ЗаказПоставщику.Дата, ЗаказПоставщику.Контрагент результат https://yadi.sk/i/28r56ZXD3E6D2n |
|||
19
Kasad
15.02.17
✎
01:55
|
Жёлтым выделены заказы поставщику на основании одного заказа клиента, в заказе поставщику разные товары и суммы, вот именно эти заказы поставщикам нужно объединить и выдать общую сумму, чтобы был один заказ клиента, к нему прикреплена строка с двумя заказами поставщику и общая сумма этих заказов. Пыталась через СоединитьСтроки, тоже не получилось
|
|||
20
GreyK
15.02.17
✎
01:59
|
(18) Зачем тебе в группировках ЗаказКлиента.Дата и ЗаказПоставщику.Дата? Да и менегер вроде не при чём...
|
|||
21
Kasad
15.02.17
✎
02:03
|
Ни одна группировка тут не при чём :(
|
|||
22
GreyK
15.02.17
✎
02:24
|
(21) Да ты не расстраивайся и думай. Группировки это разрезы по которым должны быть получены данные. В (19) ты пишешь что тебе нужно расписать заказ покукапателя по заказам поставщику, значит у тебя должо быть всего две группировки, одна по ЗаказКлиента.Ссылка, вторая по ЗаказПоставщику.Ссылка.
|
|||
23
Kasad
15.02.17
✎
02:28
|
GreyK, я не расстраиваюсь, я уже второй день думаю )
|
|||
24
Kasad
15.02.17
✎
02:31
|
Хочешь, я тебе весь отчёт дам и сам убедишься, что группировки тут не проходят )
|
|||
25
Kasad
15.02.17
✎
02:35
|
Кстати, когда я делаю группировку по двум запросам, он мне автоматом ставит по всем...что за...
|
|||
26
Kasad
15.02.17
✎
02:38
|
Сделала две группировки, не работает (
А на вторую версию отчёта ещё и ругается |
|||
27
GreyK
15.02.17
✎
02:46
|
(24) Мне не нужен отчёт, если я буду за тебя писать, то мне нужна база данных, точное описание того, что нужно получить из неё и цена вопроса.
Но я думаю, что ты сама справишься. У тебя всё получится. Главное понять конструктор запроса. |
|||
28
Kasad
15.02.17
✎
02:52
|
GreyK, в том то и дело, что за меня писать не нужно )
А вот за разъяснения готова платить ) |
|||
29
Kasad
15.02.17
✎
12:23
|
Похоже дело было в платформе, обновила и все стало нормально группироваться :)
Уряяяяяя!!! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |