![]() |
|
Как определить что документ не сохранили? | ☑ | ||
---|---|---|---|---|
0
break
02.02.15
✎
10:33
|
при закрытии документа у пользователя система спрашивает "Сохранить изменения?", пользователь жмакает "нет". Если пользователь нажал "нет" надо выполнить определенное действие. Как отловить? Форма обычная.
|
|||
1
ktvladimir
02.02.15
✎
10:37
|
в процедуре ПриЗакрытии проверить на модифицированность
|
|||
2
break
02.02.15
✎
10:51
|
(1) естественно там будет истина, мне надо определить закрытие без сохранения
|
|||
3
break
02.02.15
✎
11:01
|
для нового документа не проблема, у нее нет ссылки
|
|||
4
rinatru
02.02.15
✎
11:05
|
а смысл отлавливать такие вещи? печать невозомжна в таком виде... проблемы не вижу
|
|||
5
Defender aka LINN
02.02.15
✎
11:08
|
(0) "Если пользователь нажал "нет" надо выполнить определенное действие" - если пользователь нажал "нет", то он решил не сохранять результат своих изменений. Для нахрена что-то там анализировать в этом случае?
|
|||
6
ИС-2
naïve
02.02.15
✎
11:11
|
(2) в событии ПриЗакрытии делай запись РС. В событии ПриЗаписи удаляй запись из РС для этого документа.
(5) Логичный вопрос, а за чем пользователь вносил изменения? |
|||
7
Бубка Гоп
02.02.15
✎
11:17
|
(6) моделирую ситауцию: юзер сначала сохранил документ, в РС этой записи не нашлось и она не удалилась. После этого он закрывает док, и в РС появляется запись, что этот док якобы не сохраняли.
|
|||
8
break
02.02.15
✎
11:19
|
(6)додумался вот так
Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) Версия = ВерсияДанных; КонецПроцедуры Процедура ПриЗакрытии() Если (ЭтоНовый() И Не ЗначениеЗаполнено(Ссылка)) Или (Версия = Ссылка.ВерсияДанных) Тогда Сообщить("не сохранили"); КонецЕсли; КонецПроцедуры Пользователь загружает картинки, связанные с документом, (они сохранятся в другую базу), потом решает не сохранять док, в этом случае картинки удаляю / Понимаю что правильно сохранять все картинки призаписи, т.е. до этого наверное запоминать путь к картинке(а надежнее еще переместить во временную папку, и брать путь отуда) |
|||
9
Бубка Гоп
02.02.15
✎
11:20
|
(8) возможность сохранить есть только при закрытии?
|
|||
10
break
02.02.15
✎
11:23
|
(8) эх..код срабатывает не во всех случаях
|
|||
11
Бубка Гоп
02.02.15
✎
11:26
|
(8) Понимаю что правильно сохранять все картинки призаписи...
Почему же именно так не сделать? |
|||
12
Defender aka LINN
02.02.15
✎
11:27
|
(8) Класс. А потом он решает прикрепить картинку к документу 2-х летней давности...
|
|||
13
break
02.02.15
✎
11:31
|
(12)ну удаляются не все картинки, а те которые добавлялись
(11)переделаю все же на сохранение при записи если кому надо определить закрытие без сохранения Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) Если Не ЗначениеЗаполнено(Версия) Тогда Версия = ВерсияДанных; КонецЕсли; КонецПроцедуры Процедура ПриЗакрытии() Если (ЭтоНовый() И Не ЗначениеЗаполнено(Ссылка)) Или (Версия = Ссылка.ВерсияДанных) Тогда Сообщить("не сохранили"); КонецЕсли; КонецПроцедуры Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения) Версия = ВерсияДанных; КонецПроцедуры |
|||
14
Бубка Гоп
02.02.15
✎
11:34
|
(13) дык как же оно отработает если сначала вручную сохранить, а потом закрыть?
|
|||
15
Defender aka LINN
02.02.15
✎
11:44
|
(13) Да хрен с ним с удалением. Бухгалтера придут в экстаз, когда выяснится, что чтобы добавить картинку, какая-нибудь граница последовательности сдвигается в ХЗ куда.
Прикрепление картинок и запись документа - 2 никак не связанных события! |
|||
16
break
02.02.15
✎
11:47
|
(14) все отрабатывает
(15) немного обманул с документом, используется справочник, самописная конфа, картинки эти чертежи |
|||
17
Fish
гуру
02.02.15
✎
11:49
|
(16) Так посмотри, как это реализовано в типовых. Например, в том же документообороте.
|
|||
18
break
02.02.15
✎
12:06
|
(17)В документообороте создал внутренний документ, добавил файл, создался объект справочника Файлы, закрыл документ не сохраняя, объект справочника с файлом остался
|
|||
19
kosts
02.02.15
✎
12:10
|
Как вариант, если нельзя сохранить документ "до", то
так можно сделать: записывая картинки ставим им где-то флаг "временный" (или сохраняем во временное место), при записи документа снимаем флаг или переносим в постоянное хранищище. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |