Имя: Пароль:
1C
1C 7.7
v7: ТиС не убирается модифицированность после проведения
,
0 I_learn_1c
 
10.05.18
11:16
Доброе утро, помогите пожалуйста разобраться.
Документ ЧекККМ, создаю новый, жму "провести", но звездочка сверху не убирается, нужно чтобы убралась.
Если нажму "ОК", форма закроется, открываю, модифицированности нет. Но как сделать чтобы сразу после проведния ее не было? неудобно закрывать-открывать

по нажатию кнопки срабатывает вот это

Процедура ВыполнитьНажатиеНаКнопку(ИмяКнопки)
    
    Если ИмяКнопки="Записать" Тогда
        
        .......
        
        Записать();
        
    ИначеЕсли ИмяКнопки="Провести" Тогда
        
        БылПроведен=Проведен();
        Если Записать()=1 Тогда
            
            // если документ был проведен, то при записи он перепроведется
            // и поэтому нет необходимости его снова проводить
            Если БылПроведен=0 Тогда
                Если ПравоДоступа("ПроведениеДокумента", "Документ.ЧекККМ") = 1 Тогда
                    Провести();  
                Иначе
                    Предупреждение("Недостаточно прав доступа!");
                КонецЕсли;
            КонецЕсли;
            
        КонецЕсли;
        
    ИначеЕсли ИмяКнопки="ОК" Тогда
        
        .....
            
        Иначе
            
            Возврат;
        
        КонецЕсли;
        
    КонецЕсли;    
    
    
    
    Если ИмяКнопки="ОК" Тогда
        Форма.Закрыть(1);
    Иначе
        Форма.Обновить(0); //добавила, но не помогло
    КонецЕсли;
    
    
КонецПроцедуры
1 I_learn_1c
 
10.05.18
11:21
(0) нужно чтоб после нажатия "провести" в заголовке формы было "Чек.Проведен", а сейчас "Чек.Проведен*"
2 HawkEye
 
10.05.18
11:26
(0) в модуле проведения меняешь реквизит.
3 Масянька
 
10.05.18
11:31
(0) * уберется после пробития чека на ККМ. Поскольку для чека (док-т 1С) "проведение" не совсем стандартное действие.
4 I_learn_1c
 
10.05.18
11:35
(3) в том и дело, что * не дает вызвать обработку для пробития чека. Пишет "Недостаточно прав для печати непроведенного документа".
Пользователю можно печатать чек только проведенный, и после пробития чека он становится недоступным для редактирования пользователем.
5 hhhh
 
10.05.18
11:36
(4) ну кто-то чего-то у вас наваял в процедуре ОбработкаПроведения
6 I_learn_1c
 
10.05.18
11:36
(4) сейчас только вариант создать - провести - закрыть - открыть(тут * нет) - пробить чек - закрыть ...
7 Масянька
 
10.05.18
11:38
(4) А как ты себе представляешь "редактирование пробитого чека"?
8 I_learn_1c
 
10.05.18
11:39
(5) я думала что раз по нажатию кнопки сначала Провести(), а потом Обновить(0), то изменения при проведении должны тоже учитываться... как тогда поставить снятие модифицированности?
9 Мандалай
 
10.05.18
11:40
Пиши в каком нибудь справочнике дополнительные реквизиты документа.
10 I_learn_1c
 
10.05.18
11:41
(7) изначально было доступно после пробития поменять количество например и перепровести. Чтобы не было ошибок добавили ограничение, что после пробития - все недоступно
11 Масянька
 
10.05.18
11:43
(10) А вы в курсе, что после введения онлайн касс, пробитый чек уходит в налоговую?
12 HawkEye
 
10.05.18
11:45
(7) пффф... в чем проблема поменять реквизит документа ЧекККМ, после того, как чек пробит по ККМ? ))
(8) ты не поверишь... но Записать() - снимает модифицированность )
13 I_learn_1c
 
10.05.18
11:46
(11) вы вечно уводите в сторону от темы вопроса.. поэтому и добавили, чтоб никто случайно не косячил
14 Масянька
 
10.05.18
11:47
(12) Ну, можно и зайца научить... :)))
(13) У вас вечно такие темы... Далеко нестандартные...
15 I_learn_1c
 
10.05.18
11:49
(14) что ж поделать, какие есть
16 Масянька
 
10.05.18
11:53
(15) Я выше написала, что док-т Чек ККМ не совсем стандартно проводится. Он не только двигает регистры (как все эсные док-ты), но и пробивается по кассе. А пробитый по кассе док-т не редактируется изменением кол-ва или суммы.
17 I_learn_1c
 
10.05.18
12:01
(12) не снимается
18 I_learn_1c
 
10.05.18
12:08
(17) на форме есть кнопка "Записать", ее обработчик ниже, ничего не меняется после записи

Если ИмяКнопки="Записать" Тогда
        
        //Сергей
        Если ВидОперации = Перечисление.ВидыОперацийЧекККМ.Чек Тогда // продажа
            Комментарий="ЧЕК/Сумма: "+Формат(Итог("Сумма"),"Ч.2");
        Иначе    
            Комментарий="ЧЕК НА ВОЗВРАТ/Сумма: -"+Формат(Итог("Сумма"),"Ч.2");
        КонецЕсли;
        
        Записать();
Иначе...
19 HawkEye
 
10.05.18
12:17
(18) а как ты определил, что модифицируется именно в этом куске кода?
20 HawkEye
 
10.05.18
12:17
(17) я же говорил, что не поверишь... а это так )
21 HawkEye
 
10.05.18
12:19
+(20)
попробуй:
       КонецЕсли;
        Сообщить("До: " + Модифицированность())
        Записать();
Сообщить("После: " + Модифицированность())
Иначе...
22 I_learn_1c
 
10.05.18
12:29
(21) да, ты прав. до 1, после 0.
но после того как я жму кнопку "записать" заголовок меняется на "не проведен*".
как понять что еще меняется после записи? в обработчике ничего же больше не вызывается..
23 HawkEye
 
10.05.18
12:31
(22) смотреть код...
есть процедуры и функции вызываемые не интерактивно...
24 I_learn_1c
 
10.05.18
12:31
вставила кусочек

    Провести();
                    Сообщить("До: " + Модифицированность());
        Записать();
        Сообщить("После: " + Модифицированность());

пишет До: 0 После: 0. получается что при проведении тоже не меняется
25 HawkEye
 
10.05.18
12:32
(24) проведение - есть по сути записать и двинуть регистры.
26 I_learn_1c
 
10.05.18
12:44
(25) как понять вызывается ли что то еще после обработчика кнопки?
27 HawkEye
 
10.05.18
13:08
(26) смотреть код... тем более если он уже кем-то "доработан"..
28 I_learn_1c
 
10.05.18
13:19
(27)вроде нет ничего... отладчик на КонецПроцедуры обработчика обрывается. эх..
29 HawkEye
 
10.05.18
15:16
(28) если по другому ни как, то поставь точки останова на каждую строку кода... )))
30 Злопчинский
 
11.05.18
02:53
при прорисовке формы заполняется какой-то реквизит или флажок... форма становится несохраненной