Как удалить в ТЗ нулевые значения? #118992


#0 by Egor27
Есть ТЗ, колонками : Товар и кол-во.Как удалить из ТЗ все товары с количеством =0?Пробовал в цикле, так после ТЗ.УдалистьСтроку пропускается строка следующая за удаленной.:-(Как этого избежать?Спасибо !
#1 by Denk
Цикл через Для По
#2 by v8
Добавь еще одну колонку... потом в цикле проставь в эту колонку, например, 1 (единицу), а дальше...
#3 by helpme
отсортировать по колонке количество и обрезать тз
#4 by Denk
... начиная с конца таблицы
#5 by Egor27
4- с конца это как?
#6 by callisto
использовать цикл "Пока" с индексом строки, если строка удалилась - индекс увеличивать не надо.
#7 by pma
Посчитай число строк с 0 (например ХХХ) отсортируй по возрастанию количество и выгрузи в другую ТЗ строки начиная с ХХХ+1
#8 by callisto
м-да...
#9 by Дурочка 1С
Во, как я:свернуть таблицу по обеим колонкам, т.е. в том числе и по количеству, а потом найти последний ноль и закилять его!
#10 by callisto
не кнопочку нажал... :)
#11 by VZ
Это с чего ты "м-да..." говоришь? Сотворил бесконечный цикл...
#12 by callisto
а если значения сворачивать не надо ? исправлено... :
#13 by Denk
КонецЦикла;Не проверял, но должно работать
#14 by callisto
в вообще нерабочий код :)
#15 by VZ
Опять неправда. Он рабочий вполне. Еще как... Можешь глянуть загрузку процессора...
#16 by NS
Прикольно.
#18 by БаГ
А можно я, а можно я поизвращаюсьТЗ.Выгрузить(ТЗ1);
#20 by Vahe
Оптимальный Если таблица очень большая, можешь сначало сортировать по "Количество"
#21 by NS
VaheИ кто тебе сказал, что это оптимально?
#22 by VZ
Я тоже могу извратится:
#23 by Vahe
Это не мне сказали, это я тебе сказал, что то не вижу тваего ответа
#24 by NS
Более того медленней, чем даже не придумать.
#25 by Старче
Популярная однако тема:Повторяюсь:ТЗ.ВыбратьСтроки;
#26 by Vahe
на собеседованях не говари то что сказал только что, а то сразу неУД. получишь, горе СПЕЦ. по 1с-у)))))))))
#27 by AntMash
#28 by NS
Сказал бы я тебе.Ты сделал связку из двух самых медленных способов (найтиЗначение и УдалитьСтроку)Вдобавок - кривее кода просто не придумать, какой-то цикл по строкам...Бред.А мне нечего сказать - я всё, что можно сказать про удаление строк сказал несколько лет назад.http://1c.proclub.ru/modules/mydownloads/personal.php?lid=1419&cid=110А вы тут толпой даже не то что более менее приличный код не можете написать, но даже куча нерабочих выложена.
#29 by VZ
Извини, парень, но ты глуповат...
#30 by Vahe
а для чего "ТЗ.НомерСтроки>0"?????
#31 by AntMash
+ 27 сорри такое уже было (не увидел 22)
#32 by Vahe
бряхнуть что то, это без проблем, любой козел может, а ты сможешь объснить почему у тебя такие мысли???
#33 by NS
Тоже сработает с ошибкой, ежели в последней строке количество 0;-)) Уже даже не смешно.
#34 by Эстет хренов
ты какой-то убогий человек, возьми свои слова назад думаю оптимальный алгоритм, сортировка по Количеству в обратную сторонубинарный поиск последнего не нулевого значенияобрезка ТЗ посредством КоличетвоСтрок
#35 by VZ
Во-первых, потому, что медленность твоего кода видна невооруженным взглядом.Во-вторых, если бы и не видна была, то NS я бы поверил безоговорочно.В третьих, ты послал NS на аттестациюВ четвертых, применение слова "козел" свойственно людям с очень низким уровнем интеллекта.
#36 by Vahe
так вас таких много здесь???)))))))))))))ты тоже по ту сторону гуляешь. пошел к черту
#37 by Старче
Условие (Если НомерСтроки > 0) если в последней строке Количество=0. Работает и без этого условия, но выдает сообщение об ошибке.
#38 by Vahe
Понятно "NZ" твой личный бог, а я попробовал с ним спорить))))))
#39 by Vahe
Многие люди пользуются словм "козел" , и не только этим словом.....притом очень многие интелектуальные люди этим словом и пользуются, когда встречают такого язычника как ты))))))))
#40 by Человек в футляре
Господин Vahe, Вам предупреждение.
#41 by Vahe
Спасибо, по крайней мере , даже если я не написал оптимальный, даже если не так, то не надо по хамски обращатся "с высоты"
#42 by urban
(38, 39) Человек, которого ты назвал "горе СПЕЦ. по 1с-у" несколько лет назад написал рабочие шахматы на 1С без использования ВК. В течении всего времени его пребывания на форуме дает грамотные, исчерпывающие, эффективные и, главное, рабОчие советы. Тобой руководит Твоя, хм..., Недальновидность...
#43 by NS
Мальчик с улицы, который даже не может написать удаление строк в ТЗ решил поспорить? ;-))Во первых еще раз найтиЗначение и удалитьСтроку по ТЗ работают очень медленно, а ты их вдобавок используешь в связке.Плюс - не надо искать значение столько раз, сколько строк в ТЗ, достаточно -Для ин = 1 по Таб.КоличествоСтрок цикл//НайтиЗначение уже будет выполняться всего лишь столько раз, сколько встречается "0" + 1//Далее - есно можно обойтись без НайтиЗначениекол=ТЗ.КоличествоСтрок;// это еще быстрее.А самое быстрое - это есно сортировать и выгрузить(заполнить) Что проверено конкурсом в И всё вышесказанное мной, но никак не вяжется с ГОЛОСЛОВНЫМ утверждениемв
#44 by Г о с т ь
Прочитай внимательно 28 пост.Сходи по ссылке - многое станет понятно.
#45 by Vahe
я решил остановится после но как видно этому не дано сбытся,маладец человек, много знает, но это не дает право по хамски отвергать, то что другой сделал, и пытается помочъ советом.А ты тоже пошел к черту.
#46 by NS
Есно в предыдущем посте опечаткаДля ин - необходимо убрать
#47 by hlud
определенноо.. если хотите найти NS-а, заведите ветку про удаление строк из таблицы значений. :))
#48 by Человек в футляре
Ну, что же, Ваше пребывание на Форуме в течении четырех дней на этом и заканчивается.
#49 by Г о с т ь
Похоже на правду:))))
#50 by hlud
э нет батенька. хам здесь ты.если пишешь что что-то твое "оптимально", то потрудись доказать. а если пишешь это необосновано, и явно не разбираясь в вопросе, даешь вредные советы, да еще имешь наглость посылать кого-то на аттестацию и назыввать "горе-спецом",то ты не только хам, но еще и вредитель, да и туп как дерево, так что шел бы ты сам по адресу указанному тобой другим.
#51 by КонецЦикла
Прикольно... каждая ветка про удаление ненужных строк вырастает до десятков постов... надо все же будет свой вариант доработать и выложить... мож кому понравиться
#52 by Дурочка 1С
Удаление строк в ТЗ известная удка для NS, вместе с тем делать безапелляционные выводы, на том основании, что кто-то что-то написал - это тоже ошибка ... NS часто порет чушь ... Тем более, чморить одного человека якобы заслугами другого, это вообще низко.
#53 by Марат
чморить человека низко вообще :^)
#54 by Дурочка 1С
Мой вариант решения :  Не знаю как насчет скорости (кто бы проверил ...), но это самый короткий код!
#55 by VZ
Перечитайте посты. Малчик написал код . Ну написАл, и написАл... А потом , не услышав похвал, решил сделать это самостоятельно. За что тут же получил щелчек по носу ;)И обиделся круто :) Даже предупреждение не охладило... Вот и финал.Так что слово "чморить", ИМХО, неуместно.
#56 by DeiMos
: Красиво излагает, саббака!Чем-то напоминает Фандорина...Не заикается, разве-что... Сегодня оцифровал фото моей поездки в СПб.Получилось очень качественно.Выслал всем присутствовавшим питерцам (AЛьФ, StepanRazin, Птенец, TSD).После того, как одобрение всех участников тусовки на опубликование фотоотчёта будет получено - выложу тут. Следите за рекламой!
#57 by Дурочка 1С
Приплыл к нам некто Кук, пожить на время.Ругался страшно он, и вот - расплата:Спустя два дня всё материлось племя!Пришлось сожрать - наш вождь не любит мата.
#58 by MDSer3
Все это будет работать медленно. Кто смотрел мои бух. отчеты для Торговли - видел процедуры, которые работают быстро.Если бегать по таблице и удалить строку, то вы - новичок с ТЗ.Надо: либо удалитьстроки, либо выгрузить отсортированную
#59 by MDSer3
57)Опять стихи - ты чо в этой ветке делаешь?
#60 by КонецЦикла
2 В торговле обычно миллиона строк не бывает :)При малом количестве строк (около 50) приведенные процедуры работают, как правило, быстрее "быстрых с добавлением колонок и проч."
#61 by MDSer3
60) Правда не бывает?!Тем не менее - я пишу универсально, если ТЗ из 500 строк, то не спорю, а иначе спорю.
#62 by VZ
Это правильно: писать универсально. Так и надо.Только если ЗиКа собирает шаблоны минут двадцать или более, мне уже все равно, за какое время обработаю ТЗ, ею собранное :)
#63 by MDSer3
62) В ЗиК обычно работают с ТЗ, но не всегда правильно - можно и ускорить
#64 by ShootNICK
52 вот нифига... лучший способ завести NS-a это спич о скорости алгоритмов в применении их к 1С :) ну или просто об оптимальности алгоритмов
#65 by alexey galkin
что то мне кажется что кроме приза за самый короткий код ты еще получишь приз за самый нерабочий код =)
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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