|
Запрос, сложить и вычесть суммы в строчках | ☑ | ||
---|---|---|---|---|
0
bfss-732
24.06.21
✎
10:01
|
Всем привет!
Есть результат запроса в виде таблицы: Столб1 Столб2 Столб3 Строка1 Номенклатура1 СчетДТ Сумма1 Строка2 Номенклатура2 СчетДТ Сумма2 Строка3 Номенклатура3 СчетДТ Сумма3 Строку4 NULL NULL Сумма4 Нужно получить Строку4, где Сумма4=Сумма1=Сумма2-Сумма3 Как? |
|||
1
bfss-732
24.06.21
✎
10:02
|
Сумма4=Сумма1+Сумма2-Сумма3
|
|||
2
bfss-732
24.06.21
✎
10:03
|
ВЫБРАТЬ
ХозрасчетныйДвиженияССубконто.СчетКт КАК СчетКт, ХозрасчетныйДвиженияССубконто.СубконтоДт2 КАК СубконтоДт2, ХозрасчетныйДвиженияССубконто.СубконтоКт1 КАК СубконтоКт1, ХозрасчетныйДвиженияССубконто.ПодразделениеДт КАК ПодразделениеДт, СУММА(ХозрасчетныйДвиженияССубконто.Сумма) КАК Сумма, // ХозрасчетныйДвиженияССубконто.Регистратор КАК Регистратор, ХозрасчетныйДвиженияССубконто.Период КАК Период ИЗ РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто( &НП, &КП, СчетДт В (&СчетДт) И ПодразделениеДт В (&ПодразделениеДт), , ) КАК ХозрасчетныйДвиженияССубконто СГРУППИРОВАТЬ ПО ХозрасчетныйДвиженияССубконто.СчетКт, ХозрасчетныйДвиженияССубконто.СубконтоДт2, ХозрасчетныйДвиженияССубконто.СубконтоКт1, ХозрасчетныйДвиженияССубконто.ПодразделениеДт, // ХозрасчетныйДвиженияССубконто.Регистратор, ХозрасчетныйДвиженияССубконто.Период |
|||
3
Bigbro
24.06.21
✎
10:04
|
Сумма3 = - Сумма3
Сумма4 = Итог(Сумма) |
|||
4
ДенисЧ
24.06.21
✎
10:06
|
Надеюсь, ты понимаешь 2 вещи
1. что порядок строк зависит от сортировки 2. что разность, в отличие от суммы, некоммутативна ? |
|||
5
Михаил Козлов
24.06.21
✎
10:06
|
А чем 3-я строка (которую нужно вычесть) отличается от 1 и 2? В результате запроса всегда 3 строки? Если не всегда, что тогда нужно складывать и вычитать?
|
|||
6
bfss-732
24.06.21
✎
10:11
|
(4) да там никак не сделать, если не вычесть
|
|||
7
bfss-732
24.06.21
✎
10:12
|
(5) бухгалтер сказала, что нужна ХозрасчетныйДвиженияССубконто.Сумма, которая рассчитывается по формуле
|
|||
8
bfss-732
24.06.21
✎
10:14
|
а отчет должен быть в виде:
ВИД 01.01.2021 01.02.2021 Итого Подразделение Дт Сумма Сумма Сумма Прочие выплаты |
|||
9
ДенисЧ
24.06.21
✎
10:14
|
Начни с простого - ответь на (5).
Как определяется, что эта строчка именно Сумма3, а не сумма2? |
|||
10
bfss-732
24.06.21
✎
10:14
|
Уже делал подобный, но там я мог просто зять необходимы суммы по условию. А тут так нельзя
|
|||
11
bfss-732
24.06.21
✎
10:16
|
(9) разные СубконтоДт2 и СубконтоКт1
|
|||
12
bfss-732
24.06.21
✎
10:16
|
и СчетКт тоже другой
|
|||
13
bfss-732
24.06.21
✎
10:17
|
(9) разные СубконтоДт2, СубконтоКт1 и СчетКт
|
|||
14
ДенисЧ
24.06.21
✎
10:17
|
(11) ну тогда делай не Сумма(ХозрасчетныйДвиженияССубконто.Сумма)
а ВЫБОР КОГДА Субконтодт1 = &скдт1 и Субконтодт2 = &скадт2 тогда -сумма иначе сумма конец КАК сумма и просто суммируй. |
|||
15
Михаил Козлов
24.06.21
✎
10:18
|
(11) Значит Вам нужен признак прибавлять или вычитать в зависимости от набора (СубконтоДт2, СубконтоКт1, СчетКт).
|
|||
16
bfss-732
24.06.21
✎
10:18
|
(15) да
|
|||
17
bfss-732
24.06.21
✎
10:19
|
(14) такой способ делал, он только прибавляет. Последний пост у меня, там весь запрос, но потом выяснилось, что бухгалтер дал не правильное ТЗ
|
|||
18
bfss-732
24.06.21
✎
10:20
|
(15) в идеале если это будет с ВЫБОР КОГДА, почитал в интернете, но такое не получится
|
|||
19
ДенисЧ
24.06.21
✎
10:24
|
(17) "такой способ делал, он только прибавляет"
Если ты отдаёшь минус-сумма, она не может прибавляться Значит, что-то не то делаешь |
|||
20
ДенисЧ
24.06.21
✎
10:24
|
А ещё нам придётся сейчас телепать правильное тз от бухгалтера...
|
|||
21
Михаил Козлов
24.06.21
✎
10:25
|
(18) Почему? Вы можете сформировать, скажем, 2 таблицы с наборами (СубконтоДт2, СубконтоКт1, СчетКт) для сложения и вычитания? Или, хотя бы одну такую таблицу?
Поместите ее во временную таблицу и потом левым соединением с ней определите, нужно прибавлять или вычитать. |
|||
22
bfss-732
24.06.21
✎
10:25
|
(19) Ааааа, ты имеешь ввиду поставить "-" ?
|
|||
23
acht
24.06.21
✎
10:27
|
(22) Браво
|
|||
24
bfss-732
24.06.21
✎
10:27
|
(21) "потом левым соединением с ней определите, нужно прибавлять или вычитать." это как
|
|||
25
ДенисЧ
24.06.21
✎
10:28
|
(22) В (14) написано "тогда -сумма иначе сумма"
если это не означает "поставить минус", то я не знаю, что это может означать... |
|||
26
bfss-732
24.06.21
✎
10:32
|
(14) (25) не катит, у меня после ТОГДА идет название строки.
|
|||
27
bfss-732
24.06.21
✎
10:32
|
ВЫБОР
КОГДА ХозрасчетныйДвиженияССубконто.СубконтоДт2 В (&СубконтоДт2ОсновнаяЗаработнаяПлата) И ХозрасчетныйДвиженияССубконто.СчетКт В (&СчетКт70) ИЛИ ХозрасчетныйДвиженияССубконто.СубконтоДт2 В (&СубконтоДт2СтраховыеВзносыНачисляемыеНаРезервыКромеНСиПЗ) И ХозрасчетныйДвиженияССубконто.СчетКт В (&СчетКт96012) ИЛИ ХозрасчетныйДвиженияССубконто.СубконтоДт2 В (&СубконтоДт2РезервыОтпускаВознаграждения) И ХозрасчетныйДвиженияССубконто.СчетКт В (&СчетКт96011) ИЛИ ХозрасчетныйДвиженияССубконто.СубконтоДт2 В (&СубконтоДт2СтраховыеВзносыНачисляемыеНаРезервыКромеНСиПЗ) И ХозрасчетныйДвиженияССубконто.СчетКт В (&СчетКт96013) И ХозрасчетныйДвиженияССубконто.СубконтоКт1 В (&СубконтоКт1Квар) ИЛИ ХозрасчетныйДвиженияССубконто.СубконтоДт2 В (&СубконтоДт2СтраховыеВзносыНачисляемыеНаРезервыКромеНСиПЗ) И ХозрасчетныйДвиженияССубконто.СчетКт В (&СчетКт96013) И ХозрасчетныйДвиженияССубконто.СубконтоКт1 В (&СубконтоКт1Год) ТОГДА "ОКЛАД" КОНЕЦ |
|||
28
ДенисЧ
24.06.21
✎
10:33
|
(тут смайлик, бьщийся головой о стенку)
Может, 1с - это не твоё? |
|||
29
bfss-732
24.06.21
✎
10:34
|
Для примера, вычесть например последние два:
ИЛИ ХозрасчетныйДвиженияССубконто.СубконтоДт2 В (&СубконтоДт2СтраховыеВзносыНачисляемыеНаРезервыКромеНСиПЗ) И ХозрасчетныйДвиженияССубконто.СчетКт В (&СчетКт96013) И ХозрасчетныйДвиженияССубконто.СубконтоКт1 В (&СубконтоКт1Квар) ИЛИ ХозрасчетныйДвиженияССубконто.СубконтоДт2 В (&СубконтоДт2СтраховыеВзносыНачисляемыеНаРезервыКромеНСиПЗ) И ХозрасчетныйДвиженияССубконто.СчетКт В (&СчетКт96013) И ХозрасчетныйДвиженияССубконто.СубконтоКт1 В (&СубконтоКт1Год) |
|||
30
bfss-732
24.06.21
✎
10:34
|
(28) Может ты ни разу вопросы не писал на форумы? Все сам да сам, книжки кругом)))
|
|||
31
bfss-732
24.06.21
✎
10:36
|
(28) ну вот 27 и 28 пост, давай покажи класс
|
|||
32
bfss-732
24.06.21
✎
10:36
|
27 и 29
|
|||
33
Ёпрст
24.06.21
✎
10:39
|
Тогда //"оклад"
-Сумма(хреньчтосчитаешь) Иначе Сумма(хреньчтосчитаешь) Конец как суммахреньдлябуха |
|||
34
Ёпрст
24.06.21
✎
10:40
|
Ну, если с арифметикой плохо, то так:
Тогда (-1)*Сумма(хрень) иначе Сумма(хрень) конец как суммаХрень |
|||
35
Ёпрст
24.06.21
✎
10:41
|
Это, если со знаком минус проблемы
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |