Имя: Пароль:
1C
 
Подскажите по теме XDTO ...
0 TDI
 
27.09.10
11:22
Есть файл xsd с схемой XML документа, в котором нужно выгружать справочник контрагентов в внешний ПП.
Подскажите где можно почитать инструкцию по использованию XDTO в 1С,
или где посмотреть простенький пример обхода этой схемы, для создания XML документа.
Спасибо
1 TDI
 
27.09.10
13:03
up
2 CoolCat
 
27.09.10
13:06
(0) П.С Белоусов, A.B. Oстроверх  "1С:Предприятие: от 8.0 к 8.1"
3 TDI
 
27.09.10
15:58
(2) под рукой нет...
4 mzelensky
 
27.09.10
16:04
5 mzelensky
 
27.09.10
16:05
6 mzelensky
 
27.09.10
16:05
7 mzelensky
 
27.09.10
16:06
8 mzelensky
 
27.09.10
16:06
Там вроде описываются простенькие примеры!
9 Aleksey_3
 
27.09.10
16:12
Поиск по форуму уже не рулит?
10 mzelensky
 
27.09.10
16:34
(9) в каком веке ты живешь??? поиск по форуму уже не модно!!! :)
11 TDI
 
29.09.10
13:48
я как понимаю это XDTO помогает только при создании обмена в однородных конфигурациях?
У меня есть файл с xml - XSD который сформирован для данных совсем иной программы (XXX),
как эту схему XSD я могу приспособить для ускорения выгрузки данных в программу XXX ?
Или это уже легче делать просто прямым формированием XML файла?
12 TDI
 
29.09.10
14:00
up
13 sda553
 
29.09.10
14:01
//Создание фабрики из xsd
   Пути = Новый Массив();
   Пути.Добавить("C:\Conf.xsd");
   Фабрика = СоздатьФабрикуXDTO(Пути);
   
   
//Создание объекта XDTO имея фабрику, имя тип и пространство имен

   тип = ТекФабрикаXDTO.Тип(ПространствоИмен, имяТипа);
   ОбъектXDTO = ТекФабрикаXDTO.Создать(тип);
   
//Работа с объектом XDTO
ОбъектXDTO.ТакоеТоСвойство = 1;
ОбъектXDTO.ДругоеТоСвойство = "Привет";

//Выгрузка объекта в xml
Док = Новый ДокументDOM(ПространствоИмен,ИмяДокумента);
ЗаписьУзлов = Новый ЗаписьУзловDOM;
ЗаписьУзлов.Открыть(Док);

ТекФабрикаXDTO.ЗаписатьXML(ЗаписьУзлов,ОбъектXDTO,ИмяОбъектаВXML,ПространствоИмен);
ЗаписьУзлов.Закрыть();

ЗаписьДом = Новый ЗаписьDOM;
ЗаписьXML = Новый ЗаписьXML;
ЗаписьXML.УстановитьСтроку();
ЗаписьДом.Записать(Док,ЗаписьXML);
СтрокаXML = ЗаписьXML.Закрыть();
14 TDI
 
29.09.10
14:17
(13) спасибо..
пару вопросов:
Что такое ДокументDOM ?
и что должн опередаваться в ИмяДокумента?
15 sda553
 
29.09.10
16:09
<?xml version="1.0" encoding="UTF-8"?>
<v8msg:Message xmlns:v8msg="http://v8.1c.ru/messages">
   <v8msg:Header>
       <v8msg:ExchangePlan>TestExchange</v8msg:ExchangePlan>
       <v8msg:To>8</v8msg:To>
       <v8msg:From>1</v8msg:From>
       <v8msg:MessageNo>9666</v8msg:MessageNo>
       <v8msg:ReceivedNo>11314</v8msg:ReceivedNo>
   </v8msg:Header>
</v8msg:Message>

Здесь Message это имя документа а http://v8.1c.ru/messages это пространство имен

ДокументDOM удобная компонента для создания xml, в отличие от записьXML позволяет делать это не последовательно
16 Адинэснег
 
04.10.10
13:07
народ, подскажите как перечисление из схемы вытащить?
17 Адинэснег
 
04.10.10
13:13
<xs:simpleType name="EnumRef.ПолФизическогоЛица">
       <xs:restriction base="xs:string">
           <xs:enumeration value=""/>
           <xs:enumeration value="Мужской"/>
           <xs:enumeration value="Женский"/>
       </xs:restriction>
</xs:simpleType>
18 Адинэснег
 
04.10.10
13:16
ОбъектФизЛицо.DeletionMark        = ФизЛицоОбъект.ПометкаУдаления;
ОбъектФизЛицо.Description        = ФизЛицоОбъект.Наименование;
ОбъектФизЛицо.IsFolder            = ФизЛицоОбъект.ЭтоГруппа;
ОбъектФизЛицо.Parent            = ФизЛицоОбъект.Родитель;
ОбъектФизЛицо.Ref            = ФизЛицоОбъект.Ссылка.УникальныйИдентификатор();
ОбъектФизЛицо.ДатаРождения        = ФизЛицоОбъект.Ссылка.ДатаРождения;
ОбъектФизЛицо.ИНН            = ФизЛицоОбъект.ИНН;
ОбъектФизЛицо.КодИМНС            = ФизЛицоОбъект.КодИМНС;
ОбъектФизЛицо.Пол            = ???
19 Адинэснег
 
04.10.10
13:17
то есть тут перечисление нужно указать из схемы. Как?
20 DmitrO
 
04.10.10
13:21
В схеме задано что базовый тип строка. Она просто ограничена определенными значениями. Значит так:
ОбъектФизЛицо.Пол = "Мужской";
21 Адинэснег
 
04.10.10
13:22
(20)Ооо, сэнкс
22 Адинэснег
 
04.10.10
14:17
Получил xml:

<?xml version="1.0" encoding="UTF-8"?>
<Данные>
   <CatalogObject.ФизическиеЛица xmlns="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:xsd="http://www.w3.org/2001/XMLSchema"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <IsFolder>false</IsFolder>
       <Ref>39c0ea50-237b-11df-8584-0007e92fb5cd</Ref>
       <DeletionMark>false</DeletionMark>
       <Parent>dfeb07c2-a71c-11de-997f-0007e92fb5cd</Parent>
       <Description>Иванов Леонид Анатольевич</Description>
       <ДатаРождения>1985-02-02T00:00:00</ДатаРождения>
       <Пол>Мужской</Пол>
       <ИНН/>
       <КодИМНС/>
       <Сотрудник>true</Сотрудник>
   </CatalogObject.ФизическиеЛица>
</Данные>

Не читается гад
23 Адинэснег
 
04.10.10
14:20
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: {http://v8.1c.ru/8.1/data/enterprise/current-config}CatalogObject.ФизическиеЛица    Форма: Элемент    Тип: {http://www.w3.org/2001/XMLSchema}anyType
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: {http://v8.1c.ru/8.1/data/enterprise/current-config}IsFolder    Форма: Элемент    Тип: {http://www.w3.org/2001/XMLSchema}anyType
24 Адинэснег
 
04.10.10
15:41
и все таки, что то не так делаю.
Конфигурация-Источник(КИ)
Конфигурация-Приемник(КП)

Из КП выгрузил схему "C:\UPR.xsd"
В КИ делаю:

   
ЗаписьXML = Новый ЗаписьXML;
ИмяФайла ="c:\XML_выгрузка.xml";
ЗаписьXML.ОткрытьФайл(ИмяФайла);
ЗаписьXML.ЗаписатьОбъявлениеXML();
Пути = Новый Массив();
Пути.Добавить("C:\UPR.xsd");
Фабрика = СоздатьФабрикуXDTO(Пути);
НовыйСериализаторXDTO = Новый СериализаторXDTO(Фабрика);

ТипФизЛицо = Фабрика.Тип("http://v8.1c.ru/8.1/data/enterprise/current-config", "CatalogObject.ФизическиеЛица");
ОбъектФизЛицо = Фабрика.Создать(ТипФизЛицо);

Зс  = Новый Запрос;
зс.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1
|    ФизическиеЛица.Ссылка КАК ФизЛицо
|ИЗ
|    Справочник.ФизическиеЛица КАК ФизическиеЛица " ;

выборка = зс.Выполнить().Выбрать();

ЗаписьXML.ЗаписатьНачалоЭлемента("Данные");

Пока выборка.Следующий() Цикл

ФизЛицоОбъект = выборка.ФизЛицо.ПолучитьОбъект();

ОбъектФизЛицо.DeletionMark = ФизЛицоОбъект.ПометкаУдаления;
ОбъектФизЛицо.Description = ФизЛицоОбъект.Наименование;
ОбъектФизЛицо.IsFolder = ФизЛицоОбъект.ЭтоГруппа;
ОбъектФизЛицо.Parent = ФизЛицоОбъект.Ссылка.Родитель.УникальныйИдентификатор();
ОбъектФизЛицо.Ref = ФизЛицоОбъект.Ссылка.УникальныйИдентификатор();

Если НЕ ФизЛицоОбъект.ЭтоГруппа Тогда
   ОбъектФизЛицо.ДатаРождения = ФизЛицоОбъект.ДатаРождения;
   ОбъектФизЛицо.ИНН = ФизЛицоОбъект.ИНН;
   ОбъектФизЛицо.КодИМНС = ФизЛицоОбъект.КодИМНС;
   Если ФизЛицоОбъект.Пол = Перечисления.ПолФизическихЛиц.Мужской Тогда
       ОбъектФизЛицо.Пол = "Мужской"
   ИначеЕсли  ФизЛицоОбъект.Пол = Перечисления.ПолФизическихЛиц.Женский Тогда
       ОбъектФизЛицо.Пол = "Женский"
   Иначе
       ОбъектФизЛицо.Пол = ""
   КонецЕсли;
   ОбъектФизЛицо.Сотрудник = Истина;
КонецЕсли;
Фабрика.ЗаписатьXML(ЗаписьXML, ОбъектФизЛицо);

КонецЦикла;
ЗаписьXML.ЗаписатьКонецЭлемента();
ЗаписьXML.Закрыть();

В КП Делаю:


ЧтениеXML = Новый ЧтениеXML;
ЧтениеXML.ОткрытьФайл(ИмяФайла);
ФЛОбъект = СериализаторXDTO.ПрочитатьXML(ЧтениеXML);
ФЛОбъект.ОбменДанными.Загрузка = Истина;
ФЛОбъект.Записать();
ЧтениеXML.Закрыть();
25 Адинэснег
 
04.10.10
15:55
Выходной файл:
<Данные>
<CatalogObject.ФизическиеЛица>
<IsFolder>true</IsFolder>
<Ref>91a2ce24-7de9-11da-9e32-577754503030</Ref>
<DeletionMark>false</DeletionMark>
<Parent>00000000-0000-0000-0000-000000000000</Parent>
<Description>ООО Рога и Копыта</Description>
</CatalogObject.ФизическиеЛица>
</Данные>
26 Адинэснег
 
04.10.10
15:58
на строке
ФЛОбъект = СериализаторXDTO.ПрочитатьXML(ЧтениеXML);
в КП валится по ошибке
27 Адинэснег
 
04.10.10
15:58
где че упустил?) сериализатор наверно при выгрузке?
28 Адинэснег
 
04.10.10
16:03
тонет черт
29 Адинэснег
 
04.10.10
16:15
юп
30 DmitrO
 
04.10.10
16:17
ох ты какой шустрый :)
а как он должен преобразовать в ФизЛицо элемент Данные? у него в схемах пространстве имен "http://v8.1c.ru/8.1/data/enterprise/current-config" для элемента "CatalogObject.ФизическиеЛица" нет никакого элемента с названием "Данные" :)
31 Адинэснег
 
04.10.10
16:24
ааа)
32 Адинэснег
 
04.10.10
16:26
дак блин) надо же при записи корневой элемент указать, а то ругается) щас попробуем разпарсить Данные сначала, и обходить элементы на втором уровне
33 DmitrO
 
04.10.10
16:29
кроме того из твоего файла и кода он даже не знает что ты вообще физ.лицо хочешь получить
34 Адинэснег
 
04.10.10
16:30
дак да
35 Адинэснег
 
04.10.10
16:30
{Форма.Форма.Форма(7)}: Ошибка при вызове метода контекста (ПрочитатьXML)
ФЛОбъект = СериализаторXDTO.ПрочитатьXML(ЧтениеXML);
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: CatalogObject.ФизическиеЛица    Форма: Элемент    Тип: {http://www.w3.org/2001/XMLSchema}anyType
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: IsFolder    Форма: Элемент    Тип: {http://www.w3.org/2001/XMLSchema}anyType
36 DmitrO
 
04.10.10
16:32
вот именно anyType
37 Адинэснег
 
04.10.10
16:34
как быть?
38 DmitrO
 
04.10.10
16:36
короче..
во-первых: надо в xml файле указать пространство имен (ну или придется в ПрочитатьXML тип указывать).
во-вторых: надо сначала зайти в элемент Данные, а потом уже читать объект ФЛ.
ну и наверно в-третьих: элемент должен соответствовать схеме, подозреваю что он у тебя не полный.
39 Адинэснег
 
04.10.10
16:39
ну я его не заполняю ибо у каталогов(групп) нет реквизитов а null не запишешь
40 sapphire
 
04.10.10
16:40
(38) Если схема статична, почему бы её не импортировать?
41 DmitrO
 
04.10.10
16:41
(39) а ну это правильно, именно так и надо.
42 Адинэснег
 
04.10.10
16:44
>>во-первых: надо в xml файле указать пространство имен
в котором месте?
43 DmitrO
 
04.10.10
16:48
в элементе Данные например, или можно в каждом элементе CatalogObject.ФизическиеЛица указывать
44 Адинэснег
 
04.10.10
16:50
в данных не сканало, а вот в
<?xml version="1.0" encoding="UTF-8"?>

   <CatalogObject.ФизическиеЛица xmlns="http://v8.1c.ru/8.1/data/enterprise/current-config"

xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <IsFolder>true</IsFolder>
       <Ref>91a2ce04-7de9-11da-9e32-777054503030</Ref>
       <DeletionMark>false</DeletionMark>
       <Parent>00000000-0000-0000-0000-000000000000</Parent>
       <Description>Рога и копыта</Description>
   </CatalogObject.ФизическиеЛица>
45 Адинэснег
 
04.10.10
16:51
нусёё... [потирая руки]. Щас напишем кучу кода)))
спс, мозг DmitrO
46 DmitrO
 
04.10.10
16:54
вот так тоже должно получиться:
ЗаписьXML.ЗаписатьНачалоЭлемента("Данные");
ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("", "http://v8.1c.ru/8.1/data/enterprise/current-config");
ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("xsi", "http://www.w3.org/2001/XMLSchema-instance");

разница только в том, что текста меньше будет (в каждом элементе CatalogObject.ФизическиеЛица не надо будет указывать пространства имен)
47 Адинэснег
 
04.10.10
16:55
да да, так и сделал)
48 Адинэснег
 
05.10.10
09:05
всем прив =) опять я)
какой-то косяк при чтении
Структура xml:

<?xml version="1.0" encoding="UTF-8"?>
<Данные xmlns="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <CatalogObject.ФизическиеЛица>
       <IsFolder>true</IsFolder>
       <Ref>91a2ce04-7de9-11da-9e32-777054503030</Ref>
       <DeletionMark>false</DeletionMark>
       <Parent>00000000-0000-0000-0000-000000000000</Parent>
       <Description>МОЯ ООО</Description>
   </CatalogObject.ФизическиеЛица>
</Данные>

Читаю:

ЧтениеXML = Новый ЧтениеXML;
ЧтениеXML.ОткрытьФайл(ИмяФайла);

Пока ЧтениеXML.Прочитать() Цикл
   // Обработка узла XML
   Если ЧтениеXML.Имя = "Данные" И ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
       Пока ЧтениеXML.Прочитать() Цикл
           
           ФЛОбъект = СериализаторXDTO.ПрочитатьXML(ЧтениеXML);
           ФЛОбъект.ОбменДанными.Загрузка = Истина;
           ФЛОбъект.Записать();
                       
       КонецЦикла;
   КонецЕсли;
КонецЦикла;

ЧтениеXML.Закрыть();


смотрел в отладке, URI проставляется от родителя, однако при попытке прочитать элемент:
ФЛОбъект = СериализаторXDTO.ПрочитатьXML(ЧтениеXML);
валится фэйл
49 Адинэснег
 
05.10.10
09:27
юп
50 Адинэснег
 
05.10.10
10:52
.
51 Адинэснег
 
05.10.10
11:44
не тони
52 DmitrO
 
05.10.10
12:15
ЧтениеXML = Новый ЧтениеXML;
ЧтениеXML.ОткрытьФайл(ИмяФайла);
ЧтениеXML.ПерейтиКСодержимому(); //Переходим на узел: начало элемента Данные
ЧтениеXML.Прочитать(); //Читаем следующий узел: за узлом Данные идет первый CatalogObject.ФизическиеЛица
Пока ЧтениеXML.ТипУзла<>ТипУзлаXML.КонецЭлемента Цикл //будем читать сериализатором пока не встретим конец узла Данные
   Объект = СериализаторXDTO.ПрочитатьXML(ЧтениеXML);
   Объект.ОбменДанными.Загрузка = Истина;
   Объект.Записать();
КонецЦикла;
ЧтениеXML.Закрыть();
53 Адинэснег
 
05.10.10
12:34
(52) тож самое

Также доходит до элемента CatalogObject.ФизическиеЛица

Пространство тоже - http://v8.1c.ru/8.1/data/enterprise/current-config

и тоже при попытки прочитать Сериализатором валит фэйл:

{Форма.Форма.Форма(32)}: Ошибка при вызове метода контекста (ПрочитатьXML)
   Объект = СериализаторXDTO.ПрочитатьXML(ЧтениеXML);
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: {http://v8.1c.ru/8.1/data/enterprise/current-config}CatalogObject.ФизическиеЛица    Форма: Элемент    Тип: {http://www.w3.org/2001/XMLSchema}anyType
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: {http://v8.1c.ru/8.1/data/enterprise/current-config}IsFolder    Форма: Элемент    Тип: {http://www.w3.org/2001/XMLSchema}anyType
54 Адинэснег
 
05.10.10
12:36
мне в получателе же не надо никаких пакетов описывать, если я из источника выгружал по схеме Конфы-приемника?
55 Адинэснег
 
05.10.10
12:36
чото с пространством
56 DmitrO
 
05.10.10
12:41
Нет, с пространством все нормально.
Тогда у тебя, скорее всего, просто содержимое CatalogObject.ФизическиеЛица не соответствует схеме, какраз то что я и говорил в-третьих в (38).
57 Адинэснег
 
05.10.10
12:41
ааа, в твоем коде он до isfolder опускается )
58 DmitrO
 
05.10.10
12:43
Код у справочника есть (в метаданных)? Если есть, то где элемент Code в файле?
59 Адинэснег
 
05.10.10
12:49
нет ни кода, ни владельца
60 DmitrO
 
05.10.10
12:53
ошибка происходит на элементе приведенном в (48)?
61 DmitrO
 
05.10.10
12:57
еще по примеру в (48):
В метаданных у справочника стоит что он иерархический (наличие элемента Parent)?
В метаданных у справочника больше нет реквизитов определенных для группы?
В метаданных у справочника нет предопределенных элементов?
62 Адинэснег
 
05.10.10
13:10
дак я ж по схеме фабрику при выгрузке делал, а она ругается, када ей гамно подсовываешь, все поля заполнял из фабрики
63 DmitrO
 
05.10.10
13:13
принадлежность реквизитов к группе проверь
64 Адинэснег
 
05.10.10
15:17
кароче в получателе перестала загружаться(((
CatalogObject.ФизическиеЛица  - энитайп и всё
65 ll13
 
05.10.10
15:20
При выгрузке из источника, все реквизиты справочника заполняешь ?
66 Адинэснег
 
05.10.10
15:27
да, сейчас все, результат - тот  же
67 Адинэснег
 
05.10.10
15:30
самое страшное, что вчера загружалось с только заполненными
<IsFolder>
<Ref>
<DeletionMark>
<Parent>
<Description>
и я ничего не менял вродь)
68 Адинэснег
 
05.10.10
15:35
я правильно делаю со схемой? В источнике при создании фабрики использую выгруженную из получателя http://v8.1c.ru/8.1/data/enterprise/current-config
В Получателе только делаю прочитать СериализаторXDTO.ПрочитатьXML()?
в получателе это же пространство имен?
http://v8.1c.ru/8.1/data/enterprise/current-config
69 Адинэснег
 
05.10.10
15:37
связанных ссылки оставляю пустыми (Parent), для теста
70 Адинэснег
 
05.10.10
16:05
етишь его маму))))
работает! в! ТОЛСТОМ клиенте!!!
71 Адинэснег
 
06.10.10
13:30
всем привет) новый вопрос)
Как в xdto заполнить пустой ссылкой?
Например, есть некий справочник

       <xs:complexType name="CatalogObject.ПапкиФайлов">
       <xs:sequence>
           <xs:element name="Ref" type="tns:CatalogRef.ПапкиФайлов"/>
           <xs:element name="DeletionMark" type="xs:boolean"/>
           <xs:element name="Parent" type="tns:CatalogRef.ПапкиФайлов"/>
           <xs:element name="Code" type="xs:string"/>
           <xs:element name="Description" type="xs:string"/>
           <xs:element name="Описание" type="xs:string"/>
           <xs:element name="Ответственный" type="tns:CatalogRef.Пользователи"/>
           <xs:element name="ДатаСоздания" type="xs:dateTime"/>
           <xs:element name="ДополнительныеРеквизиты" type="tns:CatalogTabularSectionRow.ПапкиФайлов.ДополнительныеРеквизиты" minOccurs="0" maxOccurs="99999"/>
       </xs:sequence>
   </xs:complexType>

при заполнении фабрики мне нужно в элемент Ответственный заполнить пустую ссылку справочника Пользователи

   <xs:complexType name="CatalogObject.Пользователи">
       <xs:sequence>
           <xs:element name="Ref" type="tns:CatalogRef.Пользователи"/>
           <xs:element name="DeletionMark" type="xs:boolean"/>
           <xs:element name="Description" type="xs:string"/>
           <xs:element name="ИдентификаторПользователяИБ" type="v8:UUID"/>
           <xs:element name="ФизическоеЛицо" type="tns:CatalogRef.ФизическиеЛица"/>
           <xs:element name="ТекущееПодразделение" type="tns:CatalogRef.ЦФО"/>
           <xs:element name="КонтактнаяИнформация" type="tns:CatalogTabularSectionRow.Пользователи.КонтактнаяИнформация" minOccurs="0" maxOccurs="99999"/>
       </xs:sequence>
72 Адинэснег
 
06.10.10
13:33
00000000-0000-0000-0000-000000000000?
73 ll13
 
06.10.10
14:27
Короче так:
1). В схеме, у всех реквизитов (кроме стандартных, которые должны быть заполнены обязательно и кроме подчиненных ТЧ) проставь свойство Возможно пустое = Истина (в схеме это выглядит как nillable="true").
2). Заполняешь все стандартные реквизиты (code, description и т.д...), заполняешь нужные тебе реквизиты, вызываешь ИнициализироватьПоУмолчанию(ОбъектXDTO)

Процедура ИнициализироватьПоУмолчанию(ОбъектXDTO)
   // Все реквизиты которые забиваются Неопределенно в схеме должны иметь nillable="true"
   ТипСписокXDTO = Тип("СписокXDTO");
   Для каждого СвойствоОбъектаXDTO Из ОбъектXDTO.Свойства() Цикл
       Если НЕ ТипЗнч(ОбъектXDTO[СвойствоОбъектаXDTO.Имя]) = ТипСписокXDTO Тогда
           Если НЕ ОбъектXDTO.Установлено(СвойствоОбъектаXDTO) Тогда
               ОбъектXDTO[СвойствоОбъектаXDTO.Имя] = Неопределено;                
           КонецЕсли;
       КонецЕсли;
   КонецЦикла;
КонецПроцедуры
74 Адинэснег
 
06.10.10
14:28
спс
75 Адинэснег
 
07.10.10
13:06
Продолжаем =)
(73)чем атрибут nillable="true" отличается от minOccurs="0"?
76 Адинэснег
 
08.10.10
09:05
Делаю ОбъектДоговор.Owner = Договор.Владелец.Ссылка.УникальныйИдентификатор();
У Owner  тип {http://v8.1c.ru/8.1/data/enterprise}AnyRef
Ругается:
Ошибка отображения типов:
Отображение типа 'УникальныйИдентификатор' в тип '{http://www.w3.org/2001/XMLSchema}string'
AnyRef разве не ограничен строкой?
77 Адинэснег
 
08.10.10
09:28
все,к строке преобразовал уид, зафурычило