Z-Integrator: интеграция с 1С на уровне данных

19.07.19

Интеграция - Внешние источники данных

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

Скачать файл

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

Наименование По подписке [?] Купить один файл
Z-Integrator
.zip 1,89Mb ver:1.0 MSMQ
15
15 Скачать (1 SM) Купить за 1 850 руб.
 
 Update: 19.07.2019

Проект трансформировался и теперь называется 1C#.
Репозиторий проекта: 1C# - платформа для разработки серверных приложений
Краткое описание идеи (видео на 3 минуты): 1C# in 3 minutes

 
Z - это программа, которая состоит из облочки (shell) и подключаемых к ней модулей. Z основана на Microsoft Prism 5.
Основная цель Z: увеличение производительности и расширение функциональных возможностей приложений, разработанных на платформе 1С:Предприятие 8. Эти цели достигаются за счёт тесной интеграции Z и 1С на уровне структур хранения данных, а также использования в полной мере возможностей Microsoft SQL Server и .NET Framework 4.5.
 
Подробнее программа описана в документации по проекту.
 
Актуальный список модулей:
 
1. Z-Metadata - базовый независимый модуль.
Позволяет работать с метаданными приложений, разработанных на платформе 1С:Предприятие 8, а так же любых других приложений, хранение данных которых реализовано при помощи Microsoft SQL Server. Содержание метаданных: описание модели предметной области приложения (domain model) и структур хранения данных объектов этой модели.
 
2. Z-Integrator - зависимый от Z-Metadata модуль.
Модуль решает следующие задачи:
- регистрация изменений данных объектов 1С:Предприятие 8 (SQL Server Change Tracking);
- публикация изменений в виде сообщений (Microsoft Message Queuing);
- управление подписками на сообщения;
- сериализация/десериализация сообщений;
- трансляция сообщений при несовпадении схем данных источника и получателя;
- загрузка сообщений в базу данных приёмника (подписчика);
- двусторонний обмен данными;
- разрешение коллизий по умолчанию.
 
3. Z-REST-API (модуль находится в разработке).
Конструктор REST API интерфейса для произвольной конфигурации 1С:Предприятие 8.
 
4. Z-Archivator (модуль находится в разработке).
Архивация данных 1С:Предприятие 8 (свёртка данных) средствами SQL Server.
 
5. Z-Updator (модуль находится в разработке).
Обновление структур данных 1С:Предприятие 8 (выполнение реструктуризации) средствами SQL Server. Модуль решает проблему обновления без потери пользовательских индексов, триггеров и т.п.
 
Возможна доработка программы под заказ.
 
Технологические особенности:

Технология SQL Server Change Tracking позволяет минимизировать нагрузку на систему при одновременном увеличении производительности операций регистрации изменений. Технология была специально разработана для использования в сценариях синхронизации и интеграции данных с учётом обеспечения макимально возможной производительности. Использование Change Tracking полностью исключает возникновение ожиданий на блокировках при одновременном выполнении операций записи и чтения изменений.

Расширяемость Z-Integrator позволяет создавать высоко производительные решения по интеграции с 1С:Предприятие 8 любого уровня сложности, используя всю мощь .NET Framework и SQL Server.

обмен данными change tracking интеграция конвертация данных очереди сообщений шина регистрация изменений

См. также

Зарплата Внешние источники данных Бюджетный учет Перенос данных 1C Системный администратор Программист Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 8 учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

120000 руб.

19.08.2020    26437    26    1    

28

Внешние источники данных Программист Бизнес-аналитик Пользователь Платформа 1С v8.3 Управляемые формы Анализ и прогнозирование 1C:Бухгалтерия Узбекистан Беларусь Кыргызстан Молдова Россия Казахстан Платные (руб)

Готовое решение для автоматической выгрузки данных из 1С 8.3 в базу данных ClickHouse, PostgreSQL или Microsoft SQL для работы с данными 1С в BI-системах. «Экстрактор данных 1С в BI» работает со всеми типовыми и нестандартными конфигурациями 1С 8.3 и упрощает работу бизнес-аналитиков. Благодаря этому решению, специалистам не требуется быть программистами, чтобы легко получать данные из 1С в вашей BI-системе.

28500 руб.

15.11.2022    22922    24    49    

39

Внешние источники данных Платформа 1С v8.3 1C:Бухгалтерия Платные (руб)

Готовая интеграция для управляемых форм. Встраивается в вашу 1С как расширение. Реализует автоматический обмен данными между 1С (1С:Фитнес клуб и аналогов) и СКУД RusGuard, автоматизирует бизнес-процессы по созданию и учету сотрудников в СКУД. Значительно упрощает работу специалистов отдела кадров и отдела безопасности: избавляет от двойного ввода информации в 1С и СКУД.

94999 руб.

11.07.2024    1299    1    0    

3

Розничная торговля Внешние источники данных Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Бухгалтерский учет 1С:Бухгалтерия 3.0 Фармацевтика, аптеки Россия Бухгалтерский учет Платные (руб)

Внешняя обработка загрузки данных из файла-выгрузки, сформированного в программе F3 TAIL версии 3.4 (и выше) или еФарма версии 2.1, в базу конфигурации 1С: Бухгалтерия предприятия 8, ред. 3.0 (базовая, ПРОФ, КОРП, ФРЕШ).

13200 руб.

19.12.2016    48651    98    106    

70

Зарплата Внешние источники данных Программист Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 8 организаций (далее Парус) в конфигурацию 1С:Зарплата и управление персоналом, ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

120000 руб.

07.06.2021    13738    2    3    

3

Внешние источники данных Зарплата Бюджетный учет Программист Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 7.хх учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

84000 руб.

24.04.2017    52670    104    165    

91
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. gzharkoj 526 23.10.16 15:20 Сейчас в теме
Очень интересно решение для однотипных баз. Жаль требования 1С к свой лицензионной политике не разрешает такие вещи, что, конечно, не справедливо, когда у организации куплено такое ПО как MS SQL Server. Интересно, а как решаются коллизии данных? по тем же правилам, что и в 1С? В описании ничего такого не нашел, получается нельзя построить по правилу, когда подразделение меняется что-то в своих документах, то это в приоритете?
2. zhichkin 1538 23.10.16 16:10 Сейчас в теме
(1) ifal,
Реализована следующая стратегия разрешения коллизий:

1. Всегда применяется правило "кто последний, тот и выиграл". То есть, если в базу приёмник приходит сообщение обновления, то версия записи в приёмнике не анализируется, она просто перезаписывается. Таким образом считается, что источник всегда последний и он всегда прав. Какой из узлов обмена А или В в данный момент является источником или приёмником определяется по направлению движения для конкретного сообщения обмена, которое обрабатывается в данный момент времени. Если сообщение движется из А в В, то А - это источник, а В - приёмник и, соответственно, наоборот.

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

3. Если из источника в приёмник "летит" update, но там нет такой записи, например её удалили или её там вообще никогда не существовало (такую коллизию называют update-delete), то update превращается в insert - запись успешно добавляется в приёмник.
3. zhichkin 1538 23.10.16 16:16 Сейчас в теме
(1) ifal,
Правила разрешения коллизий бывают очень сложными. Зачастую они сильно зависят от бизнес-логики прикладного решения. В каждом случае нужно разбираться отдельно. Предложения по добавлению настроек какой-то более или менее типовой логики разрешения коллизий приветствуются =)
4. unpete 577 24.10.16 09:47 Сейчас в теме
(0), Изобретение велосипедов - деятельность вполне достойная. Зачастую - необходимая.
Без этого сложно понять условия задачи и математику альтернативных решений, но зачем результаты лабораторной работы помещать в production?
Почитайте про репликацию couchdb - это позволить направить вашу энергию в мирное русло.
В 2014-15 годах, я потратил более 2 тыс. человекочасов на собственный движок обмена, но познакомившись с couchdb - выкинул бОльшую часть проделанной работы на помойку, задействовав простые, изящные и современные технологии.
7. zhichkin 1538 24.10.16 12:09 Сейчас в теме
(4) unpete,
Я прошу прощения, но я совсем не понял Ваш комментарий. PR couchdb ? Сравнение тёплого с мягким ? По моему упоминание SQL Server Integration Services было бы более к месту. Кроме того, моя публикация больше про интеграцию, чем про репликацию.
5. Константин С. 675 24.10.16 10:20 Сейчас в теме
(бесплатная версия для ознакомления)

Вот интересно было узнать, цену вопроса не для ознакомления)

А то от количества нулей можно !!!!
6. zhichkin 1538 24.10.16 12:02 Сейчас в теме
(5) Константин С.,
Выпуска платной версии не планируется. Планируется создание более или менее удобного инструмента для реализации проектов по интеграции на стыке технологий 1С:Предприятие 8 + .NET Framework (C#) + MS SQL Server. В том числе с учётом SOA (service-oriented architecture). Соответственно ответ такой: присылайте свои требования по проекту - дам оценку.
8. artbear 1568 02.11.16 19:55 Сейчас в теме
9. maratimus 22 30.11.16 23:19 Сейчас в теме
А есть такая же, но сделанная по технологии "Temporal Tables", а не "Change Tracking"?
10. zhichkin 1538 01.12.16 00:44 Сейчас в теме
(9) Какой у Вас use case ?
Мне кажется, что именно для обмена данными temporal tables ... как узнавать что данные по строке изменились ? Запрашивать все строки таблицы на предмет наличия версий в исторической таблице ? Тяжёлый может быть запрос ...
Или есть какой-то простой и достаточно лёгкий способ получить именно изменённые на какой-то момент времени строки ?
11. JohnnySE 15.01.17 02:06 Сейчас в теме
Приветствую.
1. Не удобно проставлять соответствия между источником и приемником.
2. Нет четкого описания, что делать при\перед\ обновлением конфигурации
3. ОСНОВНОЕ: как настраивать фильтрацию для выгрузки\загрузки.

С уважением.
AlexK_2012; zhichkin; +2 Ответить
12. zhichkin 1538 15.01.17 18:47 Сейчас в теме
(11) Огромное спасибо за конструктивную критику!
Оставьте свое сообщение