Как получить все строковые реквизиты? #749563


#0 by dart909
Добрый день, подскажите пожалуйста. Как можно получить значения всех строковых реквизитов объектов в конфигурации?
#1 by Волшебник
циклом
#2 by asady
крутяк!
#3 by Timon1405
взять падавана, дать конфу, попросить посчитать. будет быстрее
#4 by Serg_1960
Ты не понял. Автор хочет узнать все значения строковые (все наименования всех справочников, все комментарии во всех документах и т.д.) Я так его понял.
#5 by Волшебник
Похоже на полнотекстовый поиск...
#6 by Провинциальный 1сник
А в чем проблема, в цикле по метаданным формируем запросы, данные обрабатываем..
#7 by Fish
Главный вопрос: а зачем это нужно?
#8 by Serg_1960
Цикл по метаданным; определение типа; формирование текстов запросов в цикле; сами запросы; анализ полученных данных для комплексных типов.... и очень много, много, много, очень много, о-ч-е-н-ь  м-н-о-г-о времени, просто д-о-ф-и-г-и-щ-а много времени. Нет проблем.
#9 by dart909
Нет стоп сорян ,ошибся. Я хочу узнать значения строковые только во всех справочниках/
#10 by dart909
Ну есть обработка. В которое вводится некоторое строковое значение, и оно подставляется во все строковые реквизиты во всех справочниках?
#11 by dart909
А как это сделать? примерно хотя бы
#12 by Serg_1960
Велосипед изобретаем, альтернативу полнотекстовому поиску, не?
#13 by Smallrat
о как интересные задачи у людей
#14 by Fish
Вложенными циклами.
#15 by Провинциальный 1сник
Читал как-то описание резидентного вируса (еще времено ДОСа), который при посылке русского текста на принтер после каждой запятой вставлял нецензурный эпитет, переформатируя строку при необходимости. Наверное, что-то подобное требуется и сейчас.
#16 by Fish
Не, тут похоже что-то более глобальное, судя по и . Я так понял он хочет запихнуть некую строку во все строковые реквизиты всех справочников в конфе. Зачем это надо, так и осталось загадкой, с учётом, что наименование, да и код (как правило) - это тоже строковый реквизит :))
#17 by dart909
Я стажер, у меня самописная простенькая конфа) Просто дали такое задание ,потренироваться
#18 by Лодырь
Скажи что-нибудь уничижительное в адрес дающих абсолютно ненужные задачки.
#19 by Serg_1960
Для Каждого Справочник Из Метаданные.Справочники Цикл    Для Каждого Реквизит Из Справочник.Реквизиты Цикл       Если Реквизит.Тип.СодержитТип(...
#20 by Fish
А если учесть, что у справочников могут быть ТЧ со строковыми реквизитами, то ещё парочку вложенных циклов надо :))
#21 by dart909
нет обработать нужно только реквизиты) ТЧ не надо)
#22 by Fish
Ну тогда проще.
#23 by dart909
как в ? Спасибо сделаю)
#24 by dart909
СодержитТип, а что в параметры передавать?
#25 by Encode
Тип Типа Тип :)
#26 by dart909
А как изменить значение реквизита на выбранное Просто Реквизит.Имя не доступно для записи
#27 by D_E_S_131
Ну если записать новое строковое значение нужно не везде куда можно, а только туда, где уже строка записана, то можешь СодержитТип не использовать, а проверять значение реквизита с помощью ТипЗнч.
#28 by dart909
Ну у меня тип совпал а как теперь имя значения реквизита поменять/
#29 by D_E_S_131
Выборка метаданных справочников, выборка элементов справочника, выборка реквизитов, проверка значений реквизитов элемента справочника, если есть строковое значение, то получение объекта справочника и запись нового значения в найденный реквизит.
#30 by dart909
&НаСервере
#31 by Fish
Ты бы это, для начала хоть книжки какие почитал бы.
#32 by dart909
Читаю(
#33 by Serg_1960
Это метаданные - они не для того чтобы ты их изменял, а для того чтобы ты мог получить имена реквизитов, содержащих нужный тебе тип. Дальше тебе предстоит запомнить эти имена; сформировать динамически текст запроса, используя эти метаданные или выборкой пройтись по справочникам; получить ссылки; прочитать объекты; изменить значения реквизитов, обращаясь к ним по запомненным ранее метаданным; записать объекты...
#34 by D_E_S_131
#35 by Лодырь
Нафига ты для каждого элемента заново определяешь список строковых реквизитов? определи его 1 раз для нового типа. а потом уже иди по ним и меняй если надо.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

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