Занятие № 13. Курс «1С:Конвертация данных 2.1 – Профессиональная настройка правил обмена и типовые сценарии переноса данных»

Знакомство с планами обмена

Изучите теорию модуля № 3:

  • Глава 1. Планы обмена
  • Глава 2. Работа с XML
  • Глава 3. Распределенная информационная база

Данное занятие не предполагает выполнение домашних заданий.

Ваши вопросы по материалам данного занятия задавайте в комментарии ниже.
Общие вопросы по курсу, не связанные с конкретным занятием, задавайте на странице: http://kursy-po-1c.ru/data-conv/all-hw/convdata-common-qa/

К сожалению, у Вас недостаточно прав для дальнейшего просмотра.

Если Вы приобрели курс, но еще не активировали токен — пожалуйста, активируйте доступ по инструкциям, высланным на Ваш email после покупки.

Если Вы не залогинены на сайте — залогиньтесь, вернитесь на эту страницу и обновите ее.

Если Вы залогинены, у Вас активирован токен доступа, но Вы все равно видите эту запись — напишите нам на e-mail поддержки.

Комментарии / обсуждение (57):

  1. Андрей

    видео
    1C-ConvData-Module3-Chapter02-Lesson12.ufm

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

    • Ольга Кузнецова

      Здравствуйте!

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

      А ошибка возникает из-за номера принятого сообщения. То есть нужно проанализировать в Чтении сообщения не номер принятого, а НомерСообщения и сравнить его с номером принятого, который в узле плана обмена находится. Номер сообщения должен быть больше, чем номер принятого в узле плана обмена.

  2. emelva

    В уроках проведен экспорт XDTO-пакета из конечной ИБ, и его импорт в исходную ИБ.
    Однако далее в примерах мы создаем фабрику XDTO используя внешний файл:
    Фабрика = СоздатьФабрикуXDTO(“d:\1C_ConvData\Conv_Data\КонечнаяИБ.xsd”);
    А как можно воспользоваться загруженным пакетом XDTO, избегая обращений к внешнему файлу?

    • Ольга Кузнецова

      Здравствуйте!
      Этот загруженный пакет имеет такое же пространство имен, как у самой конфигурации. Поэтому обратиться к нему не получается, это пространство имен используется для встроенной фабрики XDTO.

  3. Sergey_N

    Подскажите, пожалуйста, алгоритм действий как можно произвести XML сериализацию документов у которых сведения хранятся не в табличных частях, а в движениях документа (например БухгалтерскаяОперация)?

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

    • Ольга Кузнецова

      Здравствуйте! В этом курсе тема сериализации дана для ознакомления. Более сложные задачи не рассматриваются в нём.

      • Sergey_N

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

        • Ольга Кузнецова

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

  4. qwed

    Здравствуйте. В видео 3.2.10, на 10 минуте тренер пытается методом ЗаполнитьЗначенияСвойств() заполнить свойства работника, свойствами сотрудника. В уроке выходит ошибка, а ошибка в том, что тренер хочет исключить из заполнения свойство ссылка, но передает это свойство в третий параметр(это как раз список нужных свойств), а нужно было передавать в четвертый параметр.

    • Ольга Кузнецова

      Здравствуйте!
      Да, Вы правы, ошибка именно в этом

  5. AlexGol

    Здравствуйте!

    1.Поясните, пожалуйста, про ПВД по произвольному алгоритму в случае указания узла обмена и при on-line обмене. Насколько я понимаю, в этом случае выборка происходит стандартным способом и обработчик “перед выборкой”, который активно использовался в курсе, не будет отрабатывать. Как же в таком случае использовать произвольный алгоритм и оптимизировать выгрузку?
    2. И хотелось бы где-то видеть схему : в какой последовательности какие обработчики КД отрабатывают, этого очень не хватает.

    Спасибо.

    • Ольга Кузнецова

      Здравствуйте!
      1. В случае, если используется узел плана обмена, выгружаются только те объекты, которые зарегистрированы на этом узле. Алгоритм Перед обработкой отрабатывает, но даже если в нем формируется выборка данных, использоваться будет не она, а стандартная выборка объектов, зарегистрированных на узле. Здесь единственный способ воздействовать на выгружаемые данные – это алгоритм ПВД Перед выгрузкой. Он выполняется перед выгрузкой каждого объекта, здесь, например, можно произвольно сформировать Исходящие данные, чтобы передать какую-то информацию вместе с объектом.
      2. Пока такой схемы, к сожалению, нет.

  6. nsveta

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

    Например, в документе из поставки “Совместное использование конфигураций “Управление торговлей” и “Бухгалтерия предприятия”” есть небольшой раздел “Контроль соответствия данных конфигураций “Управление торговлей” и “Бухгалтерия предприятия””, в котором говориться, что “После выполнения обмена между конфигурациями Управление торговлей и Бухгалтерия предприятия пользователь может проконтролировать правильность переноса хозяйственных операций. Есть возможность сравнить обе конфигурации как по заполнению нормативно-справочной информации, таки и по содержанию хозяйственных операций, отраженных документами.
    Контроль соответствия данных нормативно-справочной информации

    На стороне конфигурации Управление торговлей необходимо сформировать отчет Реестр нормативно-справочной информации, расположенный в разделе Администрирование, закладке Обмен данными, сохранить отчет в файл в формате “.mxl”.
    Контроль соответствия учетных данных

    На стороне конфигурации Управление торговлей необходимо сформировать отчет Реестр учетных данных, расположенный в разделе Администрирование, закладке Обмен данными, сохранить отчет в файл в формате “.mxl”. “”

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

    • Ольга Кузнецова

      Здравствуйте!
      Обычно корректность переноса данных проверяется сравнением контрольных цифр – оборотов, остатков, различных отчетов. Когда планируется перенос данных, обычно сразу определяют все суммы, которые должны сойтись.
      Эти отчеты, “Реестр нормативно-справочной информации” и “Реестр учетных данных” можно использовать, чтобы визуально проверить заполненность всех реквизитов перенесенных справочников и документов.

  7. CTmuB

    Здравствуйте
    Как можно создать РИБ с односторонним обменом? Есть варианты без использования ПРО?

  8. CTmuB

    Здравствуйте
    А можно сделать два(три, четыре…) плана обмена с установленным флагом распределённая ИБ, чем это грозит если обмен конфигурациями будет проходить по одному дереву баз данных

    • Ольга Кузнецова

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

  9. pav173

    Добрый день. В XML сериализации, при выгрузке, например документа, в значения реквизитов подставляются УИД, что будет если система не найдет объект,по этому УИД в базе приемнике?

    • Ольга Кузнецова

      Здравствуйте!
      Если объекта с таким идентификатором нет, будет создан новый

  10. Максим

    Добрый день. Вопрос про регистрацию планов обмена. Допустим, есть два разных вида документа, документ1 и документ2. Для документ1 включена авторегистрация, а документ2 вообще в плане обмена нас не интересует, мы его не переносим, при этом у документ2 есть ссылка на документ1.
    В исходной ИБ, чтобы удалить документ1 пользователь удаляет документ2 (т.к. есть ссылка на документ1). Регистрация удаления документ1 попадает в план обмена.
    На стороне конечной базы есть документ1 и ссылки на него в документе 3,4,5,…
    Как на стороне конечной базы поведёт себя система? Если удалить документ1, то останутся битые ссылки у документов, которые на него ссылаются.

    • Ольга Кузнецова

      Здравствуйте!
      Да, в таком случае будут битые ссылки. Эту ситуацию нужно предусмотреть и принять решение, что в таком случае делать. Например, можно очищать ссылки на документ1

  11. Станислав Бобков

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

    • Ольга Кузнецова

      Здравствуйте!
      В этом курсе знакомство с XDTO довольно поверхностное. Более подробно эта тема будет рассматриваться в курсе по интеграции

      • Максим

        а когда планируется курс по интеграции?

        • Татьяна Гужавина

          Здравствуйте, Максим!
          В ближайшее время мы не планируем к выпуску данный курс.

  12. Ruslan Abiev

    Где скачать обработки из Главы 2 “ОбменЧерезПланОбмена”?

      • Ольга Кузнецова

        Здравствуйте!
        Обработки, которые были разработаны в процессе записи видео-уроков, можно скачать на странице стартовых материалов
        http://xn—-1-bedvffifm4g.xn--p1ai/data-conv/start-materials/
        в разделе 6 “Методические материалы курсов”

        • Ruslan Abiev

          Там нет этих обработок! Речь идет об обработках ОбменЧерезПланОбменаИсходнаяИБ и ОбменЧерезПланОбменаКонечнаяИБ, кажется так. Где их скачать?

            • Ольга Кузнецова

              Здравствуйте!
              К сожалению, эти обработки не сохранились

  13. icekimi23

    Добрый День !
    Не могу понять как запустить отладку стандартного обмена между УТ 10.3 и БП 2.0.
    Сохраняю правила обмена в файл. Модифицирую правила. Пытаюсь сделать обмен через V8Exchan82.epf.
    При выгрузке появляется ошибка “ОписаниеОшибки = Ошибка компиляции при вычислении выражения или выполнении фрагмента кода: {(6,52)}: Переменная не определена (УзелДляОбмена)”

    • icekimi23

      Нашёл ответ. Надо использовать встроенную в конфигурацию обработку “ОбменДаннымиXML”

  14. Templ

    В типовых обменах между конф 11.1 и 3.0 документы продажи затяигиваються из торговли в бухгалтерию. Если эти документы реализации были изменены в бухгалтерии попадут изменения в торговлю?

    • Ольга Кузнецова

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

  15. Владимир

    Занятие 3.2.11-Обмен по плану обмена Часть 3
    После исправления ОбменЧерезПланОбменаИсходнаяИБ.epf
    При запуске в Исх ИБ ошибка:

    {Форма.Форма.Форма(14)}: Ошибка при вызове метода контекста (НачатьЗапись)
    ЗаписьСообщения.НачатьЗапись(Данные,УзелПолучатель);
    по причине:
    Несоответствие типов (параметр номер ‘2’)

    Ошибка найдена-На форме УзелПолучатель, неправильно указан Тип.
    Правильно Тип-ПланОбменаСсылка.

  16. zels

    Если регистрация отключена, то ее рекомендуют делать в “ПередЗаписью”. Как решаются 2 проблемы:
    1. Для нового объекта нет ссылки, что попадет в таблицу изменений?
    2. В перед записью может произойти отказ, что будет с регистрацией “изменения”?

    • Ольга Кузнецова

      Здравствуйте!
      В процессе регистрации изменений узлы добавляются в коллекцию объекта ОбменДанными.Получатели. Поэтому сама регистрация в таблице плана обмена происходит, когда объект записывается

  17. Alexander Fokin

    1. СериализаторXDTO может работать (методы записьxml и чтениеxml) только с типами текущей конфигурации? Немного неясно как соотносятся между собой СериализаторXDTO и ФабрикаXDTO.
    2. ВыполнитьОбработкуЗаданий – выполняет регламентные задания, расписание самих заданий при этом игнорируется?

    • Ольга Кузнецова

      1. Да, методы ЗаписатьXML и ПрочитатьXML производят XML сериализацию, они работают только со значениями из текущей базы.
      Сериализатор и фабрика очень тесно связаны между собой. Основное различие – Фабрика “знает” про разные схемы XDTO, и те, которые созданы самой платформой на основании объектов метаданных текущей конфигурации, и те, которые загружены из внешней базы. На основании этих схем она “умеет” создавать объектXDTO и записывать его в XML. А Сериализатор может создать из объекта XDTO объект данных 1С, и наоборот, из 1С – XDTO.
      2. По всей вероятности, да. В данном случае выполнение происходит с интервалами, определенными программно

  18. Velmir1988

    Здравствуйте!
    За период работы внедренцем в франчайзи были проблемы с обновлением дочерней ИБ (РИБ). После обмена стандартно выходила ошибка, что конфигурация дочерней базы не совпадает с конфигурацией центральной базы. Заходил в конфигурацию дочерней базы. Пытался обновить конфигурацию, но кнопка обновить была недоступна. Проблему решал с помощью обработки: дочернюю базу снимал с узла, обновлял до нужного релиза и делал обмен заново.
    В чем может быть проблема и есть ли другой способ ее решения?

    • Ольга Кузнецова

      Здравствуйте!
      К сожалению, ничего не могу подсказать по этому вопросу. Никогда на практике не работала с РИБ

    • Sieg Heil

      Действительно описанный случай является одним из ряда “волшебство” от 1С %-).
      Временами помогало заново сформировать узел (редко имелось время и возможность сделать это), а в основном действовать по опять же описанному алгоритму со снятием признака РИБ и последующим обновлением и восстановлением обратно РИБа.
      Было отправлено письмо в саппорт 1С, но ответ где-то затерялся, да и было это давно. На просторах интернета множество людей с аналогичной проблемой.

  19. Davids

    Здравствуйте! Подскажите, можно ли выполнять обмен с помощью плана обмена по правилам, со способом выгрузки “Произвольный алгоритм”?

    • Ольга Кузнецова

      Здравствуйте!
      Если при выгрузке используется узел плана обмена, то выборка объектов для выгрузки происходит стандартно – выбираются все объекты, зарегистрированные на этом узле. Повлиять на состав выборки данных при этом нельзя. Но можно выгрузить все, что нужно “вручную”.

  20. dm3

    А можно получить пояснение по ПВД в случае выгрузки через онлайн-обмен.
    Я правильно понимаю, что произвольный алгоритм выгрузки при обмене через он-лайн обмен игнорируется и выгрузка происходит через стандартную выборку зарегистрированных в плане обмена объектов?

    Остается ли при онлайн-обмене возможность формирования в ПВД полей объекта для перегрузки (рекомендуемый максимально оптимизированный способ выгрузки)?

    • Ольга Кузнецова

      Здравствуйте!
      Не только через on-line обмен, но и в любом случае, когда для выгрузки указан узел плана обмена, выборка объектов для выгрузки формируется как получение объектов с этого узла. Причем происходит получение объектов сразу всех типов, для которых созданы ПВД, поэтому порядок выгрузки не соответствует порядку ПВД в правилах.
      При этом обработчики ПВД выполняются, но Перед обработкой нет возможности повлиять на реальную Выборку, которая будет выгружаться. Можно повлиять только на каждый конкретный выгружаемый объект в событии ПВД Перед выгрузкой.

  21. Lemon8

    Еще один вопрос по планам обмена.
    План обмена РИБ:
    Необходимо чтобы обмен одним документом (товарный чек) осуществлялся только ночью. А всеми другими – в течение дня.

    Как можно такое реализовать?

    • Евгений Гилев (Мастер-тренер)

      Нужно выключить авторегистрацию у чеков ККМ.
      Далее, пишете регламентное задание, выполняющееся ночью.
      Оно отмечает для обмена Чеки ККМ за последнюю смену и запускает процедуру обмена.

  22. Lemon8

    Еще вопрос про XDTO-сериализацию.
    В уроках производился экспорт из XDTO-пакета из конечной, и его импорт в исходную.

    Это обязательная процедура и для чего она нужна? Т.к. далее не увидел что к этому XDTO-пакету как-то обращаются..

    • Ольга Кузнецова

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

      • pr_mort

        Если пакет будет входить в состав конфигурации, то начнутся другие проблемы – связанные с пространством имен. Если оставить по умолчанию “http://v8.1c.ru/8.1/data/enterprise/current-config”, то не создастся объект соответствующий конечной базе, если переопределить имя пространства, то выгрузка произойдет, но не загрузится в конечную

        • Ольга Кузнецова

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

          • pr_mort

            Да, если изменить имя пространства, то тип соответствующего объекта в другой базе создастся и объект можно выгрузить. Но при загрузке, для того, чтобы создался объект справочника URI должно быть “http://v8.1c.ru/8.1/data/enterprise/current-config”. У меня не получилось простыми методами указать этот тип при выгрузке. Только путем поиска и замены в конечном XML файле строки с именем пространства на “http://v8.1c.ru/8.1/data/enterprise/current-config”

            • Ольга Кузнецова

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

Комментарии закрыты