Удобная "выгонялка" пользователей из 1С без доработок кода

06.03.13

Разработка - Инструментарий разработчика

Удобная выгонялка пользователей из 1С без доработки конфигурации.

Скачать файлы

Наименование Файл Версия Размер
KillUsers-v2.2.rar
.1205240188 405,56Kb
2805
.1205240188 405,56Kb 2805 Скачать
KillUsers-v2.1.rar
.1182254071 339,13Kb
3318
.1182254071 339,13Kb 3318 Скачать

!Внимание! Тестировал только на 25-ом релизе!
Патчим 1С (seven.dll) и у нас готовая выгонялка пользователей. Управляется одним движением мыши по значку 1С в трее (появляется когда открываем конфигуратор), после чего у пользователей идет оповещение в трее и в заголовке окна о том что 1С будет закрыто через 5 минут. Идет отсчет времени. Для тех кто попытался зайти будет выведено предупреждение и пользователь не будет допущен в базу пока не будет отменена блокировка базы.
Исходники прилагаются.
Основано на разработках romix, за что ему огромное человеческое спасибо!

* 11.03.08 Добавил возможность настраивать выполнение произвольных команд до блокировки и после (например net send * "Можно заходить в базу", test.cmd и т.д.) Если указать путь к файлу как .\test.cmd то запуск будет из каталога ИБ.
Добавил возможность отключения иконки в трее. может потребовать если надо запускать конфигуратор в пакетном режиме. Надо просто создать файл notray в каталоге ИБ.
* 22.06.07 Добавил возможность настраивать выводимое сообщение и время ожидания в сек.
После закрытия баз dbf версии не требуется заново индексировать базу.
* 01.11.07 Исправлена ошибка при закрытии монитора и 1С в режиме заблокированной базы.

См. также

Консоль запросов

Инструментарий разработчика Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Консоль запросов к базе SQL, не требующая внешних компонент

10 стартмани

29.04.2015    21529    54    Gvozdod    8    

14

StartManager 1.4 - Развитие альтернативного стартера

Инструментарий разработчика Платформа 1С v7.7 Платформа 1С v8.3 Абонемент ($m)

Очередная редакция альтернативного стартера, являющегося продолжением StartManager 1.3. Спасибо всем, кто присылал свои замечания и пожелания, и тем, кто перечислял финансы на поддержку проекта. С учетом накопленного опыта, стартер был достаточно сильно переработан в плане архитектуры. В основном сделан упор на масштабируемость, для способности программы быстро адаптироваться к расширению предъявляемых требований (т.к. довольно часто просят добавить ту или иную хотелку). Было пересмотрено внешнее оформление, переработан существующий и добавлен новый функционал. В общем можно сказать, что стартер эволюционировал, по сравнению с предыдущей редакцией. Однако пока не всё реализовано, что планировалось, поэтому еще есть куда развиваться в плане функциональности.

1 стартмани

23.04.2014    165609    1863    Alexoniq    1596    

496

Tray Informer

Инструментарий разработчика Платформа 1С v7.7 Платформа 1С v8.3 Россия Абонемент ($m)

Согласитесь, что окно стандартное сообщений в 1С иногда приносит больше неудобств, чем пользы. И тем более разные "Предупредить"... Что с этим окном только не делают! Его отцепают от формы, делают маленьким, умудряются спрятать за границы экрана. А потом звонят программистам с претензией, что документ почему-то не проводится, отя ничего и не пишет. У вас такого не было? А вот у нас было и не раз )))

1 стартмани

04.09.2013    32868    61    O-Planet    78    

49

Изменение структуры баз 1С 7.7 без долгой реструктуризации. Часть 1. Справочники

Инструментарий разработчика Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

На днях встретил вопрос на форуме про возможность внесения изменений в конфигурацию без долгого сохранения в рабочей базе большого объема. Вот решил поделиться опытом, как это делал я. База у нас была объемом порядка 120 Гб. К базе обращался сайт в режиме 24/7, поэтому важно было быстро сохранять изменения и желательно без последующего монопольного запуска для восстановления индексов и процедур и без отключения пользователей от базы. Это первая часть статьи и посвящена она справочникам. С одной стороны - это самый простой объект, с другой стороны, именно про справочник спрашивалось на форуме. Если статья будет востребована, то я напишу аналогичные про документы, регистры и может еще что.

1 стартмани

13.08.2013    21180    Reptile    5    

35

v7.7 1CDialogControls: Инструмент в помощь разработчику на 7.7.

Инструментарий разработчика Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Давным давно, когда я еще плотно писал на 7.7 работа с формами была мучительной и неудобной. Приходилось каждый элемент выкладывать, выравнивать на форме ручками, прописывать код в модуле. Иногда при разработке очередной формы приходила в голову мысль: "а где-то я уже похожее делал..." и начинался мучительный поиск подходящего кода в своих запасах........

1 стартмани

21.02.2013    18023    35    MarSeN    14    

16

[Разработчику] Любая таблица значений в OLAP

Инструментарий разработчика Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Анализируем различные данные в 1С, используя OLAP-технологии со всеми прелестями. Т.е. наглядное отображение данных, быстрые расчеты, горизонтальные и вертикальные группировки любой вложенности, удобная фильтрация, Drag'n'Drop и ещё много приятных вещей от MS. Обработка на входе принимает практически любую таблицу значений (ТЗ в которой колонкам указаны типы значений, строка, число и т.п.), на выходе имеем на форме 1С сводную таблицу и график по этой ТЗ, с которой работаем, как и в Excel со сводной таблицей и диаграммой. Взял за основу разработку «OLAP Анализ счёта» ( http://infostart.ru/public/14964/ ) от JohnyDeath и переделал под любую ТЗ. Опционально используется «Прогресс бар для 1С 77» (http://infostart.ru/public/14061/ ) от Gmix.

1 стартмани

21.12.2012    36095    51    venger    7    

23

Библиотека кода 1С 7.7 (накопленная за 8 лет)

Инструментарий разработчика Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Весь код на 1С 7.7, собранный для повторного использования за 8 лет работы.

10 стартмани

25.11.2012    34944    248    adhocprog    51    

70
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. 25.01.07 14:15 Сейчас в теме
;) .. синтаксис русского языка сложней дается чем Delphi
2. andrewalexk 25.01.07 13:36 Сейчас в теме
:)
значит говоришь юзерам "поробуйте"...?.
хехе
3. quick 583 06.02.07 09:10 Сейчас в теме
Нашел ошибку при блокировке базы. Можно скачивать пробовать, так же выложил исходники.
4. -Alfa- 26.01.07 10:39 Сейчас в теме
Комплексная конфигурация 1С 7.7, база в формате DBF, выполнил все инструкции, файл seven.dll успешно пропатчен, при запуске конфигуратора появляется значек в трее. Но ни один пользователь не получает сообщений, база не блокируется. Подскажите, если были похожие случаи, что я мог неправильно сделать
5. quick 583 26.01.07 12:46 Сейчас в теме
Не возникало такой проблеммы по крайней мере на 24 и 25 релизе. Возможно вы забыли пропапчить 1С у пользователей ;).
6. quick 583 26.01.07 12:48 Сейчас в теме
На сайте обновление.
* исправлено "поробуйте" -> "попробуйте"
:))
7. -Alfa- 26.01.07 14:22 Сейчас в теме
Пропатчил у пользователей, ни один не видит сообщений, на одной из машин под управлением Windows 2000, даже не отображается значек в трее, (если запустить на ней 1С в режиме конфигуратора)
8. akm-76 01.02.07 07:28 Сейчас в теме
А в терминале будет работать?
9. VV 01.02.07 11:09 Сейчас в теме
Ради интереса проделал все предложенное.
1. В базу, пока не закомментировал в ини строку, зайти больше не смог - не пускала, хотя несколько раз нажимал Разблокировать.
2. Срубает некорректно - потом переиндексировать надо.
3. В терминале будет работать?
10. quick 583 01.02.07 11:24 Сейчас в теме
интересно а у остальных 270 работает? :)
11. idw 343 13.04.07 09:01 Сейчас в теме
А можно сделать так, чтобы самому в настройках можно было выставлять время, через которое база 1С будет закрыта?
12. egles 26.04.07 09:41 Сейчас в теме
13. support 4484 26.04.07 10:22 Сейчас в теме
Почему здесь нет скриншотов?
14. egles 28.04.07 11:08 Сейчас в теме
Хорошо бы если этот проект имел продолжение, идея заключается в том что в терминальном режиме пользователи порой просто нажимают на крестик в правом верхнем углу экрана какбы закрыв терминал и довольные хотелось бы чтобы обработка проверяла активность пользователей, т.е. допустим если изменений в док, или в справочниках и т.д. нет более 30 минут дата завершить работу пользователей и хорошобы показывала список текущих пользователей - вот такие пожелания к этому проекту!
P/S не смог посмотреть скриншоты и не понял как работает открыть и закрыть базу. Единственное када в конфигураторе решил применить изменения тада вылезает сообщение у пользователей о вынужденном закрытии!
15. anagkh 22.06.07 15:51 Сейчас в теме
16. Abadonna 3958 23.06.07 10:04 Сейчас в теме
За unit PatchMemory - бАААлшое спасибо.
Windows.TerminateProcess(Windows.GetCurrentProcess,1); - наверное, все-таки некорректно: 1С будет завершена аварийно.
+1

17. Abadonna 3958 23.06.07 11:48 Сейчас в теме
Благодаря одной твоей "ошибочке" при выкладывании исходников
пришлось качнуть JEDI VCL, коими остался очень доволен :)
Так что еще +10 в уме ;)
18. quick 583 25.06.07 11:39 Сейчас в теме
http://www.delphi-jedi.org/ - компоненты необходимые для проекта (только для разработчиков).
19. artbear 1447 15.10.07 15:50 Сейчас в теме
+1
А нельзя ли добавить возможность программного управления блокировкой/разблокировкой?
20. quick 583 16.10.07 12:38 Сейчас в теме
(19) Легко. Блокировка это создание файла в папке с базой block.lck, разблокировка соответсвенно это его удаление. Можно создавать файл средствами 1С. Создается ещё файл в каталоге ИБ locker.ini для спецификации сообщения и таймаута (он не обязателен). Можно ещё выгонять из конфигуратора :) config.lck, сделано для любителей оставить конфигуратор на ночь.
21. Voldemar 1 22.10.07 15:41 Сейчас в теме
Нечто подобное делал собственными средствами 1С. Есть вполне достойная команда "ЗавршениеРаботыСистемы", которая корректно завершает работу пользователя. Необходимость выхода конкретного пользователя/группы пользователей/всех пользователей записывается в отдельный файл. От каждого пользователя контролируется наличие этого файла, для чего в глобальном модуле пишем "ОбработкаОжидания("ПроверкаОстановки",30);" и с интервалом 30 секунд запускается процедура "ПроверкаОстановки()", которая и проверяет наличие этого файла. Ну а дальше - дело техники. Образец моего использования могу выложить для желающих. P.S. эту же обработку использую и для рассылки сообщений. Предусмотрел и такую возможность.
vas.kif-ae; +1 Ответить
24. mihenius 83 28.11.07 12:13 Сейчас в теме
(21) А как ты выгонишь тех кто поставил блокировку? А если 1с потеряла фокус? А если формируется долгий отчет?
Обычным Звершением не обойтись ... Плюс еще штатной Обработкой ожидания тоже.
25. Abadonna 3958 28.11.07 13:14 Сейчас в теме
(24) Надо просто стараться сначала выгнать корректно, а уж если не получается - терминатором
27. mihenius 83 21.12.07 11:41 Сейчас в теме
(24) Есть еще ОбработкаОжидания Альфа, она работает ;)
22. quick 583 22.10.07 16:42 Сейчас в теме
Изначально я тоже это делал штатными средствами 1С :).
23. mdzen 238 07.11.07 19:43 Сейчас в теме
Идея хорошая. Попробовал - однако работает,
но "Патчим 1С (seven.dll) " всетаки не есть гуд (лицензию нарушаем).
Без патчей както бы обойтись.
Ну а в общем +1
26. quick 583 28.11.07 15:43 Сейчас в теме
Блокировка, фокус, долгий отчет это все ерунда.. килим с процессов!! :) хотя выгнать корректно конечно бы не мешало, если кто кусок кода пришлет как это сделать, то добавлю.
28. highlander 05.02.08 15:02 Сейчас в теме
У меня огромная просьба по данному вопросу. У кого работает эта утилитка сбросьте пожалуйста пропатченную dll-ку и все что необходимо. А то я уже второй день маюсь. Все к чему я пришел - это значок в трее, при нажатии на который выскакивает указанное меню. Но в меню когда я выбираю комманду разблокировать - абсолютно ничего не происходит. И пользователи продолжают свою работу. 1С 7.70.020 Win2003 Serv. Может проблема в релизе? Может обновить до 24 или 25?
29. quick 583 28.02.08 11:37 Сейчас в теме
У всех пользователей надо так же пропатчить 1С.
30. kordell 49 09.04.08 23:24 Сейчас в теме
Большое спасибо. Давно искал нечто достойное. Работает на 27-ом SQL замечательно.
31. pectopatop 11.06.08 17:53 Сейчас в теме
+1
особенно учитывая вопрос artbear и ответ на него.
т.е. и без конфигуратора можно выгонять - а потом например копировать папку базы...
но и глюки тоже есть - программа по ходу своих ругательств "До закрытия осталось .. !" меняет заголовки всяких левых окон, например, у моей открытой в то же самое время Оперы заголовок стал "До закрытия 1С осталось ... " и у Тотал Коммандера.
WinXP SP2, старая, сильно заюзаная.
34. quick 583 15.06.08 17:45 Сейчас в теме
(31) Заголовки сделаны специально для терминальных пользователей у которых нет трея.
32. pectopatop 11.06.08 17:58 Сейчас в теме
+ и второй еще глюк я заметил - если из конфигуратора запускать блокировку (например через 5 мин), а за это время выйти из Конфигуратора, то:
1. база не блокируется, т.е. заходить в нее можно будет
2. но при выходе из таких "нелеальных" сессий платформа 1С ругается "RunTime Error! ...". И так - пока не снимем блокировку. Потом корректно закрывается платформа.
1С 7.7.25 SQL. база ДБФ.
33. pectopatop 11.06.08 17:59 Сейчас в теме
35. zarius 184 24.07.08 14:28 Сейчас в теме
отличная вещь! спасибо! + 1 (+100 в уме)
кто нибуть пробывал это дело на большом количестве пользователей? есть какие нибуть "баги" (или "фичи") использования на настоящий момент?
36. Sergey03 29.07.08 06:18 Сейчас в теме
Работает только с правами администратора, а если у пользователя права в системе "Пользователи" то 1с не запускается.
37. Automatik 914 10.09.08 09:33 Сейчас в теме
Зачем две версии выложено? Какая из них "более рабочая"? У меня версия 2.2 и не работает. Почему бы автору не протестировать на 27 релизе платформы?
Обнаружены косяки: у меня платформа 27, Win XP, пользователи могут заходить в базу после блокирования. После разблокирования остаются заголовки "Осталось ..." - это некорректно.
Во всех окнах такие же сообщения. Есть пожелание: поставил блокировку - появляется галка. А то непонятно в каком состоянии база.
38. serg_13 09.10.08 12:36 Сейчас в теме
В самописной базе в терминале не прокатывает, помогите разобраться
39. quick 583 11.10.08 01:05 Сейчас в теме
>>В самописной базе в терминале не прокатывает, помогите разобраться
Не зависит от того самописанная база или нет. Релиз должен быть 25, на нем тестировал.
И 1С должна быть пропатчена обязательно у ВСЕХ пользователей, иначе они смогут заходить :)
40. ОбнажЁнная_Маха 1318 04.12.08 15:46 Сейчас в теме
Ох, спасибо! Очень удобная штучка! :)

(39) Как вариант - можно 1С пропатчить только у себя и тут же зайти в нее монопольно! Своим телом, так сказать, прикрыть... Тогда уж точно никто не пройдет! :D
41. mikukrnet 181 17.12.08 15:52 Сейчас в теме
Не работает под 27 в терминале обычном
42. GreenFox 24.03.09 10:23 Сейчас в теме
Большое спасибо на 27-м релизе работает просто супер
43. пользователь 08.05.09 23:39
Сообщение было скрыто модератором.
...
44. пользователь 08.05.09 23:59
Сообщение было скрыто модератором.
...
45. mike_matros 26.05.09 08:38 Сейчас в теме
на 27 релизе работает? ваще никакой иконки даж не появляицо!!!!!!
46. Kazimar 08.09.10 14:02 Сейчас в теме
Все работает супер, кроме одного "НО". Почему-то когда база заблокирована, я сам вхожу, тестю и т.д., а потом при выходе из 1С вылетает ошибка и закрывается из ошибкой (одним словом "Вылетает" при закрытии)
47. Kavar 89 06.10.10 10:51 Сейчас в теме
на 27 релизе не заработало.
Никакой реакции на "Заблокировать базу"
48. andersss 26.09.11 09:44 Сейчас в теме
49. quick 583 27.09.11 09:02 Сейчас в теме
andersss пишет:
И у меня не работает

Реакция не будет моментальная. Проверка на файл блокировки происходит один раз в минуту. Т.е. поставил блокировку и жди минимум минуту. Важно! У конечных пользователей 1С тоже должна быть пропатчена.
50. andersss 06.10.11 20:16 Сейчас в теме
Что то уменя не получилось с этой выгонялкой
51. tmm 13.10.11 10:05 Сейчас в теме
Вообще-то неудобно. Отказался.
52. AlekseiLeit 9 14.11.11 17:06 Сейчас в теме
53. tmm 30.11.11 13:02 Сейчас в теме
54. keyloger 05.12.11 12:32 Сейчас в теме
А если сидят пользователи через терминал в линухе , это сообщение будет им отобраджаться и будет их выкидывать?
55. keyloger 05.12.11 12:36 Сейчас в теме
И еще вопрос по теме , если ты к примеру пропатчил в папке бин все как в инструкции, будет ли работать утилита, если просто папку bin скопировать на другие машины :)
56. SnegAvik 12.12.11 17:08 Сейчас в теме
Где то выше писали про ОбработкуОжидания, это на самом деле проще и работает более корректно нежели через патченые *.dll потому что в 1с есть все что нужно
57. пользователь 13.03.12 13:36
Сообщение было скрыто модератором.
...
58. shurix 01.06.12 20:04 Сейчас в теме
Пару вопросов:
- Работает ли ваша "выгонялка" с Секретным Релизом 1С? Например, вот эта ( http://es-work.narod.ru/projects.htm#KillUsers ), весьма похожая на вашу по скриншотам, не работает.
- Работает ли она с RemoteApps? Т.е. интересует, куда будет выводится предупредительное сообщение, если трэя как такового просто не будет
59. shurix 03.06.12 00:36 Сейчас в теме
Сам спросил - сам ответил :-). Представляю небольшой отчёт по ляпам и ошибкам:
1) с RemoteApps можно использовать лишь самую старую версию "выгонялки", которая вместо сообщения из трэя показывает предупредительное окошко на полэкрана. Эта версия еще тут сохранилась - http://kb.mista.ru/article.php?id=446

2) Принцип блокировки базы действует так: при входе в режиме Конфигуратор в каталоге базы создается файл 1Cv7.LCK. Если выбирается "Заблокировать базу", то там же создается еще один файл block.lck
В 2.х туда записывается имя win-пользователя, который включил блокировку базы. Именно поэтому в 2.х под одним и тем же блокировка базы не работает (впрочем, можно отредактировать этот файлик, благо сам он не залочен, и убедиться, что блокировка работает :-). В версии 1.х файл block.lck пустой, поэтому блокирование базы работает и под этим же пользователем.

3) Вкупе с Секретным Релизом всплывает глюк, который не позволяет использовать эту "выгонялку" - при запуске Конфигуратора файл 1Cv7.LCK создается, однако иконка в трэе не появляется. По крайней мере, в Win2008 SP1 (x86) и Win2008 R2. Если ручками создать файл block.lck, то блокировка базы работает.

Вот, собственно, и всё. Остается сделать "видимость" иконки в трэе в Секретном Релизе, а заодно сделать опцию выбора вида уведомления - обычным окошком или пузырём из трея.
60. shurix 03.06.12 18:52 Сейчас в теме
"Костыль" для использования вместе с Секретным Релизом (может кому понадобится):
создаёте два батника и запуском их осуществляете блокировки/разблокировки базы.

rem Заблокировать базу
echo . > Путь_к_1с_базе\1Cv7.LCK
echo %Username% > Путь_к_1с_базе\block.lck


rem Разлокировать базу.cmd
if exist Путь_к_1с_базе\block.lck del /Q Путь_к_1с_базе\block.lck
if exist Путь_к_1с_базе\1Cv7.LCK del /Q Путь_к_1с_базе\1Cv7.LCK
61. Alexander78 4 08.08.12 17:20 Сейчас в теме
Спасибо. Оченб пригодилось.
62. klif 5 05.12.12 08:30 Сейчас в теме
Вопрос.
Killuser 1.0.0.16 , релиз 27. win2008 R2. В трее есть, файл block.lck появляется, пользователей не выкидывает. Раньше на win 2003 проблем не было!
63. LanaSN 12.09.13 14:55 Сейчас в теме
Спасибо, очень удобная обработочка!
64. flash82 18.06.14 12:11 Сейчас в теме
Когда то давно искал что то подобное.... потом реализовал стандартными средствами...
65. ManyakRus 483 13.11.15 15:27 Сейчас в теме
чё-то как-то глючит
сначала выгонялка работало иногда,
а теперь вообще не работает Win2008 R2 Terminal
в том числе все версии программы
Оставьте свое сообщение