Вход | Регистрация


1С:Предприятие ::

Метки: 

Ошибка при обмене.

Я
   cons74
 
18.12.17 - 15:52
Есть типововой код. УПП.
Функция ВерсияИБ(Знач ИдентификаторБиблиотеки) Экспорт
    
    Запрос = Новый Запрос(
        "ВЫБРАТЬ
        |    ВерсииПодсистем.Версия КАК Версия
        |ИЗ
        |    РегистрСведений.ВерсииПодсистем КАК ВерсииПодсистем
        |ГДЕ
        |    ВерсииПодсистем.ИмяПодсистемы = &ИмяПодсистемы");
    Запрос.Параметры.Вставить("ИмяПодсистемы", ИдентификаторБиблиотеки);
    ТаблицаЗначений = Запрос.Выполнить().Выгрузить();
    Результат = "";
    Если ТаблицаЗначений.Количество() > 0 Тогда
        Результат = СокрЛП(ТаблицаЗначений[0].Версия);
    КонецЕсли;
    Возврат ?(ПустаяСтрока(Результат), "0.0.0.0", Результат);
    
КонецФункции

При старте системы он выполняется без проблем. При запуске обмена - ошибка времени выполнения, хотя и там и там один и тот же параметр. Да и даже если б запрос не находил записей в регистре - ошибки бы не было.
 
 
   Cyberhawk
 
1 - 18.12.17 - 16:07
"ошибка времени выполнения" // Показывай своего дружка
   cons74
 
2 - 18.12.17 - 16:12
   vde69
 
Модератор
3 - 18.12.17 - 16:14
(2) бан за код на картинке
   vde69
 
Модератор
4 - 18.12.17 - 16:15
код на картинке = вандализм
   Cyberhawk
 
5 - 18.12.17 - 17:29
Если картинка в ворде и все это в архиве - тоже бан :)
   Cyberhawk
 
6 - 18.12.17 - 17:29
Прав на регистр может нет у пользователя фонового задания
   cons74
 
7 - 10.01.18 - 15:29
Выполняю под собой. У меня - полные права.
   cons74
 
8 - 10.01.18 - 15:51
Пишет "в данной транзакции уже происходили ошибки".
   hhhh
 
9 - 10.01.18 - 17:02
(7) там не всё под тобой. Многие операции не под тобой выполняются.
   dezss
 
10 - 10.01.18 - 17:30
кэш?
 
 Рекламное место пустует
   cons74
 
11 - 11.01.18 - 12:48
(9) ЖР выводит записи только под моим пользователем
(10) чистил, даже ТИИ запускал (без флагов)
   Serg_1960
 
12 - 11.01.18 - 13:08
"в данной транзакции уже происходили ошибки" - у Вас обмен идет в рамках единой транзакции? Если "да" тогда не стоит удивляться тому, что ошибка может быть регистрироваться позже, при последующем нормальном обращении к базе.
Сложно сказал?
   cons74
 
13 - 11.01.18 - 13:30
(12)"Единую транзакцию" нигде принудительно не включал.
   Serg_1960
 
14 - 11.01.18 - 17:47
(13) В типовых конфигурациях она сама автоматически используется "по умолчанию" при обменах. Также, как и при проведении документов, записи элементов справочников и наборов регистров.
   cons74
 
15 - 12.01.18 - 06:30
(14) это мне известно. Но теперь стало не понятно что имели в (12) в виду под "ошибка может быть регистрироваться позже, при последующем нормальном обращении к базе"
   cons74
 
16 - 12.01.18 - 10:02
Как отловить первоначальную ошибку?
   PiotrLoginov
 
17 - 12.01.18 - 10:33
(16)  проверить (7), проверить значение ИдентификаторБиблиотеки.

+ Выполнить сбор уведомлений и ошибок после того, как сработает исключение (?)
   cons74
 
18 - 12.01.18 - 12:25
(17) проверено все. ОписаниеОшибки одно - и оно указано выше: ошибка времени выполнения.
   Serg_1960
 
19 - 12.01.18 - 13:12
Не знаю кто как, а я уже привык к тому, что платформа часто промахивается и неверно сообщает о первопричине возникшей ошибки.

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

(18) В настройке обмена уже указано обрабатывать один объект в одной транзакции? А Вы, кстати, так и не уточнили что за обмен и где и как он вызывается :(
   cons74
 
20 - 12.01.18 - 13:34
(19) да, похоже на "в рамках Попытка-Исключение-КонецПопытки, не обрабатываться там и тогда первый же последующий запрос к данным выдаст ошибку исполнения"
Обмен - БСП-шный. ERP-УПП. В УПП создал новый план обмена, узлы обмена, настройку обмена. Создал правила. Ошибка возникает при попытке загрузить документ РТУ.
   hhhh
 
21 - 12.01.18 - 13:44
(20) попробуйте везде наставить в правилах Сообщить(), чтобы понять где ошибка.  В каком конкретном месте правил. А также можно копробовать задать в обработке обмена количество элементов в транзакции = 1.
   cons74
 
22 - 15.01.18 - 09:54
Через обработку Универсальный Обмен Данными (V8Exchan82) тот же файл обмена грузится, правда с ошибкой в начале:
   Ошибка формата файла обмена
   ИмяУзла                =  ДанныеПоОбмену
Но документ загружает.
   MrCoffin
 
23 - 15.01.18 - 10:02
Включи "Остановка по ошибке" и запасись терпением.
   cons74
 
24 - 15.01.18 - 10:10
В общем, ошибки наблюдаются если есть данные в ТЧ.
   cons74
 
25 - 15.01.18 - 10:11
По этой же причине решил перейти со связки "БСПшный обмен в ERP - неБСПшный в УПП", в старом обмене были документы без ТЧ.
   cons74
 
26 - 15.01.18 - 14:20
Найдена гадина!
Попытка в попытке. В правилах было
Попытка
    Объект.Записать(РежимЗаписиДокумента.Проведение);
Исключение
    Объект.Проведен = Ложь;
    Сообщить("Документ: " + Объект + " не проведен. Ошибка ПКО: РТУ-ПослеЗагрузки");
КонецПопытки;

Хотя в другом обмене вроде-бы работало без проблем...
   Cyberhawk
 
27 - 22.01.18 - 09:30
(26) Вот поэтому отложенное проведение и было придумано (чтобы быстрее все просто записывалось в базу и чтоб какая-нибудь ошибка проведения не влияла на всю загрузку). Кстати есть сторонние решения, где реализован пропуск таких ошибочных объектов (обмен не прерывается если что-то не может записаться).



Список тем форума
Рекламное место пустует Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует