Переключение на Главную Страницу Страницы: [1]  ОтправитьПечать
Очень популярная тема (более 25 ответов) Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>) (число прочтений - 9257 )
simply
God Member
*****
Отсутствует


Мечта: избавиться от 1С

Сообщений: 573
Местоположение: Киев
Зарегистрирован: 31. Декабря 2008
Пол: Мужской
Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
10. Сентября 2010 :: 06:22
Печать  
Вопрос на основе темы "Сервис::ПолучитьСписокПользователей(КаталогИБ)"
http://www.1cpp.ru/forum/YaBB.pl?num=1283954522

Уважаемые FormEx developers!
Можно добавить в FormEx такой метод?


У vip есть его решение на VBA VB6:

vip писал(а) 09. Сентября 2010 :: 14:58:
Код
Выбрать все
Dim k As Long
Dim SA As SECURITY_ATTRIBUTES
Dim lngHandle As Long
Dim TextLine As String

retVal = ""

lngHandle = CreateFile(ParamVal(0), &H80000000 Or &H40000000, &H1 Or &H2, SA, 3, 0, 0)

Open ParamVal(0) For Input As #1
k = -1
Do While Not EOF(1)
    Line Input #1, TextLine
    TextLine = Mid(TextLine, 1, 100)
    If Mid(TextLine, 1, 6) = "{" & """" & "Name" Then
    k = k + 1
    
	  If LockFile(lngHandle, 2000001 + k, 0, 1, 0) = False Then
    TextLine = Mid(TextLine, 7)
    TextLine = Replace(TextLine, """", "")
    TextLine = Replace(TextLine, "}", "")
    TextLine = Replace(TextLine, ",", "")
    retVal = retVal & TextLine & ";"
	  Else
    UnlockFile lngHandle, 2000001 + k, 0, 1, 0
	  End If
    End If
Loop

Close #1
CloseHandle lngHandle 


З.Ы.: сорри за VBA, не разобрался ...
« Последняя редакция: 10. Сентября 2010 :: 19:37 - simply »  
Наверх
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #1 - 10. Сентября 2010 :: 07:42
Печать  
Если кто-то будет делать в ВК, прикладываю мою си-реализацию.
Основана на штатных средствах самой платформы.

ps
Думаю Артур знаком с применяемыми мной шаблонами и внедрить этот код например в formex ему не составит труда.
  

Monitor.zip ( 22 KB | Загрузки )

1&&2&&3
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #2 - 10. Сентября 2010 :: 07:55
Печать  
и если интересно, вариант "выгонялки" с применением ВК на основе этого кода.
  

1_005.zip ( 33 KB | Загрузки )

1&&2&&3
Наверх
 
IP записан
 
simply
God Member
*****
Отсутствует


Мечта: избавиться от 1С

Сообщений: 573
Местоположение: Киев
Зарегистрирован: 31. Декабря 2008
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #3 - 10. Сентября 2010 :: 08:00
Печать  
Спасибо, trad!

З.Ы.: Получается, что не мне одному это нужно  Улыбка
  
Наверх
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #4 - 10. Сентября 2010 :: 08:24
Печать  
trad писал(а) 10. Сентября 2010 :: 07:55:
и если интересно, вариант "выгонялки" с применением ВК на основе этого кода.

выдает ошибку
Код
Выбрать все
гТЗ.Загрузить(гМонитор.ПолучитьАктивныхПользователей());
{..\АКТИВНЫЕ ПОЛЬЗОВАТЕЛИ.ERT(6)}: Значение не представляет агрегатный объект (ПолучитьАктивныхПользователей) 



Это только для скуля ?..
А чорт ..вопрос снимается, посмотрел код.
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #5 - 10. Сентября 2010 :: 10:20
Печать  
пример из #2 нужно допилить под ваше окружение Улыбка
  

1&&2&&3
Наверх
 
IP записан
 
simply
God Member
*****
Отсутствует


Мечта: избавиться от 1С

Сообщений: 573
Местоположение: Киев
Зарегистрирован: 31. Декабря 2008
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #6 - 10. Сентября 2010 :: 10:23
Печать  
trad писал(а) 10. Сентября 2010 :: 07:55:
и если интересно, вариант "выгонялки" с применением ВК на основе этого кода.

Очень интересно!
Пока в FormEx не добавят новый метод, буду пользоваться TradSys.dll!
Если автор не возражает Улыбка
  
Наверх
IP записан
 
simply
God Member
*****
Отсутствует


Мечта: избавиться от 1С

Сообщений: 573
Местоположение: Киев
Зарегистрирован: 31. Декабря 2008
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #7 - 10. Сентября 2010 :: 10:44
Печать  
trad,
у "Режима" какие значения чему соответствуют?
0 - предприятие
1 - монитор
2 - конфигуратор
3 - отладчик

так?
  
Наверх
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #8 - 10. Сентября 2010 :: 11:06
Печать  
0- монопольный
1- разделенный
2- конфигуратор
3- отладчик
4- монитор
  

1&&2&&3
Наверх
 
IP записан
 
simply
God Member
*****
Отсутствует


Мечта: избавиться от 1С

Сообщений: 573
Местоположение: Киев
Зарегистрирован: 31. Декабря 2008
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #9 - 10. Сентября 2010 :: 11:13
Печать  
trad писал(а) 10. Сентября 2010 :: 11:06:
0- монопольный
1- разделенный
2- конфигуратор
3- отладчик
4- монитор

Хоть 2 из 5 отгадал Улыбка

Спасибо!
  
Наверх
IP записан
 
АЛьФ
FormEx developer
1c++ developer
Отсутствует



Сообщений: 1538
Местоположение: Санкт-Петербург
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #10 - 10. Сентября 2010 :: 14:11
Печать  
Гляньте, плиз: http://www.dorex.ru/files/?formex_t.zip

Добавил любезно предоставленный тут код. Новый метод: Сервис.ПолучитьСписокАктивныхПользователей().
Только добавил еще второй параметр (необязательный), в который можно передать путь к сторонней базе и должен дать список активных оттуда.
  

FormEx developer
Наверх
www  
IP записан
 
simply
God Member
*****
Отсутствует


Мечта: избавиться от 1С

Сообщений: 573
Местоположение: Киев
Зарегистрирован: 31. Декабря 2008
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #11 - 10. Сентября 2010 :: 15:13
Печать  
АЛьФ писал(а) 10. Сентября 2010 :: 14:11:
Гляньте, плиз: http://www.dorex.ru/files/?formex_t.zip

Добавил любезно предоставленный тут код. Новый метод: Сервис.ПолучитьСписокАктивныхПользователей().
Только добавил еще второй параметр (необязательный), в который можно передать путь к сторонней базе и должен дать список активных оттуда.

Очень довольный АЛьФ, ОГРОМАДНЕЙШЕЕ СПАСИБО!!!  Очень довольный
И всем, кто не пожалел своих сил и времени, чтобы решить данных вопрос
  
Наверх
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #12 - 10. Сентября 2010 :: 17:43
Печать  
simply
Цитата:
У vip есть его решение на VBA

Обидеть деда легко.
Это чистейший VB6 (стиль абсолютно тупой только, как сейчас вижу).

Могу в таком же стиле дать решение для полного убирания главного меню 1С (включая пункт "Действия").
  
Наверх
ICQ  
IP записан
 
zk96
Senior Member
****
Отсутствует


1C++ rocks!

Сообщений: 320
Местоположение: Киев
Зарегистрирован: 15. Ноября 2009
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #13 - 10. Сентября 2010 :: 18:37
Печать  
АЛьФ писал(а) 10. Сентября 2010 :: 14:11:
Гляньте, плиз: http://www.dorex.ru/files/?formex_t.zip

Добавил любезно предоставленный тут код. Новый метод: Сервис.ПолучитьСписокАктивныхПользователей().
Только добавил еще второй параметр (необязательный), в который можно передать путь к сторонней базе и должен дать список активных оттуда.

Не совсем понял как работает Сервис.ПолучитьСписокАктивныхПользователей(). Попробовал и у возвращаемого значения тип значения- Число.
« Последняя редакция: 10. Сентября 2010 :: 19:50 - zk96 »  
Наверх
 
IP записан
 
simply
God Member
*****
Отсутствует


Мечта: избавиться от 1С

Сообщений: 573
Местоположение: Киев
Зарегистрирован: 31. Декабря 2008
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #14 - 10. Сентября 2010 :: 20:02
Печать  
vip писал(а) 10. Сентября 2010 :: 17:43:
Обидеть деда легко.
сорри

vip писал(а) 10. Сентября 2010 :: 17:43:
Могу в таком же стиле дать решение для полного убирания главного меню 1С (включая пункт "Действия").
Интересно.
Но что в замен? RWidjets?
  
Наверх
IP записан
 
simply
God Member
*****
Отсутствует


Мечта: избавиться от 1С

Сообщений: 573
Местоположение: Киев
Зарегистрирован: 31. Декабря 2008
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #15 - 10. Сентября 2010 :: 20:09
Печать  
zk96 писал(а) 10. Сентября 2010 :: 18:37:
Попробовал и у возвращаемого значения тип значения- Число.

И значение = 1 не зависимо от значения первого и второго (необязательного) параметров.

Исправлено будет обязательно. Подождем.
  
Наверх
IP записан
 
АЛьФ
FormEx developer
1c++ developer
Отсутствует



Сообщений: 1538
Местоположение: Санкт-Петербург
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #16 - 13. Сентября 2010 :: 07:27
Печать  
Упс... Пардоньте... Забыл break поставить Печаль
Поправил, проверьте, плиз.
  

FormEx developer
Наверх
www  
IP записан
 
simply
God Member
*****
Отсутствует


Мечта: избавиться от 1С

Сообщений: 573
Местоположение: Киев
Зарегистрирован: 31. Декабря 2008
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #17 - 13. Сентября 2010 :: 07:36
Печать  
АЛьФ писал(а) 13. Сентября 2010 :: 07:27:
Упс... Пардоньте... Забыл break поставить Печаль
Поправил, проверьте, плиз.

Спасибо!
Все отлично!
Возвращает таблицу, как у Trada.

А как дополнительным параметром пользоваться?
Первый параметр обязательный. Если указываю второй - выдает список обоих баз, даже если первый параметр = "".
  
Наверх
IP записан
 
АЛьФ
FormEx developer
1c++ developer
Отсутствует



Сообщений: 1538
Местоположение: Санкт-Петербург
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #18 - 13. Сентября 2010 :: 07:39
Печать  
simply писал(а) 13. Сентября 2010 :: 07:36:
А как дополнительным параметром пользоваться?
Первый параметр обязательный. Если указываю второй - выдает список обоих баз


Хм... Щас попробую подправить, чтобы сбрасывала список.
  

FormEx developer
Наверх
www  
IP записан
 
АЛьФ
FormEx developer
1c++ developer
Отсутствует



Сообщений: 1538
Местоположение: Санкт-Петербург
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #19 - 13. Сентября 2010 :: 07:44
Печать  
Как сейчас?
У меня самого, к сожалению, сейчас нет возможности протестировать.
  

FormEx developer
Наверх
www  
IP записан
 
simply
God Member
*****
Отсутствует


Мечта: избавиться от 1С

Сообщений: 573
Местоположение: Киев
Зарегистрирован: 31. Декабря 2008
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #20 - 13. Сентября 2010 :: 07:50
Печать  
АЛьФ писал(а) 13. Сентября 2010 :: 07:44:
Как сейчас?
У меня самого, к сожалению, сейчас нет возможности протестировать.

Работает!

Что делал и как получилось:
1)
Парам1 - своя база
Парам2 - пустой
Результат - только мои пользователи

2)
Парам1 - своя база
Парам2 - другая база
Результат - только пользователи другой базы

3)
Парам1 - пустая строка
Парам2 - другая база
Результат - как в п.2

4) все параметры пустые
результат - как в п.1
  
Наверх
IP записан
 
simply
God Member
*****
Отсутствует


Мечта: избавиться от 1С

Сообщений: 573
Местоположение: Киев
Зарегистрирован: 31. Декабря 2008
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #21 - 13. Сентября 2010 :: 07:51
Печать  
Еще раз - огромное спасибо!!!  Улыбка
  
Наверх
IP записан
 
simply
God Member
*****
Отсутствует


Мечта: избавиться от 1С

Сообщений: 573
Местоположение: Киев
Зарегистрирован: 31. Декабря 2008
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #22 - 13. Сентября 2010 :: 08:00
Печать  
Забыл описать один нюанс:
если в первом параметре передать путь к другой базе - все равно получим список пользователей своей текущей базы.
Для активных пользователей другой базы - использовать второй параметр.
  
Наверх
IP записан
 
zk96
Senior Member
****
Отсутствует


1C++ rocks!

Сообщений: 320
Местоположение: Киев
Зарегистрирован: 15. Ноября 2009
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #23 - 13. Сентября 2010 :: 15:06
Печать  
АЛьФ писал(а) 13. Сентября 2010 :: 07:44:
Как сейчас?
У меня самого, к сожалению, сейчас нет возможности протестировать.

Все работает. В возвращаемой таблице полей даже больше чем нужно. Огромное спасибо!
  
Наверх
 
IP записан
 
simply
God Member
*****
Отсутствует


Мечта: избавиться от 1С

Сообщений: 573
Местоположение: Киев
Зарегистрирован: 31. Декабря 2008
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #24 - 13. Сентября 2010 :: 16:48
Печать  
Взял на себя смелость и дополнил FormEx.als (взят с dorex.ru)
Изменено:
Изменен с учетом замечаний
« Последняя редакция: 14. Сентября 2010 :: 15:00 - simply »  

FormEx_als_ints_001.rar ( 20 KB | Загрузки )
Наверх
IP записан
 
zk96
Senior Member
****
Отсутствует


1C++ rocks!

Сообщений: 320
Местоположение: Киев
Зарегистрирован: 15. Ноября 2009
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #25 - 13. Сентября 2010 :: 18:18
Печать  
simply писал(а) 13. Сентября 2010 :: 16:48:
Взял на себя смелость и дополнил FormEx.als (взят с dorex.ru)

Спасибо. А я только подумывал als сделать, а тут еще и int'ы.
P.S. to simply. Кстати,в таблице, возвращаемой ПолучитьАктивныхПользователей 5 колонок:  Имя,Режим,Время,Компьютер, ОПИСАНИЕ.
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #26 - 13. Сентября 2010 :: 20:01
Печать  
кхм
ПолучитьСписокАктивныхПользователей(<ПутьИБТек>,<ПутьИБСтор>)
а вы уверены что первый параметр означает то что написано
  

1&&2&&3
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #27 - 13. Сентября 2010 :: 20:06
Печать  
не уверен как у Альфа, но в моем варианте (и думаю Альф не менял этого) первый параметр означает необходимость проверки прав.
0 - не проверять право текущего пользователя на Монитор
1 - проверять
  

1&&2&&3
Наверх
 
IP записан
 
simply
God Member
*****
Отсутствует


Мечта: избавиться от 1С

Сообщений: 573
Местоположение: Киев
Зарегистрирован: 31. Декабря 2008
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #28 - 14. Сентября 2010 :: 08:29
Печать  
trad писал(а) 13. Сентября 2010 :: 20:01:
ПолучитьСписокАктивныхПользователей(<ПутьИБТек>,<ПутьИБСтор>)
а вы уверены что первый параметр означает то что написано

Не уверен. Пробовал методом тыка.
Главное чтобы первый параметр был, а что туда передать? Все равно будет возвращен список активных пользователей текущей базы, при пустом втором параметре.
Я передавал пустую строку.
Со вторым параметром - аналогично - все равно что в первом, главное чтобы он был, но во втором - правильный путь к сторонней базе.

trad писал(а) 13. Сентября 2010 :: 20:06:
не уверен как у Альфа, но в моем варианте (и думаю Альф не менял этого) первый параметр означает необходимость проверки прав.
0 - не проверять право текущего пользователя на Монитор
1 - проверять

Про это я не знал, а описания не было.

Переписать не трудно. Поделитесь информацией.

З.Ы.: тоже самое и с пятой колонкой в возвращаемой таблице - перепишу.
  
Наверх
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #29 - 14. Сентября 2010 :: 08:54
Печать  
simply писал(а) 14. Сентября 2010 :: 08:29:
Переписать не трудно. Поделитесь информацией.

другой информации не имею
  

1&&2&&3
Наверх
 
IP записан
 
simply
God Member
*****
Отсутствует


Мечта: избавиться от 1С

Сообщений: 573
Местоположение: Киев
Зарегистрирован: 31. Декабря 2008
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #30 - 14. Сентября 2010 :: 11:28
Печать  
trad писал(а) 14. Сентября 2010 :: 08:54:
другой информации не имею

Тогда прошу разъяснить по точнее, что же есть первый параметр.
Флаг проверки прав на монитор? Тип: Число - 0 (не проверять) / 1 (проверять)?

Могу полюбопытствовать о причинах такой проверки?
  
Наверх
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #31 - 14. Сентября 2010 :: 12:48
Печать  
simply писал(а) 14. Сентября 2010 :: 11:28:
Тогда прошу разъяснить по точнее, что же есть первый параметр.
Флаг проверки прав на монитор? Тип: Число - 0 (не проверять) / 1 (проверять)?
да.
  

1&&2&&3
Наверх
 
IP записан
 
simply
God Member
*****
Отсутствует


Мечта: избавиться от 1С

Сообщений: 573
Местоположение: Киев
Зарегистрирован: 31. Декабря 2008
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #32 - 14. Сентября 2010 :: 15:02
Печать  
Внес изменения в FormEx.als (см. #24)
Так лучше?

З.Ы.: если честно, я так и не понимаю смысла первого параметра  Озадачен
« Последняя редакция: 17. Сентября 2010 :: 08:08 - simply »  
Наверх
IP записан
 
zk96
Senior Member
****
Отсутствует


1C++ rocks!

Сообщений: 320
Местоположение: Киев
Зарегистрирован: 15. Ноября 2009
Пол: Мужской
Re: Хотелка - Сервис::ПолучитьАктивныхПользователей(<ПутьИБ>)
Ответ #33 - 14. Сентября 2010 :: 16:22
Печать  
simply писал(а) 14. Сентября 2010 :: 15:02:
Внес изменения в FormEx.als (см. #24) ...

Спасибо большое!
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 
ОтправитьПечать