Имя: Пароль:
1C
1C 7.7
v7: Отменить проведение перед перепроведением
0 Пенза58
 
18.09.13
20:54
Есть документ, движений по регистрам у него нет, но надо проверять его содержимое.

При прохождении проверки документ проводится, нет - нет.

Однако если документ был проведен, а потом изменить содержимое, то при проведении хотя оно и прерывается:
                    СтатусВозврата(0);
                    возврат;
Документ все равно остается проведенным.

Как сделать, чтобы при изменении ключевых реквизитов, документ становился не проведенным?

при записи вызывать СделатьНеПроведегнным?

Вроде в типовых такого нет.
1 FN
 
18.09.13
21:01
сначала делаешь анализ, потом необходимое действие
2 Пенза58
 
18.09.13
21:08
(1) Какой анализ? Вот документ проведен, человек заходит и меняет реквизит, документ уже не должен иметь статус проведен.

При проведении выполняется:              СтатусВозврата(0);
                    возврат;

Но документ как был проведен так и остался.
3 KUBIK
 
18.09.13
21:11
(2) Покури Модифицированность()
4 Пенза58
 
18.09.13
21:28
(3) Это проверка изменения.

Единственный вариант это использовать ПриЗаписиПерепроводить(1);
5 Злопчинский
 
18.09.13
22:03
(2) не трахай мозг. Проведение подразумевает ФИКСАЦИЮ некоего факта. Факты меняться не могут. за одним фактом может идти другой факт. так и отражай. либо разными доками либо ДОПРОВЕДЕНИЕМ дока.
6 КонецЦикла
 
18.09.13
22:09
Можно делать непроведенным в любом случае при интерактивном редактировании, ну а далее проводить если все ОК. А в чем трабла?
7 Злопчинский
 
18.09.13
22:23
(6) чел хочет сделать непроведенным если проведение проведенного завершилось неудачно...
8 Злопчинский
 
18.09.13
22:23
КЦ, лучше стукнись в скйп - запрограммить простенький прямой запрос за денежку..?
9 Lazy Stranger
 
18.09.13
23:08
запрети редактировать проведенный документ: пусть пользователь сначала распроводит и только потом редактирует
10 Злопчинский
 
19.09.13
04:01
как вариант - если после исправления в результате проведения должен получиться ноль - то просто при перепроведении если получается статусвозврата=0 - прочитать текущие движения дока и полностью их отсторнировать, вернуть статусвозврата=1. и результат - "нулевой" и история видна
11 Lionee
 
19.09.13
04:07
фигасе война
12 Lionee
 
19.09.13
04:10
(5) 5 баллов
13 Tester
 
19.09.13
10:18
Извратная логика приводит к ошибкам, проверено!!!
2 + 2 = 3.9999999999999999999999999999999...