Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
11 Дек 2017, 14:20
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: XDTO xml, 8.3  (Прочитано 3554 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн stillenough

  • ***
  • Сообщений: 117
  • РЕПУТАЦИЯ: 7
  • КПД: 6%
  • Регистрация: 2014-11-13
  • Сайт: 
  • Профессия: Программист 1С
XDTO xml, 8.3
« Первое сообщение: 12 Дек 2014, 13:42 »
Разбираюсь с пакетами XDTO.
Есть такой код
XDTOТоварыТип 	= ВладелецТип.Свойства.Получить("Товары").Тип; //ВладелецТип   -- значение urn:1C.ru:commerceml_2}Каталог, тип --	ТипОбъектаXDTO
XDTOТовары = ПараметрыОбмена.МояФабрикаXDTO.Создать(XDTOТоварыТип); // создаем коллекцию <Товары></Товары>

цикл по товарам /// начало
XDTOТовар = ПараметрыОбмена.МояФабрикаXDTO.Создать(XDTOТоварТип); //лебедев
XDTOТовар.Вес  = ПланОбмена.Вес;
XDTOТовар.Страна  = ПланОбмена.Страна;
XDTOТовары.Товар.Добавить(XDTOТовар);
КонецЦикла;

нашел похожее обсуждение на одном форуме
Цитировать
ФабрикаXDTO

Класс ФабрикаXDTO представляет собой единственное средство превращения файлов XML в ОбъектыXDTO и обратно. При этом, фабрика следит за тем, чтобы создаваемые объекты строго соответствовали заявленной модели данных (схеме XML). Если мы попытаемся наполнить ОбъектXDTO чем-то не соответствующим схеме, то произойдет исключение времени выполнения.

Я хочу добавить реквизит в каждый товар, для этого я должен изменить схему xml. Как это сделать? Я так понимаю разговор идет об объекте конфигурации XDTO-пакеты.
Но какой именно пакет цепляется - непонятно.


Оффлайн MuI_I_Ika

  • Гончаров Михаил
  • Администратор
  • *****
  • Сообщений: 6555
  • РЕПУТАЦИЯ: 775
  • КПД: 12%
  • Регистрация: 2012-08-15
    • Skype: MuI_I_Ika
  • Сайт: 
  • Профессия: Программист 1С
Re: XDTO xml, 8.3
« Ответ #1: 12 Дек 2014, 13:48 »
1. Открыть файл схемы в редакторе и изменить.
2. Подключить схему в конфигурацию 1с, изменить там и обратно сохранить в файл.

Оффлайн stillenough

  • ***
  • Сообщений: 117
  • РЕПУТАЦИЯ: 7
  • КПД: 6%
  • Регистрация: 2014-11-13
  • Сайт: 
  • Профессия: Программист 1С
Re: XDTO xml, 8.3
« Ответ #2: 12 Дек 2014, 13:53 »
1. Открыть файл схемы в редакторе и изменить.
2. Подключить схему в конфигурацию 1с, изменить там и обратно сохранить в файл.
Вопрос где ее взять?

Оффлайн MuI_I_Ika

  • Гончаров Михаил
  • Администратор
  • *****
  • Сообщений: 6555
  • РЕПУТАЦИЯ: 775
  • КПД: 12%
  • Регистрация: 2012-08-15
    • Skype: MuI_I_Ika
  • Сайт: 
  • Профессия: Программист 1С
Re: XDTO xml, 8.3
« Ответ #3: 12 Дек 2014, 13:56 »
Ну либо смотреть XDTO пакеты в собственной конфигурации, либо по адресу веб сервиса.

Оффлайн stillenough

  • ***
  • Сообщений: 117
  • РЕПУТАЦИЯ: 7
  • КПД: 6%
  • Регистрация: 2014-11-13
  • Сайт: 
  • Профессия: Программист 1С
Re: XDTO xml, 8.3
« Ответ #4: 12 Дек 2014, 14:03 »
Ну либо смотреть XDTO пакеты в собственной конфигурации, либо по адресу веб сервиса.
Как понять какая именно моя? Что нужно посмотреть в отладчике?
Цитировать
//ВладелецТип   -- значение urn:1C.ru:commerceml_2}Каталог, тип --	ТипОбъектаXDTO
Как мне интерпретировать urn:1C.ru:commerceml_2}Каталог, на что это влияет?

Оффлайн sertak

  • ****
  • Сообщений: 274
  • РЕПУТАЦИЯ: 74
  • КПД: 27%
  • Регистрация: 2013-01-16
    • Skype: vitaly_sertakov
  • Сайт: www.sertakov.ru
  • Профессия: Программист 1С
Re: XDTO xml, 8.3
« Ответ #5: 12 Дек 2014, 14:06 »
Что нужно посмотреть в отладчике?
Значение переменной ВладелецТип. Его и ищите среди пакетов.
Если ты знаешь свой путь, то удачи и неудачи равно продвигают тебя вперед

Оффлайн stillenough

  • ***
  • Сообщений: 117
  • РЕПУТАЦИЯ: 7
  • КПД: 6%
  • Регистрация: 2014-11-13
  • Сайт: 
  • Профессия: Программист 1С
Re: XDTO xml, 8.3
« Ответ #6: 12 Дек 2014, 14:22 »
Спасибо, нашел, экспортировал, открыл и совсем запутался.
Дело в том, что когда я в отладчике пробегаю по коду....
XDTOТоварыТип 	= ВладелецТип.Свойства.Получить("Товары").Тип; //ВладелецТип   -- значение urn:1C.ru:commerceml_2}Каталог, тип --	ТипОбъектаXDTO
XDTOТовары = ПараметрыОбмена.МояФабрикаXDTO.Создать(XDTOТоварыТип); // создаем коллекцию <Товары></Товары>
цикл по товарам /// начало
[u][b]XDTOТовар[/b][/u] = ПараметрыОбмена.МояФабрикаXDTO.Создать(XDTOТоварТип); //лебедев
XDTOТовар.Вес  = ПланОбмена.Вес;
XDTOТовар.Страна  = ПланОбмена.Страна;
XDTOТовары.Товар.Добавить(XDTOТовар);
КонецЦикла;
выделенная переменная типа ОбъектXDTO содержит перечень доступных реквизитов (вес,страна). Я думал что они берутся из соответствующего раздела схемы xml, но в схеме не нашел ничего подобного. Получается, что созрел вопрос: где определяется список этих самых реквизитов? Мне нужно его расширить для хаписи.
Добавлено: 12 Дек 2014, 14:28

А нет, господа. Я вас обманул. Это как раз указывается в схеме. Всем спасибо, буду ковырять и пробовать
Добавлено: 12 Дек 2014, 14:44

Спасибо, за помощь еще раз, но я не добился желаемого. Что сделал по пунктам:
1. Выгрузил нужную схему из конфигурации.
2. Отредактировал схему (банально добавил 1 реквизит копированием с уже существующего).
3. Загрузил схему в конфигурацию и обновился.

Итог:
Объект DXTO, подцепляющий схему xml все еще не отображает добавленный реквизит... Что я не сделал ?

Последний раз редактировалось: stillenough; 12 Дек 2014, 14:44. Причина: Объединение сообщений


Теги:
 


* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
160 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
56 Сообщений
alex0402
46 Сообщений
andron81_81
44 Сообщений
AIFrame
35 Сообщений
MuI_I_Ika MuI_I_Ika
33 Сообщений
Golickoff Golickoff
28 Сообщений
BuhRust
27 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal