Поиск "дублей" в таблице значений #163372


#0 by ПравильнаЯ
Как в таблице значений найти записи с одинаковыми колонками? Есть таблица значений из 11 колонок, из них две РасчетныйСчет и КодБанка. Надо оставить строки с повторяющимися значениями колонок РасчетныйСчет и КодБанка, те оставить строки с неуникальными значениями этих колонок. Подскажите какие нибудь идеи к алгоритму.
#1 by Токс
Самая простая идея: Свернуть...
#2 by smaharbA
+ На всякий случай Свернуть, Свернуть, Свернуть...
#3 by Мулька
Перед КонецЦикла запоминаешь значение. После начала цикла сравниваешь новое значение с запомненным. Если равно - дубль
#4 by smaharbA
Афигеть...
#5 by Мулька
+ ест-но перед циклом сортировка по искомому полю
#6 by Omega
по двум искомым полям? )
#7 by smaharbA
+ А первое значение с чем сравнивать с "пустышкой" ?
#8 by Мулька
Афигевай
#9 by Allexe
Может проще на этапе формирования?
#10 by smaharbA
Ты этт счас придумал А Свернуть нафиха тогда есть?
#11 by Каанкереде
уж сотка ближется, а автора все нет...
#12 by Мулька
- по двум полям - два прогона ТЗ. И что ты узнаешь в результате сворачивания ? Разве что в доп.поле единицу прописать перед сворачиванием в каждую строку. Потом проверять на Если >=2
#13 by КонецЦикла
Я подожду (цы)
#14 by По идее так 2
Метод удаления строк из конкурса с проклаба (не помню кто автор):
#15 by ПравильнаЯ
Тута я. Читаю и думаю что применять...
#16 by Allexe
Ваш код в студию ТЗ.Свернуть(1,2,3,4,5,6,7,8,9,10,11) Вы так предлагаете?
#17 by smaharbA
Вы не знаете кто такой Паниковский? Нет, Вы не знаете кто такой Паниковский... Тогда поезжайте в Киев и спросите. Спросите... Нет, Вы поезжайте и спросите... (с)
#18 by Мулька
Ну а если что б оставить только уникальные - то см. тока, как говорится сзаду надо это делать. Ну и два прогона - по любому.
#19 by smaharbA
Не пристало мне код тута писать на такой "тривиал" :)
#20 by romix
Теперь в графе количество будет 2 и более если задвоены строки.
#22 by smaharbA
По любому ?
#23 by Мулька
По любому - для простоты. Из принципа - ест-но и гланды можно снизу выдрать
#24 by Allexe
:-) Пусть скажет аффтар в
#25 by Таня
согласна с
#26 by Allexe
В чем согласна?
#27 by ПравильнаЯ
Вот точно можно использовать, в еще не врубилась
#28 by КонецЦикла
Да, только не забудь, что нужно узнать не сам факт существования строк, а еще ведь и удалить их :)
#29 by Таня
в том что "Не пристало мне код тута писать на такой "тривиал"
#30 by ПравильнаЯ
так все в другую таблицу и там удалить строки у которых Количество>1
#31 by ПравильнаЯ
Смотри
#32 by КонецЦикла
Их там еще нужно найти... а однозначно это сделать не получится Короче перебирай строки таблицы и попутно найденные значения заноси в список, например Если нет в списке - добавить, если есть - удалить тек. строку Проще, конечно, при формировании ТЗ это сделать Долго, но верно ЗЫ. имхо
#33 by romix
Два вложенных цикла. По свернутой таблице и по искомой. Не забывать делать ВыбратьСтроки; после каждого удаления строки. Тупой надежный алгоритм. Но при больших таблицах может выполняться долго.
#34 by ПравильнаЯ
Однозначно получиться - пронумеровать строки то я могу (Добавить еще одну колонку в ТаблицуЗначений). Но мой метод через две таблицы Вот так и попробую сделать. спасибо
#35 by Токс
Уж тогда уж Сортировать... и далее...
#36 by smaharbA
Всеж непонял, а чем Свернуть неглянется ? Поясните для тупых и алкоголиков...(правдо) Млж чего и посоветую, и вопряки код койнибудь напишу...
#37 by КонецЦикла
Мдя... зачем два, когда можно ОДНИМ? Угумс... пронумеровать и благополучно свернуть :)
#38 by Shaman100M
А в колонках значения повторяются?
#39 by Тык
Мулька в + самую правильную наводку дал ... А всё остальное, что здесь сказали - чушь собачья!
#40 by Таня
эт точно :)
#41 by Shaman100M
+ + + Свертка ни при чем. Можно такой алгоритм. 1. Таб2 с колонками "ОбщийСчет","Ссылка" 2. Данные из ТЗ в Таб2 построчно:     Таб2.ОбщийСчет=ТЗ.РасчетныйСчет; 3. Данные из ТЗ в Таб2 повторно:     Таб2.ОбщийСчет=ТЗ.КодБанка; 5. Удаление строк из Таб2 для которых "ОбщийСчет" не повторяется. 6. Сортировка Таб2 по "Ссылка" - итог: номера строк в ТЗ, которые надо оставить.
#42 by smaharbA
А это полная лажо ?
#43 by Токс
Не буянь, лажевинько...
#44 by smaharbA
Но ведь решает, кто не верит (не о тебе) может проверить...(дублито сказано тока по 2 колонкам зырить, знчит значения остальных пох какое выйдет, хотя могу кинуть чтоб и все значения было видно, при чем будет "приляпано" к тем двум калонкам)
#45 by smaharbA
+ Если есть колонки с числовым значением но их ссумировать ненада, то легко преобразуются до текстовых перед тем как...
#46 by Токс
Так вот и надо, получается, эти дубляные строки совсем не трогать... Я сам по диагонали прочитал... Криво здесь Свёртывать... Из принципа можно и её прикрутить, но это будет "пятая нога"...
#47 by Токс
Так к чему не преобразовывай, а данные из других колонок потеряешь...
#48 by smaharbA
Тогда решения для нету кроме в скобочках после второй запятой...
#49 by Shaman100M
не решает.
#50 by smaharbA
+ "...после первой запятой"
#51 by smaharbA
Почитай сказано по двум колонкам? - сказано, тогда остальные как уж получатся, суммы будут верны, а строки/субконтывсякие будут по первой, хотя в в скобочках есть вариант чтоб и все другие колонки остались целы....
#52 by smaharbA
+ а вот как сделать чтоб было по 2 колонкам, но остальные видны - думайте, я "в танке", нескажу...
#53 by Shaman100M
смотря что ты будешь делать после Но в любом случае, свертка по 2 полям лишняя.
#54 by smaharbA
Ты пробовал ? все что в описано сделано, остальное в и ...
#55 by Shaman100M
После свертки останется в первозданном виде.
#56 by smaharbA
Да ну на... ты в точности повторил ? КодБанка РасчетныйСчет НазваниеБанка        Остаток 1        2                Пупкинский        512 2        2                ОччПупкинский2    253
#57 by smaharbA
Или такая лажо
#58 by Shaman100M
крылья крылья... Хвост! на.. тебе свертка? Сортировка + прогон для повторов которые идут подряд! Сначала для "КодБанка" потом для "Расчетного счета". Как и говорил Мулька.
#59 by smaharbA
А на сортировать и прогонять если и так все решается, если конечно условия сложнее тогда мож и сортировать...
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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