|  11.12.2007, 10:03 | #1 | 
| Участник | Кто работает с формой 
			
			Доброго всем времени суток, подскажите новичку, как правильнее будет отследить, кто на данный момент использует форму. Я предполагаю, что это метод activate но вот как правильно организовать сей мониторинг?
		 | 
|  | 
|  11.12.2007, 10:22 | #2 | 
| Участник | 
			
			Поставьте точки останова в методе new класса SysSetupFormRun и методе close (его санчала нужно перекрыть) того же класса и откройте, а потом закройте любую форму. Вам это нужно?
		 | 
|  | 
|  11.12.2007, 10:25 | #3 | 
| Участник | 
			
			Не совсем понял, у меня было предположение, что нужно просто создать таблицу, при методе activate вставлять в нее запись с именем пользователя и врееменем входа, потом методом close delete ить эту запись
		 | 
|  | 
|  11.12.2007, 10:34 | #4 | 
| Участник | |
|  | 
|  11.12.2007, 10:44 | #5 | 
| Участник | 
			
			Смотря что Вам нужно, если отследить кто работает с конкретной формой, то пишите в свою таблицу в методе init этой формы, а удаляйте в методе close. Если нужно чтобы это работало для всех форм, то в SysSetupFormRun.new - пишем, а SysSetupFormRun.close - удаляем.
		 | 
|  | 
|  11.12.2007, 10:48 | #6 | 
| Участник | 
			
			Да, именно с конкретной формой, можно еще вопрос, каким классом я могу получить полное имя пользователя (чтобы его потом вставить в таблицу) и время входа на форму?
		 | 
|  | 
|  11.12.2007, 10:58 | #7 | 
| Участник | 
			
			Класса не знаю. Можно получить Id текущего пользователя ф-цией curuserid(), а потом запросом выбрать имя из UserInfo либо EmplTable. Хотя я бы не стал хранить в таблице имя, лучше хранить Id, а при выводе на форму если нужно, по Id находить имя.
		 | 
|  | 
|  11.12.2007, 10:59 | #8 | 
| Axapta | 
			
			- Пользователь может открыть одну и ту же форму два раза. - Пользователь может просто перезагрузить компьютер и тогда никакой ваш метод close не отработает. Так что таким образом вы не получите список пользователей, у которых в данный момент открыта ваша форма. | 
|  | 
|  11.12.2007, 11:04 | #9 | 
| Участник | 
			
			Согласен полностью, но тогда как правильнее будет сделать?
		 | 
|  | 
|  11.12.2007, 13:16 | #10 | 
| Участник | 
			
			Как вариант сохранять в этой таблице SessionID и в определенный момент проверять его актуальность. Т.е. также как в журналах происходит блокировка.
		 | 
|  | 
|  11.12.2007, 17:54 | #11 | 
| Участник | |
|  | 
|  12.12.2007, 09:18 | #12 | 
| Участник | 
			
			Суть проблемы в том, что в проекте есть форма, которая используется для подачи отчетов. Нужно выяснить, как часто она используется, соответственно, кем. Ну и кто на данный момент ее просматривает, а главное (там есть кнопка выгрузки данных) кто выгружает на данный момент данные.
		 | 
|  | 
|  12.12.2007, 12:32 | #13 | 
| Участник | Цитата:  Цитата: Код: дата, время, код сессии, код пользователя, выгрузка начата ... дата, время, код сессии, код пользователя, выгрузка завершена | 
|  | 
|  12.12.2007, 15:42 | #14 | 
| Участник | 
			
			Всем спасибо, написал класс, который инсертит записи в таблицу логирования, прикрутил его к определенным событиям формы, с обработчиком ошибок. Тема закрыта.
		 | 
|  | 
|  12.12.2007, 16:00 | #15 | 
| Banned | 
			
			Просто задам вопрос, для истории. Вы, Antonuch, являетесь IT-администратором в компании, использующей Аксапту? Предположил просто исходя из постановки задачи: решать организационные задачи техническими средствами.
		 | 
|  | 
|  12.12.2007, 16:11 | #16 | 
| Участник | 
			
			Не совсем, нами написан проект, который выгружает данные для последующей подачи отчетов. При выгрузке этих данных, блокируется таблица InventTrans поэтому в качестве рекомендаций, были даны указания проводить загрузку либо утром, либо вечером (работающих в системе более 400 человек) Нужно было отмониторить, кто доброссовестно выполняет указания, кто нет))).Поэтому я решил посоветоваться, может кто и сталкивался с подобной проблемой.Простые административные функции не совсем подошли.
		 | 
|  | 
|  12.12.2007, 16:29 | #17 | 
| NavAx | Цитата: 
		
			Сообщение от Antonuch
			   Не совсем, нами написан проект, который выгружает данные для последующей подачи отчетов. При выгрузке этих данных, блокируется таблица InventTrans поэтому в качестве рекомендаций, были даны указания проводить загрузку либо утром, либо вечером (работающих в системе более 400 человек) Нужно было отмониторить, кто доброссовестно выполняет указания, кто нет))).Поэтому я решил посоветоваться, может кто и сталкивался с подобной проблемой.Простые административные функции не совсем подошли. | 
|  | 
|  12.12.2007, 16:31 | #18 | 
| Участник | 
			
			а что если с выгружаемыми данными сохранять дату/время выгрузки и даже печатать их на тех самых отчетах?
		 | 
|  |