Имя: Пароль:
1C
 
Документ не проводится, но после проведения в списке становится проведенным
0 bebibo
 
19.04.24
16:30
Здравствуйте.
Есть самописная конфа. При проведении документа "Реализация" - возникает ошибка: Операция не может быть выполнена из-за несоответствия версии или отсутствия записи базы данных (возможно, запись была изменена или удалена)!.
Что делаю: Документ открыт, нажимаю "провести", возникает ошибка, на форме так и остается документ (Создание*), а в форме списка он уже есть проведенный! Как так? Код не мой, поэтому вообще не могу понять как так могли написать, чтобы возникала такая ситуация.
1 maxab72
 
19.04.24
16:40
В процедуре ПриЗаписи статус документа уже будет Проведен, это и отображается в списке. Когда прервете процедуру по ошибке  - транзакция откатится.
2 bebibo
 
19.04.24
16:44
(0) а если повторно нажимаю на провести, то пишет: данные были изменены или удалены другим пользователем или в другом сеансе, необходимо перечитать данные..
3 bebibo
 
19.04.24
16:45
(0) то есть док проводится, а на форме документа так и остается на стадии (СОздание)*
4 maxab72
 
19.04.24
16:49
(3) Он НЕ проводится. Цепочка процедур такая: ПередЗаписью() - статус документа Проведен = Ложь, РежимЗаписи = Проведение. ПриЗаписи() Проведен = Истина, ОбработкаПроведения() Проведен = Истина.
Если остановка произошла на процедуре ПриЗаписи - объект уже имеет статус Проведен, хотя процедура самого проведения еще не отработала. И это отражено в списке.
5 bebibo
 
19.04.24
16:56
(4) Проводится, так как потом заходя в этот документ ,открывая "просмотр движений" - там есть все движения по данному регистру+ в отладке смотрю, обработку проведения проходит
6 maxab72
 
19.04.24
16:59
(5) Значит где-то в коде стоит команда Записать для движений. Пройдитесь отладчиком, и все будет ясно.
7 bebibo
 
19.04.24
17:03
(6) То есть Вы уверены, что документ на самом деле не проводится?
А у меня такое чувство, что одна и та же процедура вызывается 2 раза. Именно поэтому док проводится, но на форме просто как созданный остается.
8 Altone
 
19.04.24
17:20
(0) смотреть в код, искать где ошибка. гадание на кофейной гуще то зачем устраивать ?
9 bebibo
 
19.04.24
17:35
(8) Я не гадаю. Ошибка возникает после процедуры получения представления! В журнале регистрации ошибки нет. Вот куда дальше смотреть?
10 bebibo
 
19.04.24
17:37
(9) Причем если я создаю с нуля док ,то всё ок. Если путем копирования - то ошибка при проведении.
11 bebibo
 
19.04.24
17:56
(10) А нет, тоже ошибка если с нуля. Всё хорошо создается, если не стоит галочка(УПД) вывод счет фактуры
12 Garykom
 
19.04.24
18:13
(0) >Есть самописная конфа.
Обратиться к разработчикам или тем кто допиливал конфу

ЗЫ
Если сам допиливал - ну ССЗБ.
13 Serg_1960
 
19.04.24
20:47
(11) 99.9% что объект, считанный при открытии формы и который Вы пытаетесь записать интерактивно, уже был изменен(записан в БД) программно.
14 d4rkmesa
 
20.04.24
11:52
(9) Кто-то знатно повеселился в конфигурации. Сделайте замер производительности в отладчике и поищите в списке процедур Записать.
15 Kongo2019
 
20.04.24
23:34
Я даже знаю кто. Украсть даже не осилили нормально.
16 bebibo
 
21.04.24
09:24
(13) Вы были правы. Программист повторно записывал документ, из-за этого и была ошибка.