Ошибка при вызове метода контекста закончитьчтение

8.2.17.157

___________

Простенькая конфа из одного справочника. Если обмениваться вручную, т.е. операции — планы обмена — .. — иконка «Прочитать изменения»/»Сохранить изменения» — всё ок (ну ещё бы).

___________

Теперь нужна обработка, чтобы по кнопке происходило тоже самое, что и по «типовой платформенной».

_

Сделал по кнопке такой код:

<code>

ЧтениеXML = Новый ЧтениеXML();

    ЧтениеXML.ОткрытьФайл(ИмяФайлаСообщения);

    ЧтениеСообщения = ПланыОбмена.СоздатьЧтениеСообщения();

    ЧтениеСообщения.НачатьЧтение(ЧтениеXML);

    ПланыОбмена.УдалитьРегистрациюИзменений(ЧтениеСообщения.Отправитель,           ЧтениеСообщения.НомерПринятого);

    Отправитель = ЧтениеСообщения.Отправитель;

    //Главный = Отправитель.Главный;

    Пока ВозможностьЧтенияXML(ЧтениеXML) Цикл

        Данные = ПрочитатьXML(ЧтениеXML);

        Если

            //Главный

            //ИЛИ

            (Не ПланыОбмена.ИзменениеЗарегистрировано(Отправитель, Данные)) Тогда

            Данные.ОбменДанными.Отправитель = ЧтениеСообщения.Отправитель;

            Данные.ОбменДанными.Загрузка = Истина;

            Данные.Записать();

        КонецЕсли;

    КонецЦикла;

    ЧтениеСообщения.ЗакончитьЧтение()

</code>

Ругательство следующее:

{Форма.Форма.Форма(21)}: Ошибка при вызове метода контекста (ЗакончитьЧтение)

    ЧтениеСообщения.ЗакончитьЧтение()

по причине:

Неправильный формат сообщения

Никто не сталкивался?(с)

8.2.17.157

___________

Простенькая конфа из одного справочника. Если обмениваться вручную, т.е. операции — планы обмена — .. — иконка «Прочитать изменения»/»Сохранить изменения» — всё ок (ну ещё бы).

___________

Теперь нужна обработка, чтобы по кнопке происходило тоже самое, что и по «типовой платформенной».

_

Сделал по кнопке такой код:

<code>

ЧтениеXML = Новый ЧтениеXML();

    ЧтениеXML.ОткрытьФайл(ИмяФайлаСообщения);

    ЧтениеСообщения = ПланыОбмена.СоздатьЧтениеСообщения();

    ЧтениеСообщения.НачатьЧтение(ЧтениеXML);

    ПланыОбмена.УдалитьРегистрациюИзменений(ЧтениеСообщения.Отправитель,           ЧтениеСообщения.НомерПринятого);

    Отправитель = ЧтениеСообщения.Отправитель;

    //Главный = Отправитель.Главный;

    Пока ВозможностьЧтенияXML(ЧтениеXML) Цикл

        Данные = ПрочитатьXML(ЧтениеXML);

        Если

            //Главный

            //ИЛИ

            (Не ПланыОбмена.ИзменениеЗарегистрировано(Отправитель, Данные)) Тогда

            Данные.ОбменДанными.Отправитель = ЧтениеСообщения.Отправитель;

            Данные.ОбменДанными.Загрузка = Истина;

            Данные.Записать();

        КонецЕсли;

    КонецЦикла;

    ЧтениеСообщения.ЗакончитьЧтение()

</code>

Ругательство следующее:

{Форма.Форма.Форма(21)}: Ошибка при вызове метода контекста (ЗакончитьЧтение)

    ЧтениеСообщения.ЗакончитьЧтение()

по причине:

Неправильный формат сообщения

Никто не сталкивался?(с)

В данном случае речь не об УРИБ, а о простом плане обмена. Нужно принять сообщение и обработать его. Нашел в книге «Простые примеры разработки» пример на эту тему. Сделал, ну я бы сказал на 100% как там. Сообщение прнимается, но метод ЗакончитьЧтение выдает такое сообщение: Неправильный формат файла обмена. Данные все принимаются, нареканий нет, но вот такя штука напрягает :). Привожу фрамент кода: (заодно с процедурой записи сообщения) Процедура ДействияФормыВыгрузитьДанные(Кнопка)

UP! Кто-нибудь занимался не УРИБовскими планами обмена??? Очень надо. В урибе есть стандартные функции ПрочитатьИзменения, записатьИзменения. Там с чтением сообщений проблем нет, а вот в моем случае выдает ошибку, хотя все и читает. Это настораживает.

В том то и оно, что в этом плане обмена не стоит галочка распределенная база. С распределенкой у меня все работает.

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

ОК, попробую. Сообщу чуть позже.

Единственно, тчо сделал, добавил строчку: ЗаписатьОбъявлениеXML. Добавляется заголовок в файл из одной строки. Все равно ругань: Ошибка при вызове метода контекста (ЗакончитьЧтение): Неправильный формат сообщения Вообще, когда эта ошибка возникает? Сообщение читается нормально вплоть до метода ЗакончитьЧтение.

Хорошо. Перефразирую вопос. У кого возникала ошибка «неправильный формат сообщения» при использовании метода ЗакончитьЧтение и кто как с этим боролся???

Тэги:

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

Страница 1 из 2

  1. Во время обмена данными не происходит загрузка, только выгрузка данных. Ошибка такого характера:Как я понимаю слетает нумерация сообщений, но все время под одним пользователем проводим обмен…. Что делать в данной ситуации?

  2. В «регистрации изменений обмена» нашел изменить номера сообщений, но какой номер поставить хз, так как не нашел где весь порядок номеров посмотреть…..

  3. Offline

    DMLangepas
    Опытный в 1С

    Регистрация:
    26 апр 2012
    Сообщения:
    191
    Симпатии:
    1
    Баллы:
    29

    протестируйте базы и попробуйте заново выгрузить и загрузить.
    Попробовать использовать Конвертацию данных

  4. Offline

    materiy_boec
    Опытный в 1С

    Регистрация:
    23 май 2012
    Сообщения:
    186
    Симпатии:
    0
    Баллы:
    26

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

  5. Offline

    Vlad
    Модераторы
    Команда форума
    Модератор

    Регистрация:
    16 авг 2006
    Сообщения:
    3.519
    Симпатии:
    20
    Баллы:
    29

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

  6. У нас обмен руками…Обработку видел такую скачать не смог, скиньте пожалуйста на почту…
    Пример номеров сообщений: там где я нашел только за последний сеанс номера, так я понял: 62 отправленные — 95 принятые

  7. Offline

    yadarit

    Регистрация:
    16 май 2012
    Сообщения:
    7
    Симпатии:
    0
    Баллы:
    1

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

  8. Offline

    alitvin

    Регистрация:
    14 июл 2011
    Сообщения:
    43
    Симпатии:
    0
    Баллы:
    1

    Ребят, обнулите номера сообщений на обеих сторонах. 100% поможет. У самого РИБ крутится на 4 удаленки. Так же можно попробовать ставить номера либо на 1 больше , либо на 1 меньше. Так же проверьте наличие галочки «Загружать только изменения» если она стоит, то возможно что программа нормально работает, просто в пакете выгрузки ничего нового нет.

  9. Offline

    videomause
    Опытный в 1С

    Регистрация:
    14 янв 2011
    Сообщения:
    326
    Симпатии:
    7
    Баллы:
    29

    А как обнулить номера сообщений?!

  10. Offline

    materiy_boec
    Опытный в 1С

    Регистрация:
    23 май 2012
    Сообщения:
    186
    Симпатии:
    0
    Баллы:
    26

    Обработка есть на инфостарте для работы с планами обмена, ее надо скачать.

  11. Offline

    x_under
    Модераторы
    Команда форума
    Модератор

    Регистрация:
    25 апр 2007
    Сообщения:
    2.576
    Симпатии:
    16
    Баллы:
    29

    Операции — Планы обменов — Выбираете нужный вид…
    А далее как на картинке

    Вложения:

    • Безымянный.png

  12. где найти файл обмена не подскажите? или формат файла…

    P.S>Обнулил номера, но только в своей базе, после этого обмен вроде проходит, по крайней мере после обмена показывает что все успешно. Но надо 2 раза в день обмен проводить, а вечером меня нет, смотрю у бухов вечером не идет с той же ошибкой. Следовательно обнулять номера сообщений вечером не пробовал…
    Обнулить на двух базах наврятли выйдет… Лучший вариант узнать какие номера поставить… Так что тема ещё актуальна и однозначного ответа я не нашел, не считая обнуления на двух базах…

  13. Offline

    Vlad
    Модераторы
    Команда форума
    Модератор

    Регистрация:
    16 авг 2006
    Сообщения:
    3.519
    Симпатии:
    20
    Баллы:
    29

    Надо в базе-получателе в полученном сообщении поставить номер на 1 меньше, чем номер отправленного сообщения в базе-отправителе.

  14. а как узнать какой номер в базе-отправителе?

  15. Offline

    mialord
    Модераторы
    Команда форума
    Модератор

    Регистрация:
    31 июл 2009
    Сообщения:
    5.460
    Симпатии:
    53
    Баллы:
    54

    Читайте сообщение от x_under и не надо никаких обработок с говностарта. Все реализовано в типовой, научитесь пользоваться и будет Вам счастье

  16. Да я уже нашел где менять номера, и писал, что могу только у себя поменять… Так как неизвестно какие номера выставить, то просто обнулил и в итоге, как я опять же уже писал, с утра обмен идет нормально, вечером та же ошибка…

  17. Offline

    mialord
    Модераторы
    Команда форума
    Модератор

    Регистрация:
    31 июл 2009
    Сообщения:
    5.460
    Симпатии:
    53
    Баллы:
    54

    После изменения номерации удалите отправленные файлы обмена, если обмен идет через файлы, то там уже написан номер, программа при получении его перепишет и это будет не Ваш порядковый номер

  18. Offline

    x_under
    Модераторы
    Команда форума
    Модератор

    Регистрация:
    25 апр 2007
    Сообщения:
    2.576
    Симпатии:
    16
    Баллы:
    29

    База источник:
    Номер отправленного 5
    Номер принятого 3

    База приемник:
    Номер отправленного 3
    Номер принятого 5

    Все с точностью до наоборот в номерах должно быть.

  19. Offline

    Andros

    Регистрация:
    2 окт 2013
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1

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

    заранее спасибо за ответ

  20. Offline

    nickpugachev
    Профессионал в 1С
    Команда форума

    Регистрация:
    28 май 2012
    Сообщения:
    3.397
    Симпатии:
    156
    Баллы:
    104

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

Страница 1 из 2

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

Исправляем ситуацию

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

Рассмотрим действия разработчика на примере со специально допущенной ошибкой. Мы запускаем на исполнение нижеприведенный кусок кода с запросом, в котором забыли дописать условие отбора. Компилятор 1С пропускает такую процедуру, так как орфографических ошибок в написании команд мы не допустили. Однако в режиме предприятия нас ждет такое сообщение об ошибке:


	 Запрос = Новый Запрос;
	 Запрос.Текст =
	         "ВЫБРАТЬ
	          |        Номенклатура.Ссылка КАК Ссылка,
	          |        Номенклатура.ВерсияДанных КАК ВерсияДанных,
	          |        Номенклатура.ПометкаУдаления КАК ПометкаУдаления,
	          |        Номенклатура.Родитель КАК Родитель,
	          |        Номенклатура.ЭтоГруппа КАК ЭтоГруппа,
	          |        Номенклатура.Код КАК Код,
	          |        Номенклатура.Наименование КАК Наименование,
	          |        Номенклатура.Артикул КАК Артикул,
	          |        Номенклатура.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
	          |        Номенклатура.ТипНоменклатуры КАК ТипНоменклатуры,
	          |        Номенклатура.Предопределенный КАК Предопределенный,
	          |        Номенклатура.ИмяПредопределенныхДанных КАК ИмяПредопределенныхДанных
	          |ИЗ
	          |        Справочник.Номенклатура КАК Номенклатура
	          |ГДЕ
	          |         ";
	 РезультатЗапроса = Запрос.Выполнить();
	 ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	 Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
	 КонецЦикла;

Рис.1 Запускаем на исполнение нижеприведенный кусок кода с запросом, в котором забыли дописать условие отбора

Рис.1 Запускаем на исполнение нижеприведенный кусок кода с запросом, в котором забыли дописать условие отбора

Приведенный текст ошибки программисту 1С скажет, что в модуле формы обработки «ЧтениеЗаписьXML на 152 строчке кода не может выполниться запрос. Причина в том, что на 17 строчке запроса нет чего-то, что ждал компилятор. Таким образом, чтобы убрать подобное сообщение, необходимо выяснить, что там должно быть и написать недостающий код.

Увидев вышеприведенный кусок кода, разработчик заметит, что в запросе есть служебное слово «ГДЕ», дающее сигнал 1С, что дальше будет условие. Но мы забыли дописать его и, естественно, система с помощью сообщения об ошибке спрашивает нас – «а где условие?». Чтобы исправить эту ситуацию необходимо либо убрать оператор «ГДЕ» из запроса, либо добавить условие.

Но ошибки могут быть не только в текстах запросов. Допустим, мы хотим выбрать всю номенклатуру и узнать, входит ли она в определенную группу. Проверка происходит с помощью метода «ПринадлежитЭлементу» и его параметра, который должен быть типа СправочникСсылка. Мы опять допускаем ошибку и вместо ссылки в параметр метода помещаем строку, содержащую имя переменной.


	 Запрос = Новый Запрос;
	            Запрос.Текст =
	                       "ВЫБРАТЬ
	                        |          Номенклатура.Ссылка КАК Ссылка,
	                        |          Номенклатура.ВерсияДанных КАК ВерсияДанных,
	                        |          Номенклатура.ПометкаУдаления КАК ПометкаУдаления,
	                        |          Номенклатура.Родитель КАК Родитель,
	                        |          Номенклатура.ЭтоГруппа КАК ЭтоГруппа,
	                        |          Номенклатура.Код КАК Код,
	                        |          Номенклатура.Наименование КАК Наименование,
	                        |          Номенклатура.Артикул КАК Артикул,
	                        |          Номенклатура.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
	                        |          Номенклатура.ТипНоменклатуры КАК ТипНоменклатуры,
	                        |          Номенклатура.Предопределенный КАК Предопределенный,
	                        |          Номенклатура.ИмяПредопределенныхДанных КАК ИмяПредопределенныхДанных
	                        |ИЗ
	                        |          Справочник.Номенклатура КАК Номенклатура
	                        |ГДЕ
	                        |          НЕ Номенклатура.ЭтоГруппа ";
	 НужнаяГруппаЭлементов = Справочники.Номенклатура.НайтиПоНаименованию("Мебель");
	 РезультатЗапроса = Запрос.Выполнить();
	 ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	 Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
	 Сообщить(ВыборкаДетальныеЗаписи.Ссылка.ПринадлежитЭлементу("НужнаяГруппаЭлементов"));
	 КонецЦикла;

Рис.2 Мы опять допускаем ошибку и вместо ссылки в параметр метода помещаем строку, содержащую имя переменной

Рис.2 Мы опять допускаем ошибку и вместо ссылки в параметр метода помещаем строку, содержащую имя переменной

1С выдает настолько же информативное сообщение, из которого мы понимаем, что на 158 строке у 1 параметра неправильный тип. Но что же делать, если мы не знаем, какой тип должен быть? В этом нам поможет Синтакс-помощник, встроенный в платформу 1С.

Рис.3 Синтакс-помощник

Рис.3 Синтакс-помощник

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

Рис.4 Сверив пример с нашим кодом, приходит понимание, что кавычки не нужны и без них все работает

Рис.4 Сверив пример с нашим кодом, приходит понимание, что кавычки не нужны и без них все работает

Чаще всего причиной подобных ошибок выступают следующие факторы:

  1. Невнимательность;
  2. Отсутствие опыта или знаний;
  3. Несогласованность действий разработчиков друг с другом;
  4. Изменения в методах контекста в новых версиях платформы.

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

1

2

Показывать по
10
20
40
сообщений

Новая тема

Ответить

EL Khan

Дата регистрации: 10.02.2012
Сообщений: 92

Доброе время суток. Помогите пожалуйста, нужно добавить в правила обмена новые документы. При обмене между кассой и основной базой из документов передаются только «ЧекиККМ», «ОтчетОРозничныхПродажах». Хочу добавить «ПоступлениеТоваров» и «РеализацияТоваров». Где эти правила изменяются, как добавлять новые?

VVP

Дата регистрации: 12.10.2006
Сообщений: 4950

Для начала хоть конфигурации озвучьте.

EL Khan

Дата регистрации: 10.02.2012
Сообщений: 92

Конфигурация «Розница». а другую базу (или другие) создается внутри этой базы с помощью обработчика «Распределенная ИБ по кассам». после настройки обмена в созданной базе при вводе нового документа «Поступление товаров» после обмена эти данные не попадают в главный узель

Vovan1975

Дата регистрации: 25.01.2010
Сообщений: 125

позовите лучше программиста…

EL Khan

Дата регистрации: 10.02.2012
Сообщений: 92

спасибо за совет. я уже начал создавать правила на КД. просто нужно по быстрому изменить стандартные настройки создания правил, а не писать все с 0.

VVP

Дата регистрации: 12.10.2006
Сообщений: 4950

> спасибо за совет. я уже начал создавать правила на КД. просто нужно по быстрому изменить стандартные настройки создания правил, а не писать все с 0.<br>Тогда выгрузи правила из обработки и загрузи их в КД и там редактируй.

EL Khan

Дата регистрации: 10.02.2012
Сообщений: 92

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

VVP

Дата регистрации: 12.10.2006
Сообщений: 4950

Что показывает в служебном сообщении, и кто «она пустая»?

EL Khan

Дата регистрации: 10.02.2012
Сообщений: 92

вот что показывает служебное сообшение:<br><br>Проверка основного обмена<br><br>Есть в плане обмена, но нет в правиле выгрузки: ============================================================­=============<br>Документ: ОтчетОРозничныхПродажахДокумент: ЧекККМПлан видов характеристик: НазначенияСвойствКатегорийОбъектовПлан видов характеристик: НастройкиПользователейПлан видов характеристик: ПраваПользователейПлан видов характеристик: СвойстваОбъектовПлан видов характеристик: ТипыШтрихкодовРегистр накопления: ДенежныеСредстваРегистр накопления: ПродажиПоДисконтнымКартамРегистр накопления: ПродажиПоПлатежнымКартамРегистр сведений: ГраницыЗапретаИзмененияДанныхРегистр сведений: ДвиженияСерийныхНомеровРегистр сведений: ДействиеСкидокНаценокРегистр сведений: ЗначенияДополнительныхПравПользователяРегистр сведений: ЗначенияСвойствОбъектовРегистр сведений: ИнформативныеОстаткиТоваровПоМагазинамРегистр сведений: ИнформативныеОстаткиТоваровПоСкладамРегистр сведений: КатегорииОбъектовРегистр сведений: КодыТоваровPLUРегистр сведений: КомплектующиеНоменклатурыРегистр сведений: КонтактнаяИнформацияРегистр сведений: НазначенияСвойствОбъектовРегистр сведений: НастройкиПользователейРегистр сведений: НастройкиУчетныхЗаписейПользователейРегистр сведений: НоменклатураСегментаРегистр сведений: ОбъектыЗапрещенныеДляРедактированияРегистр сведений: ОтветственныеЛицаОрганизацийРегистр сведений: ПаспортныеДанныеФизЛицРегистр сведений: ПрефиксыИнформационныхБазРегистр сведений: СистемыНалогообложенияРегистр сведений: СкладыРеализацииРегистр сведений: СтратегииРедактированияНомеровОбъектовРегистр сведений: УдалитьВремяДействияСкидокРегистр сведений: УдалитьПорогиНакопительныхСкидокРегистр сведений: УдалитьСкидкиНаценкиНоменклатурыРегистр сведений: ФИОФизЛицРегистр сведений: ФорматыЗаписиКодовМагнитныхКартРегистр сведений: ХранилищаНастроекОбменаУзловКассРегистр сведений: ЦеныНоменклатурыМагазиновРегистр сведений: ШаблоныРегистрацииНовыхКартРегистр сведений: ШтрихкодыСправочник: ВидыДисконтныхКартСправочник: ВидыКонтактнойИнформацииСправочник: ВидыНоменклатурыСправочник: ВидыОплатЧекаККМСправочник: ВнешниеОбработкиСправочник: ГруппыПолучателейСкидкиСправочник: ГруппыПользователейСправочник: ДоговорыЭквайрингаСправочник: ДокументыУдостоверяющиеЛичностьСправочник: ДолжностиОрганизацийСправочник: ЕдиницыИзмеренияСправочник: ЗначенияСвойствОбъектовСправочник: ИнформационныеКартыСправочник: КассыСправочник: КатегорииОбъектовСправочник: КлассификаторЕдиницИзмеренияСправочник: КлассификаторСтранМираСправочник: КонтрагентыСправочник: МагазиныСправочник: НастройкиРМКСправочник: НоменклатураСправочник: НоменклатурныеГруппыСправочник: ОбработкиОбслуживанияТОСправочник: ОрганизацииСправочник: ПользователиСправочник: СегментыНоменклатурыСправочник: СерийныеНомераСправочник: СкидкиНаценкиСправочник: СкладыСправочник: ТипыСкидокНаценокСправочник: ТорговоеОборудованиеСправочник: ТСДФорматыДанныхСправочник: ФизическиеЛицаСправочник: ХарактеристикиНоменклатурыСправочник: ХозяйственныеОперацииСправочник: ХранилищеДополнительнойИнформацииСправочник: ХранилищеШаблонов<br> <br>а когда нажимаю сохранить правила в файл хмл, при открытии ее в конфигураторе она (файл хмл) пустая

EL Khan

Дата регистрации: 10.02.2012
Сообщений: 92

проверяю то что создал с 0 на КД, выдает такую ощибку<br> <br>Ошибка при вызове метода контекста (НачатьЧтение): Неправильный формат сообщения<br>Техническая информация:{ОбщийМодуль.ПроцедурыОбменаДанными(1733)}: Ошибка при вызове метода контекста (НачатьЧтение): Неправильный формат сообщени

Тема: Обмен данными УПП — ЗУП

Комбинированный просмотр

  1. 12.04.2019, 13:16

    #1

    ice_bober вне форума


    Гость форума


    По умолчанию Обмен данными УПП — ЗУП

    Всем привет! Нужно настроить односторонний автоматический обмен между УПП->ЗУП по правилам обмена. Нашел ссылку с описанием на форуме Чистова как это сделать: https://expert.chistov.pro/public/125210/, но не вышло. Использовал типовые полные планы обмена с включением/отключением свойства РИБ, правила обмена сформированы КД 2.1.
    Проблема в следующем, после успешного формирования файла обмена из УПП и при загрузке его в ЗУП получаю ошибку:
    Ошибка при чтении изменений из файла обмена.
    Ошибка при вызове метода контекста (НачатьЧтение): Неправильный формат сообщения.

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


  2. 15.04.2019, 09:11

    #2

    avm3110 вне форума


    Гордость форума PRO


    По умолчанию Re: Обмен данными УПП — ЗУП

    «Тупо» брать чужие правила обмена — как правило безнадежное дело…

    Нужно делать собственные правила «шаг за шагом» (используя при этом чужие правила как подсказку и как пример)


  3. 15.04.2019, 13:58

    #3

    ice_bober вне форума


    Гость форума


    По умолчанию Re: Обмен данными УПП — ЗУП

    уже настроил обмен) проблема же не в правилах, их писал сам. Механизм ЗУП не заточен под обмен с УПП, поэтому пришлось интегрировать его из УПП.


  4. 15.04.2019, 14:14

    #4

    avm3110 вне форума


    Гордость форума PRO


    По умолчанию Re: Обмен данными УПП — ЗУП

    Ой, да ладно.. прекращайте…

    ЗУП штатно обменивается с бухией без вопросов. И соответственно обменивается и с ERP и с УПП.

    Единственные бывают проблемы — это то, что ЗУП 2.5 имел свой план счетов, а ЗУП 3.0 его не имеет. Поэтому сами принципы обмена у «двушки» и «трешки» — разные. но вот механизм и там и там типовой.


Похожие темы

  1. Ответов: 3

    Последнее сообщение: 30.06.2014, 11:36

  2. Ответов: 0

    Последнее сообщение: 19.07.2012, 15:41

  3. Ответов: 0

    Последнее сообщение: 01.02.2012, 14:48

  4. Ответов: 0

    Последнее сообщение: 27.05.2011, 09:31

  5. Ответов: 1

    Последнее сообщение: 14.05.2011, 12:22

Метки этой темы

Социальные закладки

Социальные закладки


Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •  
  • BB коды Вкл.
  • Смайлы Вкл.
  • [IMG] код Вкл.
  • [VIDEO] код Вкл.
  • HTML код Выкл.

Правила форума

Здравствуйте! Ошибка чтения файла сообщения обмена: {Обработка.КонвертацияОбъектовРаспределенныхИнформационныхБаз.МодульОбъекта}: Ошибка при вызове метода контекста (ЗакончитьЧтение): Не удалось записать «Ленина (Узел распределенной информационной базы по магазину)»! Данная ошибка возникает после загрузки файла синхронизации от ГБ (Главная База). Обновление делал отвязкой узла и загрузкой конфигурационного файла ГБ. На 3ех других узлах все хорошо работает. Розница 8.3 Что может быть?

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

Тэги:

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

1C 8.1 ошибка при загрузке файла обмена &quot;Неправильный формат сообщения&quot;?

Обмен из УТ 10.3 в БП 2.0 (8.1), ручной. При нажатии на кнопку «Выполнить загрузку» вылетает ошибка с сообщением:

«Ошибка при вызове метода контекста (НачатьЧтение): Неправильный формат сообщения»

Что это такое? Куда копать? Гугл и Миста внятного ответа на вопрос не дали. Нумерация узлов в порядке.


  • Вопрос задан

    более трёх лет назад

  • 11106 просмотров

1. БП предприятия не может прочитать файл обмена той версии УТ, которая у вас есть. Почитать о совместимости версий УТ<->БП.
2. Одна из конфигураций не типовая и идет попытка прочитать/записать тот реквизит, описания которого нет в шаблоне обмена.
3. Абсурдное — неверный путь до файла обмена. Попробуйте подклчюиться через COM.

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

Пригласить эксперта

Это первый обмен? Или ошибка возникла уже в процессе работы?

1. Выгрузка не от того образа.
2. Выгрузка была с ошибками, но вам об этом не сказали.

НачатьЧтение функция, которая парсит xml файл выгрузки, обычно первое что он проверяет это узел.

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


    • 1 подписчик
    • 01 июн.


    • 35 просмотров

  • Показать ещё
    Загружается…

06 июн. 2023, в 04:00

4500 руб./за проект

06 июн. 2023, в 02:35

800 руб./в час

06 июн. 2023, в 00:15

30000 руб./за проект

Минуточку внимания

  • Главная
  •  — 
  • Форум
  •  — 
  • ТЕХПОДДЕРЖКА
  •  — 
  • ЭКСЕЛОН — Загрузка в 1С из EXCEL
  •  — 
  • Ошибка при вызове метода контекста (Записать)
 

Вчера заметил, что перестали обновляется цены, проверил выгрузку и обнаружил что часть номенклатуры не записывается.
Возможно это как то связано с переходом на 1с 11.5
Сегодня обновил модуль проблема осталась

Номенклатура_СоздатьОбновить 020: {ВнешняяОбработка.APPLIX_RU_ЗагрузкаИзExcel_ЗМ.МодульОбъекта(70081)}: Ошибка при вызове метода контекста (Записать): Ошибка при выполнении обработчика — ‘ПередЗаписью’: {Справочник.Номенклатура.МодульМенеджера(2911)}: Преобразование значения к типу Булево не может быть выполнено

 

Ошибка при попытке обновить номенклатуру

 

1С:Предприятие 8.3 (8.3.20.1674)
Управление торговлей, редакция 11 (11.5.7.336)
модуль загрузки 16.5.8

Прикрепленные файлы

 

Модуль создал номенклатуру, теперь ее невозможно открыть

ТекстыЗапросов = Новый Массив;
ПараметрыЗапроса = Новый Структура;

ИменаОбъектовМетаданных = Новый Массив;

Для Каждого СсылкиПоТипу Из СсылкиПоТипам Цикл
Тип = СсылкиПоТипу.Ключ;
ОбъектМетаданных = Метаданные.НайтиПоТипу(Тип);
Если ОбъектМетаданных = Неопределено Тогда
ВызватьИсключение
НСтр(«ru = ‘Неверный первый параметр Ссылки в функции ОбщегоНазначения.ЗначенияРеквизитовОбъектов:
          |- Значения массива должны быть ссылками'»);
КонецЕсли;

ПолноеИмяОбъектаМетаданных = ОбъектМетаданных.ПолноеИмя();
ИменаОбъектовМетаданных.Добавить(ПолноеИмяОбъектаМетаданных);

Прикрепленные файлы

 

пришлите ваш файл и скриншоты всех настроек колонок

 
 
 

у нас загрузилось нормально

доступ к базе дадите? попробуем на вашей базе отладкой посмотреть что не так

 

Сергей Юданов

Пользователь

Сообщений: 23
Регистрация: 09.04.2019

#9


0
 

30.05.2022 15:03:02

Разобрались сами.

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

ПОСЛЕДНИЕ СООБЩЕНИЯ

Сейчас на форуме (гостей: 52)

Всего зарегистрированных пользователей: 2216

Приняло участие в обсуждении: 366

Всего тем: 821

Понравилась статья? Поделить с друзьями:

Не пропустите эти материалы по теме:

  • Яндекс еда ошибка привязки карты
  • Ошибка при вызове метода контекста send
  • Ошибка при вызове метода контекста загрузить колонку
  • Ошибка при вызове метода контекста select
  • Ошибка при вызове метода контекста save

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии