Имя: Пароль:
1C
 
Закрытие формы при бездействии
0 AndreyFAN
 
22.05.09
00:25
Требуется закрыть форму при отсутствии действий пользователя.
Видимо нужно в ПриИзмененииДанных() вставить перезапуск какого-то таймера ожидания.
Подскажите, что использовать? Спасибо.
1 Fragster
 
гуру
22.05.09
00:34
боработка ожидания
2 Птица
 
22.05.09
00:37
а если пользователь открыл форму, только чтобы читать на ней данные?
3 AndreyFAN
 
22.05.09
00:40
(1) Искал в СинтаксисПомощнике ОбработкаОжидания не нашёл, всякие есть Обработки, а ожидания не нашёл :-(
(2) Я понимаю, но мне нужно для конкретного случая, где читать не нужно. Нужно открыть, заполнить и сохранить. При открытой форме и бездействии - происходит действие "не в системе"...
4 Serg_1960
 
22.05.09
00:43
Поиском по форуму - спорили не раз на эту тему. Все упирается в это самое "при отсутствии действий пользователя" и что это такое. Некоторые горячие головы даже предлагали сделать фоновое задание, которое регулярно спрашивало-бы пользователя "Ты еще тут?" - и, не получив ответа от него, - завершало сеанс. Туфта это :(
5 Птица
 
22.05.09
00:44
а как определить, работает ли в настоящий момент пользователь с формой или нет?
6 Serg_1960
 
22.05.09
00:46
А что значит вообще "работает"? Визуальный анализ данных на форме - это "работает" или "ничего не делает"?
7 AndreyFAN
 
22.05.09
00:47
(4) Ок. Спасибо. Поищу. Я не спорю, туфта это или нет. Мне ТАК надо.
(5) Определить видимо можно по ПриИзмененииДанных() на форме.
Я не про термин "работает". Я про "действия" по изменению данных на форме.
8 Fragster
 
гуру
22.05.09
00:50
напиши скринсейвер, который бы при запуске гасил 1с...
9 AndreyFAN
 
22.05.09
00:52
Объясняю ситуацию, зачем мне это надо:
Ввели дисконтные карточки в магазинах. Продавец обслуживает покупателя на открытой форме РасходМагазина. Взял деньги, покупатель ушёл, продавец не пробивает чек, не закрывает формы, ждёт следующего, обслуживает... и так накапливает большую сумму в одном чеке, потом проводит всё это по карточке мамы или сестры... разницу между выручкой и пробитым чеком ложит в карман...
Мне нужно чтобы между покупателями не оставалась открытая форма.
10 AndreyFAN
 
22.05.09
00:54
(8) мне ничего гасить не надо, мне надо чтобы не оставалась открытая форма без действий.
Продавец может стоять и менять количество, пока придёт следующий покупатель , да, но это уже другой вопрос.
Помогите с перезапуском ОбработкиОжидания, если такое возможно
11 H A D G E H O G s
 
22.05.09
00:55
(9) Контрольной закупки на вас не хватает.
12 AndreyFAN
 
22.05.09
00:57
(11) контрольные закупки не решают проблемы, (фотографирование кстати тоже для этой же проблемы топик)...  город маленький, все друг друга знают...
13 Serg_1960
 
22.05.09
00:58
Камеры наблюдения на кассира и экран кассы; анализ среднего чека по кассам и по сменам...
14 AndreyFAN
 
22.05.09
01:00
(13) камеры в топике про фотографирование, наблюдение ночью некому вести, анализ ничего не доказывает, за руку не поймана, говорит что такой большой был покупатель...
15 H A D G E H O G s
 
22.05.09
01:00
(14) Чем торгуете?
16 AndreyFAN
 
22.05.09
01:02
так есть Перезапуск Ожидания ? Должен быть!!! Сергеевич, подскажи...
оставьте в сторону целесообразность...
Магазины продуктов питания и сопутствующие, круглосуточные
17 Птица
 
22.05.09
01:06
(9)ну это решит проблему, но частично, когда между покупателями проходит какое-то время, а если очередь, то это бессмысленно.
а как же ККМ? он покупателю чек не пробивает разве? судя по карточкам, у вс не совсем ларёк
18 H A D G E H O G s
 
22.05.09
01:08
Что может подсказать Сергеич?

Процедура УбейсяФорма()Экспорт
ЭтаФорма.Закрыть();
КонецПроцедуры

Процедура ОбновлениеОтображения()
ОтключитьОбработчикОжидания("УбейсяФорма");
ПодключитьОбработчикОжидания("УбейсяФорма",20);
КонецПроцедуры
19 H A D G E H O G s
 
22.05.09
01:09
Но это - фигня
20 H A D G E H O G s
 
22.05.09
01:09
Юзверь просекет фишку и будет просто обновлять форму
21 AndreyFAN
 
22.05.09
01:09
(17) частично, да. Но чать так, часть другими методами, лучше чем ничего не делать.
Если очередь, то она не мудрит, работает как положено...
ККМ. Да, не пробивает... забежал ночью клиент - быстробысро бутылку водки, сигареты, закуску, кинул деньги, убежал... у неё соблазн не закрыть эту форму, дождаться следующего такогоже...
22 H A D G E H O G s
 
22.05.09
01:11
Ну или жестко время на ввод чека, типа не уложилась в 3 минуты - прости прощай, новый чек начинай
23 AndreyFAN
 
22.05.09
01:12
ОООО!!! Сергеевич, Спасибо ещё раз. Это мне и нужно было подсказать!
(20) А обновление формы считается ИзменениемДанных?...
Ладно, и тут поставлю капкан...
24 H A D G E H O G s
 
22.05.09
01:12
(23) Это - не выход
25 AndreyFAN
 
22.05.09
01:13
только не в ОбновленииОтображения() надо видимо, а в ПриИзмененииДанных()
26 H A D G E H O G s
 
22.05.09
01:16
(25) Нет.
Объект не перечитывается
27 BOZKURT
 
22.05.09
01:19
+ при открытии формы зафиксировать время начала, при закрытии время окончания (будем говорить сеанса работы с доком), чтобы потом узнать - какое время форма была открыта + в "ОбработкеОжидания" писать в лог каждое движение и путешествие по контролам + лог, что было добавлено/удалено/исправлено и т.д., потом сидеть и анализировать все это. писец...))
28 AndreyFAN
 
22.05.09
01:22
(27) отличная идея. спасибо! значит не буду торопиться, подумаю ... действительно, тут доказуемо воровство
29 Птица
 
22.05.09
01:23
(27)и что? скажет, "пришел покупатель, много набрал, а форму я забыла закрыть"
30 AndreyFAN
 
22.05.09
01:23
(26) как не перечитывается? у меня, например, на важных документах есть галочка "ОдобреноДиректором", она слетает при изменении любых данных на форме...
прописано в ПриИзмененииДанных()
или я чегото не догоняю?
31 BOZKURT
 
22.05.09
01:24
(29) раз, два, потом уже и доказывать ненадо...
32 Fragster
 
гуру
22.05.09
01:24
если на ККМ все, то событие/сигнал на открытие денежного бокса можно воспринимать как запрет на ввод доп. товара...
33 AndreyFAN
 
22.05.09
01:26
(32) так она даже не даёт команду на открытие бокса (на чек), просто держит деньги в руке, кармане
34 BOZKURT
 
22.05.09
01:27
(27)+ ОбработкеОжидания = ОбновленииОтображения
ТекущийЭлемент смотреть.
35 AndreyFAN
 
22.05.09
01:31
Упс...
При закрытии формы спрашивает "Сохранить изменения?"
Продавец жмёт Отмена...
Эт как обойти?
36 BOZKURT
 
22.05.09
01:32
Модифицированность ?
37 Птица
 
22.05.09
01:33
ха, кстати, подходящая тема для дня рождения конан дойла. если верить яндексу, ему сегодня 150 лет. яндекс в честь этого украшен пляшущими человечками. интересно, а что ими написано?
38 AndreyFAN
 
22.05.09
01:34
после трёх вопросов форма всё же закрылась сама :-) странно
не понял про Модифицированность...
39 BOZKURT
 
22.05.09
01:39
Модифицированность = Ложь;
))
40 AndreyFAN
 
22.05.09
01:45
(39) но он модифицирован в любом случае
был открыт новый документ, заполнен и оставлен, не закрыт
41 BOZKURT
 
22.05.09
01:50
(41) это я так.., эксперементируй, потом раскажешь.
42 AndreyFAN
 
22.05.09
01:53
ок. сделал в репетиционной базе, вроде работает ОК.
счас солью в основную, завтра услышу "АндрейНиколаевич! Так неудобно стало!"
:-)
43 BOZKURT
 
22.05.09
01:54
)))
44 Serg_1960
 
22.05.09
09:32
АндрейНиколаевич, сделай фискальный контроль. Регистр сведений, в который пишется запись (номер чека, текущая дата, ключ строки, товар, количество) при изменении строки чека. Зачем? Отчет-анализ даст информацию какие и когда товары вносились и периоды между записями и время оформления самого чека. Имхо, юзабилитнее будет :)
45 H A D G E H O G s
 
22.05.09
09:35
И потом АндрейНиколаевич будет сидеть и проверять.
И найдет он задержку в 4 минуты.
И ответит ему кассир:
"Ой, ей, покупатель деньги искал. И салатик к водочке забыл, пошел подобрал в зале"..
46 hhhh
 
22.05.09
09:44
(45) это один раз может прокатить, потом второй, а на третий такого кассира попросят на выход.
47 H A D G E H O G s
 
22.05.09
09:48
(46) Попросить то могут, да кто же согласится?
48 Serg_1960
 
22.05.09
09:48
(45) Не утрируй. Анализ на стол начальству - дальше это их проблемы.
49 H A D G E H O G s
 
22.05.09
10:13
(48) Я - все таки программист 1С, а не просто программист :-)
50 AndreyFAN
 
22.05.09
11:47
(48) Я и есть тот начальник :-) и да, это мои проблемы, я ещё и владелец бизнеса. Оттого и бешусь, что скидки, предназначенные для покупателя и превлечения новых, продавцы крысятничают себе в карман.
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн