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

Автор Тема: Идентификация объекта. Различные конфигурации.  (Прочитано 1394 раз)

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

Оффлайн Lled

  • *
  • Сообщений: 2
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-08-11
  • Сайт: 
  • Профессия: Ученик 1С
Здравствуйте. Изучаю обмен данными между двумя различными конфигурациями. Назовем базы "Источник" и "Приемник". Обмен односторонний. Из справочника Источника выгружаются данные в XML для загрузки в Приемник.

Вопрос: как сопоставлять элементы справочников Источника и Приемника?

По "Ссылке" не получится, т.к. в Приемнике для элементов справочника Ссылку не отредактировать.

По "Наименованию" еще можно, но встает проблема с удаленными объектами (совсем удаленными). Ведь при выгрузке в XML от этих объектов остались только название справочника и ссылка, и в Приемнике их так не найти.

Еще есть извращенный вариант. В Приемнике в справочнике создать поле для ссылки из справочника Источника. Но это мне кажется совсем неправильным.


Оффлайн GRADUS

  • *****
  • Сообщений: 699
  • РЕПУТАЦИЯ: 51
  • КПД: 7%
  • Регистрация: 2013-06-08
  • Сайт: 
  • Профессия: Программист 1С
Изобретаешь велосипед? В типовых конфигурациях есть регистр "Соответствие объектов иб"

Оффлайн Lled

  • *
  • Сообщений: 2
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-08-11
  • Сайт: 
  • Профессия: Ученик 1С
Вчера ночью почти изобрел. В принимающей конфигурации данные элемента читаю из XML в структуру. Потом эту структуру обрабатываю процедурой:
Процедура ОбработатьСтруктуру(Структура1, Отправитель)
ПродуктСсылка = Справочники.ПродуктыСФермы.ПолучитьСсылку(Новый УникальныйИдентификатор(Структура1["Ссылка"]));
ФлагЭлемНайден = Истина;
ПродуктЭлем = ПродуктСсылка.ПолучитьОбъект();
Если ПродуктЭлем = Неопределено Тогда
ПродуктЭлем = Справочники.ПродуктыСФермы.СоздатьЭлемент();
ПродуктЭлем.УстановитьСсылкуНового(ПродуктСсылка);
ПродуктЭлем.УстановитьНовыйКод();
ПродуктЭлем.Цена = 0;
КонецЕсли;
ПродуктЭлем.ОбменДанными.Отправитель = Отправитель;
ПродуктЭлем.ОбменДанными.Загрузка = Истина;
ПродуктЭлем.ПометкаУдаления = Структура1["ПометкаУдаления"] = "true";
ПродуктЭлем.Наименование = Структура1["Наименование"];
ПродуктЭлем.Колво = Число(Структура1["Колво"]);
Если Структура1["ОбластьФермы"] = "Овощи" Тогда
ПродуктЭлем.ОбластьФермы = Перечисления.ОбластиФермы.Огород;
Иначе
ПродуктЭлем.ОбластьФермы = Перечисления.ОбластиФермы.Сад;
КонецЕсли;
ПродуктЭлем.Записать();
КонецПроцедуры
Удаление осталось написать, но это уже будет не сложно, т.к. элемент уже можно найти. А за информацию спасибо, посмотрю.


Теги:
 


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

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

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


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

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
179 Сообщений
ilyay ilyay
69 Сообщений
alex0402
54 Сообщений
oleg-x
48 Сообщений
AIFrame
46 Сообщений
andron81_81
44 Сообщений
MuI_I_Ika MuI_I_Ika
33 Сообщений
Golickoff Golickoff
31 Сообщений
BuhRust
30 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 603
  • Точка Скрытых: 1
  • Точка Пользователей: 13
  • Точка Сейчас на форуме:

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal