Подсчет строк в таблице значений #410928


#0 by Ktulhu
Добрый день. Пишу тут одну обработку, не буду вдаваться в подробности, так как это неважно. Вообщем на выходе получаем таблицу значений с колонками Номер заказа и Товар. Скажем я ее сортирую по номеру. Далее мне надо определить, строк с каким номером больше всего. Если заказов с максимальным одинаковым количеством строк несколько, то берется самый первый заказ из них. Мысль у меня собственно такая. Присваиваем переменным Х и Y значения =0. Далее идет перебор строк ТЗ(таблицы значений) в цикле. Параллельно наращивается Х на 1. При смене номера строки сливаем в другую Таблицу значений Номер и X (кол-во строк). Далее начинает наращиваться Y. При очередной смене номера сравнение. Если Y>X тогда X=Y, Y=0, очищаем Таблицу Значений, закидываем новые данные. Если меньше или равно, то оставляем старые данные. Далее продолжаем аналогично. В конце останется Таблица значений с одной строкой, где будет номер и максимальное количество строк. Мне кажется это все как-то сильно замудрено. Подскажите пожалуйста как бы это попроще сделать.
#1 by GreyK
При создании ТЗ добавь колонку в которой все значение будет равно 1, сверни ТЗ по Номеру заказа, Товару и созданной колонке, отсортирруй и поехали.....
#2 by AlexWolf
+1 только сворачивать тз надо по номеру, товар не нужен.
#3 by GreyK
Я имел ввиду вот так:
#4 by AlexWolf
Ему вроде как надо - "В конце останется Таблица значений с одной строкой, где будет номер и максимальное количество строк."
#5 by Ktulhu
Нет. Мне надо просто знать в каком заказе больше всего строк.
#6 by Ktulhu
вообще идея по поводу Свернуть отличная. Вот что значит не помнить все Методы. Спасибо. Скорее всего это то, что мне нужно.
#7 by GreyK
Извини, не обратил внимание :)
#8 by 8vC1
Сделать запрос к ТЗ с сортировкой и группировкой по номеру, и функцией Сумма.
#9 by 8vC1
Вернее не к ТЗ, а к источнику откуда данные.
#10 by Ktulhu
Все руки не доходили доделать обработку, вот сейчас только сел. Точнее руки сейчас дошли потому, что я наконец развернул дома базу с работы. Все-таки решил через Свернуть попробовать. Добавил новую колонку в ТЗ, присвоил там всем строкам единички, потом Все работает: далее берем просто первую строку таблицы-это и будет заказ с максимальным количеством совпадений. Спасибо всем, кто помогал.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С