автоматизовані системи управління в більшості випадків складаються з окремих баз даних і часто мають територіально розподілену структуру. При цьому правильно реалізований обмін даними - необхідна умова для ефективної роботи таких систем.
Початкове налаштування обміну при цьому може зажадати ряду дій, не тільки в частині програмування, а й консалтингу, навіть якщо ми маємо справу з однорідними джерелами, як у випадку з продуктами на платформі «1С: Підприємство». Чому настройка обміну 1С (або, як ще це називається - синхронізація даних в 1С 8.3) може стати найбільш трудомісткою і недешевої завданням проекту інтеграції, розглянемо в цій статті.
Обмін даними в середовищі 1С дозволяє:
- Виключити подвійне введення документів;
- Автоматизувати суміжні бізнес-процеси;
- Оптимізувати взаємодію між розподіленими підрозділами;
- Оперативно актуалізувати дані для роботи фахівців різних відділів;
- «Розмежувати» різні види обліку. *
* У разі, коли дані одного виду обліку істотно відрізняються від іншого, необхідно забезпечити конфіденційність інформації і «розмежувати» інформаційні потоки. Наприклад, обмін даними між 1С УТ і 1С Бухгалтерія не вимагає вивантаження в базу регламентного обліку управлінських даних, тобто синхронізація в 1С тут буде неповна.
Якщо представляти стандартний процес реалізації первинного обміну даними, коли хоча б один з його об'єктів - продукт 1С, то можна виділити наступні етапи:
- Узгодження складу обміну;
- Визначення транспорту (протоколів обміну);
- Установка правил;
- Складання розкладу.
Виявлення складу обміну 1С
Об'єкти обміну можна умовно поділити на «джерело» і «приймач». При цьому вони можуть виконувати дві ролі одночасно, що буде називатися - двостороннім обміном. Визначення джерела та приймача відбувається логічним шляхом в залежності від необхідності або від функціональних можливостей системи. *
* Наприклад, при інтеграції «WA: Фінансист» - рішення для ведення фінансового обліку та управління процесами казначейства, розробленого на базі «1С: Підприємство», експерти WiseAdvice рекомендують саме його в якості майстер-системи. Це обумовлено наявністю інструментів контролю для дотримання правил заявочної політики, а відповідно, і для забезпечення ефективності роботи рішення.
Далі на основі отриманих та зафіксованих вимог з боку користувачів створюється список даних для обміну, визначається їх обсяг, вимоги до частоти обміну, прописується процес роботи з помилками і обробки виняткових ситуацій (колізій).
На цьому ж етапі в залежності від парку наявних систем і структури підприємства визначаються з форматом обміну:
Розподілена інформаційна база
- РИБ має на увазі обмін між ідентичними конфігураціями баз даних 1С, з чіткою структурою управління «головний-підлеглий» для кожної пари обміну. Будучи елементом технологічної платформи, РИБ крім даних може передавати зміни в конфігурації і адміністративну інформацію БД (але тільки від головного до підлеглого).
Універсальний обмін даними в 1С
- Механізм, що дозволяє настроїти обмін баз 1С, як з конфігураціями на платформі «1С: Підприємство», так і з системами сторонньої розробки. Обмін здійснюється за допомогою перекладу даних в універсальний xml-формат відповідно до «Планами обміну».
EnterpriseData
- Новітня розробка фірми 1С, призначена для реалізації обміну даними в форматі xml між продуктами, створеними на платформі «1С: Підприємство», з будь-якими системами автоматизації. Застосування EnterpriseData спрощує доопрацювання, пов'язані з обміном. Раніше при включенні в систему нової конфігурації була необхідна реалізація механізму імпорту та експорту даних, як для неї, так і для вже наявних систем. Тепер системи, що підтримують EnterpriseData, не потребують доопрацювань, маючи тільки одну точку «входу-виходу».
Визначення транспорту (протоколів обміну)
Для системи на платформі «1С: Підприємство 8» передбачено широкий спектр можливостей для організації обміну з будь-якими інформаційними ресурсами за допомогою загальноприйнятих універсальних стандартів (Xml, текстові файли, Excel, ADO-з'єднання і т.д.). Тому при визначенні транспорту для даних обміну слід відштовхуватися від можливостей бази даних сторонньої системи.
Синхронізація довідників
Основним принципом ефективної синхронізації довідників є наявність однієї точки введення. Але якщо мова йде про роботу з довідниками, історично заповнюється за різними правилами, необхідно чітко визначити поля синхронізації для приведення обміну до «спільного знаменника». *
* На цьому етапі може знадобитися проведення робіт щодо нормалізації НДІ на стороні джерела даних. Залежно від стану довідників і їх обсягу, процес зіставлення елементів, розпізнавання, виявлення помилок і дублів, а також заповнення відсутніх полів і призначення полів синхронізації, може зажадати роботи цілої групи експертів, як з боку інтегратора (власника методики нормалізації НДІ), так і з боку замовника.
установка правил
Можливість відображення даних систем-джерел в приймачах залежить від правильно заданих правил обміну. Правила, представлені в форматі xml, регулюють відповідність ключових реквізитів об'єктів джерела-приймача. Рішення «1С: Конвертація даних» призначений для автоматизації створення правил для реалізації як одноразового обміну, так і постійного.
Гарантує відсутність втрат даних при обміні План обміну. це складова частина будь-якої конфігурації на платформі «1С: Підприємство», повністю описує порядок обміну 1С: склад даних (документи з «розпізнавальними» реквізитами) і вузли ( інформаційні бази приймальники-передавачі), а також активацію РИБ для обраних напрямків обміну.
Будь-яка зміна даних, занесених до Плану обміну, фіксується і отримує ознака «измененности». До тих пір, поки змінені дані не будуть відповідати один одному в вузлах приймача-передавача, ознака скинутий не буде, і система буде розсилати контрольні повідомлення в обидва вузла. Після вивантаження даних і підтвердження їх повної відповідності в обох системах, ознака скидається.
Розклад обміну в 1С
Для автоматизації регулярного обміну встановлюється періодичність вивантаження даних. Частота обміну залежить від необхідності і технічних можливостей. Також конфігурації на платформі «1С: Підприємство» дозволяють налаштувати обмін даними при настанні якоїсь події.
Розглянувши стандартний процес реалізації обміну, звернемо увагу на чинники, які зажадають доробок на різних етапах:
- Чи не типові, сильно допрацьовані конфігурації БД;
- різні версії платформи «1С: Підприємство»;
- Давно не оновлювалися, що не актуальні версії конфігурації;
- Об'єкти обміну, раніше зазнали доопрацюванням;
- Необхідність в нестандартних правилах обміну;
- Сильно розрізняються набір і склад реквізитів в наявних довідниках.
Оскільки навіть стандартні дії по реалізації первинного обміну даними вимагають експертних знань, їх рекомендується проводити за участю фахівців 1С. Тільки після виконання всіх вищеописаних дій слід переходити до налаштування обміну в конфігурації. Розглянемо інтеграцію баз даних на прикладі «1С: УПП» і «1С: Роздріб» (за цією ж схемою налаштовується обмін з «1С: УТ»). Також до типової синхронізації відноситься обмін УПП - УПП, характерний для масштабних систем автоматизації на найбільших промислових підприємствах.
У підміню «Сервіс» вибираємо «Обмін даними c продуктами на платформі ...» (вибір прямого обміну з «роздріб» часто загрожує помилками на рівні COM-об'єктів). Звернемо увагу на службове повідомлення « Дана можливість недоступна ».
Щоб вирішити цю проблему, необхідно вибрати «Налаштування обміну даними»
... і проставити галочку. Далі повідомлення про помилку ігноруємо.
В налаштуваннях синхронізації даних вибираємо «Створити обмін з« Роздріб »...
Перед налаштуванням параметрів підключення через локальний або мережевий каталог слід переконатися, що на диску під каталог є місце. Хоча, як правило, він не займає більше 30-50 Мб, у виняткових випадках під нього може знадобитися до 600 Мб. Створити необхідний каталог можна прямо з конфігуратора.
При підключенні через мережевий каталог пропозиції налаштувати підключення за допомогою FTP-адреси і по електронній пошті ігноруємо, натискаючи «Далі».
В налаштуваннях вручну проставляем префікси - умовні позначення баз (як правило, БП, УПП, РО), задаємо правила і початкову дату вивантаження даних. Префікс буде вказуватися в назві документів, для позначення бази, в якій вони були створені. Якщо правила вивантаження НЕ будуть відредаговані, дані за замовчуванням будуть розвантажуватися за всіма наявними параметрами.
Створюємо файл настройки обміну для «Роздробу», щоб не повторювати свої дії. При необхідності негайної відправки даних відразу після завершення налаштування синхронізації - проставляємо галочку.
Для автоматизації процесу обміну необхідно налаштувати розклад.
Меню «Роздріб».
Проставляємо галочку і вибираємо «Синхронізацію».
Виробляємо «зворотний» настройку, вибираючи Управління виробничим підприємством.
Завантажуємо файл з настройками, створений в УПП.
Проставляємо галочку, адреса система підхоплює автоматично.
Діємо так само, як в УПП.
Перевірочне зіставлення даних (Ручне зіставлення даних рекомендується провести на підготовчому етапі, оскільки ці роботу можуть стати самими трудомісткими в процесі реалізації обміну). Відкриття вікна зіставлення відбувається за подвійним клацанням миші.
У разі помилки в синхронізації «Докладно ...» буде замінено на «Ніколи ...».
«Детально ...» відкриває журнал реєстрації з уточненою інформацією з обміну.
Готово.
Питання: Готові правила обміну для типових конфігурацій
відповідь:
Питання: Сервісне обслуговування штатним функціоналом типових конфігурацій 1С
відповідь:
Питання: Видалення об'єкта з уже існуючого правила обміну
Підкажіть, будь ласка, як з існуючого правила обміну видалити об'єкт? Справа в тому, що потрібно вивантажувати з однієї бази в іншу за певну дату тільки реалізації і надходження товарів і послуг. Працює у мене тільки правило, створене автоматично, правило створене вручну вивантажує порожні документи. Тому я б хотіла з автоматично створеного правила видалити зайві документи, щоб користувачі не могли випадково не те вивантажити.
відповідь:
Повідомлення від Allexei
Здравствуйте! Напевно не актуальне вже, але все ж. Як варіант можна скасувати реєстрацію об'єктів непотрібного типу в плані обміну. Завдяки цьому не доведеться переписувати правила обміну і не будуть розвантажуватися непотрібні об'єкти.
Дякую спробую.
Можна видалити звичайним способом
Питання: Правила обміну - де правити?
Замовник вніс зміни в конфігурацію приймача. Що саме змінювалося дізнатися вже ніяк не вдасться.
Тепер треба підправити правила обміну.
Як побачити ті місця, які потрібно підправити?
Потрібно якось по існуючим правила зрозуміти, що властивості вже не існує або що змінився його тип.
відповідь: () Мені здається, щоб порадувати замовника досить хоч як-небудь завести обмін. А щоб заплатили потрібно робити все докінця :)
Питання: "Управління торгівлею", редакція 10.3 (10.3.46.2) Зміна правил обміну для Роздробу 2.1
Добрий день. Як поміняти правила в УТ?
Міняю макет ПравілаОбмена в Плани обміну ОбменРозніцаУправленіеТорговлей103 Оновлюю перезапускати-ні ті правила. Версію навіть вручну змінювала. Все одно не допомагає.
Здуру видалила запис про правила з регістра Правила обміну даними.
Ні кнопки нормальної немає для завантаження файлу правил або поновлення його з макета конфи.
Дописок і тестів багато потрібно зробити, а як поміняти швидко правила реєстрації / обміну не знаю (
відповідь: оновлювала з ІТС, все по порядку. Уже весь мозок виїв цей обмін
Питання: Заміна правил обміну в файлі вивантаження
відповідь:
Питання: Помогте з правилами обміну
відповідь:
Питання: Як вивантажити правила обміну для завантаження в конвертацію
Підправив правила обміну ТіС 7.7 і БП2 додав перенесення двох доків
Кор.счет-фактура і Виправлення рахунок фактури. Тут все нормально перекидається. Обидва цих доку створюють коригування реалізації в БП2.
Але утворилася проблема, потрібно в док підставу в коригування реалізації (БП2) підкинути НЕ рахунок-фактуру як за типовим, а підстава цієї рахунок-фактури тобто реалізацію.
Шматок коду ПКО (Після завантаження):
Об'ект.ЗаполнітьСчетаУчетаВТабЧасті (Об'ект.Товари, "Товари", Істина); Об'ект.ВідОпераціі \u003d Перечісленія.ВідиОпераційІсправленіяПоступленіяРеалізаціі.СогласованноеІзмененіе; Об'ект.КорректіроватьНДС \u003d Істина; Об'ект.СуммаВключаетНДС \u003d Істина; Якщо Об'ект.Ответственний.Пустая () Тоді Об'ект.Ответственний \u003d глЗначеніеПеременной ( "глТекущійПользователь"); КонецЕсли; Об'ект.ДокументРеалізаціі \u003d Об'ект.Ссилка.ДокументРеалізаціі.ДокументОснованіе;<--- проблема Объект.Записать(РежимЗаписиДокумента.Проведение);
До запису об'єкт ще не існує і отже звернутися до реквізиту об'єкта не можна, а після запису ставати вже пізно. Правила відпрацюють за типовим. Підкажіть як вирішити в КД тільки почав розбиратися.
відповідь: Після запису \u003d після виклику методу Записати
При розробці правил обміну 1С 8 широко використовується можливість програмного перевизначення поведінки правил обміну - механізм оброблювачів. Обробники подій істотно розширюють функціонал і є незамінним інструментом налаштування правил обміну в тих випадках, коли інтерактивних можливостей конфігурації недостатньо.
Обробники і алгоритми пишуться на мові тієї платформи, в якій вони будуть виконуватися при обміні.
Якщо це платформа «1С: Підприємство 7.7», то код обробників інтегрується в код обробки вивантаження або завантаження. Відповідно, кожен обробник або алгоритм виділяється в окрему функцію і доступний для налагодження при обміні.
Якщо вивантаження або завантаження відбуваються на платформі «1С: Підприємство 8», то код обробників НЕ інтегрується в код обробки обміну даними, а вивантажується в файл правил обміну. В процесі обміну даними код обробників або алгоритмів береться з файлу правил і виконується безпосередньо в контексті оператора «Виконати». Для налагодження коду обробників і алгоритмів можна скористатися обробкою «Універсальний обмін даними XML».
І показуємо, як з її допомогою СИЛЬНО спростити рішення своїх завдань
Сьогодні ми розберемо, як буквально за 10-15 хвилин налаштувати і зробити простий перенесення довідників і початкових залишків.
А це - масова і регулярна завдання, Яка практично неминуча для більшості запускаються нових конфігурацій.
Тому покличте колег, їм це буде теж дуже корисно.
Особливо, якщо вони вже бачили КД 3 і встигли злякатися :)
Так, коли її бачиш вперше - там взагалі ні фіга не зрозуміло.
Але насправді - все ДУЖЕ просто. Настільки просто, що вам потім навіть нудно буде :)
Що конкретно в сьогоднішніх відео
Це 4 відео з обміну даними через універсальний формат обміну EnterpriseData.
Крім того, ми покажемо приклад доопрацювання типових правил обміну в 1С: Конвертації даних 3.0
Загальна тривалість - 34 хвилини. зміст:
- Налаштування обміну на прикладі 1С: Бухгалтерія 8 і 1C: ERP
- Як зробити завантаження типових правил і універсального формату обміну в Конвертації Даних 3.0
- Перенесення структури метаданих в КД 3.0
- Як виконати перший обмін даними
- доопрацювання правил конвертації
- Як завантажити нові правила без зміни конфігурації ( без зняття з підтримки)
Зверніть увагу, Що при вирішенні цього завдання змінюються правила завантаження тільки в конфігурації-приймачі. А конфігурація-джерело працює за типовими правилами.
Якби подібне завдання вирішувалася в Конвертації даних 2.0, то зміни довелося б вносити в правилах і джерела, і приймача.
Дані відеоуроки актуальні для БСП редакції 2.3.2 (Для будь-якої збірки старше 2.3.2.43).
Якщо Ви використовуєте більш старшу версію БСП, 0 зробіть «поправку» на змінився інтерфейс і розширену функціональність. Для цього самостійно повторіть приклад з відео.
Відео 1:
Завантаження правил обміну між типовими конфігураціями в Конвертацію даних 3.0
У цьому уроці виконаємо підготовчі дії при внесенні змін до правил обміну між типовими конфігураціями:
- Завантаження в КД структури формату обміну (
- створення конвертації
- Вивантаження файлів правил з типової конфігурації
- Вивантаження модуля менеджера обміну
Відео 2:
Доопрацювання правил обміну в КД 3.0
У цьому уроці ми покажемо, як дозаповнити реквізити об'єктів при завантаженні даних.
Буде вирішена задача - при завантаженні об'єктів з конфігурації-джерела встановлювати коментар "Завантажено з БП 3.0".
Для вирішення завдання потрібно внести зміни в правилах конвертації об'єктів, В подію "Перед записом отриманих даних".
Розроблені правила будуть збережені у вигляді зовнішньої обробки для подальшого використання.
Відео 3:
Налаштування універсального обміну між типовими конфігураціями
У цьому уроці ми покажемо, як налаштовувати новий обмін між типовими.
Налаштування будуть зроблені в конфігурації-джерелі і потім завантажені в конфігурацію-приймач.
Також в цьому відео ми покажемо, як без зміни конфігурації довантажити нові правила обміну.
Відео 4:
Перенесення початкових залишків за допомогою правил обміну
В уроці покажемо типовий функціонал перенесення початкових залишків.
P.S.
Так, обміни через txt / dbf / ole і т.д. мають право на існування. В якихось спеціальних випадках, типу стикування з веб-сервером або перенесення з готового формату зовнішнього застосування.
Однак для стандартних обмінів - стандартні методи і швидше, і сильно простіше.
А якщо хтось винаходить велосипед, коли є готове універсальне рішення - це як написати собі на лобі "інструментом не володію, вивчати не хочу, буду будувати милиці за ваші гроші" .
P.P.S.
Ми хочемо показати, що Конвертація Даних 3.0 - це не складно.
Незвично - так. Не всі відразу зрозуміло - так. Є дуже неоднозначні моменти - так.
Але за допомогою готових інструкцій і відео її можна освоїти буквально за 1-2 тижні.