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

План обмена *.НачатьЗапись ☑ 0

Csar

03.06.13

14:37

Всем привет. Проблема с вылетании ошибки:

«{Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(10634)}: Ошибка при вызове метода контекста (НачатьЗапись): Неизвестный получатель»

Пояснение. 1С УПП. Настраиваю односторонний обмен выгрузки данных. Использую ПланОбмена как регистратор изменений для выгрузки измененных документов (конкретных).

Ошибка вылазит на следующем коде:

   ЗаписьXML = Новый ЗаписьXML();

   ЗаписьXML.УстановитьСтроку();

   
   // Создаем новое сообщение

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

       
   ЗаписьСообщения.НачатьЗапись(ЗаписьXML, УзелОбмена);



Параметры НачатьЗапись(ЗаписьXML, УзелОбмена) элементарные — Запись, которая создается в коде перед методом, а также мой УзелОбмена (единственный в базе, больше не создано). Узел отладчиком я проверил — цепляет верно. Но ошибка выдается, причем не понятно что за получатель. У меня односторонний обмен, там получатель не узел, а файл  выгрузки.

1

Csar

03.06.13

14:38

*представленный код находится в модуле объекта УниверсальныйОбменДанными.

2

Csar

03.06.13

14:39

+ (1) помогите, пожалуйста, с решением проблемы.

3

Повелитель

03.06.13

14:48

» (НачатьЗапись): Неизвестный получатель» »

С сервером дружить надо, налей ему 100 грамм в системный блок, сразу зауважает и узнавать начнет.

4

AaNnDdRrEeYy

03.06.13

14:52

(0)>> там получатель не узел, а файл  выгрузки.

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

5

Csar

03.06.13

14:54

(4) так у меня узел корректно подцепляется.

6

acsent

03.06.13

14:55

Получатель — файл  выгрузки ?????

7

Csar

03.06.13

14:58

(6) Получаетля я вообще не вижу! Покажите мне в предоставленном коде, где он?

У

ЗаписьСообщения.НачатьЗапись(ЗаписьXML, УзелОбмена); лишь 2 параметра, один определяется перед этой строкой без указания чего-либо, а второй — мой узел.

У Узла нет Получателя:

УзелОбмена    УИБ82    ПланОбменаСсылка.ОбменЛогистика8_БИБ82_СохраннаяРасписка

ВерсияДанных    «AAAAAAAZUc0=»    Строка

Код    «000000001»    Строка

Наименование    «УИБ82»    Строка

НомерОтправленного    0    Число

НомерПринятого    0    Число

ПометкаУдаления    Ложь    Булево

Ссылка    УИБ82    ПланОбменаСсылка.ОбменЛогистика8_БИБ82_СохраннаяРасписка

8

hhhh

03.06.13

15:00

(7) ну не может твой узел быть получателем. Не парь нам мозг. Создай второй узел, и на него отправляй.

9

Maxus43

03.06.13

15:00

(7) да при чем тут реквизиты то? это свойство каждого элемента, включенного в план обмена

10

Csar

03.06.13

15:09

(8) где вообще указывается получатель?

Мой код следующий:

Номер = ПолучитьНомерПоследнегоПринятого();

   НомерПоследнегоПринятогоПакетаВБП82 = ?(Номер= 0 ИЛИ Номер= 9999999999, 0, Номер-1);

   
   Обработка = Обработки.УниверсальныйОбменДаннымиXML.Создать();

   УзелОбмена = ПланыОбмена.ОбменЛогистика8_БИБ82_СохраннаяРасписка.НайтиПоНаименованию("УИБ82");

   
   Если НомерПоследнегоПринятогоПакетаВБП82 > 0 Тогда

       ПланыОбмена.УдалитьРегистрациюИзменений(УзелОбмена, НомерПоследнегоПринятогоПакетаВБП82);

       ОбъектУзелОбмена = УзелОбмена.ПолучитьОбъект();

       ОбъектУзелОбмена.НомерПринятого = НомерПоследнегоПринятогоПакетаВБП82;

       ОбъектУзелОбмена.Записать();

   КонецЕсли;

   
   //Добиваем номер пакета не значащими нулями

   СтрокаНомера = Строка(УзелОбмена.НомерОтправленного + 1);

   //Убираем лишние символы из строки номера пакета

   СтрокаНомера = СтрЗаменить(СтрокаНомера, Символ(160), "");

   ДлинаКодаТек = СтрДлина(СтрокаНомера);

   Для к=1 по (ДлинаКодаПакета-ДлинаКодаТек) Цикл

       СтрокаНомера = "0"+ СтрокаНомера;

   КонецЦикла;

   
   Обработка.ИмяФайлаОбмена = ПутьОбмена + СтрЗаменить(МаскаФайловВыгрузки,"*",СтрокаНомера);

   Обработка.ИмяФайлаПравилОбмена = ИмяФайлаПравилОбмена;

   Обработка.ЗагрузитьПравилаОбмена(Обработка.ИмяФайлаПравилОбмена);

   УстановитьУзелОбменаУСтрокДерева(Обработка.ТаблицаПравилВыгрузки.Строки, УзелОбмена.Ссылка);

   Обработка.ВыполнитьВыгрузку();

   
   ОбъектУзелОбмена.НомерОтправленного = УзелОбмена.НомерОтправленного + 1;

   ОбъектУзелОбмена.Записать();

На строке «Обработка.ВыполнитьВыгрузку();» программа уходит в модуль стандартной обработки.

11

AaNnDdRrEeYy

03.06.13

15:10

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

12

AaNnDdRrEeYy

03.06.13

15:13

(10)вот тут

УзелОбмена = ПланыОбмена.ОбменЛогистика8_БИБ82_СохраннаяРасписка.НайтиПоНаименованию(«УИБ82»);

вместо УИБ82 должен быть код второго переферийного узла

13

AaNnDdRrEeYy

03.06.13

15:15

+ и у плана обмена должна стоять галка «Распределенная ИБ» что то вроде такого.

14

Maxus43

03.06.13

15:17

(13) не, эта галка влияет будет ли ездить конфа. к регистрации элементов отношения не имеет

15

Csar

03.06.13

15:20

(12) Спасибо, по крайней мере ошибка ушла. Буду дальше разбираться с этим планом обмена.

16

Maxus43

03.06.13

15:36

(15) для начала разберись что это вобще такое. Получате, отправители, узлы… Метод заменил отправителя и заработало — совсем экстремальный

Автор ruslansat, 21 янв 2016, 14:47

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

Здравствуйте При выгрузке данных для синхронизации из УТ выдает ошибку
{Обработка.КонвертацияОбъектовИнформационныхБаз.МодульОбъекта(14857)}: Ошибка при вызове метода контекста (НачатьЗапись)
ЗаписьСообщения.НачатьЗапись(ЗаписьXML, УзелДляОбмена);
по причине:
Не удалось заблокировать запись. Действие (изменение, удаление или блокировка записи) не выполнено.
Ошибка блокировки объекта. Объект уже заблокирован:
компьютер: WORK-ПК, пользователь: Администратор, сеанс: 6, начат: 21.01.2016 в 16:20:22, приложение: Тонкий клиент

В обратном направлении все нормально принимает данные из бухи.В чем проблема и как её решать?


Смотрите в журнале регистрации что за объект заблокирован. Пользователи в момент проб работают? Попробуйте всех выгнать.

Если я Вам помог, нажми — Спасибо!


