Обсудим планы обмена. Способы регистрации объектов к обмену

Публикация № 1142470

Разработка - Обмен данными 1С

план обмена регистрация объектов программная

В этой статье я предлагаю обсудить такой объект конфигурации, как "план обмена", а точнее, методы регистрации в нем. Да и вообще, посмотрим, как можно зарегистрировать объекты к обмену.

 

Введение

Всем привет! Давайте поговорим о таком объекте конфигурации - как "План обмена".

В этой статье я хочу поделиться своим опытом по работе с этим объектом, расскажу, с какими обменами я сталкивался за свою практику - начнем с самых простых вещей - автоматической регистрации  в плане обмена, а закончить постараюсь применением интересных возможностей 1С для регистраций объектов к обмену.

Здесь я не буду рассматривать такие вещи, как конвертация данных, перенос объектов из одной конфигурации в другую. Начнем с того, как нам вообще зарегистрировать объекты к обмену, опишем и обсудим способы.

В статье ориентируюсь на популярную конфигурации УНФ (Управление нашей фирмой 1.6) и немножечко затронем обычные формы конфигурации УПП (Управление производственным предприятием 1.3).

В обоих случаях я буду использовать платформу 1с предприятия 8.3.15.1700.

Итак, давайте начнем:

 

Автоматическая регистрация

Как я написал выше - предлагаю начать с самого простого - это создание самого плана обмена и добавление в него объектов конфигурации к обмену. Для этого, заходим в конфигуратор, находим в "общих" - "планы обмена".

Создаем новый план обмена. Пусть будет называться "Товары и услуги" (ТоварыИУслуги). Нажимаем кнопочку "Состав" в нем - и добавляем единственный объект - справочник "Номенклатура". Галочка "Авторегистрация" включена.

Собственно, практически все. Все записи справочника "Номенклатура" в конфигурации будут регистрироваться в объекте конфигурации "План обмена" в созданном узле.

Использовать предопределенный узел (с точкой) нельзя, но присвойте ему уникальный код. Поэтому, давайте создадим узел (добавим ему код) в этом плане обмена и проверим, как проходит регистрация и что там регистрируется.

Чтобы посмотреть, что регистрируется в узле, например, в УНФ есть такая обработка "Регистрация изменений для обмена данными" (вообще любой типовой конфигурации существует такая обработка). В ней нужно выбрать узел плана обмена (у нас это будет созданный ранее узел плана обмена (не предопределенный)).

 

Рис.1. Узлы плана обмена "Товары и услуги".

 

Так, выбрали узел и смотрим, на какие объекты он "настроен". В нашем случае - это только "Номенклатура". У нас видно, что к обмену зарегистрировано более 1100 объектов. Нажав на объект "Номенклатура" - можно посмотреть справа какие объекты зарегистрированы к обмену (это касается УНФ). Картина такая:

 

Рис.2. Обработка регистрации/отмены регистрации изменений для узла обмена (УНФ 1.6).

 

Так же можно добавить объекты к обмену или удалить из обмена - это кнопки "Зарегистрировать" и "Отменить регистрацию" соответственно.

 

В конфигурациях на обычных формах данная обработка выглядит по-другому. На мой взгляд, "классическая" обработка более удобна (привычна). Привожу ее вид для конфигурации УПП 1.3.

 

Рис.3. Регистрация изменений для обмена данными для УПП 1.3 (УТ 10.3).

 

На этом закончим раздел "Автоматическая регистрация". Здесь нет никаких сложностей. "Запись" в узел идет автоматом. Теперь, рассмотрим более сложный способ регистрации объектов конфигурации - "по подписке".

 

Регистрация через подписку. Запрет авторегистрации

Теперь давайте рассмотрим такой пример. Нам нужно регистрировать товары в одном узле, а услуги в другом. Разберем этот пример.

Первое, что мы сделаем, добавляем в конфигурацию новый объект - план обмена "ВыгрузкаНоменклатуры". В состав плана обмена добавляем справочник "Номенклатура", запрещаем авторегистрацию - как на рисунке:

 

Рис.4. Запрет авторегистрации в новом плане обмена.

 

Запускам предприятие, выбираем созданный план обмена и создаем там 2 узла "ВыгУслуг" и "ВыгТоваров" как на рисунке:

 

Рис.5. Создание узлов в плане обмена.

 

В узел "ВыгТоваров" (002) будем выгружать номенклатуру с типом "Запас", а в "ВыгУслуг" (001) - выгружаем услуги. Для этого создаем подписку на событие "РегистрацияСправочникаВУзле" с типом "ПриЗаписи" и прописываем на нее такую процедуру:

Процедура ПриЗаписиСправочника(Источник, Отказ) Экспорт
	
	Если Источник.ТипНоменклатуры = Перечисления.ТипыНоменклатуры.Услуга Тогда
		
		УзелОбмена = ПланыОбмена.ВыгрузкаНоменклатуры.НайтиПоКоду("001"); // узел услуг
		
		Если Источник.ПометкаУдаления Тогда
			ПланыОбмена.УдалитьРегистрациюИзменений(УзелОбмена,Источник);
		Иначе	
			ПланыОбмена.ЗарегистрироватьИзменения(УзелОбмена,Источник);
		КонецЕсли;	
		
	ИначеЕсли Источник.ТипНоменклатуры = Перечисления.ТипыНоменклатуры.Запас  Тогда
		
		УзелОбмена = ПланыОбмена.ВыгрузкаНоменклатуры.НайтиПоКоду("002"); // узел запасов
		
		Если Источник.ПометкаУдаления Тогда
			ПланыОбмена.УдалитьРегистрациюИзменений(УзелОбмена,Источник);
		Иначе	
			ПланыОбмена.ЗарегистрироватьИзменения(УзелОбмена,Источник);
		КонецЕсли;	
		
	Иначе	
		
	КонецЕсли;	
	
КонецПроцедуры

Теперь, проверим как работает. Заходим в справочник "номенклатуру", выбираем с типом "запас" и записываем. Смотрим, что и где зарегистрировалось в узлах обмена:

 

Рис.6. Регистрация товаров в "ВыгТоваров".

 

Если записываем номенклатуру с типом "услуга", находим ее в узле "ВыгУслуг".

 

Рис.7. Регистрация услуг в узле "ВыгУслуг".

 

Операция "Пометить на удаление" отменяет регистрацию объекта в узле. Все работает - запасы падают в запасы, а услуги - в услуги. Так же можно добавлять объекты в узел плана обмена по любому условию.

 

Обмен через регистр сведений

Так же в этой статье я предложу еще такой вариант решения - регистрация документов к обмену через регистр сведений. По своему опыту - рассмотрим на примере конфигурации УНФ 1.6 (хотя, это в свое время хорошо использовалось в УПП).

Первое, что мы должны сделать - в конфигурации создать дополнительный регистр сведений "ДокументыДляВыгрузкиВБухгалтерскуюПрограмму" - пусть называется так. В нем создадим 3 измерения: Организация (тип Организация), ТипДокумента (тип Строка(200)) и ДокументСсылка (тип ДокументСсылка).

На рисунке это выглядит вот так:

 

Рис.8. Структура регистра сведений "ДокументыДляВыгрузкиВБухгалтерскуюПрограмму".

 

Теперь, нам нужно "отправлять документы" в этот регистр, если документ изменен. Для этого я опять воспользуюсь классным механизмом "Подписок на события".

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

Итак, подписка создана. Процедура подписки указана. Она достаточна простая. Привожу ее:

 

Процедура ПриЗаписиДокументаВРегистр(Источник, Отказ) Экспорт
	
	Статус 		= ОпределитьСтатусДокумента(Источник);  
	
	Если Источник.ПометкаУдаления Тогда
		
		Если Статус Тогда
			
			МенеджерРегистра 	= РегистрыСведений.ДокументыДляВыгрузкиВБухгалтерскуюПрограмму;
			НаборЗаписейРегистра 	= МенеджерРегистра.СоздатьНаборЗаписей();
			НаборЗаписейРегистра.Отбор.ДокументСсылка.Установить(Источник.Ссылка);
			НаборЗаписейРегистра.Очистить();
			НаборЗаписейРегистра.Записать();
			
		КонецЕсли;	
			
	Иначе
		
		Если НЕ Статус Тогда
	
			МенеджерЗаписи 	  =  РегистрыСведений.ДокументыДляВыгрузкиВБухгалтерскуюПрограмму.СоздатьМенеджерЗаписи();
			МенеджерЗаписи.Активность =  Истина;
			МенеджерЗаписи.ДокументСсылка =  Источник.Ссылка;
			МенеджерЗаписи.Организация    =  Источник.Организация;
			МенеджерЗаписи.ТипДокумента   =  Строка(ТипЗнч(Источник.Ссылка));
			МенеджерЗаписи.Записать(Истина);

		КонецЕсли;
		
	КонецЕсли;	
	
КонецПроцедуры

 

Теперь, напишу пояснения. Первым шагом мы определяем есть ли уже документ-источник в нашем регистре сведений при помощи простой функции ОпределитьСтатусДокумента():

 

Функция ОпределитьСтатусДокумента(ДокументОбъект) Экспорт
	 
	Запрос = Новый Запрос;
	Запрос.Текст = "ВЫБРАТЬ
	               |	РегистрСостояний.ДокументСсылка КАК Ссылка
	               |ИЗ
	               |	РегистрСведений.ДокументыДляВыгрузкиВБухгалтерскуюПрограмму КАК РегистрСостояний
	               |ГДЕ
	               |	РегистрСостояний.ДокументСсылка = &Документ";
	
	Запрос.Параметры.Вставить("Документ",ДокументОбъект.ссылка);
	
	Выборка =   Запрос.Выполнить().Выбрать();
	Если Выборка.Следующий() тогда
		Возврат Истина;
	Иначе
		Возврат Ложь;
	КонецЕсли;
	
КонецФункции

 

Затем, определяем - имеет ли пометку удаления наш "Источник" и, в зависимости от этого, - либо создаем запись в регистре для него, либо удаляем документ из регистра (посмотрите как можно работать с МенеджеромЗаписи еще).

Рабочий заполняемый регистр выглядит вот так (все работает - документы добавляются/удаляются из этого регистра):

 

Рис.9. Содержимое регистра сведений для выгрузки в бухгалтерскую программу.

 

Схема достаточна простая и реализуется, как мы все видим, одним регистром, одной подпиской и двумя функциями. Кстати, нужно указать, что созданные функции я поместил в отдельном общем модуле ФункционалВнешнийМенеджерСервер, в котором установлены галки "Сервер", "Вызов сервера", "Привилегированный".

К сожалению, на текущий момент, в расширение этот функционал не перенести - ввиду отсутствия поддержки механизма "Подписок на события" в расширениях. Но, в будущих релизах платформы разработчики обещают добавить подписки.

 

Заключение и выводы

В этой статье я привел три основных "базовых" наиболее частых метода регистрации объектов конфигурации к обмену, которые встречались по собственному опыту работы. На каждый метод я постарался привести максимально понятный пример и дать пояснение по работе метода.

 

Собственно, вот они:

1.Автоматическая регистрация объектов к обмену (самая простая, подойдет для новичков или для создания "быстрых регистраций к обмену").

2."Ручная" регистрация объектов к обмену через план обмена (чуть сложнее, подойдет для механизмов "с условием" на уровне отправки в узел плана обмена).

3.Регистрация объектов к обмену через регистр сведений (вот этот метод я бы выбрал, если бы не хотел "ломать" то, что создано до меня, аккуратно внедрил собственную систему регистрации документов к обмену на основе регистра, здесь и фильтр по обмену прикрутить очень просто).

Еще один важный момент - не забывайте про права пользователей и роли доступа, когда вы будете создать новый план обмена или регистр с подпиской...

Если вам понравилась эта статья и ее изложение, если вы захотите ее поддержать - буду только рад этому. В свою очередь, я буду рад подготовить более интересные темы из своего опыта - "написание правил для конвертации данных" или "получение данных в документ из внешних хранилищ информации (напрямую с сайта или фтп)".

 

Спасибо, что дочитали статью до конца. Всем привет.

 

 

Предыдущие материалы

Так же, прошу посмотреть мои предыдущие статьи:

Работа с механизмом отладки 1С. Базовые настройки

1С + IIS + SSL: Перевод опубликованной базы на защищенное соединение https с сертификатом от Let's encrypt

Дополнительные расходы на основе перемещения запасов в УНФ (пошаговая разработка расширения конфигурации)

Методика независимой системы "Подписки на события"

Подсистема "Подписки на события" (продолжение)

Лайфхак работы с СКД. Собираем отчет

 

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. insurgut 190 17.11.19 08:23 Сейчас в теме
Так и остался нераскрытым смысл данной статьи.

Использовать регистры сведений вместо планов обмена, чтобы подменить ими планы обмена вообще дурной тон. Более того приведенный пример ПриЗаписиДокументаВРегистр вообще никак не отработает смену организации в документе.

К сожалению, на текущий момент, в расширение этот функционал не перенести - ввиду отсутствия поддержки механизма "Подписок на события" в расширениях.

Никто не запрещает вмешаться в модуль существующей подписки на событие, благо их разнообразие в типовых конфигурациях покрывает практически все типы объектов и необходимые события.
ids79; sapervodichka; PLAstic; +3 Ответить
2. Bazin 5 18.11.19 06:05 Сейчас в теме
(1) Для каждой задачи - свои решение. Из планов обмен можно получить только текущую версию объекта.
А если нужно иметь все версии для обмена, то как раз удобно использовать связку подписка -> регистр сведений и там хранить версию объекта
3. insurgut 190 18.11.19 07:16 Сейчас в теме
(2) тут вроде решили обсудить обмены? Для хранения версий есть штатный (для конфигураций на БСП) регистр сведений ВерсииОбъектов, для обмена версиями достаточно данный регистр добавить в план обмена. План обмена гарантирует доставку из источника в приемник. Именно в этом его огромное достоинство. При любых попытках реализовать обмен иначе (как тут третий вариант - через регистр) по сути нужно разрабатывать велосипед функционал обмена данными заново.
mvxyz; ids79; sapervodichka; PLAstic; +4 Ответить
5. Bazin 5 18.11.19 08:12 Сейчас в теме
(3) Ухо резануло:
Использовать регистры сведений вместо планов обмена, чтобы подменить ими планы обмена вообще дурной тон


Я так и сделал.
Если предметно: ЗаявкаРасходДС меняет свой статус много раз в день, обмен - раз в сутки. И план обмена - не выход, в вот подписка с регистром версий хорошо подходит
12. PLAstic 253 18.11.19 11:40 Сейчас в теме
(5) А поясните тогда...
Вот в течении дня вы 10 раз туда-сюда переткнули статус документа. Объект к концу дня имеет какой-то конечный(?) статус и подлежит выгрузке, т.к. зареган в узле ПО. И вот он в своём текущем виде выгружается.
А зачем тут РС нужен?
Возможно, у вас методологически некорректное решение? Следует ввести признак "заявка рассмотрена" или "рассмотрение завершено", который ставится окончательно и заявку более невозможно скорректировать никому. И регистрировать в узле ПО только такие заявки.
sapervodichka; +1 Ответить
25. Bazin 5 18.11.19 13:50 Сейчас в теме
(12) Кто и когда изменил статус
29. PLAstic 253 18.11.19 14:30 Сейчас в теме
(25) А причём тут обмены? Если речь про историю изменений, то есть однотипный платформенный механизм и, если платформа старая, то целая подсистема в БСП.
32. Bazin 5 19.11.19 05:19 Сейчас в теме
(29) В Базе-приемнике нужно прогнать все состояния заявки по бизнес-процессу
33. PLAstic 253 19.11.19 09:18 Сейчас в теме
(32) Всё верно. Используйте целевую подсистему и подключите её к плану обмена.
6. Labotamy 18.11.19 08:20 Сейчас в теме
(3)Простите, но сам план обмена ничего подобного не гарантирует.
7. insurgut 190 18.11.19 10:13 Сейчас в теме
(6) сам план обмена, как объект метаданных, конечно не гарантирует. Подразумевался штатный механизм обмена, который снимает с регистрации в источнике объекты только в случае успешного приема сообщения в приемнике.
4. Leon29 18.11.19 07:39 Сейчас в теме
(3)
План обмена гарантирует доставку из источника в приемник. Именно в этом его огромное достоинство.

Верно ли я Вас понял, что он гарантирует включение в себя ссылок на измененные объекты. Т.е. из источника в план обмена. Именно это направление.
Далее читаем план обмена обработкой и передаём сведения в получателя (другая база, файл или иное программное обеспечение), то надежность передачи из плана обмена в приемник уже не зависит от него.
8. insurgut 190 18.11.19 10:15 Сейчас в теме
(4) с регистрации в плане обмена сведения снимаются не после передачи, а после получения ответа о том, что все сведения были загружены.
sapervodichka; +1 Ответить
30. Leon29 18.11.19 14:42 Сейчас в теме
9. uno-c 145 18.11.19 11:37 Сейчас в теме
Все записи справочника "Номенклатура" в конфигурации будут регистрироваться в объекте конфигурации "План обмена" в созданном узле
В объекте конфигурации "План обмена" ничего подобного не регистрируется ;)
11. aximo 1594 18.11.19 11:39 Сейчас в теме
(9)
Все записи справочника "Номенклатура"
в узле
14. TODD22 19 18.11.19 11:48 Сейчас в теме
(11)
в узле

В таблице регистрации изменений. А не в "узле".
16. uno-c 145 18.11.19 11:51 Сейчас в теме
(11)
в узле
В самом узле тоже не регистрируются записи справочника "Номенклатура". Они регистрируются в другом месте.
10. amd1986 18.11.19 11:38 Сейчас в теме
После проектирования и разработки многочисленных интеграций с системами, не связанных с 1С, пришел к выводу, что планы обмена неудобны. Они удобны при синхронизации между 1С.
sapervodichka; +1 Ответить
13. PLAstic 253 18.11.19 11:46 Сейчас в теме
(10) Реализовывал обмены с собственными сайтами клиентов и сторонними сайтами по веб-сервисам через планы обмена. Всё работало удобно и корректно.
Можете уточнить, что конкретно неудобно?
sapervodichka; +1 Ответить
17. amd1986 18.11.19 11:58 Сейчас в теме
(13) Да корректно можно сделать по любому. Тут в простоте..
Если говорим о сайтах. То возьмем товар. У товара есть несколько ключевых данных, основанных на регистрах:
1) Его цена
2) Его остаток
3) Его значение свойства

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

Еще такой момент, регистрация в планах хранится в разрезе узла плана, в регистре хранится в разрезе сайтов.
Еще такой момент, товар в 1С - может иметь несколько разных сущностей во внешней системе..
18. TODD22 19 18.11.19 12:00 Сейчас в теме
(17)
Еще такой момент, регистрация в планах хранится в разрезе планов, в регистре хранится в разрезе сайтов.

Один план, один сайт. Нет?
20. amd1986 18.11.19 12:03 Сейчас в теме
(18) Почему 1 план? 1 узел - выгрузка товаров раз в день. 2 узел - выгрузка цен раз в час, 3 узел - выгрузка остатков раз в 15 минут. 4 план - обмен заказами.
Это я еще не говорю, что в 1 узле может быть несколько настроек и выгрузок в разные инфоблоки(commerce ML)
27. PLAstic 253 18.11.19 14:24 Сейчас в теме
(20) Зачем это делать в одном узле? Если даже у вас РИБ, то делают разные узлы. Куда-то дошло, куда-то нет. Что делать с регистрацией? Очищать выгруженные или нет? Одна интеграция с одной целевой системой - один узел одного ПО.
21. amd1986 18.11.19 12:07 Сейчас в теме
(18) можно сделать и в одном плане, но возникает вопрос с там, как хранится изменение. Да и настройки монструозные получаются, да и поддержка. На практике проще разделять на разные узлы. Каждый узел - своя операция обмена.
26. PLAstic 253 18.11.19 14:22 Сейчас в теме
(18) Он неправильно изначально написал. Регистрация в планах хранится по узлам. А каждый узел привязан к конкретному сайту. Вообще нет проблем.
22. PLAstic 253 18.11.19 12:22 Сейчас в теме
(17) Если так делать, то да, глупо как-то. Я регистрировал наборы записей РС ЦеныНоменклатуры и понимал, что нужно выгрузить именно цену товара.
23. amd1986 18.11.19 12:58 Сейчас в теме
(22) Ну так реализован типовой обмен с сайтом в конфигурациях 1С.
В вашем примере бывают проблемы, когда документ удалили, не понять, цена какого товара изменилась..

Да понятно, что можно использовать план обмена, но когда хочешь сделать шаг влево или вправо от шаблона использования - начинаются костыли. Я на них ни раз столкнулся и понял, ну их нафиг. Регистр сведений более универсальный.
28. PLAstic 253 18.11.19 14:25 Сейчас в теме
(23)
когда документ удалили, не понять, цена какого товара изменилась
А как же регистрация удаления? Попробуйте в тестовой базе и удивитесь. Берём из набора записей удалённого документа номенклатуру, цепляем к ней цену на текущий момент и выгружаем. Всё работает корректно.
31. insurgut 190 18.11.19 18:14 Сейчас в теме
(17) вебхуки просто идеальны для решения такой задачи, минус вебхуков - только необходимость разработки и подстройки под ту или иную CRM
15. TODD22 19 18.11.19 11:50 Сейчас в теме
Операция "Пометить на удаление" отменяет регистрацию объекта в узле.

А как "Пометку удаления" тогда передать?
19. TODD22 19 18.11.19 12:02 Сейчас в теме
Да и вообще, посмотрим, как можно зарегистрировать объекты к обмену.

Про правила регистрации то же как то не слова....
ids79; sapervodichka; +2 Ответить
24. sapervodichka 3463 18.11.19 13:17 Сейчас в теме
34. kosmo0 97 21.11.19 16:12 Сейчас в теме
Совсем не учтен важный момент - документ передается с движениями или нет. При авторегистрации все делается автоматом, При ручной регистрации все надо прописывать в коде. Причем при распроведении прописывать по ВСЕМ движениям документа (даже если какие-то движения вроде как и не используются). Ах да, если для документа есть последовательность - дополнительное внимание.

ps. в совсем уж тяжком случае объекты зарегистрированные для обмена можно посмотреть через запрос типа
ВЫБРАТЬ
	АдресныеСокращенияИзменения.Узел,
	АдресныеСокращенияИзменения.НомерСообщения,
	АдресныеСокращенияИзменения.Ссылка
ИЗ
	Справочник.АдресныеСокращения.Изменения КАК АдресныеСокращенияИзменения


Минус - нельзя сразу увидеть объекты всех типов.
В стандартном конструкторе запроса чтобы увидеть таблицы объектов на обмен необходимо на вкладке "Таблицы и поля" нажать на кнопку "Отображать таблицы изменений" (слева вверху).
35. transt 1 19.04.20 10:28 Сейчас в теме
Не совсем понял суть статьи

Вариант 1: Понятно, но сейчас не используется, потому что есть вариант 2.
Вариант 2: В типовых 1С если нет правил регистрации, то регистрируются все объекты. Можно написать свои правила(условия) регистрации и не лезть в подписки.
Вариант 3: Если Вы уже определились какие документы отправить, то зачем промежуточный регистр? Что он даёт в Вашем примере?
Однако, не всё так просто с третьим вариантом! Он иногда жутко полезен!
Задача стояла такая: Выгружать в другую базу Номенклатуру которая находится в определённом документе...
Проблема в том, что Номенклатура сначала создаётся, а только потом попадает в документ. Логично... И понять, что надо выгружать эту номенклатуру или нет сложно.
И тогда я создал подобный регистр, который фиксировал какая номенклатура уже должна выгружаться.
Поясню:
По подписке по записи этого документа я анализирую номенклатуру и ищу в данном регистре. Если Номенклатура есть, то я её пропускаю. Если Номенклатуры нет, то вставляю запись в регистр и регистрирую номенклатуру на отправку в узел.
Далее на подписке номенклатуры на запись проверяю по регистру надо её выгружать или нет.

Кстати, вспомнил второй случай, когда понадобился именно такой промежуточный регистр: Выгружалось постоянно оооочень много объектов. Сделал такой регистр и закидывал туда всё что должно было отправится. А перед запуском синхронизации сделал обработку: Проверял количество объектов на оправку. И если количество позволяло, то докладывал из него в регистрацию, а регистр подчищал. Так можно распределить обмен более равномерными порциями.
Оставьте свое сообщение

См. также

Копирование числовых ячеек из 1С в Excel Промо

Загрузка и выгрузка в Excel Администрирование данных 1С v8 1cv8.cf Бесплатно (free)

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

15.01.2019    21711    0    itriot11    24    

Формирование файла выгрузки номенклатуры в смарт-терминал АТОЛ Sigma из УТ 11.4

ККМ v8 v8::ОУ УТ11 Розничная и сетевая торговля (FMCG) Россия УУ Абонемент ($m)

Данная обработка позволяет автоматически формировать файл выгрузки в смарт-терминал АТОЛ Sigma из УТ 11.4.

2 стартмани

03.07.2020    840    0    aximo    0    

Конвертация данных 2. Использование подключаемых обработок в правилах обмена. Конвертация дерева значений

Обмен данными 1С Обмен через XML Перенос данных из 1C8 в 1C8 v8 КД Бесплатно (free)

Разработка правил обмена с использованием подключаемых обработок. В качестве примера рассмотрена реальная задача конвертации дерева значений.

15.06.2020    2301    0    Drivingblind    6    

Конвертация данных 2.1. Методика переноса остатков

Перенос данных из 1C8 в 1C8 v8 1cv8.cf УУ Бесплатно (free)

В данной статье я приведу пример использования базовой методики конвертации данных для переноса остатков из одной информационной базы в другую.

12.06.2020    3230    0    aximo    16    

Excel vs 1С: битва с неожиданным исходом Промо

Анализ учета Универсальные обработки Загрузка и выгрузка в Excel Финансовые Управленческие v8 1cv8.cf Россия Бесплатно (free)

Что лучше 1С или Excel? Разберемся, в казалось бы, очевидном, чтобы получить невероятное!

11.04.2019    34932    0    bolefirenko    116    

Лайфхаки конвертации данных 2.1

Обмен данными 1С v8 КД Россия Бесплатно (free)

В данной статье будут рассмотрены десять приемов работы с конвертацией данных 2.1. Указанные приемы явно не описываются в документации (справке), но их полезно знать и применять. Для наглядности приёмы работы сопровождаются описанием реализации и практическими примерами.

07.06.2020    4447    0    Alexsandr_Retunskiy    6    

Как мы РИБ на веб-сервисы переводили

Распределенная БД (УРИБ, УРБД) v8 1cv8.cf Россия Бесплатно (free)

Решение проблем обмена РИБ с 10+ баз с помощью веб-сервисов и базы обмена.

13.05.2020    3210    0    RSConsulting    22    

Механизм XDTO

Перенос данных из 1C8 в 1C8 v8 1cv8.cf Бесплатно (free)

Попытка понять механизм XDTO и его неочевидные аспекты. Научиться выполнять обмены между различными конфигурациями без оглядки на реализацию в типовых.

12.05.2020    4245    0    totchaz    3    

Как прикрутить ГУИД к регистру сведений Промо

Практика программирования Перенос данных из 1C8 в 1C8 Разработка v8 Бесплатно (free)

... и немного теории обмена данными. В частности, разберем боль всех, кто пишет небанальные обмены данными: как набору записей регистра сведений назначить гуид и далее использовать его в обмене для идентификации этого набора.

16.04.2019    19208    0    m-rv    17    

5 ситуаций, когда в экосистеме 1C нужны веб-сервисы

Обмен данными 1С v8 Бесплатно (free)

В 1С существует немало возможностей для обмена данными, включая файловый обмен и COM Connector. В этой статье я расскажу, когда при интеграции 1С не обойтись без веб-сервисов, а также в чем плюсы использования SOAP или, наоборот, HTTP. Кроме этого речь пойдет про рабочие инструменты и примеры использования веб-сервисов. Веб-сервисы — достаточно простая штука. Существует множество инструкций по их созданию, так что запустить свой сервис может почти каждый. Сложности возникают тогда, когда веб-сервисы начинают куда-то встраивать, например, в системы 1С.

24.03.2020    7220    0    Neti    4    

Механизмы проведения документов при обмене по универсальному формату

Перенос данных из 1C8 в 1C8 БСП (Библиотека стандартных подсистем) v8 Бесплатно (free)

Как проводятся документы при обмене по универсальному формату. Пример доработки типовых правил обмена с переносом состояния документа: проведен/не поведен/пометка удаления.

04.03.2020    3916    0    partizand    6    

Из Excel в 1С запросом Промо

Загрузка и выгрузка в Excel v8 1cv8.cf Бесплатно (free)

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

14.08.2018    19342    0    m-rv    5    

Боремся с запросами в циклах. Мой опыт рефакторинга запросов

Рефакторинг и качество кода v8::Запросы 1cv8.cf Бесплатно (free)

В текущей публикации я предлагаю вам несколько простых примеров с решениями, в которых будет представлено решение "единым запросом", без использования запросов в цикле.

02.03.2020    5759    0    aximo    35    

Создание ПКО на основе отчетов о розничных продажах

Обработка документов Кассовые операции Розничная торговля v8 Розница Розничная и сетевая торговля (FMCG) Россия УУ Абонемент ($m)

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

1 стартмани

06.02.2020    1783    1    aximo    3    

СКД. Шаг 3. Используем макеты для оформления отчета

Работа с интерфейсом v8 v8::СКД 1cv8.cf Бесплатно (free)

В данной публикации рассмотрим базовый подход к использованию собственных макетов в СКД на примере формирования небольшого отчета.

13.01.2020    11595    0    aximo    13    

Повышаем эффективность разработки правил обмена Промо

Практика программирования Перенос данных из 1C8 в 1C8 v8 КД Бесплатно (free)

Как повысить скорость и качество разработки правил обмена? Как вести групповую разработку правил обмена? Как облегчить сопровождение правил обмена после передачи в эксплуатацию? Об этом и многом другом вы можете узнать из этой статьи.

25.06.2018    27322    0    olegtymko    47    

Как сделать обмен данными через универсальный формат быстрее? Реализация многопоточного обмена данными

Обмен данными 1С Обмен через XML v8 1cv8.cf Бесплатно (free)

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

31.12.2019    7448    0    ids79    17    

Заметки по Конвертации данных 3.0

Обмен данными 1С v8 1cv8.cf Бесплатно (free)

Написал небольшие заметки по конвертации данных 3.0.

18.11.2019    13024    0    John_d    15    

Лайфхак работы с СКД. Собираем отчет.

Практика программирования v8::СКД 1cv8.cf Бесплатно (free)

В этой статье я опишу небольшой "лайфхак" по сборке отчетов в СКД. Думаю, этот подход будет интересен тем, кто хочет быстро оформить отчет.

25.10.2019    17838    0    aximo    37    

Универсальный обмен между идентичными конфигурациями через REST интерфейс OData. Часть І: Справочники Промо

Перенос данных из 1C8 в 1C8 v8 Бесплатно (free)

Сейчас все чаще интеграции различных конфигураций проектируются через HTTP-сервисы - они и работают быстрее, и "войти" в режим отладки гораздо проще, тем самым обойдя "черный ящик" универсального обмена через xml, например. Более года назад я начал работать в компании, в которой разработчики работали с конфигурациями 1С в режиме совместимости еще 8.2.16 (менять режим совместимости в типичных базах мы не хотели) - а как Вы наверное знаете, если интересовались HTTP-сервисами в 1С, их использование в режиме совместимости 8.3.4 и ниже недопустимо - и здесь я уже не надеялся на разработку и использование HTTP-сервисов. Но позже меня заинтересовал такой "сервис" как REST интерфейс OData, так как его можно использовать не меняя режим совместимости конфигурации - именно он и стал для меня идеальным вариантом решения "нетривиальных" задач.

11.05.2018    22209    0    V.Stavinsky    11    

Обертка функций Excel на русском. Ускорение процесса разработки.

Загрузка и выгрузка в Excel Универсальные функции v8 Бесплатно (free)

Устали переключаться с русского на английский и обратно при работе с таблицами Excel из 1С? Сборка наиболее необходимых функций и методов работы с Excel, обернутых в функции 1С на русском языке.

24.10.2019    6813    0    DmitryKotov    6    

Подсистема "Подписки на события" (продолжение)

Адаптация типовых решений v8 1cv8.cf Абонемент ($m)

Представляю Вам практическая реализация методики подсистемы "Подписок на событие"

10 стартмани

21.10.2019    6892    1    aximo    0    

Методика независимой системы "Подписки на события"

Практика программирования v8 УПП1 Бесплатно (free)

В этой небольшой статье я хочу вам предложить пошаговое описание разработки системы управления "Подписками на события" для документов. Цель разработки - возможность управления подписками в вашей конфигурации, не прибегая к программированию через конфигуратор. Думаю, будет полезно и интересно!

17.10.2019    10524    0    aximo    35    

Взаимодействие между базами 1С через COM Промо

Перенос данных из 1C8 в 1C8 v8 1cv8.cf Бесплатно (free)

Рассмотрено много особенностей взаимодействия между базами 1С по COM технологии

10.08.2015    146322    0    tormozit    65    

Дополнительные расходы на основе перемещения запасов в УНФ (пошаговая разработка расширения конфигурации)

Обработка документов Учет ТМЦ Расширения v8 УНФ Россия УУ Абонемент ($m)

Доброго времени! Предлагаю небольшое расширение для конфигурации "Управление нашей фирмой", позволяющее включать документ "Перемещение запасов" в таблицу оснований документа "Дополнительные расходы".

1 стартмани

17.10.2019    5850    3    aximo    4    

Работа с механизмом отладки 1С. Базовые настройки

Практика программирования v8 1cv8.cf Бесплатно (free)

Доброго времени всем. В этой небольшой статье я опишу базовую процедуру настройки и запуска механизма отладки. Приведу примеры работы в старом и новом механизмах отладки. Сравним их.

12.10.2019    10393    0    aximo    5    

EnterpriseData: простой способ защиты данных в базе получателя при одностороннем обмене

Перенос данных из 1C8 в 1C8 v8 1cv8.cf Бесплатно (free)

Очень часто бухгалтеры ругаются, когда уже отраженные документы в бухгалтерском учета меняются сотрудниками.

04.10.2019    6536    0    handscenter    12    

Использование инструментов разработчика для отладки обменов КД 2.0 Промо

Перенос данных из 1C8 в 1C8 v8 КД Бесплатно (free)

Пара трюков, благодаря которым жить становится намного проще...

05.05.2017    27013    0    unichkin    3    

Конвертация Данных. Нюансы использования конструкции "НеЗамещатьОбъект = Истина" в обработчике события "ПриЗагрузке"

Перенос данных из 1C8 в 1C8 v8 КД Бесплатно (free)

У конвертации данных есть «особенности», которые «пьют кровь» программистов. Эта статья про очередную обнаруженную «особенность».

10.09.2019    8926    0    ivanek    21    

Обмен данными через Web Сервисы

Перенос данных из 1C8 в 1C8 v8 1cv8.cf Россия Бесплатно (free)

Ознакомительная статья о том, как загружать\выгружать данные с одной базы в другую, используя Web Сервисы.

02.09.2019    19549    0    user5300    41    

EnterpriseData – часть 3. Загрузка данных, идентификация объектов

Практика программирования Математика и алгоритмы Перенос данных из 1C8 в 1C8 Разработка v8 v8::УФ 1cv8.cf Бесплатно (free)

Основные этапы загрузки данных через EnterpriseData. Идентификация объектов загружаемых полностью и по ссылке. Приведены схемы процессов загрузки данных. Описание основных операций и обработчиков. Перечень процедур БСП, используемых при загрузке данных, структура «КомпонентыОбмена».

22.08.2019    13537    0    ids79    8    

РИБ 200 узлов. Середина пути Промо

Распределенная БД (УРИБ, УРБД) v8 Розница Россия Бесплатно (free)

Между настройкой и поддержкой РИБ на 2 узла и на 10 большой разницы нет, а вот когда число удаленных точек переваливает за сотню, приходится решать уже совсем другие вопросы

25.10.2016    38882    0    comol    215    

1С + IIS + SSL: Перевод опубликованной базы на защищенное соединение https с сертификатом от Let's encrypt

Администрирование данных 1С v8 1С:CRM Абонемент ($m)

Всем Доброго времени! Предлагаю Вам небольшую базовую инструкцию, где я опишу, как быстро перевести опубликованную в веб базу 1С на защищенное https соединение, используя стандартный IIS сервер и бесплатный сертификат SSL от Let's encrypt.

1 стартмани

10.08.2019    18129    14    aximo    36    

Полезные приемы при работе с Конвертацией данных 2.1. Логирование, интерактивное управление, дозаполнение и постпроведение документов

Перенос данных из 1C8 в 1C8 v8 КД Бесплатно (free)

Некоторые полезные приемы для КД 2.1, которые могут пригодиться как при доработке типовых правил, так и самописных.

22.04.2019    8961    0    maks_20    9    

Преобразование EXCEL в таблицу значений без COM и других извращений

Загрузка и выгрузка в Excel v8 1cv8.cf Бесплатно (free)

Получение таблицы значений из excel в 1С v8, без COM, внешних источников данных и т.д. EXCELВТаблицуЗначений() - За 10 строчек кода! Реализация протестирована на 1С 8.3.12.1714 (x64).

18.04.2019    25899    9    Eret1k    43    

Приемы обработки больших данных в 1С Промо

Универсальные обработки Математика и алгоритмы Перенос данных из 1C8 в 1C8 v8 1cv8.cf Бесплатно (free)

Рассказ об эффективных приемах организации обработок больших объемов данных на платформе 1С

07.08.2015    65785    0    tormozit    27    

Работа с ComОбъектом 1С 8.2; 8.3

Перенос данных из 1C8 в 1C8 v8 1cv8.cf Россия Бесплатно (free)

Определение типов и значений через COM соединение между конфигурациями.

15.04.2019    19759    0    vik070777    12    

RabbitMQ + Конвертация Данных 3.0

Внешние источники данных Обмен через XML Интеграция Перенос данных из 1C8 в 1C8 v8 КД Бесплатно (free)

Предлагаем ознакомиться с хронологией проекта, проследить ход мыслей от снятия потребностей до реализации, и решить, удалось ли проектной команде найти оптимальное архитектурное решение под конкретный кейс заказчика путем совмещения двух известных, но до сих пор не пересекавшихся технологий, и получилось ли сложить плюсы и устранить минусы каждой из них.

21.03.2019    24558    0    barelpro    82    

Cannot insert duplicate key. Кто виноват и что делать

Распределенная БД (УРИБ, УРБД) Тестирование и исправление v8 Бесплатно (free)

Ошибка "CANNOT INSERT DUPLICATE KEY" в базах 1С и связанная с ней "магия".

25.02.2019    19969    0    YPermitin    32    

Загрузка из EXCEL в 1С на платформе 8.3.6/8.3.7/8.3.8/8.3.9/8.3.10 (с картинками) Промо

Практика программирования Загрузка и выгрузка в Excel v8 1cv8.cf Бесплатно (free)

Импорт содержимого из файлов в форматах XLS (Microsoft Excel 97), Microsoft Office OpenXML (Microsoft Excel 2007- 2010) и ODS (OpenDocument) в таблицу значений.

06.04.2015    232582    0    StepByStep    75    

Запись одной книги Excel на нескольких листах средствами 1С (без внешних компонент)

Загрузка и выгрузка в Excel v8 1cv8.cf Бесплатно (free)

Пользователи часто просят сохранить им стопиццот отчетов в один файл Excel, чтобы отчеты были в одном файле. Ну или клиент хочет счет, накладную и счет-фактуру получить в одном документе. 1С умеет это делать без всяких там COM-объектов. Давайте разберемся, куда нажимать и что крутить.

14.01.2019    20495    0    starik-2005    25    

Как легко загружать данные из электронных таблиц (Excel, OpenOffice и т.д)

Загрузка и выгрузка в Excel v8 1cv8.cf Бесплатно (free)

Как легко загружать данные из электронных таблиц (Excel, OpenOffice и т.д). На примере загрузки в табличную часть документа Поступление товаров и услуг в УТ 11.4.

09.01.2019    12106    0    rasdag    14    

Заметки КД 2.1: Как передать файл, динамически создаваемый в источнике, в справочник присоединенных файлов приемника

Перенос данных из 1C8 в 1C8 v8 КД Россия Бесплатно (free)

В БП 3.0 есть документ "Книга Продаж Для Передачи В ЭлектронномВиде" из которого выгружается XML файл. Задача: Нужно из БП 3.0 посредством правил обмена, вместе с документом книга продаж сформировать и перенести XML файл в базу приемник. В приемнике файл будет храниться в справочнике "Книга Продаж Присоединенные Файлы".

10.10.2018    9336    0    Viktor_Ermakov    6    

Загрузка из EXCEL в 1С. Чтение файла XLSX средствами 1С. ПостроительDOM Промо

Универсальные обработки Загрузка и выгрузка в Excel Обмен через XML v8 1cv8.cf Бесплатно (free)

ПРАКТИЧЕСКОЕ ПОСОБИЕ РАЗРАБОТЧИКА: Метод "NativeXLSX" (ПостроительDOM). Обрабатываются данные EXCEL типов: "Строка", "Число", "Дата" ("Время"), "Булево", "Процент", а также изображения.

11.09.2014    71426    0    StepByStep    26    

Работа с Excel через COM

Загрузка и выгрузка в Excel v8 1cv8.cf Бесплатно (free)

Несколько примеров работы с excel (ms office 2010, в моем случае) через COM.

01.10.2018    9628    0    jaroslav.h    0    

Excel: создание в формате xlsx без COM технологии

Загрузка и выгрузка в Excel v8 1cv8.cf Бесплатно (free)

По работе приходится часто выгружать данные в Excel формате. При большом количестве строк и формул этот процесс достаточно длительный. Решил написать для своих целей небольшую библиотечку для выгрузки данных. Используется технология open-xml. Никаких библиотек не надо, пишу напрямую в xml файлики. На данном этапе сделано форматирование, формулы.

10.09.2018    10952    0    user1045404    16    

Планы обмена 1С

Перенос данных из 1C8 в 1C8 Интеграция v8 Бесплатно (free)

В статье - мастер-классе Дмитрий Жичкин рассказывает, для чего нужны планы обмена 1С и какие задачи они решают. Он подробно описывает физическую структуру планов обмена и механизмов регистрации изменений, рассматривает основные проблемы, возникающие при выгрузке изменений и предлагает методы их решения.

10.09.2018    53382    0    zhichkin    27    

Настройка типового обмена данными между: 1С: Предприятие Бухгалтерия ред. 3.0 (БП 3.0) и 1С: Управление торговлей ред. 10.3 (УТ 10.3). Промо

Перенос данных из 1C8 в 1C8 v8 УТ10 Россия Бесплатно (free)

В этой статье я опишу, как настраивается типовой обмен данными между БП 3.0 и УТ 10.3.

29.01.2014    265029    0    arr    53