|   |   | 
| 
 | вызов исключения в документе плюс транзакция | ☑ | ||
|---|---|---|---|---|
| 0
    
        ASimonova 17.11.22✎ 11:39 | 
        1С:Предприятие 8.3 (8.3.18.1741)
 код обработки: " начать транзакцию попытка проведение документа исключение некий код конец попытки зафиксировать или отменить транзакцию некий еще код " а в проведении документа при записи идет вызов исключения в результате после вызова исключения в коде, который называется "некий код" и "некий еще код" творится вакханалия там иногда при обращении к любым переменным еще раз вызывается исключение, а иногда если идти отладчиком все нормально, а без отладчика вообще без вариантов - все валится. что я делаю не так? | |||
| 1
    
        Волшебник модератор 17.11.22✎ 11:42 | ||||
| 2
    
        Волшебник модератор 17.11.22✎ 11:44 | 
        НачатьТранзакцию();
 Попытка ДелаемЧтоТо(); ЗафиксироватьТранзакцию(); Исключение Если ТранзакцияАктивна() Тогда ОтменитьТранзакцию(); КонецЕсли; ВызватьИсключение; КонецПопытки; | |||
| 3
    
        ASimonova 17.11.22✎ 12:09 | 
        (2) переделала как написано. не могу сказать, что у меня было как-то уж совсем неправильно, у меня при вызове исключения фиксация транзакции не происходила все равно... ну ладно короче, я в итоге сделала ровно как написано. результат все равно плохой. вот мы переходим в исключение:
 Исключение Если ТранзакцияАктивна() Тогда И все! на обращении к ТранзакцияАктивна() идет еще один вызов исключения и ошибка "в данной транзакции уже происходили ошибки" | |||
| 4
    
        ASimonova 17.11.22✎ 12:12 | 
        (1) за статью спасибо, я ее еще читаю     | |||
| 5
    
        vicof 17.11.22✎ 12:12 | 
        Для начал нужно понять что такое транзакции, и зачем они нужны.     | |||
| 6
    
        ASimonova 17.11.22✎ 12:16 | 
        (5) я же не на экзамене, если знаете ответ как правильно написать код, где в транзакции должно быть проведено несколько документов, поделитесь, пожалуйста     | |||
| 7
    
        ASimonova 17.11.22✎ 12:20 | 
        (1) статью дочитала, в итоге поняла, что все приходит к тому коду, который вы скинули в сообщении (2)
 у меня оно не сработало((( | |||
| 8
    
        ASimonova 17.11.22✎ 12:29 | 
        вот так это выглядит, в исключении не определена ни одна переменная, я такого в жизни не видела
 https://disk.yandex.kz/i/5IkburD0nNZGsQ | |||
| 9
    
        Kassern 17.11.22✎ 12:30 | 
        (0) "если идти отладчиком все нормально, а без отладчика вообще без вариантов " - кэш чистили?     | |||
| 10
    
        Kassern 17.11.22✎ 12:34 | 
        У вас количество начатых транзакций совпадает с количеством зафиксированных? 
 (3) "в данной транзакции уже происходили ошибки" - так это ругается при проведении документа. Вполне возможно, что в коде проведения у вас создается с ошибкой еще какой-либо объект и из-за это валится основной (например не проводится реализация из-за ошибки создания счет-фактуры и т.д.). | |||
| 11
    
        ASimonova 17.11.22✎ 12:43 | 
        (9) да, ошибка была вообще замечена в двух разных базах от двух разных пользователей сервера     | |||
| 12
    
        ASimonova 17.11.22✎ 12:56 | 
        капец, она просто заработала...
 может действительно кэш был, я обработку перезаписала и она заработала чего только ни бывает | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |