Поделитесь утилитой обработки базы

Тема в разделе "1C и всё что с ней связано", создана пользователем Дайнеко, 3 фев 2011.

  1. Дайнеко

    Дайнеко Well-Known Member
    1C Team

    Регистрация:
    19 ноя 2009
    Сообщения:
    951
    Симпатии:
    0
    Может кто делал утилитку, которая делает перебор объектов и полей всех справочников и документов?
    Мне конкретно нужно пообрезать пробелы на концах символьных строк. Но может есть нечто подобное, например, поиск и замена объекта.
     
  2. Zab

    Zab Well-Known Member
    1C Team

    Регистрация:
    7 авг 2006
    Сообщения:
    583
    Симпатии:
    0
    В составе конфы Конвертация данных есть обработка, которая выгружает структуру конфигурации в XML. Есть универсальный редактор реквизитов - позволяет выбрать объект и автоматом формирует форму на которой можно редактировать все реквизиты объекта. Также на ИТС есть загрузка данных из табличного документа. Любая из этих обработок подойдет в качестве примера обхода метаданных в восьмерке. Надо что-то слать, или сами найдете?
     
  3. Дайнеко

    Дайнеко Well-Known Member
    1C Team

    Регистрация:
    19 ноя 2009
    Сообщения:
    951
    Симпатии:
    0
    Спасибо - пересмотрел. Сама процедура обхода метаданных проблемы не вызывает. Признаюсь - чуть поленился. Надеялся найти что-то простенькое в пять строк.

    ИТС я не знаю. Из указанных тобой понравилась "ЗагрузкаДанныхИзТабличногоДокумента"
     
  4. Дайнеко

    Дайнеко Well-Known Member
    1C Team

    Регистрация:
    19 ноя 2009
    Сообщения:
    951
    Симпатии:
    0
    Написал процедуру с обходом реквизитов объектов. Вот в одном месте получается некрасиво:
    Код ( (Unknown Language)):
            Обработать("Справочники");
    Обработать("Документы");
    КонецПроцедуры

    //----------------------------------------------------------
    Процедура Обработать(П_ТипыОбъектов)
    //  Перебор по виду (Справочников, документов)
    Для Каждого ВидОбъекта Из Метаданные[П_ТипыОбъектов] Цикл
    //  Перебор объектов
    Если        П_ТипыОбъектов = "Справочники" Тогда
    Выборка = Справочники[ВидОбъекта.Имя].Выбрать();
    ИначеЕсли  П_ТипыОбъектов = "Документы" Тогда
    Выборка = Документы[ВидОбъекта.Имя].Выбрать();
    Иначе
    Возврат;
    КонецЕсли;

    Пока Выборка.Следующий() Цикл
    Как убрать Если? Не могу написать замену обращению к "СправочникиМенеджер" и "ДокументыМенеджер".
     
  5. unknown181538

    unknown181538 НеГуру
    1C Team

    Регистрация:
    28 дек 2008
    Сообщения:
    1.418
    Симпатии:
    0
    Ну, думаю, про вычислить() вы вспомнили. это, ИМХО, красивее, чем вычислить().
     
  6. Дайнеко

    Дайнеко Well-Known Member
    1C Team

    Регистрация:
    19 ноя 2009
    Сообщения:
    951
    Симпатии:
    0
    Тоже неплохо.
     
Загрузка...

Поделиться этой страницей