Механизмы и транспорт обмена данными. Пример создания в КД 2.1 правил обмена данными ЗУП 2.5 -> БП 3.0. Выгрузка ведомостей и банковских счетов. Передача параметров обмена из Источника в Приемник. ВыгрузитьПоПравилу(). ПередатьОдинПараметрВПриемник().

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

Разработка - Системная интеграция - Обмен через XML

Пантелеев Пантелеев Иван ВыгрузитьПоПравилу ПередатьОдинПараметрВПриемник обмен данными выгрузка данных конвертация конвертация данных ЗУП БП SharePoint XML JSON КД ERP Документооборот ПВД ПКО ПКС правила конвертации

В статье рассказываю: 1) о механизмах и транспорте обмена данными, где одной из сторон обмена выступает конфигурация на базе 1С, и о том, какой транспорт и в каких случаях лучше использовать 2) о решении задачи выгрузки данных документа «Зарплата к выплате организаций» (с выгрузкой банковский счетов физ лиц документа) из ЗУП 2.5.123.1 (далее Источник) в БП КОРП 3.0.52.39 (далее Приемник) путем создания правил обмена данными с использованием конфигурации «Конвертация данных» (далее просто КД) ред. 2.1.8.2. для (далее ЗкВО) 3) о тестирование полученных правил обмена данными.

 

Оглавление

1 Механизмы и транспорт обмена данными существующие в 1С. 3

1.1 Механизмы обмена данными существующие в 1С: 3

1.2 Транспорт для обмена данными: 3

2 Примеры выбора транспорта обмена данным.. 3

2.1 Задача: обмен между 1С:ЗУП 2.5 и 1С БП КОРП 3.0. 3

2.2 Задача: обмен между 1С:ERP 2.0 и 1С:Документооборотом КОРП.. 4

2.3 Задача: обмен между конфигурацией 1С и порталом на MS SharePoint

2.4 Задача: обмен между конфигурацией 1С и SAP. 4

3 Постановка задачи. 6

3.1 Постановка задачи. 6

3.2 Блок-схема решения задачи. 6

4 Решение задачи с помощью создания правил обмена данными из ЗУП 2.5 в БП 3.0 в конфигурации «1С:Конвертация данных» ред. 2.1. 8

4.1 Вносим изменения в конфигурации Источника и Приёмника, если того требует задача. 8

4.2. Загружаем в конфигурацию КД 2.1 структуры метаданных. 8

4.3. Создаем правила выгрузки данных (ПВД). 9

4.4 Создаем Правила Конвертации Объектов (ПКО) и Правила Конвертации Свойств (ПКС). 10

4.5 В ПВД реализуем две логики выгрузки данных документа в процедуре «Перед выгрузкой», используя процедуру ВыгрузитьПоПравилу(…). 14

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

4.6.1 Инициализация параметров в процедуре «Перед выгрузкой данных». 17

4.6.2 Заполнение параметров в процедуре «Перед выгрузкой объекта» на стороне Источника. 17

4.6.3 Анализ параметров в Приемнике в процедуре «После загрузки данных». 20

5 Тестируем правила выгрузки данных. 23

5.1 Тест выгрузки Ведомости по банку-участнику зарплатного проекта. 23

5.2 Тест выгрузки Ведомости по служебному банку «Другие банки». 25

5.3 Тест выгрузки Ведомости при ошибочной установке банка «Другие банки» и его выгрузки, и последующего исправления на банк-участник зарплатного проекта с повторной выгрузкой. И наоборот.

Полезные ссылки

Обратная связь

 

 

 

1 Механизмы и транспорт обмена данными существующие в 1С.

 

1.1 Механизмы обмена данными существующие в 1С

1) РИБ - между идентичными конфигурациями, реализован на уровне платформы.
2) Универсальный механизм обмена между конфигурациями - основан на объекте платформы 1С 8.х именуемым «план обмена»; обмен данными осуществляется с помощью правил xml, которые создаются в специальной конфигурации — Конвертация данных (ред. 2.х и 3.х). С помощью данного механизма можно реализовать как одноразовый обмен, так и постоянный обмен между 1С конфигурациями. Механизм реализован на уровне конфигурации, встроить в свою конфигурацию можно из технологической конфигурации БСП.

 

1.2 Транспорт для обмена данными:
1) Локальный или сетевой каталог;
2) FTP-ресурс;
3) Почтовые сообщения или E-mail;

4) Прямое подключение (COM) — обмен осуществляется через прямое подключение одной базы к другой по средствам COM соединения;

Особенности и ограничения СОМ :

а) при различных версиях платформы Источника и Приемника COM подключение может давать ошибку, решение проблемы описывается в статье: //infostart.ru/public/393642/

б) долгое время на повторное COM подключение, решение проблемы тут: //infostart.ru/public/331683/

в) дружит COM только с ОС Windows. 

5) Интернет (Web service)— транспортом является веб-служба. Одна информационная база подключается к веб-сервису, веб-сервис подключается к второй базе и транспортирует сообщение. Для осуществления такого транспорта необходимо иметь установленный веб-сервер (IIS или Apache).

 

 

2 Примеры выбора транспорта обмена данным

Транспорт для обмена данными не бывает «плохим или хорошим», «устаревшим или передовым». Бывает транспорт оптимально подобранный для решения задачи или не оптимально.

 

2.1 Задача: обмен между ЗУП 2.5 и БП КОРП 3.0

Оптимально будет использовать для транспорта данных прямое СОМ подключение к базе Приёмнику: в этом случае нам не придется вносить изменения в конфигурации Источника и Приемника, и нам не нужно беспокоиться за передачу файлов и их безопасность, т.к. данные будут выгружаться напрямую.

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

Более подробно о создании правил обмена данными с помощью конфигурации «1С:Ковертация данных» ред. 2.1 расскажу ниже.

 

2.2 Задача: обмен между ERP 2.0 и Документооборотом КОРП

Поскольку обе конфигурации 1С имеют внутри специально созданные Web-сервисы, оптимально будет их и использовать. Остается настроить так называемую бесшовную интеграцию между базами 1С, настройки которой посвящена публикация: //infostart.ru/public/541608/.

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

 

 2.3 Задача: обмен между конфигурацией 1С и порталом на MS SharePoint

Коробочная конфигурация на базе 1С, как правило, не содержит никаких специализированых средств интеграции с порталом на MS SP, поскольку порталы это штучная «костомная» вещь. Однако, платформа 1С поддерживает такие типы метаданных, как Web-сервисы и XDTO-пакеты. Мы можем создать в конфигураторе 1С Web-сервис задать для него URI пространства имен и пакет XDTO, добавить для Web-сервиса нужные операции и параметры операций, описать для каждой операции функции желательно с названиями на латинице в модуле Web-сервиса, которые будут доступны со стороны MS SP.

Рисунок 2.3.1 – Настройки Web-сервиса в конфигураторе 1С

 

Далее из конфигуратра 1С делаем публикацию на Web-сервере.

Администратор MS SharePoint создает интеграционный пакет, подключается к публикации  на Web-сервере (как пользователь с полными правами, которого специально создали в конфигураторе 1С) и используя функции, которые создал программист в 1С в модуле Web-сервиса, получает необходимые данные.  

Рисунок 2.3.2 – Пример ннтеграционного пакет в MS SharePoint

 

В примере на рисунке администратор MS SharePoint  данные с web-сервера получает в формате XML через файл, хотя может читать данные напрямую в параметр. Конечно, лучше не в формате XML, а JSON, но не принципиально.

 

2.4 Задача: обмен между 1C и SAP

Когда в штате нет специалистов по SAP и/или когда мы имеем доступ к SAP только как пользователи, и требуется выгрузить консолидированные данные из 1С в SAP:

обмен данными реализуется через выгрузку/загрузку excel файла. Делал так: из SAP выгружал нужный набор данных в excel файл, смотрел его структуру и на стороне 1С имитировал заполнение файла аналогичной структуры. Более масштабный пример миграции данных из ЗУП 2.5 (УПП 1.3) в SAP HCM  описан в этой статье: //infostart.ru/public/689794/

 

Если же в штате есть программист SAP: SAP поддерживает внешнее подключение - аналог хранимых процедур sql, который позволяет получать данные напрямую из Sap, без промежуточных выгрузок/загрузок в Excel. На ABAP в Sap пишется функция, а далее программисты 1с получают через нее необходимые данные и далее обрабатывают их в своих учетных системах. Спсб aspirator 23, который написал это в комментариях.

 

 

3 Постановка задачи

 

3.1 Постановка задачи

* Если текст тяжело воспринимать, то смотрите сразу пункт 3.2, там задание визуализировано.

1. Из программы ЗУП 2.5 (Источника) в БП КОРП 3.0 (Приемник) требуется выгружать выбранные пользователем документы типа «Зарплата к выплате организаций» (далее ЗкВО), которые должны быть проведены и со способом выплаты «Через банк».

2. Если в документе ЗкВО реквизит  «Банк» заполнен служебным элементом «Другие банки», то в Приемнике создается столько же документов, сколько строк в табличной части одного документа ЗкВО в базе Источнике.  Если в документе ЗкВО  реквизит  «Банк» заполнен любым другим конкретным значением,  тогда один документ Источника выгружается в один документ Приемника. Другими словами, выгрузка должна идти по правилам "один в несколько документов" или "один в один документ" в зависимости от банка, заданного в документе ЗкВО в Источнике.

3. Для всех физ лиц  из табличной части документа ЗкВО Источника требуется выгрузить лицевые счета в базу Приемник, но только если в документе ЗкВО  реквизит  «Банк» заполнен конкретным значением (не «Другие банки»).

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

Комментарий по 4 пункту задания: если в базе Приемнике у физ лица несколько счетов с одинаковым номером счета, но с разными банками (головной и филиалы в городе проживания физ лица), то обмен не должен менять флаг "Основной счет" - потому, что физ лицо имело действующий мастер счет ранее открытый в городе проживания в филиале банка, имеющий БИК который отличается от БИКа банка-участника зарплатного проекта.

 

3.2 Блок-схема решения задачи

Последовательность действий при выгрузки данных визуализирована на блок-схеме, Рисунок 3.2.1.

