Создание плана обмена для 1С:Элемент из 1С:Предприятие 8.3

17.06.25

Разработка - 1С:Элемент

1С: Элемент добрался до релиза, и появляются первые ласточки интеграций. Если использовать Элемент по прямому назначению (Кабинеты клиентов, Порталы и прочие сканеры штрихкодов), а не строить звездолет, который будет бороздить просторы Большого театра, то одно из первых, что понадобится - это обмен со Старшим братом. И если пробовать работать с Планом обмена в Элементе "как привыкли", то это может вызвать оторопь и микроинсульт. Ниже написанное актуально для 7.0 версии Элемента, надеюсь, сейчас, когда вы читаете эти строки, План обмена добавляет сам себя в среду разработки, слушая ваши пожелания, ну а для тех, кто до сих пор на 7.0 - ниже написанное.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Создание Плана Обмена для 1С:Элемент из 1С:Предприятие 8.3
.epf 9,14Kb
0
0 Скачать (1 SM) Купить за 1 850 руб.

Первое правило Обмена V8-Элемент - "Забудьте все, чему вас учили в школе желтых книжках". Второе, даже более важное, чем первое - Планы обмена в двух учетных системах должны называться одинаково.

Теперь, собственно, почему появилась эта статья с обработкой.

Элемент позиционируется как Low-code система, но План обмена об этом не знает и лично у меня YAML плана обмена обычно переваливает за 1000 строк. Связано это в первую очередь с тем, что в Элементе в Плане обмене сразу настраивается трансформация данных, то есть он совмещает в себе привычный узел плана обмена с регистрацией изменений и обработчики перед-после, а также мапинг реквизитов и табличных частей

Как это сделать "Low code", вендор пока не придумал, и настраивается вся эта красота в узенькой портянке свойств справа от экрана. Если Элемент обменивается с Элементом и объекты идентичны, то они подружатся и без нашей помощи, а вот если один из участников V8, то тут уже интересней.

 

 

При чтении сообщения обмена возможно неполное чтение при соответствующем реквизите dataPart и те реквизиты, которые приехали из элемента, но не присутствуют в V8, прочитаны не будут,  то в Элементе (на текущий момент) мы должны лично указать, какой реквизит, приехавший "справа" - то есть из v8 надо будет проигнорировать

 -
            Слева: ПользовательУТ
            Справа: Справочник.Пользователи 
            Поля:
                
                -
                    Действие: Игнорировать
                    Справа: ФизическоеЛицо         

Итак, что делает данная обработка - она готовит шаблон по всем реквизитам всех объектов в составе плана обмена, проставляя все реквизиты "справа" в Игнорировать. Необходимые вам в Элементе вы можете либо исправить на сопоставить, либо просто удалить и посмотреть, как две системы справятся с этим автоматически.

Результат данной обработки - Текстовый YAML Плана обмена, который надо скопипастить в Элемент вместо имеющегося. Обработка не предназначена для тех, кто "вкатился в Элемент вчера", надо иметь представление как открыть YAML Плана обмена, где взять его ИД и т.д. 

На текущий момент "Стандартные реквизиты" в Элементе надо игнорировать  на Английском языке, но на всякий случай сделал "галочку" - вдруг исправят. 

Обработка не тестировалась на регистрах сведений и накоплений (ну не было потребности у меня пока ими меняться) - как только будет "кейс", внесу изменения. Обработка для копирования в буфер обмена использует новый механизм платформы  8.3.24, если у вас ниже, просто удалите код команды или замените.

Как пользоваться обработкой: Выберите нужный узел плана обмена, введите идентификатор ПланаОбмена в элементе (если есть, если нет, то он сгенерится), и вбейте пространство имен по умолчанию вашего проекта

 

 

При нажатии "Заполнить" заполняется таблица по составу плана обмена. Тут можете Разрешить автоматическую регистрацию там, где надо (это же у нас данные в V8, в Элементе подход может быть другой) и изменить "Объекты элемента", если пространство имен у некоторых объектов и именование другое.

При нажатии "Сформировать" в Результате готовый YAML со всей необходимой табуляцией, копипастите его в соответствующий YAML Плана Обмена и уже настраивайте как вам надо.

 

 

Сокращенный пример под катом

 

 

ВидЭлемента: ПланОбмена
Ид: c0f635e6-d0d8-4461-8f70-18ac2d8e589a
Имя: УТКонсольЗаказовЭлемент
ОбластьВидимости: ВПодсистеме
Интерфейс:
	ВключатьВАвтоИнтерфейс: Истина
КонвертацияДанных:
	СхемаДанных:
		ВидСхемыДанных: Конфигурация1СПредприятия8
	Элементы:
		-
			Слева: Voronov::ConOrder::Основное::Организации
			Справа: Справочник.Организации
			Поля: 
				-
					Действие: Игнорировать
					Справа: PredefinedDataName
				-
					Действие: Игнорировать
					Справа: Predefined
				-
					Действие: Игнорировать
					Справа: DeletionMark
				-
					Действие: Игнорировать
					Справа: НаименованиеПолное
				-
					Действие: Игнорировать
					Справа: НаименованиеСокращенное
				-
					Действие: Игнорировать
					Справа: ЮрФизЛицо
				-
					Действие: Игнорировать
					Справа: Префикс
				-
					Действие: Игнорировать
					Справа: ИНН
				-
					Действие: Игнорировать
					Справа: КПП
				-
					Действие: Игнорировать
					Справа: КодПоОКАТО
				-
					Действие: Игнорировать
					Справа: КодПоОКПО
				-
					Действие: Игнорировать
					Справа: ОГРН
				-
					Действие: Игнорировать
					Справа: СвидетельствоДатаВыдачи
				-
					Действие: Игнорировать
					Справа: СвидетельствоСерияНомер
				-
					Действие: Игнорировать
					Справа: ТекущийРуководитель
				-
					Действие: Игнорировать
					Справа: ТекущаяДолжностьРуководителя
				-
					Действие: Игнорировать
					Справа: ТекущийГлавныйБухгалтер
				-
					Действие: Игнорировать
					Справа: БанковскийСчет
			ТабличныеЧасти: 
				-
					Действие: Игнорировать
					Справа: КонтактнаяИнформация
		-
			Слева: Voronov::ConOrder::Основное::Партнеры
			Справа: Справочник.Партнеры
			Поля: 
				-
					Действие: Игнорировать
					Справа: PredefinedDataName
				-
					Действие: Игнорировать
					Справа: Predefined
				-
					Действие: Игнорировать
					Справа: DeletionMark
				-
					Действие: Игнорировать
					Справа: Parent
				-
					Действие: Игнорировать
					Справа: Code
				-
					Действие: Игнорировать
					Справа: Клиент
				-
					Действие: Игнорировать
					Справа: Комментарий
			ТабличныеЧасти: 
				-
					Действие: Игнорировать
					Справа: ДополнительныеРеквизиты
				-
					Действие: Игнорировать
					Справа: КонтактнаяИнформация
				-
					Действие: Игнорировать
					Справа: ВремяРассылкиЗаказов
				-
					Действие: Игнорировать
					Справа: СегментыРынка
		-
			Слева: Voronov::ConOrder::Основное::Пользователи
			Справа: Справочник.Пользователи
			Поля: 
				-
					Действие: Игнорировать
					Справа: PredefinedDataName
				-
					Действие: Игнорировать
					Справа: Predefined
				-
					Действие: Игнорировать
					Справа: DeletionMark
				-
					Действие: Игнорировать
					Справа: ИдентификаторПользователяИБ
				-
					Действие: Игнорировать
					Справа: ФизическоеЛицо
				-
					Действие: Игнорировать
					Справа: Недействителен
				-
					Действие: Игнорировать
					Справа: Подразделение
				-
					Действие: Игнорировать
					Справа: Комментарий
			ТабличныеЧасти: 
				-
					Действие: Игнорировать
					Справа: КонтактнаяИнформация
				-
					Действие: Игнорировать
					Справа: ДополнительныеРеквизиты
Реквизиты:
	-
		Имя: Наименование
Состав:
	-
		АвтоРегистрация: Выключено
		Элемент: Voronov::ConOrder::Основное::Организации
	-
		АвтоРегистрация: Выключено
		Элемент: Voronov::ConOrder::Основное::Партнеры
	-
		АвтоРегистрация: Выключено
		Элемент: Voronov::ConOrder::Основное::Пользователи

 

 

Если же вам какая-то табличная часть нужна, то правки вносить по такой схеме:

	ТабличныеЧасти: 
                -
                    Действие: Игнорировать
                    Справа: ДополнительныеРеквизиты  
                -
                    Действие: Сопоставить
                    Слева: ВремяРассылкиЗаказов
                    Справа: ВремяРассылкиЗаказов     
                    Поля:
                        -
                            Действие: Сопоставить
                            Слева: НомерДняНедели
                            Справа: НомерДняНедели 

 

Проверено на следующих конфигурациях и релизах:

  • Управление торговлей, редакция 11, релизы 11.0.6.9

обработка элемент план обмена обмен данными

См. также

Нейросети 1С:Элемент Программист Бесплатно (free)

Технология 1С:Элемент позволяет быстро и качественно разрабатывать компактные и практичные мини-решения, не зацикливаясь на технических деталях, думая не о коде, а о бизнес-идее. Расскажем о том, какие приложения лучше всего разрабатывать на 1С:Элемент, кому это легче делать и какие трудности могут быть в освоении.

09.04.2025    5171    Dziden    69    

2

Работа с интерфейсом 1С:Элемент Программист Стажер Платформа 1С v8.3 Россия Бесплатно (free)

Как быстро реализовать на 1С:Элемент любой нестандартный интерфейс, используя инструмент HTMX и серверный рендеринг.

29.01.2025    2784    deplatoon    16    

10

Мессенджеры и боты 1С:Элемент Программист Платформа 1С v8.3 Россия Бесплатно (free)

"Помнить все" на 1С Элемент + Телеграм Вы можете напомнить себе о задаче, введя (или надиктовав) подобные фразы:   позвонить через 15 минут, напомнить завтра утром, погулять в 8 вечера в воскресенье, и даже: вынести мусор в последний понедельник следующего месяца без четверти пять.

27.01.2025    1674    K_A_O    3    

14

1С:Элемент Мессенджеры и боты Программист Платформа 1С v8.3 Россия Бесплатно (free)

Если захотеть, то можно вспомнить про различные продукты, которые облегчают жизнь. Но надо очень сильно захотеть, чтобы начать их изучать. В статье автор вспомнил про 1С:Предприятие.Элемент и, наконец, придумал, для чего его использовать.

10.06.2024    9500    SmithSE    10    

49

Мобильная разработка Языки и среды 1С:Элемент Программист Бесплатно (free)

Flutter может быть использован с 1С:Предприятием для разработки кроссплатформенных мобильных приложений, обеспечивая единый интерфейс и функциональность на устройствах под управлением iOS и Android. Это позволяет создавать приложения с высокой производительностью благодаря использованию собственного движка рендеринга Flutter. Интеграция Flutter с 1С:Предприятием позволяет создавать мобильные приложения любого уровня сложности, интегрировать их в корпоративные информационные системы, а также реализовывать бизнес-логику

19.03.2024    28784    ROk_dev    82    

48

Механизмы платформы 1С 1С:Элемент Бесплатно (free)

Платформа 1С:Предприятие 8 развивалась с начала двухтысячных, постепенно расширяя свое влияние на мобильный мир, веб-технологии и облачные сервисы. Расскажем об эволюции платформы и приложений экосистемы 1С:Предприятие.

17.01.2024    8377    peterg    11    

53
Оставьте свое сообщение