Поиск по наименованию только среди групп справочника #429570


#0 by Beduin
Как найти группу по наименованию, не перебирая все элементы. Выбирать нужно только среди групп, так как среди элементов возможны одинаковые наименования с группой.
#0 by Beduin
Как найти группу по наименованию, не перебирая все элементы. Выбирать нужно только среди групп, так как среди элементов возможны одинаковые наименования с группой.
#1 by miksa
ЭтоГруппа
#2 by Sadovnikov
Select
#3 by Beduin
В справочнике может быть до 2000 элементов, если я каждый раз буду организовывать поиск и проверять каждый на группу, то долго получается. Нужно что то вроде НайтиПоНаименованию только по группам, а не по всем элементам.
#4 by Beduin
А средствами встроенного языка похоже никак?
#5 by Sadovnikov
а это и есть средства встроенного языка.
#6 by Beduin
Вы уверены, что это для семерки работает?
#7 by miksa
Ну с компонентой 1С++ заработает..
#8 by Sadovnikov
Абсолютно уверен. Помним только, что в 1С есть механизм внешних компонент, который расширяет встроенный язык. В данном случае этим занимается внешняя компонента 1С++.
#9 by Дядя Васька
На селезневке признали 1С++ штатными возможностями? :)
#10 by Гефест
кто их спрашивает? нам тут виднее
#11 by Beduin
Это уже не средства встроенного языка. Просто база удаленно находится, если им я еще и компоненту тута буду бросать. Неохота просто.
#12 by Sadovnikov
Я не знаю, что там знают или не знают на Селезневке. Но точно уверен, что внешние компоненты - абсолютно щтатное средство 1С. Даже книжечка такая есть. При чем, книжечка выпущена 1С-ом.
#13 by Дядя Васька
Пройдись один раз по всему справочнику, свали группы в ТЗ, да там и ищи, делов-то...
#14 by Beduin
У меня справочник каждый раз разный. Это обмен.
#15 by Beduin
Бред.
#16 by Дядя Васька
Ну и что? Один раз в начале обмена, доли секунды займет.
#17 by Sadovnikov
"Это уже не средства встроенного языка" - это с чего вдруг? Именно средства. Именно встроееного языка. Расширенного при помощи ВК. И вообще - Вам шашечки или ехать? Хотим скорости ли "использовать только те методы языка, которые описаны на страницах с 73 по 146 описания встроенного языка"?
#18 by Дядя Васька
+ Однократный перебор это не долго, даже если там 20000 элементов, а не 2000
#19 by Sadovnikov
Где именно бред? Можно по подробнее?
#20 by Beduin
Я завтра еще пару компонент напишу, и буду ими пользоваться. А потом у них база рухнет. И кто за это будет отвечать. Разработчик компонент. Средства платформы хотя бы проверены уже целым поколением программеров.
#21 by Beduin
Бред про то что 1С официально утвердила 1С++.
#22 by Дядя Васька
Штатна сама возможность подключения ВК, а все что делается с ее помощью уже за пределами типовых возможностей.
#23 by Sadovnikov
Ты считаешь, что 1С++ не "проверены уже целым поколением программеров"? Ошибаешься... "А потом у них база рухнет" - пиши ВК так, чтобы база не рушилась.
#24 by Sadovnikov
А где я такой бред написал? Почему это? Или подключение ВК ради подключения?
#25 by Mikeware
"За пределами типовых возможностей" - совсем не значит, что "не штатными" :-) 1986?
#26 by Дядя Васька
На самом деле не стоит овчинка выделки, если это разовый заказ, а не на фикси. Подключение ВК в рамках языка 1С. Все что она делает за рамками.
#27 by Sadovnikov
1. Так автор скорости хотел. 2. Не соглашусь... ВК расширяют язык 1С. Но, раз это все равно язык 1С, то все оно находится в рамках этого языка. Во я сказал...
#28 by Beduin
Просто еще раз убедился что платформу семерки разрабатывали странные люди.(
#29 by Mikeware
Работа с торговым оборудованием, фискальными регистраторами, сканерами ШК - вне закона?
#30 by Sadovnikov
Э нет... Странные люди пытаются программировать в семерке. Что мы и видим в данной ветке. Извини, но на твоем примере... А те, кто разрабатывал, они не странные. Они сделали, что смогли... Жаль только, что смогли не очень много...
#31 by Beduin
Что там мочь, добавить в метод НайтиПоНаименованию параметр поиска среди групп. Просто отбор дополнительный по еще одному полю. И все. Делается за 30 секунд.
#32 by Sadovnikov
Давай шире смотреть на вещи? Что им мешало изначально дать доступ к базе, используя прямые запросы? Сколько бы это проблем решило...
#33 by Дядя Васька
А я сказал что 1С++ вне закона? Работа с торговым оборудованием, фискальными регистраторами, сканерами ШК реализована за рамками 1С, на совершенно других языках, в самой эске только пара управляющих методов появляется. Просто любая ВК теоретически понижает стабильность системы. И цеплять ВК чтобы найти группы в справочнике, это жесть товарищи :)
#34 by Sadovnikov
Так и сама 1С написана "на совершенно другом язеке". Не будем ее запускать? "И цеплять ВК чтобы найти группы в справочнике, это жесть товарищи " - это не жэсть, это желание, что бы все быстро работало. С минимальными затратами со стороны программиста.
#35 by Mikeware
"пара методов" - допустимо, а "десяток методов" - уже нет? :-) "Просто любая ВК теоретически понижает стабильность системы." - GUI тоже понижает стабильность системы. И прочая, прочая, прочая...
#36 by Дядя Васька
По сравнению с поиском по ТЗ ощутимой на глаз разницы не будет.
#37 by Beduin
Есть восьмерка, нормальная платформа. Непонимаю людей которые цепляются за семерку(смесь шлака и внешних компонент.
#38 by Дядя Васька
Я всего лишь о том что ВК надо пользовать там, где они реально нужны. Если по каждой мелочи новую dll'ку цеплять, результат понятно какой будет. Рано или поздно одна из них начнет валить эску, причем так, что концов не найдешь, потому как зоопарк...
#39 by Mikeware
Нечо на платформу кивать, если руки кривые...
#40 by miksa
Не устраивает семерка - не программь на ней, не берись за проекты, связанные с 7.7, у тебя есть право выбора.. А вообще сколько у тебя времени уходит на перебор справочника всего с 2000 элементами? Из-за чего весь сыр-бор?
#41 by Beduin
Она без внешних компонент еле дышит.
#42 by Дядя Васька
Может все-таки руки? )
#43 by Mikeware
для одной функции цеплять библиотеку, конечно, излишество. Хотя - у того же софтпойнта есть компонента только с одним методом. И причем этот метод исправляет ошибку даже не 1С, а сиквельника. Ичо?
#44 by Beduin
Немного, но это сути не меняет. Справочник, просто объект по сути, зачем эти кривые методы там насоздовали, вот что не пойму.
#45 by Волесвет
ну вы млин даете найти по наименованию потом проверяем группа или нет если нет продолжаем поиск.... 44 поста + вольные размышления на тему 7 и 8 ... мдя
#46 by Дядя Васька
Если ошибка критичная, почему бы и нет. А по сабжу вполне штатное и быстрое решение на поверхности. Просто пример из жизни, напоролся как-то на то, как прямой запрос вешал эску, причем всех пользователей, причем при определенном наборе условий, полдня убил пока нашел почему висим. И оказалось, что этот запрос использован всего лишь для того чтобы выбрать подчиненные документы. Убрал, добавил штатные три строчки, висеть не стало, и на скорость не повлияло.
#47 by miksa
Дык в первом посту и был ответ. Автору важно другое узнать, почему так криво написана семерка :)
#48 by Дядя Васька
Интересно как ты его продолжишь...
#49 by Mikeware
Это лишь вопрос о соотношении радиуса кривизны рук с радиусом кривизны извилин конкретного разработчика..
#50 by trad
Справедливости ради нужно отметить, что книжка "Технология создания ВК" от 1С существует, но та методика расширения языка, которая применена в 1с++ не описана в этой книжке. Если что, то технология в 1с++ на мой взгляд лучше.
#51 by Дядя Васька
Да не, там реально для того чтобы написать некривой прямой (эк завернул-то:) надо было всерьез разбираться со скульными блокировками. Вероятность накосячить велика. Штатно же банально ВыбратьПодчиненныеДокументы, и шансы влепить косяк равны нулю.
#52 by Beduin
Нарушена синхронизация между 1С:Предприятием и Отладчиком Теперь это выдает)
#53 by Волесвет
??? в цикле все дело мутиться пока там что то равно о мы и крутим а как только нашли группу 1
#54 by Волесвет
мля счас спросят а если ее нет что делать))))))))))))
#55 by miksa
Ну дак это и есть перебор всего справочника по всем 2000 элементам, чего автору не хотелось делать..
#56 by Волесвет
?? поиск по наименованию перебор всего справочника???
#57 by Дядя Васька
Ну накидай примерчик-то :) НайтиПоНаименованию только первый ищет. Или ты многократный перебор предлагаешь?
#58 by antoneus
а чо, изменить наименование + незафиксированная транзакция...
#59 by Волесвет
а нафига?? тут кто то про 7 нелестно говорил ... после такого помогать западло))
#60 by Дядя Васька
А не изврат?
#61 by antoneus
изврат, конечно. но в принципе-то возможно, хехе
#62 by Дядя Васька
теоретически можно и штаны через голову надеть, только неудобно :)
#63 by Beduin
Друзья если у вас будет такая ошибка, перезагрузитесь и она на время исчезает.
#64 by Ёпрст
НайтиПоНаименованию + ЭтоГруппа найдёт все группы...
#65 by VladZ
А че, запросом нельзя?
#66 by Beduin
Пример запроса в студию.
#67 by Ёпрст
прямым - можно, обычным - нет.
#68 by NS
Обмельчал народ, уже не знает как штатными средствами перебрать только группы... Всё очень просто, если "группы сверху"
#69 by Ёпрст
Ну, не все же знают про параметры метода ВыбратьЭлементы
#70 by Ёпрст
Хотя, тоже найдет всё и быстро.
#71 by NS
Ну, отмененная транзакция это не очень хорошо.
#72 by NS
А вообще самое правильное - реквизит с отбором, только для групп.
#73 by dk
а подумать? )))
#74 by Ёпрст
это точно, тем более, если у кого-то открыта форма элемента, который "удалить" пытаемся в поиске.. :)
#75 by NS
Запрос изначально перебирает только ЭЛЕМЕНТЫ справочника. Поэтому группа в которой нет элементов ни в один запрос попасть не может.
#76 by Ёпрст
Ты не умничай, а напиши обычный запрос, который отберёт ВСЕ группы.
#77 by dk
хотя пустые группы (без элементов) не найдет (((
#78 by Ёпрст
мда..
#79 by dk
все не обещаю ))
#80 by Фокусник
удалять, продолжать поиск, а потом отменять транзакцию ;)
#81 by Beduin
И чем мне поможет параметр в методе ВыбратьЭлементы Вы хотя бы думайте что пишите.
#82 by Ёпрст
Это ответ на .. А вам ответ - .
#83 by Beduin
Он остановится на первом элементе в этом методе. Ладно просто укажите код который ищет. Просто интересно очень.
#84 by Ёпрст
Наслаждайся: НачатьТранзакцию;
#86 by NS
-->
#87 by Beduin
Тебе любой нормальный спец за этот код голову оторвет.
#88 by Ёпрст
Вот только не надо тут хню полную нести, ладно?
#89 by Beduin
Зайди сюда
#90 by 1Сергей
Выложи свою фотку, плиз. Чисто в глаза твои посмотреть
#91 by Ёпрст
Зашел, дальше что?
#92 by aka MIK
Классный код, без шуток
#93 by Ёпрст
ну вот видишь ли, тебе теперь "любой нормальный спец за этот код голову оторвет" :))
#94 by Valery
собственно без вариантов. при поиске , в случае одинакового наименования элементов, всегда на группе будет позиционироваться.
#95 by Ёпрст
чего?..
#96 by ДенисЧ
Урожай?
#97 by Ёпрст
+95 вообще-то код в найдет все элементы (и группы) с одним наименованием... если что.
#98 by Valery
про то и толкую, что первой будет группа с одинаковым наименованием.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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