Рисунок 3.2.1 – Блок-схема выгрузки данных

 

 

Текст всех процедур содержится в правилах выгрузки данных, которые можно скачать внизу статьи.

4 Решение задачи с помощью создания правил обмена данными из ЗУП 2.5 в БП 3.0 в конфигурации «1С:Конвертация данных» ред. 2.1

 

4.1 Вносим изменения в конфигурации Источника и Приёмника, если того требует задача

Для реализации повторного поиска ранее выгруженных документов и для реализации пометки на удаления документов в базе Приемнике, для реализации выгрузки типа "один документ во много документов", в базе Приемнике нужно в документе "Ведомость в банк" в режиме конфигуратора создать два реквизита типа строка длиной 36 символов и назвать их: УИДДокументаЗУП и УИДСотрудникаТабЧастиДокументаЗУП.

 

4.2. Загружаем в конфигурацию КД 2.1 структуры метаданных

Загружаем в конфигурацию КД 2.1 структуры метаданных  конфигураций Источника (ЗУП 2.5) и Приемника (БП КОРП 3.0). Подробно как это сделать читайте тут: //infostart.ru/public/690292/

В справочнике «Конвертации» создаем папку «ЗУП 2.5 -> БП КОРП 3.0», а в нее добавляем новый элемент:

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

4.3. Создаем правила выгрузки данных (ПВД)

Определим сколько Правил Выгрузки Данных (ПВД) нам нужно создать. Для этого ответим на один вопрос: какие данные нам может потребоваться фильтровать  по ссылке при выгрузке данных? – Только документ «Зарплата к выплате организаций» (ЗкВО). Остальные данные (банковские счета, физ лица и пр.) будут тоже выгружаться, но ТОЛЬКО потому, что ссылки на них содержаться внутри документа «Зарплата к выплате организаций». Т.е. мы никак не должны руками фильтровать физ лица, они должны выгружаться поскольку содержаться в табличной части документа. ПВД – подтягивается в специальную таблицу обработки «Универсальный обмен данными». Обратите внимание, что в обработке можно задать фильтр на ссылку документа ЗкВО (или подчиненные ему реквизиты Ссылки).

4.4 Создаем Правила Конвертации Объектов (ПКО) и Правила Конвертации Свойств (ПКС).

 

На закладке ПКО нажмем кнопку Добавить

При попытке записать новое ПКО появится окно «Создать ПКС?», в котором нажимаем ДА.

Сразу после появится окно «Создать ПВД?» - нажимаем НЕТ.

В результате на зкладке ПКО будет созданы элементы:

Символ «Лупа» означает, что при загрузке документа поиск ранее выгруженного документа в Приемнике будет делаться по УИДу. Нам так не надо! У нас задача сделать выгрузку один ко многим или один в один. Поэтому кликаем дважды по ПКО «ВедомостьНаВыплатуЗарплатыВБанк», открываем закладку «Настройки», снимаем флаг «Искать объект приемника по внутреннему идентификатору» и ставим флаг «Автоматически генерировать номер и код».

Аналогично рассуждаем нужно ли искать по УИД справочники: у моего заказчика исторически ключевым полем поиска элементов всех справочников был «КОД». Это не очень хорошо, поскольку КОД пользователи могут менять в отличие от УИДа. Но ничего не поделаешь – если я оставлю настройку поиска по УИД, то это может привести к задвоению справочников в Приемнике. Заходим в ПКО справочников и снимаем флаг «Искать объект приемника по внутреннему идентификатору». Поскольку новые элементы справочников создаются в базе БП КОРП (Приемник) и эта база является главной по отношению в ЗУП (Источник), то для справочников ставим флажки «Не замещать существующие объекты в приемнике, а только создавать новые» и «Не создавать новый объект, если он НЕ найден». У вас может быть иная специфика.  Справочники «Организации» и «Пользователи» содержат мало элементов (до 1000), поэтому поставим флаг «Использовать быстрый поиск объекта при выгрузке и загрузке».

Создадим ПКС для ПКО «ВедомостьНаВыплатуЗарплатыВБанк». Колонку «Источник» для всех ПКС очистим, а в колонке «Получать из входящий данных» поставим везде флажок – мы это делаем потому, что выгружать документ будем используя процедуру ВыгрузитьПоПравилу(, , ИсходящиеДанные, , " ВедомостьНаВыплатуЗарплатыВБанк "); , которую поместим в обработчик «Перед выгрузкой» ПВД (об  этом подробнее ниже). Мы полностью  берем на себя подготовку исходящих данных на стороне Источника, отказываясь от конструктора – только так мы сможем реализовать выгрузку «один во много» или «один в один» в зависимости от наполнения выгружаемого документа.

Добавляем ПКС для ПКО «ВедомостьНаВыплатуЗарплатыВБанк» исходя из условия задачи, и ставим флажки «Поиск» в строчках с ПКС «УИДДокументаЗУП», «УИДСотрудникаТабЧастиДокументаЗУП», «Организация». В результате должно получиться как показано на рисунке ниже.

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

Зайдем в ПКО «ВедомостьНаВыплатуЗарплатыВБанк» и напишем код в процедуре «После загрузке». Его смысл в том, что реквизит «Округление» в Приемнике одинаков для всех документов, поэтому проще заполнить его непосредственно на стороне Приемника после загрузки данных. Та же логика и для установки нового номера. 

4.5 В ПВД реализуем две логики выгрузки данных документа в процедуре «Перед выгрузкой», используя процедуру ВыгрузитьПоПравилу(…)

 

В ПВД в процедуре  «Перед выгрузкой» подготавливаем структуру «ИсходящиеДанные» и реализуем две логики выгрузки «один во много документов» и «один в один» в зависимости от содержания документа.

После заполнения структуры ИсходящиеДанные , вызываем процедуру

ВыгрузитьПоПравилу(, , ИсходящиеДанные, , "СозданиеВедомостейВБанк");

которая инициирует выгрузку экземпляра документа.

 

 
 Сниппед кода процедуры «Перед выгрузкой» ПВД:

 

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

4.6.1 Инициализация параметров в процедуре «Перед выгрузкой данных»

Инициализация глобальных параметров, значения которых не нужно заполнять руками, реализуется только программно в процедуре «Перед выгрузкой данных», НЕ НУЖНО создавать их на закладке Параметры (как ошибочно пишут некоторые коллеги на форумах).

Пока просто создадим два параметра, зачем они нужны написано ниже.

//Инициализируем параметры, на закладке "Параметры" их создавать не нужно
Параметры.Вставить("СтрокаТаблицаКодовФизЛицИБанковСоСчетом", "");
Параметры.Вставить("СтрокаТаблицаУИДовВедомостиИФизЛиц", "");

4.6.2 Заполнение параметров в процедуре ПередВыгрузкой объекта на стороне Источника

Параметр «СтрокаТаблицаУИДовВедомостиИФизЛиц»

Для случая "один в несколько документов": если после выгрузки документа в базу Приёмник, из табличной части документа Источника удалить строку, то в базе Приёмника соответствующий ей документ должен пометиться на удаление. Для этой цели создан параметр обмена "СтрокаТаблицаУИДовВедомостиИФизЛиц" типа неограниченная строка, который заполняется в процедуре "Перед выгрузкой объекта", выгружается в файл, затем анализируется в процедуре "После загрузки данных" на стороне Приемника и по результатам анализа.

Основная хитрость заключается в наполнении Параметра «СтрокаТаблицаУИДовВедомостиИФизЛиц»: в этот параметр помещаются значения «УИДДокумента» и «УИДСотрудникаТабЧасти» так, чтобы после выгрузки на стороне Приемника можно было собрать из них таблицу значений.

 
 Сниппед кода процедуры «Перед выгрузкой объекта», заполнение параметра СтрокаТаблицаУИДовВедомостиИФизЛиц

Вызов процедуры:

ПередатьОдинПараметрВПриемник("СтрокаТаблицаУИДовВедомостиИФизЛиц", Параметры.СтрокаТаблицаУИДовВедомостиИФизЛиц);       

приводит к записи параметра «СтрокаТаблицаУИДовВедомостиИФизЛиц» в XML файл .

 

* Я специально не использовал конструкцию «ЗначениеВСтрокуВнутр(<Значение>)» поскольку в СП написано, что ее можно использовать «для сохранения функциональной совместимости с 1С:Предприятием 7.7. Использовать для других целей не рекомендуется», на its.1c.ru так же написано, что «сериализацию ЗначениеВСтрокуВнутр следует использовать для хранения и передачи значений в рамках информационной базы 1С:Предприятия и не следует использовать для обмена с другими информационными базами и другими программными системами».

 

Параметр «СтрокаТаблицаКодовФизЛицИБанковСоСчетом»

При выгрузки ведомости требуется обновлять "Основной счет" у всех физ лиц в Приёмнике, которые содержаться в таб части документа. Лицевые счета по физ лицам, у которых в базе Источника несколько  лицевых счетов в одной организации, не выгружаются в базу Приемник ( т.к. нельзя однозначно определить на какой из счетов перечислять зп). При загрузке данных в базу Приемник, для физ лиц не должен обновляется основной счет физ лица, если есть несколько банковских счетов с те же номером, который выгрузился из базы Источника. Для этой цели создан параметр обмена "СтрокаТаблицаКодовФизЛицИБанковСоСчетом" типа неограниченная строка.

 
 Сниппед кода процедуры «Перед выгрузкой объекта», заполнение параметра СтрокаТаблицаКодовФизЛицИБанковСоСчетом

4.6.3 Анализ параметров в Приемнике в процедуре ПослеЗагрузкиДанных

В процедуре «После загрузки данных» на стороне Приемника реализован анализ переданных из Источника  параметров «СтрокаТаблицаУИДовВедомостиИФизЛиц» и «СтрокаТаблицаКодовФизЛицИБанковСоСчетом», их парсинг в таблицы значений, передача этих таблиц в качестве параметров в текст запросов, обход выборки которых позволяет:

1) установить основной счет физ лицам

2) пометить на удаление при необходимости требуемые документы на стороне Приемника.

 

 
 Сниппед кода процедуры «После загрузки данных»

 

 

5 Тестируем правила выгрузки данных

 

5.1 Тест выгрузки Ведомости по банку-участнику зарплатного проекта.

В базе Источнике ЗУП 2.5 в ведомости три физ лица, при чем у Иванова А.С. в регистре «Лицевые счета сотрудников» есть несколько записей.

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

После выгрузки данных на экране появилось сообщение:

Начало выгрузки:   02.11.2017 19:54:31
В базе ЗУП у физ лица Иванов с кодом 0000028  в организации АО "Н" в базе ЗУП найдено несколько лицевых счетов, которые будут синхронизированны с базой БП КОРП, но невозможно установить какой из них Основной счет в базе БП КОРП.
Синхронизируем банковские счета физ лица: Иванов Александр Сергеевич
Синхронизируем банковские счета физ лица: Петров Иван Юрьевич 
Синхронизируем банковские счета физ лица: Сидоров Денис Александрович
Окончание выгрузки: 02.11.2017 19:55:03
Выгружено объектов: 15

Открываем базу Приемник БП КОРП 3.0 и находим документ перегруженный документ «Ведомость на выплату зарплаты в банк», замечаем что номер документа в БП КОРП присвоился по правилам бухгалтерии, номер ведомости из ЗУПа указан в комментарии, в табличной части только одна запись со служебным обезличенным элементом «Все сотрудники».

Убедимся, что банковские счета в БП КОРП перегружены из ЗУПа (на сриншоте счетов в БП КОРП больше, чем в ЗУПе и это правильно, т.к. некоторые счета были созданы в БП КОРП раньше):

Проверим как у физ лиц заполнился реквизит «Основной счет» и не забудем, что при выгрузки данных было сообщение о невозможности установки Основного счета у физ лица Иванов, поскольку в ЗУПе у него было несколько лицевых счетов.

Замечаем, что основной счет установлен только у Сидорова. У Петрова основной счет не заполнился, поскольку в базе БП КОРП у него уже был создан банковский счет с таким же номером, но в другом банке, по условию задачи в этом случае мы не меняем основной счет.

Вернемся в базу Источник и изменим суммы в ранее выгруженном документе и удалим Иванова из табличной части, затем выгрузим документ повторно в базу Приемник и убедиться, что сумма документа изменилась.

Тест выгрузки Ведомости по банку-участнику зарплатного проекта завершен успешно.

5.2 Тест выгрузки Ведомости по служебному банку «Другие банки»

Создаем в базе Источнике ЗУП 2.5 в ведомости три физ лица с суммами как показано на рисунке:

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

После выгрузки данных на экране появилось сообщение:

Начало выгрузки:   02.11.2017 20:54:48
Если в ведомости контрагент Другие банки , то синхронизация банковских счетов физ лиц не происходит.
Окончание выгрузки: 02.11.2017 20:55:16
Выгружено объектов: 7

Открываем базу Приемник БП КОРП 3.0 и находим три документа (по числу физ лиц в документе Источника) «Ведомость на выплату зарплаты в банк», замечаем что номера документов в БП КОРП присвоились по правилам бухгалтерии, номер ведомости из ЗУПа  и ФИО физ лица указаны в комментарии, в табличной части только одна запись со служебным обезличенным элементом «Все сотрудники».

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

Теперь вернемся в базу ЗУП, изменим сумму Иванову с 500 на 600 рублей, а Сидорова удалим из табличной части. Выгрузим ведомость повторно в БП КОРП. Смотрим результат:

Сумма в документе с Ивановым изменилась на 600 рублей. А документ с Сидоровым помечен на удаление (пометка на удаление возможна только, если документ в БП КОРП не делал движений на момент повторной выгрузки).

 

5.3 Тест выгрузки Ведомости при ошибочной установке банка «Другие банки» и его выгрузки, и последующего исправления на банк-участник зарплатного проекта с повторной выгрузкой. И наоборот.

Если пользователь первый раз выгрузил ведомость с банком «Другие банки», а потом понял, что он ошибся, изменил банк на «ВТБ» и выгрузил ведомость повторно, то все созданные при первой выгрузки документы в базе Приемнике будут помечены на удаление, и будет создан один документ.

Если пользователь первый раз выгрузил ведомость с банком «ВТБ», а потом понял, что он ошибся, изменил банк на «Другие банки» и выгрузил ведомость повторно, то созданный при первой выгрузки документ в базе Приемнике будет помечен на удаление, и будет создано столько документов, сколько физ лиц в документе Источника.

 

Описанный способ решения задачи не является единственным.

 

Полезные ссылки

Практический пример создания правил выгрузки данных в КД 2.1 лицевые счета из ЗУП 2.5 в банковские счета БП КОРП 3.0 с описанием некоторых эффективных приемов:  //infostart.ru/public/702086/

 

 Буду рад узнать ваше мнение о статье в комментариях.

Вопросы, предложения сотрудничества и замечания пишите в комментариях, в личку или по адресу Panteleev@Inbox.ru

Резюме автора: //infostart.ru/job/resume/537490/

С пожеланием творческих успехов всем посетителям сайта ИС, Пантелеев Иван.

27

Скачать файлы

Наименование Файл Версия Размер
Правила обмена данными. Выгрузка ЗкВО в ВедомостьВБанк с банковскими счетами (ЗУП 2.5 в БП КОРП 3.0. на КД 2.1)

.xml 106,92Kb
19.12.17
7
.xml 106,92Kb 7 Скачать

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. aspirator23 431 11.11.17 09:10 Сейчас в теме
Не стоит так категорично:"..Причем требование обмена именно через excel файл обычно обусловлено ограничениями со стороны SAP..."
Sap поддерживает внешнее подключение - аналог хранимых процедур sql, который позволяет получать данные напрямую из Sap, без промежуточных выгрузок/загрузок в Excel.
2. RailMen 802 12.11.17 16:13 Сейчас в теме
(1) Спсб за замечание. Может я как то двусмысленно выразился? Имел ввиду то, что мы использовали sap как пользователи с ограниченными правами для подгрузки в него консолидированных данных. Все, что нам было доступно с нашим набором прав - это обмен через excel файлы. Вот я писал обработки по заполнению файлов. И мне было бы очень интересно прочитать пример интеграции 1с и sap напрямую.
3. aspirator23 431 12.11.17 16:21 Сейчас в теме
(2) Это стандартный функционал Sap. Но требует наличия программиста Sap. На ABAP в Sap пишется функция, а далее программисты 1с получают через нее необходимые данные и далее обрабатывают их в своих учетных системах.
4. RailMen 802 12.11.17 21:49 Сейчас в теме
(3) спасибо за разъяснение.
5. user861090 13.11.17 01:54 Сейчас в теме
Спасибо за информацию. Очень полезная статья
Оставьте свое сообщение

См. также

Ошибка преобразования данных XDTO: Текст XML содержит недопустимый символ Промо

Практика программирования Обмен через XML v8 1cv8.cf Абонемент ($m)

Преобразование строкового значения к допустимому для XML. Типовое, нетиповое, RegExp.

1 стартмани

26.03.2013    81953    StepByStep    26    

Конвертация данных 2. Использование исходящих и входящих данных. Свойство "Получить из входящих данных"

Обмен данными 1С Перенос данных из 1C8 в 1C8 v8 КД Абонемент ($m)

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

17.02.2020    13961    Drivingblind    31    

Перенос НМА и ОС при реорганизации с помощью документа "Ввод остатков" в Бухгалтерии 3

Учет ОС и НМА Бухгалтерский учет Перенос данных из 1C8 в 1C8 v8 v8::БУ БП3.0 БУ Абонемент ($m)

Цель материала – предложить методику автоматизации переноса остатков в конфигурации «Бухгалтерия предприятия, редакция 3.0» с помощью программного создания документа «Ввод остатков».

1 стартмани

17.10.2019    5402    muzipov    0    

Простая выгрузка данных в универсальном формате Enterprise Data

Обмен через XML v8::УФ Розница УНФ ERP2 ЗКГУ3.0 БП3.0 УТ11 КА2 ЗУП3.x Абонемент ($m)

Пошагово разобран текст процедуры, позволяющей выгрузить произвольный набор объектов в формате Enterprise Data (конечно, если это позволяет конфигурация). Приложена обработка, позволяющая выгружать произвольные объекты, в том числе запросом или по данным журнала регистрации.

2 стартмани

26.08.2019    11816    Iyar    3    

Сохранение реквизитов и табличных частей объектов в XML Промо

Обмен через XML Универсальные функции v8 1cv8.cf Абонемент ($m)

Пример того, как можно сохранять и загружать объекты 1С методами встроенных объектов ЗаписьXML и ЧтениеXML.

1 стартмани

25.11.2011    21716    saiten    21    

Получение XML файла с SQL Server средствами ADODB

Обмен через XML v8 1cv8.cf Россия Абонемент ($m)

В статье описано, как получать XML файл, сгенерированный SQL Server, средствами ADODB. Обработка написана на обычных формах, тестировалась на платформе 8.12.1685.

1 стартмани

08.07.2019    2599    saver77    0    

XDTO для чайников

Обмен через XML v8 1cv8.cf Абонемент ($m)

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

1 стартмани

29.05.2019    27883    HAMMER_59    39    

Отладка правил обмена КД2 для подсистемы БСП Обмен данными

Перенос данных из 1C8 в 1C8 v8 1cv8.cf Абонемент ($m)

Уже давно нельзя отлаживать правила обмена при помощи внешних файлов. Попробуем исправить это.

1 стартмани

27.05.2019    12080    fenixnow    6    

1C + Python + Django Rest Framework + Vue.js. Опыт несложной full-stack разработки

Практика программирования Внешние источники данных Обмен через XML WEB Разработка v8 1cv8.cf Абонемент ($m)

В этой статье мы рассмотрим путь и основные моменты создания небольшого вэб-сервиса, который мы называем "Онлайн Прайс-лист". Выгрузка из 1С, бэкенд, фронтенд, получение заказов в 1С.

1 стартмани

22.04.2019    32633    riposte    65    

Перенос данных с использованием XDTO

Обмен через XML v8 Россия Абонемент ($m)

Использование объекта типа "ОбъектXDTO" для переноса данных из одной конфигурации в другую

1 стартмани

21.04.2019    10694    axae    11    

[EnterpriseData] Антисвертка характеристик номенклатуры при выгрузке в Бухгалтерию

Практика программирования Перенос данных из 1C8 в 1C8 Разработка v8 v8::ПВХ КД УНФ БП3.0 Россия БУ Абонемент ($m)

Рассмотрена выгрузка каждой пары значений Номенклатура - Характерстика из УНФ 1.6 в отдельную номенклатуру в Бухгалтерию 3.0 путём доработки правил обмена в формате EnterpriseData.

1 стартмани

27.03.2019    4536    nforce    5    

Обмен без правил. От простого к сложному

Перенос данных из 1C8 в 1C8 v8 1cv8.cf Абонемент ($m)

Пишем обмен с нуля, разбираемя с разными способами сериализации, учимся редактировать XML документы, создаем XDTO и Web service, осваиваем Script variant - English.

1 стартмани

16.01.2019    22743    nbeliaev    26    

Способы оптимизации переносов данных

Перенос данных из 1C8 в 1C8 Интеграция v8 КД Абонемент ($m)

Хочу рассказать вам про способы оптимизации разработки правил обмена в программе «Конвертация данных» второй редакции. Казалось бы, про эту программу и разработку в ней правил конвертации уже сказано все, что можно. Появились уже более современные и быстрые технологии. Почему же все еще она? Дело в том, что «Конвертация данных» второй редакции все еще актуальна для огромного круга задач. Она имеет очень широкую функциональность и позволяет реализовывать сложные алгоритмы. Годы идут, а люди продолжают ей пользоваться и у них возникает много вопросов по этой программе. Возможно, в будущем вы тоже будете заниматься такими проектами и столкнетесь с задачами, похожими на те, про которые я собираюсь рассказать. Мне хочется вам в этом помочь.

1 стартмани

02.08.2018    17301    primat    7    

Опыт проведения сложных переносов данных на 1С

Перенос данных из 1C8 в 1C8 Интеграция v8 КД Абонемент ($m)

В статье я расскажу про опыт сложных переносов на платформе 1С:Предприятие. Она будет адресована в первую очередь разработчикам 1С, которые уже имеют опыт использования методики «Конвертация данных» (как второй, так и третьей редакции) – я думаю, это большинство из нас. • Я расскажу про различные методики организации переносов данных. • Мы рассмотрим рекомендуемые способы оптимизации правил конвертации, которые позволят вам быстрее выполнять свои переносы. • Также мы разберем, какие могут возникнуть сложности в ходе переноса данных. • Я покажу сравнительный анализ по ряду параметров инструментов «Конвертация данных» второй редакции и третьей, которая вышла уже более года назад.

1 стартмани

30.07.2018    36486    primat    14    

Конвертация данных 2.1. Как реквизит справочника конвертировать в регистр сведений?

Перенос данных из 1C8 в 1C8 v8 КД Россия Абонемент ($m)

В публикации рассмотрен пример конвертации реквизита справочника в регистр сведений.

2 стартмани

28.06.2018    13909    wowik    0    

Перерасчет выбранных в списке документов "Начисление зарплаты" для ЗУП 3.1.2 и 2.5.123

Практика программирования Зарплата Зарплата v8 ЗУП2.5 ЗКБУ УПП1 ERP2 ЗКГУ3.0 ЗУП3.x БУ Бесплатно (free)

Это одна из серии публикаций, посвященных внедрениям прикладного решения 1С:ЗУП на больших проектах внутри холдинга. Статья будет полезна разработчикам и внедренцам. В статье рассказываю, как быстро и просто реализовать групповой перерасчет документов «Начисление зарплаты...» в форме списка для ЗУП 3.1.2 и для ЗУП 2.5.123 (платформа 8.3.10.2699).

29.03.2018    17021    RailMen    8    

Заполнение справочника с изображениями элементами по умолчанию

Практика программирования Обмен через XML Универсальные функции v8 Абонемент ($m)

Пример одного из решений, как можно заполнить справочник с изображениями значениями по умолчанию включая сами изображения. Сами изображения взяты из программы MapSource 6.16.3. Данные для загрузки хранятся в макете в формате XML.

1 стартмани

26.03.2018    8626    Kim1C    0    

Организация обмена с базой филиала (розничного магазина) в торговой сети через XML (универсальный обмен)

Обмен через XML Перенос данных из 1C8 в 1C8 Розничная торговля Розничная торговля v8 КД УТ11 Розничная и сетевая торговля (FMCG) Абонемент ($m)

В статье по шагам рассматривается создание обмена между центральной базой и базами филиалов на базе конфигурации УТ 11. Для решения поставленной задачи было решено не использовать РИБ, т.к. требуется односторонний обмен ограниченным набором данных, к тому же по определенным условиям. Обмен реализован на основе типовой синхронизации на основе универсального обмена в формате EnterpriseData. Данная публикация может быть полезна внедренцам, которые работают с торговыми сетями, в том числе по модели франчайзинга.

1 стартмани

26.02.2018    36735    Kutuzov    18    

Пример заполнения/создания файла XML из XSD схемы, используя XDTO

Обмен через XML WEB v8 1cv8.cf Абонемент ($m)

Добрый день, коллеги! Наконец-то дошли руки написать сию статью. Хочу поделиться своим опытом по разбору xsd схемы используя Фабрику XDTO, а также связанным с этим XML файлом. Думаю, наверняка кому-то понадобится.

1 стартмани

21.12.2017    46093    sandybaev    24    

Пример создания в КД 2.1 правил выгрузки данных регистра «Лицевые счета работников» из ЗУП 2.5 в справочник «Банковские счета» БП 3.0. Подробно, ясно и просто.

Перенос данных из 1C8 в 1C8 v8 КД Абонемент ($m)

Эту статью я написал для тех, кто хочет максимально быстро и эффективно научиться создавать правила выгрузки данных в конфигурации 1С Конвертация данных редакции 2.1. Разберем практическую несложную задачу создания правил выгрузки данных регистра «Лицевые счета работников организаций» ЗУП 2.5 в справочник «Банковские счета» БП КОРП 3.0. Поделюсь некоторыми эффективными приемами: ВыгрузкаПоПравилу(…), работа с глобальными параметрами конвертации и передача их с Источника в Приемник методом ПередатьОдинПараметрВПриемник(…), приемы ускорения и оптимизации конвертации данных. Кому эта статья покажется простой и/или захочется продолжения: рекомендую другую мою публикацию, в которой разобран более сложный пример : https://infostart.ru/public/695916/

1 стартмани

17.11.2017    36882    RailMen    1    

Миграция данных из 1С ЗУП 2.5 (УПП 1.3) в SAP HCM

Внешние источники данных Загрузка и выгрузка в Excel Зарплата Управление персоналом (HRM) Учет рабочего времени Зарплата Управление персоналом (HRM) Учет рабочего времени v8 ЗУП2.5 УПП1 Россия БУ УУ Платные (руб)

Обработка предназначена для выгрузки данных из 1С ЗУП 2.5 (2.5.120.1) в SAP HCM (в excel / mxl) Или для случая когда нужен инструмент для быстрой выгрузки всех данных из системы в пользовательском режиме. Для демо базы протестировано (& адаптированы шаблоны) на Зарплата и управление персоналом КОРП (демо) 2.5.99.2 Также работает в УПП ред 1.3 на актуальных релизах.

10000 руб.

06.11.2017    14224    0    3    

1С: Конвертация данных 2. Разработка с "нуля" на простых примерах разработки

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

1. Вступление 2. Что понадобится: конфигурация 1С: Конвертация данных 2. и обработки из пакета. Для примера задач возьмем конфигурации 1С: Управление торговлей 11 и 1С: БП 3.*. 3. Нам понадобятся Обработки для выгрузки структуры метаданных и обмена. 4. Выгрузка структуры метаданных конфигурации 1С: Управление торговлей 11.3 и 1С: Бухгалтерия предприятия 3.0.* 5. Загрузка структур метаданных конфигураций в базу конвертации. 6. Создание правил конвертации в 1С на конкретном примере задачи. 7. Подводим итоги: Выгрузка и загрузка данных с помощью разработанных правил обмена данными.

26.10.2017    86633    somel    22    

Исправление среднего заработка для отпусков после переноса данных в конфигурацию ЗКГУ 3.0

Перенос данных из 1С7.7 в 1C8.X Перенос данных из 1C8 в 1C8 Зарплата Учет рабочего времени Зарплата Учет рабочего времени v8 1С7:ЗиК ЗКГУ3.0 БУ Абонемент ($m)

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

6 стартмани

08.08.2017    32272    RadistkaAn    4    

Использование SoapUi для работы с веб-сервисами. Часть1

Практика программирования Обмен через XML v8 Абонемент ($m)

Как работать с SoapUi для тестирования веб-сервисов .

1 стартмани

30.09.2016    122006    kiv1c    29    

Настройка бесшовной интеграции 1С: ERP 2.0 и 1С: "Документооборот" КОРП. Варианты реализации бизнес-процессов

Управление бизнес-процессами (BPM) Перенос данных из 1C8 в 1C8 Документооборот и делопроизводство Документооборот и делопроизводство v8 ДО ERP2 ИТ-компания Бесплатно (free)

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

09.08.2016    77930    iolko    88    

Решаем проблему с разными версиями платформ при COM соединении

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

Код позволяет перед подключением установить нужную версии comcntr.dll

1 стартмани

31.08.2015    18230    29    Zhilyakovdr    12    

Надоело повторное COM-соединение? Не помещается COM-объект в хранилище? Есть решение!

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

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

24.02.2015    34604    ZhokhovM    72    

Автоматическая выгрузка через СОМ. STEP by STEP

Практика программирования Перенос данных из 1C8 в 1C8 v8 КД Россия Абонемент ($m)

Как автоматически выгружать физическое лицо через СОМ при записи не вмешиваясь в типовую конфигурацию. STEP by STEP.

1 стартмани

18.01.2010    11324    Boris-Leleko    7