Имя: Пароль:
1C
1С v8
как загрузить внешнюю схему в фабрику?
0 mxs089
 
21.09.16
17:15
делаю так:
Процедура ПрочитатьПакет(Фабрика, URIПространстваИмен, ИмяФайла)
    
    ПостроительDOM = Новый ПостроительDOM;
    ЧтениеXML = Новый ЧтениеXML;
    ЧтениеXML.ОткрытьФайл(ИмяФайла);
    СхемаXML = Новый СхемаXML;
    СхемаXML.ДокументDOM = ПостроительDOM.Прочитать(ЧтениеXML);
    СхемаXML.ПространствоИмен = URIПространстваИмен;
    ЧтениеXML.Закрыть();
    НаборСхемXML = Новый НаборСхемXML;
    НаборСхемXML.Добавить(СхемаXML);
    Фабрика = Новый ФабрикаXDTO(НаборСхемXML);
    
КонецПроцедуры
1 Fragster
 
гуру
21.09.16
17:15
Глобальный контекст.СоздатьФабрикуXDTO (Global context.CreateXDTOFactory)
Глобальный контекст (Global context)
СоздатьФабрикуXDTO (CreateXDTOFactory)
Вариант синтаксиса: По имени файла

Синтаксис:

СоздатьФабрикуXDTO(<Путь>, <Пакеты>)
Параметры:

<Путь> (обязательный)

Тип: Строка.
Строка, представляющая собой путь к файлу, содержащему XML схему.
<Пакеты> (необязательный)

Тип: Массив.
Массив пакетов XDTO, которые используются при разыменовании директив импорта.
Описание варианта метода:

Создание фабрики XDTO по имени файла схемы XML.
Вариант синтаксиса: По списку имен файлов

Синтаксис:

СоздатьФабрикуXDTO(<Пути>, <Пакеты>)
Параметры:

<Пути> (обязательный)

Тип: Массив.
Массив путей к XML схемам, на основании которых необходимо создать фабрику XDTO.
<Пакеты> (необязательный)

Тип: Массив.
Массив пакетов XDTO, которые используются для разыменования директив импорта.
Описание варианта метода:

Создание фабрики XDTO по массиву переданных имен, а также пакетов, которые необходимо включить в состав фабрики XDTO.
Возвращаемое значение:

Тип: ФабрикаXDTO.


Доступность:

Тонкий клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).
Пример:

Схемы = Новый Массив;
Схемы.Добавить("путь1");
Схемы.Добавить("путь2");
Пакеты = Новый Массив;
Пакеты.Добавить(ФабрикаXDTO.Пакеты.Получить("URI пространства имен пакета из конфигурации 1"));
Пакеты.Добавить(ФабрикаXDTO.Пакеты.Получить("URI пространства имен пакета из конфигурации 2"));
МояФабрика = СоздатьФабрикуXDTO(Схемы, Пакеты);


--------------------------------------------------------------------------------

     Методическая информация
2 Serginio1
 
21.09.16
17:27
Фабрика = СоздатьФабрикуXDTO(ИмяФайла);