|
внешний источник, отмена транзакции выдает ошибку "транзакция не активна" | ☑ | ||
---|---|---|---|---|
0
mxs089
09.10.14
✎
15:41
|
пишу обработку, которая читает данные внешнего источника и грузит их в 1с. запись делаю в транзакции:
Попытка ВнешнийИсточник.НачатьТранзакцию(); ... Объект.Записать(); ВнешнийИсточник.ЗафиксироватьТранзакцию(); Исключение ВнешнийИсточник.ОтменитьТранзакцию(); КонецПопытки; на отмене вылетает с ошибкой |
|||
1
mxs089
09.10.14
✎
15:43
|
вылетает после ~20 минут работы, при повторном запуске продолжает работать где то 20 минут и падает на другом объекте с той же ошибкой
|
|||
2
Михаил Козлов
09.10.14
✎
16:01
|
Попробуйте Если ТранзакцияАктивна()
|
|||
3
mxs089
09.10.14
✎
16:20
|
база 1с расположена локальна (файловый вариант), sql на сервере sql. внешний источник ms sql.
|
|||
4
mxs089
09.10.14
✎
16:39
|
ошибка осталась (2)
|
|||
5
mxs089
09.10.14
✎
17:29
|
сделал sql трассировку:
SQL:BatchStarting SET TRANSACTION ISOLATION LEVEL READ COMMITTED 1C:Enterprise 8.3 sa 19316 53 2014-10-09 17:02:22.130 SQL:BatchStarting set implicit_transactions on 1C:Enterprise 8.3 sa 19316 53 2014-10-09 17:02:22.133 SQL:BatchStarting SELECT T1.CODE1, T1.CODE2, T1.FULLNAME, T1.UNIT, T1.LASTDATE, T1."FLAG_LOAD" FROM "dbo"."ST" T1 WHERE T1."CODE1" = 5655 1C:Enterprise 8.3 sa 19316 53 2014-10-09 17:02:22.133 SQL:BatchStarting IF @@TRANCOUNT > 0 ROLLBACK TRAN 1C:Enterprise 8.3 sa 19316 53 2014-10-09 17:02:23.640 SQL:BatchStarting set implicit_transactions off 1C:Enterprise 8.3 sa 19316 53 2014-10-09 17:02:23.987 SQL:BatchStarting SELECT T1.CODE1 FROM "dbo"."ST" T1 WHERE T1.CODE1 = 5655 1C:Enterprise 8.3 sa 19316 53 2014-10-09 17:02:23.987 Audit Logout 1C:Enterprise 8.3 sa 329 7824 0 1201686 19316 53 2014-10-09 16:42:22.440 2014-10-09 17:02:24.127 |
|||
6
mxs089
09.10.14
✎
17:34
|
после транзакции следует уже какой-то сокращенный запрос, а после сразу разрыв связи
|
|||
7
mxs089
09.10.14
✎
17:40
|
в консоли трассировки присутствует показатель READS (bigint
Число логических операций чтения ввода-вывода, выполненных пользователем за время соединения.) на первом запросе - 3, на втором - 2 |
|||
8
rsv
09.10.14
✎
17:50
|
(0) Седлайте ADO..
|
|||
9
rsv
09.10.14
✎
17:51
|
Если на ADO не вылетает .... значит ..
|
|||
10
mxs089
10.10.14
✎
11:47
|
разбил сессию, т.е. после загрузки 100 объектов отключаюсь и подключаюсь повторно, продолжаю загрузку
с отменой транзакции ошибок нет.. но теперь вываливается с другой ошибкой - Элемент не выбран! т.е. создается новый объект в 1с, заполняется часть полей и вываливается с этой ошибкой.. вот что за х...? |
|||
11
mxs089
10.10.14
✎
11:48
|
Ошибка при установке значения атрибута контекста (Артикул)
Приемник[Реквизит.Приемник] = Значение; по причине: Элемент не выбран! |
|||
12
mxs089
10.10.14
✎
11:52
|
обернул присвоение попыткой, т.е.
попытка Приемник[Реквизит.Приемник] = Значение; исключение сообщить(...); конецпопытки; и поставил точку остановки на сообщить(...) остановился и пытаюсь посмотреть, что же за тип у приемника, я даже выделить переменную не смог, клиентское приложение завершило работу с ошибкой |
|||
13
mxs089
10.10.14
✎
12:10
|
все, я не понимаю, переписываю под ADO
|
|||
14
mxs089
10.10.14
✎
13:03
|
короче, ошибка при подключении к sql:
Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for SQL Server): Недопустимый атрибут строки соединения код: ВнешнийИсточник.ConnectionString = "Provider=SQLOLEDB; |User ID=" + ИмяПользователя + "; |Password=" + Пароль + "; |Initial Catalog=" + "MyBase" + "; |Data Source=" + "mySqlServer"; |
|||
15
mxs089
13.10.14
✎
15:00
|
разобрался с ADO, ошибок с транзакциями нет, косяки платформы...
|
|||
16
mxs089
13.10.14
✎
15:00
|
зато не нужно конфигурацию изменять..
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |