Массовая загрузка от узлов РИБ, не принявших конфигурацию

16.08.13

Интеграция - Перенос данных 1C

Демонстрируются возможности ранее описанной обработки XML-Uniloader для чтения файлов обмена от узлов РИБ, не принявших изменения конфигурации.

Скачать файл

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

Наименование По подписке [?] Купить один файл
down.zip
.zip 4,30Kb
6
6 Скачать (1 SM) Купить за 1 850 руб.

Применение метода

Ранее я показывал, как с помощью обработки XML-Uniloader можно прочитать данные от узла, содержащие недопустимые символы XML (у меня, на ИС).

Теперь я расскажу об еще одном применении этой обработки.

Когда я занимался сопровождением базы РИБ с нескольким десятков периферийных узлов, если обновление конфигурации делалось поздно вечером, то не все узлы успевали принимать изменения до ночи. Ситуация осложнялась тем, что на ночь компьютеры периферийных баз выключались. Т.е. они передавали в центр выгрузки, которые РИБ не разрешала принимать, т.к. не были сделаны изменения конфигурации. Учитывая, что в большинстве случаев изменения конфигурации носят косметический характер и затрагивают только алгоритмы, а не структуры таблиц, тем более обычно изменения таблиц идут из центра на периферию, было решено в экстренных случаях делать массовую загрузку данных из точек через XML-Uniloader.

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

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

Алгоритм действий

  1. Копируем все полученные от периферийных узлов файлы обмена в отдельную папку. Это делается для того, что если будут выгружены новые файлы от узлов, чтобы они повторно не грузились, а то система может зациклиться:
  2. Запускаем код загрузки, он делает следующее:
    1. Перебирает все магазины, смотрит есть для магазина узел плана обмена и файл в каталоге обмена.
    2. Запускает обработку с флагом удаления файла после загрузки.
    3. Пытается загрузить данные, если возникает ошибка, пропускает загрузку.
    4. Пользователь может прервать загрузку.

 

Код загрузки для конфигурации Розница:

О = ВнешниеОбработки.Создать("E:\1c\Проекты\Обмен данными\ЧтениеВыгрузкиXML.epf");
З = Новый Запрос(
        "ВЫБРАТЬ РАЗЛИЧНЫЕ        
        |      Магазины.Код        
        |ИЗ        
        |      Справочник.Магазины КАК Магазины");
ТЗ = З.Выполнить().Выгрузить();
Для Каждого Строка ИЗ ТЗ Цикл
    ТекКод = СокрЛП(Строка.Код);
    ТекУзел = ПланыОбмена.ПоМагазину.НайтиПоКоду(ТекКод);
    ИмяФайла = "\\server\1c_obmen\load\Message_" + ТекКод + "_Ц01.zip";
    Если НЕ ЗначениеЗаполнено(ТекУзел) Тогда
        Сообщить("Не найден узел: " + ТекКод);
        Продолжить;
    КонецЕсли;
    Сообщить("Найден узел: " + ТекКод);
    
    Файл = Новый Файл(ИмяФайла);
    Если НЕ Файл.Существует() Тогда
        Сообщить("Не найден файл: " + ИмяФайла);
        Продолжить;
    КонецЕсли;
    
    Сообщить("Найден файл: " + ИмяФайла);
    
    О.УдалятьИсходныйФайл = истина;
    О.ИмяФайла = ИмяФайла;
    О.ПолучениеОтУзла = ТекУзел;
    О.ВыводитьПротокол = ложь;
    Сообщить("Чтение: " + ТекКод);
    ОбработкаПрерыванияПользователя();
    Попытка
        О.Работа();
    Исключение
        ОписаниеОшибки = ОписаниеОшибки();
        Сообщить("  Произошла ошибка: " + ОписаниеОшибки);
    КонецПопытки;
    
КонецЦикла;

 

Пример протокола загрузки:

Найден узел: М00
Не найден файл: \\server\1c_obmen\load\Message_М00_Ц01.zip
Найден узел: М01
Найден файл: \\server\1c_obmen\load\Message_М01_Ц01.zip
Чтение: М01
Удален файл обмена: \\server\1c_obmen\load\Message_М01_Ц01.zip
Найден узел: М02
Не найден файл: \\server\1c_obmen\load\Message_М02_Ц01.zip
Не найден узел: М03
Не найден узел: М04
Не найден узел: М05

Прилагаю файл обработки с жестко прописанными каталогами, нужно поменять их на свои.

См. также

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 10 Россия Управленческий учет Платные (руб)

Перенос данных из 1С:Управление торговлей 10.3 в 1С:Управление торговлей 11.5 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УТ 10.3 (10.3.88.x) и УТ 11.5 (11.5.21.x).

35000 руб.

23.07.2020    57176    267    75    

222

SALE! 10%

Перенос данных 1C Программист Платформа 1С v8.3 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос документов, начальных остатков и справочной информации из УПП 1.3 в ERP 2 | из УПП 1.3 в УТ 11 | из УПП в КА 2 | Правила конвертации (КД 2) | Более 360 предприятий выполнили переход с использованием этого продукта! | Сэкономьте время - используйте готовое решение для перехода! | Позволяет перенести из УПП 1.3 в ERP / УТ 11 / КА 2 всю возможную информацию | В переносе есть фильтр по организации и множество других опциональных параметров выгрузки | Есть несколько алгоритмов выгрузки остатков на выбор

55778 50200 руб.

04.08.2015    171880    367    283    

395

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Правила в универсальном формате обмена для ERP 2.5, КА 2.5, УТ 11.5, БП 3.0, Розница, УНФ, для последних версий конфигураций. Ссылки на другие конфигурации в описании публикации. Правила совместимы со всеми другими версиями конфигураций новыми и старыми, поддерживающими обмен и синхронизацию в формате EnterpriseData. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

27660 руб.

12.06.2017    146619    861    300    

443

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос данных из ERP в БП 3 | из КА 2 в БП 3 | из УТ 11 в БП 3 | из ЕРП в БП 3 | Сэкономьте время - используйте готовое решение для перехода! | Перенос разработан в формате КД 2 (правила конвертации данных) | Переносятся все возможные виды документов, начальных остатков и нормативно-справочная информация| Можно опционально выгружать каждую пару "номенклатура+характеристика" как отдельную номенклатуру | Есть выгрузка настроек счетов учета и зарплатных данных из ERP / КА 2 | Можно проверить на вашем сервере перед покупкой

55778 50200 руб.

15.04.2019    74897    201    156    

140

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

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УПП 1.3 (1.3.244.x) и БП 3.0 (3.0.172.x). Правила подходят для версии ПРОФ и КОРП.

35000 руб.

15.12.2021    26792    191    56    

146

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из ERP в ЗУП 3 | из КА 2 в ЗУП | Готовые правила конвертации данных (КД 2) для переноса остатков, документов с движениями и справочной информации 3 | Есть перенос начальной задолженности по зарплате и начальной штатной расстановки на выбранную дату | Обороты за прошлые годы (данные для расчета среднего) переносятся свернуто в документ "Перенос данных" | Есть фильтр по организациям | Документы за текущий период переносятся сразу с движениями, поэтому не потребуется делать перерасчеты | Перенос можно проверить перед покупкой, обращайтесь!

53111 47800 руб.

03.12.2020    38836    108    71    

103

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 Платформа 1C v8.2 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Управление производственным предприятием Россия Платные (руб)

Регулярный обмен, выгрузка, перенос из КА 1.1, УПП 1.3, УТ 10.3 для обмена с любыми конфигурациями, поддерживающими обмен в формате EnterpriseData (КД3) - БП 3.0, ERP, КА 2, УТ 11, Розница 2, УНФ 1.6 и другими. Правила для старых и доработанных конфигураций не требуют синхронного обновления и совместимы с новыми и будущими конфигурациями. Обмен по расписанию, через папку, FTP, почту.

16260 руб.

18.02.2016    189751    618    534    

537

SALE! 10%

Перенос данных 1C Системный администратор Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Правила переноса данных из БП 3.0 в УТ 11 | из БП 3.0 в КА 2 | из БП 3.0 в ERP | Сэкономьте свое время - используйте готовое решение для перехода! | Постоянно работаем над развитием переноса данных | Обновляем на новые релизы 1С | Есть фильтр выгрузки по организациям | Переносятся начальные остатки на выбранную дату, документы за период времени и вся возможная справочная информация | Перенос сделан на технологии КД 2 (правила конвертации данных) Воспользовались более 122 предприятий! |

55778 50200 руб.

31.10.2014    239151    104    340    

309
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Fragster 1155 16.08.13 19:26 Сейчас в теме
Проще всего сделать 2 плана обмена. Один для обмена конфигурацией, другой для обмена данными и все.
kasper076; +1 Ответить
2. fixin 4285 16.08.13 20:09 Сейчас в теме
(1) не скажи. Оцени трудозатраты для 70 узлов и поймешь, что не все так просто.
К тому же надежнее, когда алгоритмы (конфа) соответствует ожидаемой. Так хоть мотивация есть - данные не поступают из узла. А так на обновление конфы могут и подзабить.
3. kasper076 112 19.08.13 15:17 Сейчас в теме
(2), разве нельзя один раз выгрузить конфу, отдельным планом обмена, и разослать ее всем узлам, предварительно поменяв идентификаторы внутри файла? А затем другим планом обмена выгружать данные.
4. fixin 4285 19.08.13 15:25 Сейчас в теме
(3) я уже отвечал, что это слишком серьезное (а значит дорогое) вмешательство в типовые обмены.
Оставьте свое сообщение