|
Как убрать повторяющиеся значения из запроса | ☑ | ||
|---|---|---|---|---|
|
0
aptomilov
07.04.26
✎
13:29
|
Например задачка
Выбрать реализации и сумму оплаты этих реализаций по договору Будет что то типа: а хотелось бы Реализация 1 Дог1 800 800 Реализация 2 Дог1 800 0 Реализация 3 Дог1 800 0 ну или как то другой вариант |
|||
|
1
spiller26
07.04.26
✎
13:36
|
(0) ВЫБРАТЬ РАЗЛИЧНЫЕ
Ну или свернуть через Группировку а где хотелось бы? |
|||
|
2
aptomilov
07.04.26
✎
13:36
|
Записи то различные (реализации)
|
|||
|
3
aptomilov
07.04.26
✎
13:37
|
а хотелось бы надо колонкой где нолики
|
|||
|
4
aptomilov
07.04.26
✎
13:38
|
800 это цифра договора но не документа
может в скд это можно как то обыгра ть? |
|||
|
5
arsik
гуру
07.04.26
✎
13:41
|
(4) Итог, Максимум(сумма договора)
|
|||
|
6
spiller26
07.04.26
✎
13:44
|
(0) Что такое 3 по 800 и последня колонка с одним числом 800.
Даты реализаций по убыванию? Если 3 по 800 - это сумма долга, а одна 800 - оплата, и вы хотите раскидать оплаты, то у вас нифига не получиться ни в запросе ни в СКД, т.к. оплата может быть как за 2 долга так и за один дробленая. |
|||
|
7
aptomilov
07.04.26
✎
13:46
|
(5) точно похоже
а как то убрать из основной таблицы тогда и все |
|||
|
8
Homer
07.04.26
✎
13:48
|
стаж 14 лет!!!
вы точно "программист"?! |
|||
|
9
aptomilov
07.04.26
✎
13:52
|
(8) точно точно про итоги я знал но итоги могут брать только из выборки а мне оттуда надо убрать
|
|||
|
10
aptomilov
07.04.26
✎
13:52
|
ВЫБРАТЬ
ВыручкаИСебестоимостьПродаж.Регистратор КАК Регистратор, ВыручкаИСебестоимостьПродаж.Договор КАК Договор, ВыручкаИСебестоимостьПродаж.АналитикаУчетаНоменклатуры.Номенклатура КАК АналитикаУчетаНоменклатурыНоменклатура, ВыручкаИСебестоимостьПродаж.Количество КАК Количество, ВЫРАЗИТЬ(ВыручкаИСебестоимостьПродаж.СуммаВыручкиБезНДС / ВыручкаИСебестоимостьПродаж.Количество КАК ЧИСЛО(15, 2)) КАК ЦенаБезНДС, ВыручкаИСебестоимостьПродаж.СуммаВыручкиБезНДС КАК СуммаВыручкиБезНДС, ВыручкаИСебестоимостьПродаж.СуммаВыручки КАК СуммаВыручки, СФВ.ПервичныйДокумент КАК ПервичныйДокумен, Оплата.СуммаОплаты КАК СуммаОплаты ИЗ РегистрНакопления.ВыручкаИСебестоимостьПродаж КАК ВыручкаИСебестоимостьПродаж ЛЕВОЕ СОЕДИНЕНИЕ СФВ КАК СФВ ПО ВыручкаИСебестоимостьПродаж.Регистратор = СФВ.Реализация ЛЕВОЕ СОЕДИНЕНИЕ Оплата КАК Оплата ПО ВыручкаИСебестоимостьПродаж.Договор = Оплата.Договор ГДЕ ВыручкаИСебестоимостьПродаж.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг И ВыручкаИСебестоимостьПродаж.Количество > 0 ИТОГИ МАКСИМУМ(СуммаОплаты) ПО Договор |
|||
|
11
Dmitrii
гуру
07.04.26
✎
13:53
|
(0) Если взаиморасчеты ведутся по договору в целом (без разделения по документам отгрузок и оплат), то никак. Запросом такая задача не решается.
СКД позволят считать суммы по группировкам. То есть можно сделать так, что в таблице сумма "800.00" в графе оплат будет повторяться у каждой отгрузки, но в итогах эта сумма не проссумируется, а будет учтена только один раз. Но какого-то прикладного смысла в такой картинке нет. |
|||
|
12
aptomilov
07.04.26
✎
13:57
|
(8) вы там пытались меня уязвить сможете решить ?
(11) да взаиморасчеты по договору в целом. Спасибо подозревал что в скд это как то обошли. |
|||
|
13
d4rkmesa
07.04.26
✎
13:59
|
(0) Распределить в запросе возможно, но запрос будет нечитаемым, плюс будут вопросы к производительности, поэтому лучше так не делать. Распределение при помощи тета-соединения и поля с, грубо говоря, нарастающим итогом. Я в такое наигрался в одно время, больше не хочу.
|
|||
|
14
aptomilov
07.04.26
✎
14:01
|
(13) я думал может есть вариант распределения суммы на количество записей или что то типо того
|
|||
|
15
aptomilov
07.04.26
✎
14:05
|
Изящное решение все этой кухни это конечно скд + ручная обработка таблицы это я все понимаю - хотелось как то запросом
Распределить оплату пропорционально выручке по номенклатуре и все а группировка сделает свое дело |
|||
|
16
Garykom
гуру
07.04.26
✎
14:09
|
Классическое распределение (раскидывание) оплат (неких сумм) по договорам/документам (другим суммам)?
Ну баян же. |
|||
|
17
Garykom
гуру
07.04.26
✎
14:11
|
Понимаешь что задачка на SQL нормально не решаема?
Алгоритм слишком последовательный Приходится кучу соединений таблички с самой собой делать |
|||
|
18
Garykom
гуру
07.04.26
✎
14:12
|
Точнее можно легко "размазать" сумму по всем
А вот в порядке FIFO уже сложна |
|||
|
19
arsik
гуру
07.04.26
✎
14:16
|
Нужен новый движок
Назовем его FIFOSQL |
|||
|
20
spiller26
07.04.26
✎
14:17
|
(15) Блин где логика в этом всём?
Реализаций 1 800 Реализация 2 800 Реализация 3 800 Оплата 1 - 500 Оплата 2 - 200 Оплата 3 - 900 Оплата 4 - 800 Как вы это всё расскидаете в запросе или в СКД я если честно не понимаю. |
|||
|
21
Homer
07.04.26
✎
14:19
|
(16)-> (12) Вы пытаетесь автора "уязвить"!
|
|||
|
22
aptomilov
07.04.26
✎
14:19
|
размажу тогда тупым обходом таблицы и выведу в скд
как по мне так какая нибудь функция была бы очень кстати что то типа Размазать Оплату по Договору ровно/пропорционально(поле) и было бы класс ) Ибо такие задачи они регулярны |
|||
|
23
aptomilov
07.04.26
✎
14:22
|
Ладно спасибо всем пошел пилить СКД
думал уже чего нить придумали для таких задачек |
|||
|
24
spiller26
07.04.26
✎
14:23
|
(22) За вас всё сделать считай.
|
|||
|
25
aptomilov
07.04.26
✎
14:25
|
все функции в 1с пишутся для того что бы за нас все делать )
|
|||
|
26
trooba
07.04.26
✎
15:49
|
(25) В БСП есть ОбщегоНазначенияКлиентСервер.РаспределитьСуммуПропорциональноКоэффициентам(
РаспределяемаяСумма, Коэффициенты, Точность); Может это поможет? А в скд можно ее использовать, как экспортную |
|||
|
27
Ботаник Гарден Меран
07.04.26
✎
16:15
|
Фифо запросом баянистая тема.
Ну и никому не нужная, т.к. тормозит. FIFO в запросе Списание партий по FIFO одним запросом |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |