AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 20.04.2012, 10:18   #1  
wermah is offline
wermah
Осваиваю Axapta 3.0
 
2 / 10 (1) +
Регистрация: 20.04.2012
Как узнать кто использует определенную форму
Как программно узнать кто использует определенную форму (т.е. у кого она открыта) узнать нужно по имени в аксапте или по имене пк
Или это можно сделать как то стандартными средствами?
Старый 20.04.2012, 10:20   #2  
lev is offline
lev
Ищущий знания...
Аватар для lev
Oracle
MCBMSS
Axapta Retail User
 
1,723 / 491 (20) +++++++
Регистрация: 18.01.2005
Адрес: Москва
Цитата:
Сообщение от wermah Посмотреть сообщение
Как программно узнать кто использует определенную форму (т.е. у кого она открыта) узнать нужно по имени в аксапте или по имене пк
Или это можно сделать как то стандартными средствами?
Стандартного метода не знаю (вроде нет такого).
Можно немного допрограммировать и организовать лог открытия и закрытия формы по пользователям, ПК и пр.
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с)
С Уважением,
Елизаров Артем
Старый 20.04.2012, 14:39   #3  
BOAL is offline
BOAL
Участник
Аватар для BOAL
MCBMSS
Злыдни
1C
Лучший по профессии 2015
 
621 / 453 (17) +++++++
Регистрация: 28.04.2003
Адрес: Москва
Тема про лог была уже, нужно поиском поискать пример кода
Мы это развили и сделали логирование настраиваемым:
- конкретного пользователя
- конкретную форму (иногда нужно знать, кто вообще ей пользуется и как часто)
Старый 20.04.2012, 14:55   #4  
wermah is offline
wermah
Осваиваю Axapta 3.0
 
2 / 10 (1) +
Регистрация: 20.04.2012
Я перед созданием темы искал поиском и не нашел, не могли бы вы дать ссылочку на код?
Старый 20.04.2012, 14:58   #5  
pitersky is offline
pitersky
северный Будда
Аватар для pitersky
Ex AND Project
Соотечественники
 
1,508 / 432 (18) +++++++
Регистрация: 26.09.2007
Адрес: Солнечная система
а что сложного? создаёте таблицу лога форма-юзер-дата-время, далее на ините формы пишете в эту таблицу. и всё
__________________
С уважением,
Вячеслав
Старый 20.04.2012, 15:09   #6  
Lucky13 is offline
Lucky13
Участник
1C
 
714 / 198 (8) ++++++
Регистрация: 21.10.2004
Добавьте в метод класс SysSetupFormRun::init что-то типа:
X++:
FormCallLog::add(this.name());
FormCallLog - таблица лога, add - статический метод, который пишет в лог передаваемый ему параметр. Как создать таблицу и метод думаю сами разберетесь. И не забудьте включить поле CreatedBy у таблицы.

Тогда в лог будет записываться кто какую форму открыл, а не только определенную
Старый 02.05.2012, 08:06   #7  
Player1 is offline
Player1
Участник
Самостоятельные клиенты AX
 
306 / 137 (5) +++++
Регистрация: 21.04.2008
;)
Цитата:
Сообщение от BOAL Посмотреть сообщение
Тема про лог была уже...
Да тема была Кто работает с формой
Задача немного не про то, чтобы хранить кто заходил в форму, а узнать в данный момент времени кто в ней. Вплоть до нажания кнопки на форме и получения списка "сидящих" в ней сейчас)) (уточняю ТЗ)

Очень близко к этому работает механизм синхронизации, он ведь определяет кто "мешается" синхронизировать. Хотя опять же он определит только кто занял таблицу.
Старый 02.05.2012, 09:41   #8  
Zabr is offline
Zabr
Участник
Axapta Retail User
 
1,202 / 345 (14) ++++++
Регистрация: 26.06.2002
Адрес: Москва
Цитата:
Сообщение от Player1 Посмотреть сообщение
Задача немного не про то, чтобы хранить кто заходил в форму, а узнать в данный момент времени кто в ней.
А какая разница? Пишите в лог отдельно вход и отдельно выход: если зашел, но не вышел, значит в данный момент в ней.
Старый 02.05.2012, 14:41   #9  
Player1 is offline
Player1
Участник
Самостоятельные клиенты AX
 
306 / 137 (5) +++++
Регистрация: 21.04.2008
Цитата:
Сообщение от oip Посмотреть сообщение
- Пользователь может открыть одну и ту же форму два раза.
- Пользователь может просто перезагрузить компьютер и тогда никакой ваш метод close не отработает.

Так что таким образом вы не получите список пользователей, у которых в данный момент открыта ваша форма.
это из прошлого обсуждения
Старый 02.05.2012, 15:15   #10  
DmitryK is offline
DmitryK
Участник
 
179 / 76 (3) ++++
Регистрация: 22.12.2011
А не достаточно ли Вам сделать вызов CurUserId(); в ините или ране формы?

C уважением, Дмитрий.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
axforum blogs: как узнать код ошибки при подключении к базе? Blog bot DAX Blogs 0 24.02.2012 10:11
Можно ли редактировать форму, если на нее наложен addRange? Hans DAX: Программирование 10 22.05.2006 16:35
Как узнать сотрудника для текущего пользователя? Хилари DAX: Программирование 3 28.04.2004 12:25
Можно ли узнать ширину колонки в Grid? Maxim Gorbunov DAX: Программирование 1 05.07.2002 18:52
Проблема - не получается редактировать форму shestakov DAX: Программирование 1 18.12.2001 13:32
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 11:10.