Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Свернуть таблицу не складывая а вычитая значения

↓ [Волшебник, 16.06.21 - 18:07]
Свернуть таблицу не складывая а вычитая значения
Я
   JuixyJes
 
16.06.21 - 16:47
Добрый день, возник такой вопрос.
Возможно ли свернуть таблицу по одной колонке, но вместо суммирования значений колонок, сделать вычитание??
   ДенисЧ
 
1 - 16.06.21 - 16:48
Запросом - хоть умножай (а в .19 - и сумму синусов можно )
   polosov
 
2 - 16.06.21 - 16:49
(0) Что от чего вычитается?
   polosov
 
3 - 16.06.21 - 16:53
(0) Если в поле есть строка с большим числом из которого хочется вычитать остальные, то остальные надо сделать отрицательными. В школе такое проходят.
   1Сергей
 
4 - 16.06.21 - 16:54
(2) +1
Что-то непонятное
   SleepyHead
 
5 - 16.06.21 - 17:17
(2) Все из всего, очевидно же )
   Chameleon1980
 
6 - 16.06.21 - 17:20
ужснах
   Serg_1960
 
7 - 16.06.21 - 17:27
Зачем делать круглые глаза? В суммируемой колонке могут быть отрицательные значения.
   JuixyJes
 
8 - 16.06.21 - 17:31
У меня в ТЗ каждые 2 строки относятся к одному и тому же элементу. Колонку "объем" нужно получить итоговую разность этих двух строк, вот и все.
   Serg_1960
 
9 - 16.06.21 - 17:33
(8) Вы же,надеюсь, понимаете, что 1-2 <> 2-1 ?
   Жан Пердежон
 
10 - 16.06.21 - 17:34
для стажёра/интерна сойдет задачка
   SleepyHead
 
11 - 16.06.21 - 17:34
(8) А почему бы не сделать одну строку для объекта и в ней две колонки?

Но если надо сделать 2 строки - сделайте еще одну колонку, в которой будет сумма для свертки, и суммируйте по этой колонке.
   Mikeware
 
12 - 16.06.21 - 17:38
(8) если строки  две, то что из чего? подсказываю: даже в школе учат, то если при суммировании все члены - "слагаемые",  то при вычитании есть "уменьшаемое" и "вычитаемое"
а если строки - три?
   JuixyJes
 
13 - 16.06.21 - 17:40
строки всегда две
не важно что из чего вычетать
   polosov
 
14 - 16.06.21 - 17:41
(13) Если не важно что из чего вычитать, то можно складывать - результат будет в твоем диапазоне хаоса.
   JuixyJes
 
15 - 16.06.21 - 17:43
(9) Число все равно нужно взять по модулю будет, потому разницы нет
   Mikeware
 
16 - 16.06.21 - 17:43
(13) используйте объект "ТаблицаЗначенийДляДвухСтрок"
   polosov
 
17 - 16.06.21 - 17:44
Срочно! Человеку нужна помощь! Выдайте ТС большую дозу математики.
   SleepyHead
 
18 - 16.06.21 - 17:44
(16) Зачем так сложно, можно применить метод ТЗ.ВычестьЗначенияПоМодулюВсеРавноРазницыНет()
   JuixyJes
 
19 - 16.06.21 - 17:45
Ну, вы конечно юмористы))
   Mikeware
 
20 - 16.06.21 - 17:45
(17) поздно
   Mikeware
 
21 - 16.06.21 - 17:45
(19) какой вопрос, такой и ответ.
ну или см.(1)
   JuixyJes
 
22 - 16.06.21 - 17:46
Ну вот в (1) - дельный совет
   polosov
 
23 - 16.06.21 - 17:47
(19) Ну, например, если у тебя таблица получается объединением двух таблиц, то в одной таблице можно просто умножить все на -1.
   mistеr
 
24 - 16.06.21 - 17:48
(8) Для такого частного случая платформа готового метода не предоставляет. Поэтому нужно пораскинуть мозгами и написать код.
   Serg_1960
 
25 - 16.06.21 - 17:51
В самом примитивном алгоритме задача решается за два прохода с одним свертыванием. В первом проходе значение каждой чётной строки умножаем на -1; свёртываем ТЗ; второй проход - записываем модуль значения.
   Mikeware
 
26 - 16.06.21 - 17:53
(25) это если "пары" идут подряд...
   polosov
 
27 - 16.06.21 - 18:07
(0)Ну спасибо тебе. Теперь не могу перестать думать как решить это запросом.
   1Сергей
 
28 - 16.06.21 - 18:09
(27) ой, да легко. сначала выбираем максимумы, потом минимумы. Потом соединяем эти таблицы
   1Сергей
 
29 - 16.06.21 - 18:11
Запросом ессно
   polosov
 
30 - 16.06.21 - 18:12
(28) Ну да, похоже. И тебе спасибо, что прервал мой event loop.
 
 
   Конструктор1С
 
31 - 16.06.21 - 19:23
(0) твоё решение задачи явно с душком. Вернись и пересмотри всю задачу, тогда и извращаться не придется. Сейчас ты стоишь такой, засунувши палец в ухо, придумываешь как этим пальцем почесать спину, не вынимая из уха
   Said_We
 
32 - 16.06.21 - 21:42
(0) Как я понял из переписки.
В таблице есть одна колонка числовая и одна порядковая от 1 до количества строк. Необходимо взять модуль каждого числа. Далее получить разницу первого и второго, третьего и четвертого и т.д.
Сделать всё запросом.

Так в чем сложность?
   Serg_1960
 
33 - 17.06.21 - 13:38
(26) Не обязательно. "У меня в ТЗ каждые 2 строки относятся к одному и тому же элементу." - достаточно во время прохода запоминать значения этого элемента. Если значение не найдено среди ранее запомненных - это первая строка; если найдено - это вторая строка.
   Eiffil123
 
34 - 17.06.21 - 13:57
(0) проходишь циклом по таблице значений, умножаешь сумму вычитаемого на -1. Далее уже стандартным методом можно свернуть.

PS процентов 90% комментариев - какой-то оффтопик


Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.