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

1С:Предприятие :: 1С:Предприятие 8 общая

Двойное проведение документа

Двойное проведение документа
Я
   alexshape
 
21.09.17 - 12:05
Привет Всем. По наследству достался код 

    попытка
            РеализацияТоваровУслуг.Записать(РежимЗаписиДокумента.Проведение);
        исключение 
            Отказ=истина;
            РеализацияТоваровУслуг.Записать(РежимЗаписиДокумента.Запись);
        КонецПопытки;
        //СписокРеализ


Только вот в момент Исключения документ еще не записан, и тут же проходит еще одна запись. Выдает ошибку Наличия товаров. Т.е. На первое проведение товара хватает, а на второе нет.

Можно ли так вообще делать, и как узнать не проводит, если никаких ошибок нет
 
 
   Джинн
 
1 - 21.09.17 - 12:06
?! Что это?
   h-sp
 
2 - 21.09.17 - 12:07
(0) РежимЗаписиДокумента.Запись - это не проведение.
   Tatitutu
 
3 - 21.09.17 - 12:11
у тебя в процедуре ПередЗаписью() что происходит
проверка наличия остатка - вот и не дает ни записать не провести
при проведении - сначала запись, потом проведение
   alexshape
 
4 - 21.09.17 - 12:13
(3) В том то и дело, что вплоть до конца процедуры при записи в строке  РеализацияТоваровУслуг.Записать(РежимЗаписиДокумента.Проведение);  Отказ = ложь, но все равно прилетает Исключение
   aleks_default
 
5 - 21.09.17 - 12:15
До ОписаниеОшибки()в СП ты видимо еще не дошел.
   Рэйв
 
6 - 21.09.17 - 12:16
(0)Зачем ты проверяешь остатки ПриЗаписи? Проверяй только при проведении.
   alexshape
 
7 - 21.09.17 - 12:19
ОписаниеОшибки() = ""
   Вафель
 
8 - 21.09.17 - 12:21
лучше так
РеализацияТоваровУслуг.Записать(РежимЗаписиДокумента.Запись);
РеализацияТоваровУслуг.Записать(РежимЗаписиДокумента.Проведение);
   aleks_default
 
9 - 21.09.17 - 12:23
Его в Сообшить выводить надо. В отладке оно не кажет.
Вообще на вопрос "Можно ли так вообще делать? ответ - можно и в некоторых случаях даже нужно.
"И как узнать не проводит, если никаких ошибок нет" - так не проводит или даже не записывает?
   alexshape
 
10 - 21.09.17 - 12:25
Мне одно не понятно, как все это выполняется вплоть до РеализацияТоваровУслуг.Записать(РежимЗаписиДокумента.Проведение); ПРи записи в модуле объекта, и после выполнения Ошибка?
 
 Рекламное место пустует
   alexshape
 
11 - 21.09.17 - 12:25
(9) А какая разница?
   aleks_default
 
12 - 21.09.17 - 12:28
(11)Тебе ясна разница между ЗАПИСЬЮ документа и его ПРОВЕДЕНИЕМ?
   alexshape
 
13 - 21.09.17 - 12:39
(12) Да, ясна. Но проблема в том что он все проверки проходит на строке

РеализацияТоваровУслуг.Записать(РежимЗаписиДокумента.Проведение);
Но все равно выдает попадает в исключения
   Михаил Козлов
 
14 - 21.09.17 - 12:42
(13) Могут быть еще подписки, которые вырабатывают отказ.
Можно сначала записать, а потом провести. Правда 2 раза запись, вместо 1-ой.

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