Синхронизация ошибка проверки заполнения реквизитов

Автор ИринаЯлта, 17 мар 2016, 16:16

0 Пользователей и 1 гость просматривают эту тему.

После последнего обновления (перехода с УТ 11.2.2 на УТ 11.2.3) возникли проблемы при синхронизации (Бухгалтерия предприятия, редакция 3.0 (3.0.43.147), Управление торговлей, редакция 11.2 (11.2.3.101)). Если в торговле создается контрагент — обособленное подразделение, после синхронизации в бухгалтерии он заменяет контрагента — головное предприятие. Пишет ошибку синхронизации «Ошибка проверки заполнения реквизитов Контрагент не может являться своим обособленным подразделением», но при этом все данные заменяет на новые.
Причем такое случается только с головными контрагентами, созданными до обновления, созданные после не заменяются.
Точно также получается с товаром, если новый товар заводится копированием карточки какого-то старого, старый товар при синхронизации заменяется на новый.
Сталкивался ли кто-нибудь с такой проблемой и как ее можно решить?


Не копируйте карточки. Судя по всему копируется какой-то реквизит который служит идентификатором при синхронизации.


Так контрагентов (обособленное подразделение) и не копируем, просто выбираем для него головную организацию, созданную до обновления. И при синхронизации головная в БП пропадает, заменяется на новое ОП.


не копируйте карточки, из-за них рассихрон


Теги:

  • Форум 1С

  • ОБЩИЙ ТЕМАТИЧЕСКИЙ ФОРУМ 1С

  • Обмен данными

  • Синхронизация БП 8.3 и УТ 11.2

Похожие темы (5)

Рейтинг@Mail.ru

Rambler's Top100

Поиск


Синхронизация ЗУП/БП, вид дохода — предупреждение


2 года 8 мес. ago

#7690

Здравствуйте! Есть Зарплата и управление персоналом, редакция 3.1 (3.1.14.55) и Бухгалтерия предприятия, редакция 3.0 (3.0.78.54). В ЗУП в ведомостях на выплату стоит вид дохода для исполнительного производства. При синхронизации с БП выходит предупреждение Ошибка проверки заполнения реквизитов Поле Вид дохода для исполнительного производства не заполнено. Подскажите в чем может быть дело? где-то еще не отжата галочка?
Спасибо.

Администратор запретил публиковать записи гостям.


Синхронизация ЗУП/БП, вид дохода — предупреждение


2 года 8 мес. ago

#7693

  

И Р

20.12.18 — 18:11

После обновления БП начала твроить дичь, разбивать реализации товаров и услуг на 2 документа и т.д. решил пересоздать синхронизацию через универсальный обмен данными. В результате на данный момент УТ 11.2 при попытки синхронизироваться через файл пишет следующую ошибку:

Событие: Отправка.

ПОД: Документ_СчетФактураВыданныйАванс_Отправка.

ПКО: Документ_СчФактураВыд_Аванс.

Объект: Документ объект: Счет-фактура выданный (аванс), Счет-фактура выданный (аванс) 00ЦУ-000028 от 16.03.2018 23:59:59.

{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(552)}: Ошибка при вызове метода контекста (Проверить)

            ОбъектXDTO.Проверить();

по причине:

Ошибка проверки данных XDTO:

Структура объекта ‘/Договор’ не соответствует типу: {http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.2}КлючевыеСвойстваДоговор

Проверка свойства ‘РасчетыВУсловныхЕдиницах’:

    форма: Элемент

    имя: {http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.2}РасчетыВУсловныхЕдиницах

    тип: {http://www.w3.org/2001/XMLSchema}boolean

Не установлено значение одного из следующих свойств: ВидДоговора

Честно говоря совершенно непонятно что ещё за ВидДоговора.

  

Garykom

1 — 20.12.18 — 18:12

(0) ЫЫЫЫ

Только недавно с такой фигней 8 часов провозился причем до глубокой ночи

  

Garykom

2 — 20.12.18 — 18:13

(0) Все просто и очень банально.

Для начала открываешь предприятие, находишь там документу

Счет-фактура выданный (аванс) 00ЦУ-000028 от 16.03.2018 23:59:59

Далее открываешь карточку контрагента и внимательно! изучаешь закладки Договора и Соглашения.

На предмет отличия от других контрагентов ))

  

Garykom

3 — 20.12.18 — 18:21

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

Самый облом если настроить обмен не через файлы а сразу в базу по com то оно вместо показа ошибки обычно тупо вываливается в рабочий стол.

  

MaxS

4 — 20.12.18 — 18:30

Обработка «Выгрузка загрузка EnterpriseData» есть в этой конфигурации?

Ей удобно выгружать для тестов.

И формат 1.2 как бы устарел. Скоро может появится ещё одна проблема если БП 3.0. от него откажется.

  

Garykom

5 — 20.12.18 — 18:40

(4) Через правила (в т.ч. самописные) для КД2 будут синхронизировать старую УТ11.2 с новыми БП3

  

И Р

6 — 20.12.18 — 20:05

Благо пока ещё 2 меня есть 1.3 в запасе ))

  

MaxS

7 — 20.12.18 — 20:13

(5) Через КД2 будут… до следующего обновления БП 3.0.

В КД3 доработать до формата 1.5 пмсм затрат меньше. И будет работать ещё несколько лет.

  

И Р

8 — 20.12.18 — 20:17

(2) Подскажите пожалуйста а в чём именно у вас были отличия, т.к. прямо скажем у меня куча таких ошибок почти по всем счёт-фактурам ))

  

Garykom

9 — 20.12.18 — 20:23

(6) Ошибку из (0) то нашел и исправил?

  

И Р

10 — 20.12.18 — 20:26

Нет.. никак не могу найти :-(

  

MaxS

11 — 20.12.18 — 20:27

(8) посмотрел УТ 11.3, реквизит формата ВидДоговора заполняется на основе реквизита справочника ТипДоговора — это перечисление.

  

Garykom

12 — 20.12.18 — 20:40

(10) Блин берешь этот документ, отменяешь проведение, изменяешь контрагента на совсем другого с прочими реквизитами и проводишь.

Затем пытаешься выгрузить и смотришь результат.

Если прошло то ошибка у контрагента/договора/соглашения.

  

И Р

13 — 20.12.18 — 20:41

(11) Судя по тому что я вижу  поле «Тип взаимоотношений»  в договоре вообще тип строки имеет.

https://hostingkartinok.com/show-image.php?id=807e3704fec89cd4271eb7a095fcd103

  

Garykom

14 — 20.12.18 — 20:41

(12)+ Возможно счет-фактура цепляет при выгрузке данные из документа реализации и ошибка там.

У меня в реализациях тоже были ошибки подобные.

  

Garykom

15 — 20.12.18 — 20:42

(13) Я надеюсь ты в УТ11.2 это смотришь? Соглашения не используете и покажи вкладки расчеты и учетная информация.

У меня была УТ11.4 там вкладка «Прочее» где ошибки были.

  

И Р

16 — 20.12.18 — 21:00

(14) Получается что счётфактуры с ошибками от 16-28, все от одного конрагента, притом от контрагента куча других документов счёт-фактур имеется. Искать ошибку в реализации?

  

И Р

17 — 20.12.18 — 21:39

Также выше есть ошибки

«Событие: Отправка.

ПОД: Документ_СписаниеБезналичныхДенежныхСредств.

ПКО: Документ_СБДСРасчетыСКонтрагентами_Отправка.

Объект: Документ объект: Списание безналичных денежных средств, Списание безналичных ДС 00ЦУ-000151 от 26.06.2018 0:00:00.

{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(552)}: Ошибка при вызове метода контекста (Проверить)

            ОбъектXDTO.Проверить();

по причине:

Ошибка проверки данных XDTO:

Структура объекта ‘/РасшифровкаПлатежа/Строка[1]/ДанныеВзаиморасчетов/Договор’ не соответствует типу: {http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.2}КлючевыеСвойстваДоговор

Проверка свойства ‘РасчетыВУсловныхЕдиницах’:

    форма: Элемент

    имя: {http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.2}РасчетыВУсловныхЕдиницах

    тип: {http://www.w3.org/2001/XMLSchema}boolean

Не установлено значение одного из следующих свойств: ВидДоговора»

Ещё

«Событие: Отправка.

ПОД: Договоры из структуры.

ПКО: Справочник_ДоговорыКонтрагентов_ИзСтруктуры.

Объект: Структура, Структура.

{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(552)}: Ошибка при вызове метода контекста (Проверить)

            ОбъектXDTO.Проверить();

по причине:

Ошибка проверки данных XDTO:

Структура объекта ‘/КлючевыеСвойства’ не соответствует типу: {http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.2}КлючевыеСвойстваДоговор

Проверка свойства ‘ВалютаВзаиморасчетов’:

    форма: Элемент

    имя: {http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.2}ВалютаВзаиморасчетов

    тип: {http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.2}КлючевыеСвойстваВалюта

Не установлено значение одного из следующих свойств: Контрагент»

И

»

Событие: Отправка.

ПОД: Документ_ПоступлениеТоваровУслуг.

ПКО: Документ_ПоступлениеТоваровУслуг_Отправка.

Объект: Документ объект: Поступление товаров и услуг, Поступление товаров и услуг 00ЦУ-000110 от 11.07.2018 11:27:01.

{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(4662)}:

Событие: Отправка.

Обработчик: ПриОтправкеДанных.

Объект: Документ объект: Поступление товаров и услуг, Поступление товаров и услуг 00ЦУ-000110 от 11.07.2018 11:27:01.

Ошибка выполнения обработчика.

{ОбщийМодуль.МенеджерОбменаЧерезУниверсальныйФормат.Модуль(43894)}: Преобразование значения к типу Булево не может быть выполнено

            Если НДСПоСтавкам2и4 Тогда.

        ВызватьИсключение ТекстОшибки;

»

И наконец

»

Событие: Отправка.

ПОД: Документ_ПБДС_Отправка.

ПКО: Документ_ПБДСРасчетыСКонтрагентами_Отправка.

Объект: Документ объект: Поступление безналичных денежных средств, Поступление безналичных ДС 00ЦУ-000026 от 08.05.2018 0:00:00.

{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(552)}: Ошибка при вызове метода контекста (Проверить)

            ОбъектXDTO.Проверить();

по причине:

Ошибка проверки данных XDTO:

Структура объекта ‘/РасшифровкаПлатежа/Строка[1]/ДанныеВзаиморасчетов/Договор’ не соответствует типу: {http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.2}КлючевыеСвойстваДоговор

Проверка свойства ‘РасчетыВУсловныхЕдиницах’:

    форма: Элемент

    имя: {http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.2}РасчетыВУсловныхЕдиницах

    тип: {http://www.w3.org/2001/XMLSchema}boolean

Не установлено значение одного из следующих свойств: ВидДоговора

«

  

Garykom

18 — 20.12.18 — 21:49

(17) У «Списание безналичных ДС» с «расшифровка платежа» проблемы были, если списком то перезаполни (перепроведи) и обрати внимание на колонки/поля (которые оно показывает если списком, можно прокрутить вправо)

Суть в том что поисправляли договоры/соглашения а документы старые не перепровели правильно.

  

Garykom

19 — 20.12.18 — 21:54

(18)+ Не списком в расшифровках я просто перевыбирал документ «объект расчетов» и проводил.

Естественно после того как исправил ошибки в лишних/кривых «соглашениях с поставщиком», там были дубли недозаполненные.

И неправильно стояло «Требуется указание договора, порядок расчетов определяется в договоре» вместо правильного «Договоры не используются, порядок расчета по накладным»

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

  

hhhh

20 — 20.12.18 — 22:30

(17) открой ут 11.4 и посмотри, какие новые реквизиты появились по сравнению с ут 11.2. В справочнике Контрагенты, договоры и может еще где-то. Эти новые реквизиты аккуратно скопипасть к себе в 11.2 и групповой обработкой заполни чем нибудь по умолчанию. Например НДСПоСтавкам2и4 везде проставь Ложь.

  

И Р

21 — 20.12.18 — 23:55

Короче выяснилось, что все проблемные документы датированы плюс минус годом назад, а синхронизировать нужно за крайние 2 недели и далее, сменил дату начала выгрузки и пошло без ошибок. Но как исправлять эти ошибки понял благодаря вам, за что большое спасибо! Однако возникла другая трудность. Данные из УТ выгружаются без проблем и принимаются в бухгалтерию, однако выгрузка наоборот из бухгалтерии происходит и документ есть, но не загружается, пишет вот что:

{ОбщийМодуль.ДлительныеОперации.Модуль(376)}: Ошибка проверки данных XDTO:

Структура объекта не соответствует типу: {http://www.1c.ru/SSL/Exchange/Message}Header

        ВызватьИсключение(ТекстОшибки);

  

Garykom

22 — 21.12.18 — 00:01

(21) Не надо доки из БП3 тащить назад в УТ11, они туда криво встают и портятся.

Лучше только односторонний обмен.

  

И Р

23 — 21.12.18 — 00:14

А как же красивые всякие поступления ДС ? )

  

И Р

24 — 21.12.18 — 00:20

С другой стороны вроде бы ничего такого туда не дописывали, может попробовать обновиться до 11.4

  

Garykom

25 — 21.12.18 — 00:22

(23) Кто мешает загружать из клиент-банка в УТ11 ?

  

hhhh

26 — 21.12.18 — 01:40

(23) там столько разной ненужной хрени лезет в ут, что волосы дыбом встают. Поэтому ваши мысли про красоту — это какая-то издевка.

При входе в базу 1с вы можете увидеть “Ошибка преобразования данных XDTO:

Начало Свойства: errorProcessingSettings

Форма: Элемент

Тип: {http://v8.1c.ru/8.2/managed-application/core}ErrorProcessingSettings по причине

Чаще всего ошибка возникает при определенном типе запуска: это либо через тонкий клиент, либо через линк42, случаи бывают разные. Через браузер такие базы запускаются без ошибок.

Есть простое решение данной проблемы.

Достаточно запустить базу доступным нам способом (где нет ошибки) включить Функции тех. специалиста (Меню — Настройки — Параметры — Режим технического специалиста)

В Функциях для технического специалиста ищем Управление настройками обработки ошибок (Стандартные)

Запускаем

Готово!

Уже более 10 000 компаний работают
в облачной 1С от 42Clouds

— Консультация по 1С Бесплатно!

— Поддержка 24/7 по техническим вопросам: в чате, по телефону, по почте

— Все типовые конфигурации онлайн, доступ через RDP, Remote App, Web

Добрый день, при настройке синхронизации через универсальный формат xml, при окончании отправки данных всё «валится» в ошибку. Информация в журнале регистрации на одном примере: Событие: Отправка.
ПОД: Документ_ЗаказКлиента_Отправка.
ПКО: Документ_ЗаказКлиента_Отправка.
Объект: Документ объект: Заказ клиента, Заказ клиента 00ИП-004235 от 12.10.2018 12:36:17.

{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(552)}: Ошибка при вызове метода контекста (Проверить)
ОбъектXDTO.Проверить();

Ошибка проверки данных XDTO:
Структура объекта ‘/Контрагент’ не соответствует типу: {http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.3}КлючевыеСвойстваКонтрагент
Проверка свойства ‘СтранаРегистрации’:
форма: Элемент
имя: {http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.3}СтранаРегистрации
тип: {http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.3}КлючевыеСвойстваСтранаМира
Не установлено значение одного из следующих свойств: ЮридическоеФизическоеЛицо

Вопрос: что за страна регистрации, как исправить ошибку?

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь

Одним из самых популярных форматов данных, используемых практически в любой компании, является XML (расширяемый язык разметки). Разработчики 1С создали специальный объект XDTO для удобства своих клиентов и простого взаимодействия с файлами XML, поэтому программисту 1С важно работать с этими объектами платформы, так как обмен данными через XML встречается постоянно.

Этот функционал создавался как удобный инструмент обмена данными между конфигурациями и другими приложениями. Также этот механизм используют для работы с web-сервисами и для обработки произвольных данных. Большое преимущество XDTO перед другими способами – в нем есть возможность обращаться к файлу XML, как к объекту 1С. То есть все реквизиты можно будет получить, описывая структуру через точку, не задумываясь о скобках, тегах и атрибутах.

Взаимодействие с файлами XML происходит по заранее установленным правилам, описанным в объекте структуры конфигурации – XDTO – пакеты в 1С 8.3. Суть этих элементов структуры в том, что они представляют собой схемы, по которым будут распознаваться данные из XML-файлов. В типовых конфигурациях уже присутствуют подобные объекты, но при работе с конкретными файлами понадобятся другие схемы.

Существует два способа добавить XDTO-пакет в конфигурацию:

  • Собственноручно создать. Этот вариант подойдет при самостоятельной работе с XML определенного формата. Зная, какие данные будут подаваться на вход для импорта с использованием XDTO, можно заранее создать в конфигурации нужный объект. Этот вариант хорош, если обмен данными налажен и никаких изменений не планируется;

    Рис.1 XDTO пакеты

    Рис.1 XDTO пакеты
  • Импорт присланной схемы. Когда нам присылают данные, их схема может оказаться какой угодно, особенно, если раньше мы не работали с источником. Сильно упростит ситуацию, если вместе с XML нам пришлют и файл формата xsd. В нем содержится выгрузка XDTO-пакета, который может разобрать конкретные XML. Нам останется лишь импортировать его.

Чтобы загрузить данные из присланной нам схемы, необходимо в режиме конфигуратор открыть раздел «Общие» и «XDTO-пакеты». Через контекстное меню выбрать пункт «Импорт XML-схемы…», выбрать файл и подтвердить пространство имен, взятое из файла. После этого необходимо обновить конфигурацию, и предварительные настройки сделаны.

Но на самом деле в последнем случае нам необязательно создавать XDTO-пакеты в конфигурации 1С 8.3. Существует возможность только использовать XSD-схему, присланную нам из отдельного файла, не внося изменения в структуру базы 1С. Для этого нужно воспользоваться кодом, объясняющим платформе 1С, какой тип объекта с какими параметрами будет загружаться.

Это происходит следующими командами:


ФайлXSD = Новый Массив();
ФайлXSD.Добавить("D:1strust.xsd");
ФабрикаXDTOИзФайла = СоздатьФабрикуXDTO(ФайлXSD);
Номенклатура = ФабрикаXDTOИзФайла.Тип("http://www.1c.ru/products", "Номенклатура");

Экспорт и импорт файла

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

  1. Заполняем URI-пространство имен в свойствах XDTO пакета. Среди разработчиков 1С принято заполнять этот реквизит адресом страницы, заполненной описанием тех данных, с которыми происходит работа. Это помогает в работе, но не всегда возможно. В иных случаях заполняют произвольным текстом;
  2. Задаем тип объекта и его свойства, используя контекстное меню. Задаем имя этих параметров и для свойств определяем тип, выбирая его из предложенных платформой.

Рис.2 Параметры пакета

Рис.2 Параметры пакета

Следующим этапом будет написание процедуры для создания файла XML по описанной выше схеме. Код достаточно прост, поскольку создан XDTO-пакет, а у элемента всего 2 свойства – «Наименование» и «Артикул». Обращаться к конкретной схеме позволяет объект платформы «ФабрикаXDTO». Сама процедура состоит из:

  1. Определение схемы будущей XML;
    
    ТипФабрики = ФабрикаXDTO.Тип("http://www.primerXML.ru/Nomen","Номенклатура");
    

  2. Заполнение свойств номенклатуры;
    
    Номенклатура = ФабрикаXDTO.Создать(ТипФабрики);
    Номенклатура.Наименование = "Тест XML";
    Номенклатура.Артикул = "2";
    

  3. Создание нового XML файла.
    
    ИмяФайла = "D:1struct1.xml";
    МойXML = Новый ЗаписьXML;
    ПараметрыЗаписиXML = Новый ПараметрыЗаписиXML("UTF-8", "1.0", Ложь);
    МойXML.ОткрытьФайл(ИмяФайла, ПараметрыЗаписиXML);
    МойXML.ЗаписатьОбъявлениеXML();
    ФабрикаXDTO.ЗаписатьXML(МойXML, номенклатура);
    МойXML.Закрыть();
    

Чтение XML-файлов с помощью конкретной фабрики XDTO по уже созданному в конфигурации пакету ничуть не сложнее. Алгоритм похож по структуре и отличается только операциями взаимодействия с XML-файлами. В данном случае нам нужно воспользоваться объектом платформы «ЧтениеXML» и прочитать содержимое в переменную. На выходе у нее будет тип «ОбъектXDTO», и вы сможете обращаться ко всем ее свойствам через точку.


ТипФабрики = ФабрикаXDTO.Тип("http://www.primerXML.ru/Nomen","Номенклатура");
 
ИмяФайла = "D:1struct1.xml";
МойXML = Новый ЧтениеXML;
МойXML.ОткрытьФайл(ИмяФайла);
номенклатура = ФабрикаXDTO.ПрочитатьXML(МойXML, ТипФабрики);
МойXML.Закрыть();

Теперь попробуем прочитать файл, схемы которого нет в нашей конфигурации. Для этого экспортируем XDTO-пакет в файл формата xsd и удалим схему из конфигурации. После этого нам придется объяснить платформе, откуда ей брать схему читаемой XML-кодом, продемонстрированным ранее. Однако в простейших случаях 1С самостоятельно может распознать все свойства.

Рис.3 Экспорт XDTO-пакета

Рис.3 Экспорт XDTO-пакета

Лучше все-таки не рассчитывать на понятливость платформы 1С, а использовать точную схему XML. Многие специалисты используют сторонний софт для их создания, но для этого необходим достаточно большой опыт и уровень подготовки. Работа с пакетами XDTO требует внимания и соблюдения точного соответствия файлов заданной схеме, чтобы минимизировать возможные ошибки.

Исправление ошибок

Одной из достаточно распространенных ошибок, связанных с работой с XDTO-пакетами, является «Ошибка преобразования данных XDTO». Ее суть заключается в том, что платформа не может разобрать данный ей XML-файл по заданной схеме. При получении подобной ошибки при импорте данных, необходимо проверить формат файлов – возможно, присутствуют незакрытые теги.

Зачастую проблема с ошибками преобразования данных возникает и по другим причинам:

  • Ошибки в обновлении платформы или конфигурации;
  • Обмен между базами разных версий;
  • Недочеты в алгоритме приема данных;
  • Проблемы с временной памятью конкретного компьютера.

Чтобы исправить эту ошибку, сначала почистите кэш или удалите, а также заново добавьте информационную базу в список баз. Затем внимательно проверьте файл XML – вдруг случайно сделали ошибку в его тексте, проверьте соответствие структуры пакету XDTO. Если ошибка появилась после обновления, сделайте тестирование и исправление ИБ, сохранив перед этим резервную копию базы. Если проблема не уйдет, вернитесь на предыдущую версию и подождите, пока разработчики 1С не разберутся с этой проблемой.

Рис.4 Ошибка преобразования данных

Рис.4 Ошибка преобразования данных

Еще одна проблема, часто мучающая программистов 1С, работающих с XDTO, – ошибка проверки данных. Если при импорте вы видите подобный текст, то с высокой долей вероятности источник проблемы в несоответствии файла нужной схеме. Но проблема может быть не на вашей стороне, а в базе, из которой выгружали XML. Чтобы исправить эту оплошность, придется внимательно изучить всю последовательность действий и найти, после чего файл перестал соответствовать ожиданиям.

Рис.5 Ошибка проверки данных

Рис.5 Ошибка проверки данных

Более сложная для анализа проблема, если при обмене информацией 1С выдает ошибку о несоответствии типов XDTO. В этом случае придется проверять все данные, находить ошибки и их причины. В некоторых случаях ошибки могут быть в коде, иногда – в данных информационной базы. Чтобы это понять, необходимо иметь доступ к базам причастным к обмену и четко понимать всю суть происходящего экспорта и импорта.

Рис.6 Несоответствие типов XDTO

Рис.6 Несоответствие типов XDTO

На первый взгляд работа с XDTO достаточно сложна, поэтому на первое время рекомендуется добавлять XDTO-пакеты в 1С для большего порядка и учета. Конечно, все нюансы изучить сразу невозможно, но в процессе работы вы будете продолжать учиться. Но с уверенной теоретической базой намного удобнее начинать разбираться в этом вопросе.

Просмотров 12к. Опубликовано 24 октября, 2018 Обновлено 24 октября, 2018

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

На самом деле ошибка преобразования XDTO является не какой-то определенной ошибкой, а является большим семейством ошибок возникающих при работе одного из базовых механизмов платформы 1С. Этот механизм обеспечивает передачу данных между различными подсистемами платформы, при этом данные из внутреннего представления одной подсистемы преобразуются в текстовый формат XML, передаются в другую подсистему, и там  опять преобразуются во внутреннее представление. Ошибка преобразования XDTO говорит, что прямом или обратном преобразовании обнаружено какое-то несоответствие, из-за которого оно не может быть выполнено.

Частные причины ошибки

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

Прежде чем приступить к диагностике причины ошибки XDTO, следует выполнить стандартные профилактические операции над ИБ: очистить кэш, проверить состояния файла, выполнить тестирование ИБ.

Взаимодействие Клиента и Сервера

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

Сырые и Неоригинальные решения

Если ошибка преобразования XDTO возникает в неоригинальной конфигурации или неоригинальной обработке, то возможно, причина в неоригинальном коде, который не был должным образом оттестирован. Это возможно и в оригинальных решения от 1С после установки сырых обновлений.

В этом случае необходимо отказаться от использования неоригинального или сырого решения и вернуться к предыдущему состоянию кода из архива.

Обмен данными не работает

В пользовательском режиме приложения «1С:Предприятие» откройте настройки обмена с «Первой Формой». Убедитесь, что флажок «Запретить обмен с Первой Формой» не включен. Если флажок включен — отключите его и нажмите кнопку Записать и закрыть.

1C_admin_config_unblock  

Запрет обмена с «Первой Формой».

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

Возможна ситуация, когда два события — выполнение синхронизации данных и попытка изменения этих же данных штатными средствами «1С:Предприятие» — совпадают во времени. В этом случае пользователю при сохранении данных будет выдано сообщение о ошибке:

Кликните для просмотра изображения в полном размере

Сообщение об ошибке при совпадении изменений по времени.

Это нормальное поведение системы, поскольку в БД содержится уже другая версия данных. В этом случае форму документы/элемента справочника надо закрыть без сохранения и затем открыть снова.

Для администратора возникновение таких ошибок должно стать сигналом к пересмотру правил настройки бизнес-процесса. Возможно, для таких документов/справочников достаточно одностороннего обмена данных из «1С:Предприятие» в «Первую Форму».

Таймаут при синхронизации

При синхронизации данных между «Первой Формой» и 1С могут возникать ошибки из-за того, что не все данные успевают обработаться в одной системе за то время, пока вторая система ожидает ответа. В частности, таймауты могут возникать при синхронизации виртуальных документов, имеющих табличную часть с 200 и более записей. Таймаут на стороне 1С фиксируется в журнале ошибок.

На стороне «Первой Формы» таймаут ожидания ответа при вызове веб-сервиса 1С составляет 12 часов.

На стороне 1С таймаут можно регулировать. Для этого в «1С:Предприятие» в справочнике «Настройки обмена («Первая форма»)» откройте предопределенный элемент «Общие настройки» и в поле «Таймауты WS» увеличьте значение в поле «Прокси» – укажите, сколько секунд сервер 1С должен ждать ответа от сервера «Первой Формы» до обрыва соединения. Если указать значение 0, то таймаут не ограничен (сервер будет ждать до тех пор, пока операция не будет выполнена).

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

1C_sync_faq_2

Настройки таймаута.

Недостаточно прав доступа в 1С

При обмене данными может возникать следующая ошибка:

«Error while calling 1С service. Нарушение прав доступа к операции Web-сервиса:  

{www.rg-soft.ru}:rg1СTCService:PerformOperation().»

Причина возникновения ошибки связана с недостатком прав пользователя на стороне приложения «1С:Предприятие». Для исправления необходимо в конфигураторе «1С:Предприятие» проверить роли у пользователя, который указан в «Первой Форме» в настройках для подключения (атрибут OneCUserName в XML-настройках), и убедиться, что хотя бы одна из этих ролей имеет доступ к сервису.

Не выполняются регламентные задания

Если на стороне «1С:Предприятие» задания в очередь ставятся и видны в регистре сведений «Очередь обмена (Первая Форма)», но не выполняются, необходимо убедиться, что регламентное задание по обработке очереди есть в системе, оно включено, и регламентные задания не заблокированы на стороне сервера.

1. Проверка существования регламентного задания.

В пакете «Модуль 1С», скачиваемом через интерфейс администратора «Первой Формы», есть папка «Диагностика», в которой находится внешняя обработка «Консоль заданий.epf». Этот файл необходимо открыть в режиме «1С:Предприятие». Появится окно, в котором будут отображены все регламентные задания в системе. Задание модуля синхронизации имеет название «Очередь обмена с Первой Формой».

2. Проверка, что задание включено.

В «Консоли Заданий» можно просмотреть, включена ли обработка и какой период ее выполнения.

3. Проверка блокировки.

На сервере «1С:Предприятие» можно полностью блокировать выполнение всех регламентных заданий (т.е. при блокировке все регламентные задания будут простаивать). Эту блокировку должны снимать специалисты «1С:Предприятие», т.к. нужно учитывать, какие из регламентных заданий уже включены и к каким последствиям это приведет.

4. Поиск и проверка объектов, вызвавших ошибки синхронизации.

В пакете «Модуль 1С», скачиваемом через интерфейс администратора «Первой Формы», есть папка «Диагностика«, в которой находится внешняя обработка «ГУИДОбъекта.epf«. Этот файл необходимо открыть в режиме «1С:Предприятие». С помощью обработки можно:

определить уникальный идентификатор (GUID) объекта «1С:Предприятие». Для этого выберите интересующий вас объект в поле «Объект» и нажмите кнопку Сообщить ГУИД.

определить объект, вызвавший ошибку при синхронизации с «Первой Формой», и проверить правильность заполнения его реквизитов. Для этого выберите тип объекта в поле «Объект», введите его GUID в поле «ГУИД» и затем нажмите кнопку «Найти по ГУИД». GUID и тип объекта можно посмотреть в журнале ошибок синхронизации.

1C_object_guid

Обработка «ГУИДОбъекта».

Нераспознанная версия сообщения

Если при любом обращении «Первой Формы» к 1С появляется сообщение

System.ServiceModel.CommunicationException: Нераспознанная версия сообщения/Unrecognized message version

необходимо проверить адреса сервисов и в частности параметр ?WSDL.

Синхронизация скрытых и «только для чтения» колонок ДП «Таблица»

Если в категории «Первой Формы» присутствует ДП «Таблица», в которой есть скрытые колонки или колонки  с признаком «только для чтения», то данные для них перед отправкой берутся не из карточки задачи, а непосредственно из базы данных перед отправкой в 1С. Чтобы обмен данными в этом случае работал корректно, необходимо использовать очередь обмена, а не обмен данными в режиме онлайн. См. здесь.

Не загружаются данные из справочника 1С

Из-за ограничений на количество символов объекты с длинными названиями могут не сопоставляться. Попробуйте в 1С увеличить длину полей.

Неверный адрес сервиса 1С

В журнале ошибок есть ошибка вида:

Request format is unrecognized for URL unexpectedly ending in ‘/TC1CService.asmx’.

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

Не задан параметр GUIDExtParamID

В журнале ошибок есть ошибка вида:

System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.
at System.ThrowHelper.ThrowKeyNotFoundException()
at System.Collections.Generic.Dictionary`2.get_Item(TKey key)
at TCClassLib.ExtParams.Helper.GetExtParamName(Int32 extParamId, Nullable`1 subcatId, Boolean injectResources, Nullable`1 userId) in C:TeamCityBuildAgentwork7a2e67b2a0804e2cTCClassLibExtParamsExtParams.cs:line 2037
at TaskCenter.admin.Sync1C.AddDictionary.Page_Load(Object sender, EventArgs e) in C:TeamCityBuildAgentwork7a2e67b2a0804e2cTaskCenteradminSync1CAddDictionary.aspx.cs:line 168
Origin=WebForm
OriginId=2
User=Support
Url=https://your.1forma.net/admin/Sync1C/AddDictionary.aspx?Name=1С&OneCAddress=http:%smth%2F1CTCService.1cws&OneCServerName=http:%2F%2Fsmth&OneCUserName=ObmenForma&OneCPassword=(Пароль зашифрован)&TCAddress=https:%your.1forma.ru%2FTC1CService.asmx%3FWSDL&TCServerName=https:%2F%2Fnts.1forma.ru&TCUserName=1CServer&TCPassword=(Пароль зашифрован)&GUIDExtParamID=0&QueryRepeatTime=00:05:00&UsersFilterIn1Forma=false&TCCommentOnEpChange=true&OneCCredentialType=Basic

Проверьте настройки.

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

Установка и администрирование модуля интеграции с 1С

Настройка синхронизации ДП «Таблица»

Журналы действий и ошибок

Содержание:

1.       Рекомендации по синхронизации данных в 1С

2.       Предупреждение при синхронизации данных в 1С 8.3

3.       Ошибки синхронизации в 1С   

1.       Рекомендации о синхронизации данных в 1С

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

ВАЖНО! Рекомендуется проводить синхронизацию данных в 1С 8.3 не в рабочее время пользователей, так как синхронизация с большим объёмом данных может существенно замедлить быстродействие выполняемых операций в базе (формирование отчетов, проведение или запись документов и т.д.)

После выполнения синхронизации в ручном режиме программа сразу выдаст информацию о том, с какими результатами завершился процесс синхронизации данных в программе. (Рис. 1).

Рис. 1 Результата синхронизации данных в 1С 8.3

Чтобы отследить ошибку при автоматической синхронизации в журнале регистрации достаточно задать нужные отборы (Рис. 2). Подробную информацию о том, какие ошибки возникли при отправке и получении данных, можно посмотреть в журнале регистрации (Перейти в журнал регистрации).

Рис. 2 Ошибки при автоматической синхронизации  

2.       Предупреждение при синхронизации данных в 1С 8.3

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

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

Рис. 3 Настройки синхронизации данных

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

Рис. 4 Заполнение реквизитов организации для корректной синхронизации в 1С  

3.       Ошибки синхронизации в 1С

Ошибки синхронизации в 1С можно разделить на два типа:

·         связанные с данными, которые участвуют в обмене (документы, справочники);

·         не связанные с данными – вызванные ошибками в релизах конфигурации 1С, обновлением платформы 1С:Предприятие или сбоем подключения к другой базе данных, которая участвует в синхронизации данных 1С.

Первый тип ошибок синхронизации данных обычно возникает в следствии изменения метаданных конфигурации 1С:Предприятие или неправильного заполнения данных информационной базы (доработка, обновление конфигурации базы данных как получателя, так и отправителя). Если в случае предупреждения исправить все можно довольно просто, то если ошибка синхронизации уже произошла, все становится несколько сложнее. Нужно изучить сообщение об ошибки синхронизации и с точностью установить проблемный объект данных или его элемент. В случае доработки – включить этот объект в правила обмена данными между базой приемником и отправителем. Правила синхронизации данных баз для типовых конфигураций 1С:Предприятие поставляются вместе с обновлением и могут динамически изменятся.   

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

Специалист компании «Кодерлайн»

Савицкий Антон

Понравилась статья? Поделить с друзьями:
  • Система мотивации персонала в автомобильном бизнесе
  • Система организации управления гостиничным бизнесом
  • Система управления предприятия ресторанного бизнеса
  • Риэлторские компании рынок аренды жилья презентация
  • Рнкб банк список аккредитованных оценочных компаний