|
v7: Можно ли обратиться к результатам диалога при закрытии дока в 7.7 (см. скрин) | ☑ | ||
---|---|---|---|---|
0
Paul_Nevada
08.06.12
✎
14:53
|
Вот это стандартное для 7.7 меню, которое появляется при закрытии документа в случае, если 1С считает, что последний был изменен пользователем:
http://webfile.ru/5991934 Вопрос такой - можно ли программно получить результат выбора пользовалем одного из вариантов предлагаемых действий? Спасибо - заранее. |
|||
1
SnarkHunter
08.06.12
✎
14:55
|
С какой целью интересуешься?
|
|||
2
0_Serg_0
08.06.12
✎
14:55
|
(0) над было на download залить - там в 2 раза дольше ждать закачки;)
|
|||
3
Paul_Nevada
08.06.12
✎
15:02
|
(1) Да есть потребность сделать проверку в документах нескольких видов в ТиС на предмет их "потенциальной измененности" за время просмотра их пользователями. И вот как раз этот стандартный вопрос с "Да/Нет/Отмена" некоторым образом мешает реализации этой проверки.
|
|||
4
Paul_Nevada
08.06.12
✎
15:08
|
Хотелось бы следующего:
- пользователь что-то наклацал в документе; - платформа на его действия определенным образом отреагировала - естественно; - пользователь решает прекратить ТАКОЙ "ПРОСМОТР" документа; - жмет Esc для выхода из объекта; - в диалоге вопроса (см. скрин) выбирает "Нет"; - ... как бы тут программно получить этот выбор пользователя??? |
|||
5
Voronve
08.06.12
✎
15:11
|
(4) А что ты с ним дальше делать собираешься ?
|
|||
6
0_Serg_0
08.06.12
✎
15:11
|
(4) приЗакрытии - сам его спрашивай = тогда и сможешь "среагировать"
|
|||
7
Paul_Nevada
08.06.12
✎
15:15
|
(5) использовать в обработке проверки ТЧ документа - не изменились ли значения НЕКОТОРЫХ (не всех) ее реквизитов.
|
|||
8
Mikeware
08.06.12
✎
15:15
|
(4) - в диалоге вопроса (см. скрин) выбирает "Нет";
- программа отвечает: "а вот не угадал!" |
|||
9
chief accountant
08.06.12
✎
15:16
|
(4) признак модифицированности при закрытии пиши куда-нибудь
|
|||
10
Paul_Nevada
08.06.12
✎
15:16
|
(6) тогда получится, что пользователю будет задаваться 2 вопроса - одоин от 1С, второй - от меня.
|
|||
11
0_Serg_0
08.06.12
✎
15:17
|
(10)
ты выбор его обработай - и сними признак модифицированности;) |
|||
12
Paul_Nevada
08.06.12
✎
15:17
|
(9) признак модфицированности в себе содержит 100% информации - мне она вся не нужна.
|
|||
13
Paul_Nevada
08.06.12
✎
15:18
|
(11) вот тут и вопрос - КАК обработать выбор пользователя?!
|
|||
14
Voronve
08.06.12
✎
15:19
|
(12) тебе надо отлавливать выбор в ПриЗаписи, проверять Форма.Модифицированность() и вызывать процедуру проверки изменения в ТЧ
|
|||
15
Mikeware
08.06.12
✎
15:19
|
(13) задавай ему вопрос _сам_, и _сам_ обрабатывай ответы на _твой_ вопрос.
|
|||
16
Voronve
08.06.12
✎
15:20
|
+(14) модификацию проверять нинада )
|
|||
17
0_Serg_0
08.06.12
✎
15:20
|
(13)
Если Модифицирована = Истина тогда твоя проверка модифицирована = Ложь; КонецЕсли; |
|||
18
chief accountant
08.06.12
✎
15:20
|
(12) а что надо то?
|
|||
19
chief accountant
08.06.12
✎
15:20
|
(17) клюшки вобще-то
|
|||
20
Paul_Nevada
08.06.12
✎
15:21
|
(17) надо проверить.
|
|||
21
0_Serg_0
08.06.12
✎
15:21
|
(19) та какая разница = смысл тот же
|
|||
22
Paul_Nevada
08.06.12
✎
15:22
|
(19) клюшки? это так 7.7 зовут?)
|
|||
23
Voronve
08.06.12
✎
15:23
|
(22) У тебя пр выборе пользователя ДА вызовется процедура ПриЗаписи. Нет - ничего не вызовется, Отмена - форма не закроется
|
|||
24
0_Serg_0
08.06.12
✎
15:25
|
(23) может ему и ответ "нет" надо отработать))
|
|||
25
Paul_Nevada
08.06.12
✎
15:26
|
(23) При выборе "Нет" у меня вызывается код проверки, размещенный мной в ПриЗакрытии. А мне это не нужно.
|
|||
26
Voronve
08.06.12
✎
15:26
|
(24) Тогда ловить в процедуре ПриЗакрытии. Только семафор нужен будет
|
|||
27
Paul_Nevada
08.06.12
✎
15:26
|
(24) Именно!)
|
|||
28
Paul_Nevada
08.06.12
✎
15:27
|
(26) Он у меня есть - в виде глобальной переменной.
|
|||
29
Voronve
08.06.12
✎
15:28
|
В приОткрытии Семафор = 0
В призаписи Семафор = 1 В призакрытии Семафор = 1 - юзер нажал Да, иначе нажал Нет |
|||
30
Paul_Nevada
08.06.12
✎
15:35
|
(29) А вот случай когда пользователь не вызывал запись документа!
|
|||
31
Paul_Nevada
08.06.12
✎
15:35
|
(29) Или я совсем тебя неверно понял...
|
|||
32
chief accountant
08.06.12
✎
15:41
|
(31) призакрытии модифицированность() будет равна 1
|
|||
33
Voronve
08.06.12
✎
15:42
|
Система юзеру вопрос задает когда Форма.Модифицированность() = 1
и вызывает ПриЗаписи, ПриЗакрытии на ответ да и При закрытии на ответ нет т.к. вызов так и так приходит в призакрытии то нужен семафор для принятия решения о том какой батон нажал усер. Или переформулируй вопрос |
|||
34
chief accountant
08.06.12
✎
15:44
|
(33) Форма. - это лишнее
|
|||
35
Paul_Nevada
08.06.12
✎
15:52
|
(33) Итак. Проверка моя написана в ПриЗакрытии(). Ситуация: 1С говорит, что Модифицированность()=1 и выдает пользователю вопрос. Тот отвечает "Нет" и в ЭТОМ случае мне нужно деактивировать свою проверку. КАК?
|
|||
36
chief accountant
08.06.12
✎
16:08
|
Процедура ПриЗаписи()
флаг=1; КонецПроцедуры Процедура ПриЗакрытии() Если Модифицированность()=1 и флаг=0 Тогда ... КонецЕсли; КонецПроцедуры |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |