При вызове получаю ошибку Недопустимое значение параметра (параметр номер '3') Ошибка при вызове метода контекста (ЗаписатьXML).
Если же я укажу 3 параметром имя корневого элемента то все работает, но мне кажется что это не совсем правильно.
<xs:schema xmlns:tns="http://www.package.org/contragents" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.package.org/contragents" attributeFormDefault="unqualified" elementFormDefault="qualified">
<xs:element name="Контрагенты">
<xs:complexType>
<xs:sequence>
<xs:element name="Контрагент">
<xs:complexType>
<xs:sequence>
<xs:element name="Наименование" type="xs:string"/>
<xs:element name="ПолноеНаименование" type="xs:string"/>
<xs:element name="ИНН" type="xs:string"/>
<xs:element name="КПП" type="xs:string"/>
<xs:element name="ОКПО" type="xs:string"/>
<xs:element name="Руководитель">
<xs:complexType>
<xs:sequence>
<xs:element name="Фамилия" type="xs:string"/>
<xs:element name="Имя" type="xs:string"/>
<xs:element name="Отчество" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
&НаСервереБезКонтекста
Процедура КомандаНаСервере()
Пакет = ФабрикаXDTO.Пакеты.Получить("http://www.package.org/contragents");
КорневоеСвойство = Пакет.КорневыеСвойства.Получить("Контрагенты");
Контрагенты = ФабрикаXDTO.Создать(КорневоеСвойство.Тип);
КонтрагентТип = КорневоеСвойство.Тип.Свойства.Получить("Контрагент");
Контрагенты.Контрагент = ФабрикаXDTO.Создать(КонтрагентТип.Тип);
Контрагенты.Контрагент.Наименование = "ООО Компания";
Контрагенты.Контрагент.ПолноеНаименование = "Общество с ограниченной ответственностью";
Контрагенты.Контрагент.ИНН = "7717043213";
Контрагенты.Контрагент.КПП = "771701001";
Контрагенты.Контрагент.ОКПО = "01134139";
РуководительТип = КонтрагентТип.Тип.Свойства.Получить("Руководитель");
Контрагенты.Контрагент.Руководитель = ФабрикаXDTO.Создать(РуководительТип.Тип);
Контрагенты.Контрагент.Руководитель.Фамилия = "Иванов";
Контрагенты.Контрагент.Руководитель.Имя = "Иван";
Контрагенты.Контрагент.Руководитель.Отчество = "Иванович";
Запись = Новый ЗаписьXML();
Запись.ОткрытьФайл("D:\test.xml");
Запись.ЗаписатьОбъявлениеXML();
ФабрикаXDTO.ЗаписатьXML(Запись, Контрагенты);
Запись.Закрыть();
КонецПроцедуры
&НаСервереБезКонтекста
Процедура КомандаНаСервере()
Пакет = ФабрикаXDTO.Пакеты.Получить("http://www.package.org/contragents");
КорневоеСвойство = Пакет.КорневыеСвойства.Получить("Контрагенты");
Контрагенты = ФабрикаXDTO.Создать(КорневоеСвойство.Тип);
КонтрагентТип = КорневоеСвойство.Тип.Свойства.Получить("Контрагент");
Контрагенты.Контрагент = ФабрикаXDTO.Создать(КонтрагентТип.Тип);
Контрагенты.Контрагент.Наименование = "ООО Компания";
Контрагенты.Контрагент.ПолноеНаименование = "Общество с ограниченной ответственностью";
Контрагенты.Контрагент.ИНН = "7717043213";
Контрагенты.Контрагент.КПП = "771701001";
Контрагенты.Контрагент.ОКПО = "01134139";
РуководительТип = КонтрагентТип.Тип.Свойства.Получить("Руководитель");
Контрагенты.Контрагент.Руководитель = ФабрикаXDTO.Создать(РуководительТип.Тип);
Контрагенты.Контрагент.Руководитель.Фамилия = "Иванов";
Контрагенты.Контрагент.Руководитель.Имя = "Иван";
Контрагенты.Контрагент.Руководитель.Отчество = "Иванович";
Запись = Новый ЗаписьXML();
Запись.ОткрытьФайл("D:\test.xml");
Запись.ЗаписатьОбъявлениеXML();
ФабрикаXDTO.ЗаписатьXML(Запись, Контрагенты);
Запись.Закрыть();
КонецПроцедуры