В базе никого нет кроме адмнистратора:(

Добавлено: 22 янв 2016, 09:39


В журнале регистрайии еще пишет
маг.Инесса в справочнике контрагентов нет
Ошибка в обработчике события ПослеВыгрузкиОбъекта
   ПВД                    =  Контрагенты
   Объект                 =  маг.Инесса  (Справочник объект: Контрагенты)
   Обработчик             =  ПослеВыгрузкиОбъектаВыборки
   ОписаниеОшибки         =  Ошибка при вызове метода контекста (Вставить): Задано неправильное имя атрибута структуры
   ПозицияМодуля          =  ОбщийМодуль.УправлениеКонтактнойИнформациейКлиентСервер.Модуль(711)
   КСообщенияОбОшибках    =  34


1. ут какая?
2. какие правила обмена данными используются? типовые?
3. что за «маг.Инесса»? — контрагент? пишет, же, что нет в справочнике контрагентов.


Всем привет. Проблема с вылетании ошибки: «{Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(10634)}: Ошибка при вызове метода контекста (НачатьЗапись): Неизвестный получатель» Пояснение. 1С УПП. Настраиваю односторонний обмен выгрузки данных. Использую ПланОбмена как регистратор изменений для выгрузки измененных документов (конкретных). Ошибка вылазит на следующем коде: Параметры НачатьЗапись(ЗаписьXML, УзелОбмена) элементарные — Запись, которая создается в коде перед методом, а также мой УзелОбмена (единственный в базе, больше не создано). Узел отладчиком я проверил — цепляет верно. Но ошибка выдается, причем не понятно что за получатель. У меня односторонний обмен, там получатель не узел, а файл  выгрузки.

*представленный код находится в модуле объекта УниверсальныйОбменДанными.

+ помогите, пожалуйста, с решением проблемы.

» (НачатьЗапись): Неизвестный получатель» » С сервером дружить надо, налей ему 100 грамм в системный блок, сразу зауважает и узнавать начнет.

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

так у меня узел корректно подцепляется.

Получатель — файл  выгрузки ?????

Получаетля я вообще не вижу! Покажите мне в предоставленном коде, где он? У лишь 2 параметра, один определяется перед этой строкой без указания чего-либо, а второй — мой узел. У Узла нет Получателя: УзелОбмена    УИБ82    ПланОбменаСсылка.ОбменЛогистика8_БИБ82_СохраннаяРасписка ВерсияДанных    «AAAAAAAZUc0=»    Строка Код    «000000001»    Строка НомерПринятого    0    Число ПометкаУдаления    Ложь    Булево Ссылка    УИБ82    ПланОбменаСсылка.ОбменЛогистика8_БИБ82_СохраннаяРасписка

ну не может твой узел быть получателем. Не парь нам мозг. Создай второй узел, и на него отправляй.

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

где вообще указывается получатель? Мой код следующий: На строке «Обработка.ВыполнитьВыгрузку;» программа уходит в модуль стандартной обработки.

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

вместо УИБ82 должен быть код второго переферийного узла

+ и у плана обмена должна стоять галка «Распределенная ИБ» что то вроде такого.

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

Спасибо, по крайней мере ошибка ушла. Буду дальше разбираться с этим планом обмена.

для начала разберись что это вобще такое. Получате, отправители, узлы… Метод заменил отправителя и заработало — совсем экстремальный

Тэги: 1С 8

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

После переноса базы на 64 разрядный сервер
При запуске обмена с удаленными подразделениями
возникает ошибка при запуске Обмена(загрузке/ выгрузке)
загрузка проходит нормально
а при выгрузке в этом же сеансе возникает ошибка:

модуль одОбменДанными
Функция ЗаписатьСообщениеОбменаНаКлиенте
ЗаписьСообщения.НачатьЗапись(ЗаписьXML, УзелОбмена);

20:56:08 11.12 Ошибка записи сообщения. Попытка № 0 : Ошибка при вызове метода контекста (НачатьЗапись)
20:58:03 11.12 Ошибка записи сообщения. Попытка № 1 : Ошибка при вызове метода контекста (НачатьЗапись)
20:58:04 11.12 Ошибка записи сообщения. Попытка № 2 : Ошибка при вызове метода контекста (НачатьЗапись)

Если перезапустить сеанс 1с, то выгрузка проходит. Но одновременно загрузка/ выгрузка выдает ошибку.
КАК можно поправить эту ошибку ???

Стоит
1С:Предприятие 8.2 (8.2.13.202)
Альфа-Авто: Автосалон+Автосервис+Автозапчасти. Редакция 4.1 (4.1.01.22)
2008 сервак 64 разрядный
2005 sql

  • Главная
  •  — 
  • Форум
  •  — 
  • ТЕХПОДДЕРЖКА
  •  — 
  • ЭКСЕЛОН — Загрузка в 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

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

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

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

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

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

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

Всего тем: 846

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

Интересное по теме:

  • 1с ошибка при вызове метода контекста найтипореквизиту
  • 1с ошибка файл базы данных поврежден 1cv8tmp 1cd
  • 1с ошибка удаления сеанса ошибка операции администрирования
  • 1с ошибка установлен безопасный режим выполнение операции запрещено
  • 1с ошибка установки соединения ожидается возможность запуска

  • Добавить комментарий

    ;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: