|   |   | 
| 
 | Как проверить модифицированность перед записью? | ☑ | ||
|---|---|---|---|---|
| 0
    
        mastodont 02.02.21✎ 15:19 | 
        При интерактивной записи объекта надо проверить были ли изменения.
 Почему то Модифицированность всегда выдает "Истина"... Как проверить? | |||
| 1
    
        Kigo_Kigo 02.02.21✎ 15:21 | 
        (0) Наверно потому что понаписали всякой хрени и при открытии модифицированность уже естина?     | |||
| 2
    
        Kigo_Kigo 02.02.21✎ 15:23 | 
        При открытии в заголовке окна "*" стоит?     | |||
| 3
    
        DrShad 02.02.21✎ 15:24 | 
        пошел за попкорном
 (1) + 1 | |||
| 4
    
        polosov 02.02.21✎ 15:25 | 
        (0) Смотря где проверяешь. Проверяй в ПередЗаписью формы.
 НУ и (1) может быть | |||
| 5
    
        mastodont 02.02.21✎ 15:28 | 
        (2) не стоит в том то и дело.
 (4) проверяю перед записью в форме на клиенте | |||
| 6
    
        DrShad 02.02.21✎ 15:32 | 
        если хочешь узнать что модифицировано, сравни реквизиты ссылки и объекта     | |||
| 7
    
        Fragster гуру 02.02.21✎ 15:33 | 
        (6) даже если все реквизиты равны модифицированность может быть Истина. Если (1).     | |||
| 8
    
        mastodont 02.02.21✎ 15:36 | 
        (7) а в этом случае не будет * в заголовке?     | |||
| 9
    
        Fragster гуру 02.02.21✎ 15:37 | 
        еще может в призаписи объект меняете, или в обработкапроведения     | |||
| 10
    
        Kigo_Kigo 02.02.21✎ 15:37 | 
        (8) пойдем другим путем, при открытии и сразу закрытии интерактивном. просит записать или сохранить?     | |||
| 11
    
        Fragster гуру 02.02.21✎ 15:38 | 
        (8) модифицированность и * в заголовке работают одинаково. т.е. если нет *, то и модифицированность = ложь     | |||
| 12
    
        polosov 02.02.21✎ 15:39 | 
        (5) А покажи-ка код.     | |||
| 13
    
        mastodont 02.02.21✎ 15:40 | 
        (10) не просит.     | |||
| 14
    
        mastodont 02.02.21✎ 15:40 | 
        &НаКлиенте
 Процедура Расш1_ПередЗаписьюПеред(Отказ, ПараметрыЗаписи) Сообщить(Модифицированность); КонецПроцедуры | |||
| 15
    
        Kigo_Kigo 02.02.21✎ 15:42 | 
        Тут в расширении, я не силен, пока скилл не прокачал еще     | |||
| 16
    
        mikecool 02.02.21✎ 15:49 | 
        (14) берешь стек вызовов и долго думаешь - где у тебя реквизит объекта изменяется     | |||
| 17
    
        polosov 02.02.21✎ 15:50 | 
        (14) Ты заставил меня проверить. УМВР
 Платформа 8.3.18.1208 | |||
| 18
    
        DrShad 02.02.21✎ 15:51 | 
        (11) не всегда     | |||
| 19
    
        polosov 02.02.21✎ 15:52 | 
        (18) Тут не рассматривается случай изменения объекта в другом сеансе.     | |||
| 20
    
        arsik гуру 02.02.21✎ 15:56 | 
        (14) Может все же Модифицированность() ?     | |||
| 21
    
        mastodont 02.02.21✎ 15:59 | 
        (20) нет у формы такого метода.     | |||
| 22
    
        mastodont 02.02.21✎ 16:00 | 
        (17) можешь привести код, которым проверял?     | |||
| 23
    
        polosov 02.02.21✎ 16:05 | 
        Основная конфигурация:
 &НаКлиенте Процедура ПередЗаписью(Отказ, ПараметрыЗаписи) Сообщить("Мод = " + Модифицированность); КонецПроцедуры Расширение: &НаКлиенте Процедура КОЛ_ПередЗаписьюПеред(Отказ, ПараметрыЗаписи) //Вставить содержимое обработчика Сообщить("Мод расш=" + Модифицированность); КонецПроцедуры | |||
| 24
    
        mastodont 02.02.21✎ 16:07 | 
        Странно.
 Все дело происходит в УТ11. Форма документа Заказ клиента. | |||
| 25
    
        polosov 02.02.21✎ 16:08 | 
        (24) Ставь точку останова в приОткрытии()
 Выводи Модифицированность в табло и сиди, тыкай на F10, пока модифицированность не станет Истина | |||
| 26
    
        mastodont 02.02.21✎ 16:18 | 
        (25) это не поможет.
 На форме нет * в заголовке. Нажимаю дискетку. Вызывается &НаКлиенте Процедура ЗаписатьДокумент(Команда) ОбщегоНазначенияУТКлиент.Записать(ЭтаФорма, Истина); КонецПроцедуры И тут модифицированность уже истина... Возможно что-то с расширением но не пойму что... | |||
| 27
    
        mastodont 02.02.21✎ 16:24 | 
        (26) дело не в расширении. В типовой демо базе УТ11 такое же поведение.     | |||
| 28
    
        polosov 02.02.21✎ 16:25 | 
        (26) Ну так переопредели этот метод. Сделай "Перед" свои проверки.     | |||
| 29
    
        alkorolev 02.02.21✎ 16:25 | 
        (9) в ПриЗаписи и ОбработкеПроведения объект уже не изменить, поскольку он уже в базе     | |||
| 30
    
        hhhh 02.02.21✎ 16:29 | 
        (26) ну, процедуру ОбщегоНазначенияУТКлиент.Записать() в студию     | |||
| 31
    
        mastodont 02.02.21✎ 16:34 | 
        (30) модифицированность до нее уже истина...     | |||
| 32
    
        Вафель 02.02.21✎ 16:36 | 
        так дискетка это не типовая команда, а команда с признаком изменяет данные. при ее нажатии сразу модифицированность | |||
| 33
    
        mastodont 02.02.21✎ 16:39 | 
        (32) так, а можно поподробнее?
 И возвращаясь тогда к (0) мне как-то надо понять менялось ли что0то или нет... Как это можно сделать? | |||
| 34
    
        Вафель 02.02.21✎ 16:42 | 
        по нажатию этой кнопки уже никак. но можно у команды снять галку, но дизаблить при только просмотре придется вручную | |||
| 35
    
        mastodont 02.02.21✎ 16:46 | 
        (34) а что за галка? не нахожу...     | |||
| 36
    
        Вафель 02.02.21✎ 16:47 | 
        свойства команды: Изменяет сохраняемые данные     | |||
| 37
    
        Fragster гуру 02.02.21✎ 16:54 | 
        (34) с 2013 года костыли лепим :(     | |||
| 38
    
        Fragster гуру 02.02.21✎ 16:54 | 
        и более того,сахар из 8.3.18 проблему не решает     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |