UsersLog.exe. Система полной отчетности об использовании рабочего времени пользователями. 1С, Word, Excel, Кино, Интернет, Одноклассники, ВКонтакте и т.д. Не только 1С, но и все активные окна Windows посекундно!








Система полной отчетности об использовании рабочего времени пользователями. Не только 1С, но и все активные окна Windows. Сколько времени и на что потрачено…

Клиент UsersLog.exe запускается фоном на рабочих местах пользователей. Постоянно отслеживает активное окно Windows, его заголовок и имя процесса. Все это пишется в центральную базу данных sql, dbf или Excel. Конфигурация на 1С анализирует эти данные и строит любые отчеты использования рабочего времени по пользователям. Вплоть до конкретного заголовка любого окна. В случае отключения от центральной базы (ноутбук уехал в командировку) все данные пишутся локально, а при подключении к центральной базе — перемещаются в неё. Используются только официальные и документированные функции Windows.

Вы знаете, как Стаханов стал рекордсменом?

Под его логином в шахту спускались четыре бригады…

//————————————————————————————————————————————

Быстрый запуск

Клиент
— В пустой каталог кладем UsersLog.exe и UsersLog.ini
— Блокнотом открываем UsersLog.ini
— Секция [CONNECT] параметр «String». Должен быть разремарен (не должно стоять точки с запятой в начале строки) только один из шаблонов и в нем должны быть указаны корректные данные.
По-умолчанию в файле настроек приведены три возможных ODBC строки подключения к базам данных. SQL, dbf и Excel. Все параметры в них указаны.
Для sql — перед использованием нужно создать базу данных и пользователя/пароль для подключения к ней. Таблицу клиент создаст сам.
Для dbf — перед использованием в строке соединения нужно вместо «Dbq=d:» прописать корректный путь до файла базы данных. Файл клиент создаст сам.
Для excel — перед использованием в строке соединения нужно вместо «Dbq=f:UsersLog.xls;DefaultDir=f:» прописать имя файла и путь. Файл клиент создаст сам.
— Запускаем клиента UsersLog.exe. Должно открыться окно клиента.
— Стартуем клиента (Кнопка Start). В системном трее значок программы должен стать зеленым. Если значок в системном трее остался черным, значит что-то не так с соединением с базой данных, проверям строку ODBC соединения. Также можно включить режим логирования [MAIN]WriteLog=1, перезапустить клиента и посмотреть на ошибку в C:UsersИмяПользователяAppDataLocalUsersLogUsersLog.log.
— По-умолчанию: Клиент сканирует активное окно раз в секунду и показывает это. Один раз в 10 минут пытается скинуть эту информацию в центральную базу или запомнить локально. При этом он очищает свой кеш.
— Для масштабирования на многих пользователей делаем папку общедоступной и прописываем запуск клиента всем пользователям. При этом меняем параметр в секции[MAIN]Hide=1. А база данных в строке соединения [CONNECT]String должна быть доступна всем.
— Просматриваем остальные настройки UsersLog.ini? меняем их, если нужно. (Все настройки прокомментированы в самом файле или в описании ниже)


— Поставляемый файл 1Cv8.cf содержит подсистему UsersLog, которую можно внедрить в любую конфигурацию или использовать отдельно. Для использования отдельной базы данных достаточно в пустую базу загрузить 1Cv8.cf.
— В 1С устанавливаем доступной роль логUsersLog
— Для загрузки данных из центральной базы клиента в 1С используется обработка «Загрузить users log». В ней выбирается/заполняется строка соединения с базой данных клиента, формат даты (‘yyyy-MM-dd’ для sql и #yyyy-MM-dd# для dbf), период загрузки.
— Обработка загружает данные, формирует и проводит документы «Действия пользователей».
— На основании оборотного регистра сведений «Анализ деятельности пользователей» строятся отчеты «Анализ деятельности пользователей»

//————————————————————————————————————————————
Настройка UsersLog.ini

Булевы параметры могут принимать значения 0 или 1.
[MAIN]
— Hide=0 или Hide=1 — Скрывать ли основное окно при запуске. Если будет 1, то закрыть клиента можно будет только убив процесс
— AutoStart=1 — Автоматически начинать работу при старте клиента. Если будет включен скрытый режим, то клиент тоже начнет работу, не зависимо от этого параметра
— SysTrayIcon=1 — Показывать в системном трее иконку приложения или нет. При нескрытом режиме в контектсном меню иконки можно вызвать пункт «Show» и увидеть окно клиента. При скрытом такого пункта даже не будет. Но по цвету иконки видно, есть ли соединение с базой данных. Целеный — есть. Черный — нет. В нерабочее время клиент сам отключится от базы и иконка будет черной.
— WriteLog=0 — Писать ли собственный отладочный лог. При WriteLog=1 лог будет писаться по пути C:UsersИмяПользователяAppDataLocalUsersLogUsersLog.log. Открывается блокнотом. Лог очищается при каждом старте клиента.
— BeginTime=08:00 и EndTime=20:00 — тут можно указать рабочее время, в промежутке которого ведется логирование пользователя. Т.к. клиент ведет логирование, даже отключившись от базы данных, но учитывает только дату, имеет смысл установить.

[CONNECT]
;Строка соединения с базой данных на сервере
String=ODBC;DSN=MQIS;DRIVER={SQL Server};SERVER=ИмяСервера;DATABASE=ИмяБазыДанных;UID=ИмяПользователя;pwd=Пароль;Trusted_Connection=ИспользоватьВстроеннуюАвторизациюWindows
— По-умолчанию в файле настроек приведены три возможных ODBC строки подключения к базам данных. SQL, dbf и Excel. Все параметры в них указаны.
Для sql — перед использованием нужно создать базу данных и пользователя/пароль для подключения к ней. Таблицу клиент создаст сам.
Для dbf — перед использованием в строке соединения нужно вместо «Dbq=d:» прописать корректный путь до файла базы данных. Файл клиент создаст сам.
Для excel — перед использованием в строке соединения нужно вместо «Dbq=f:UsersLog.xls;DefaultDir=f:» прописать имя файла и путь. Файл клиент создаст сам.
— TableName=UsersLog — Имя таблицы в базе данных или имя файла для файловой базы. Может изменяться только при вводе лицензии.
— ConnectAtStartup=1 — Выполнять соединение с центральной базой данных при старте или подождать указанный в настройках таймаут
— FormatDate=%Y-%m-%d — Формат даты, используемый ODBC драйвером.

[TIMER]
— Scan=1 — Интервал сканирования (сек). Один раз за это время клиент определяет активное пользовательское окно и запоминает в кеше информацию о нем.
— TimeOut=300 — Интервал простоя, после которого считается, что пользователь отошел (сек). В этом случае последние 300 секунд использования текущего окна считаются неверно истолкованными и время использования по этому окну откатывается на 300 секунд. Клиент переходит в режим ожидания. Простой определяется стандартыми API функциями GetTickCount()-GetLastInputInfo().
— Update=600 — Интервал записи данных и очистки текущего кеша (сек).
— Connect=3600 — Интервал попыток соединения с центральным сервером (сек). Если связь с центальной базой будет потеряна (Ноутбук уехал в командтровку), клиент перейдет во временный локальный режим сохранения данных. Значок в системном трее станет черный. Этот параметр отпределяет интервал, с которым клиент будет пытаться установить связь с центральной базой данных, чтобы добавить ей всю накопленную информацию.

[CLASSWINDOW]
КЛАССЫ ОКОН 1С
(Классы окон можно посмотреть, например, при помощи Spy++, входящего в поставку Microsoft Visual Studio)
Для обычных приложений клиент считывает только заголовок главного окна. Для 1С клиент углубляется в само приложение и считывает заголовки подокон, открытых в 1С (Оборотно-сальдовая ведомость, Справочник Контрагентов и т.д.). Данная секция описывает классы окон 1С:Предприятия, чтобы клиент мог по ним «спуститься» до нижнего окна.
— V8TopLevelFrame=V8TopLevelFrame|Afx:400000:0:0:0: — Имена или части имен классов окна основного приложения. Разделенные знаком «|»
— V8MDIClient=V8MDIClient|MDIClient — Имена или части имен клиентского окна рабочего стола приложения. Разделенные знаком «|»
— V8MDILocalFrame=V8MDILocalFrame|Afx:400000:b:10003:6: — Имена или части имен подчиненного локального окна. Разделенные знаком «|»

[APPLICATIONS]
— MakeUpApplicationName=0 — Делать имена приложений большими буквами при записи в базу данных. На различных компьютерах и операционных системах WinWord и WINWORD могут отличаться. Параметр используется, чтобы потом можно было сложить эти значения.
— SkipApplications = mtsc — Имена или части имен приложений, которые нужно пропускать. Разделенные знаком «|».
— SkipWindows = Секрет|Банк|клиент — Имена или части имен окон, которые нужно пропускать. Разделенные знаком «|»

 

//————————————————————————————————————————————
Клиент UsersLog.exe

— Все настройки клиента хранятся в файле UsersLog.ini
— Файл настроек UsersLog.ini должен находиться рядом с UsersLog.exe и иметь то же название, что и клиентское приложение (в случае переименования exe, нужно переименовать и ini файл)
— Файл настроек UsersLog.ini редактируется обычным блокнотом
— Значения из файла настроек берутся клиентом при запуске и после этого не считываются
— Клиент запускается под именем пользователя, без каких-либо особенных прав
— Клиент считывает заголовки окон, имена приложений и т.д. при помощи документированных и легальных API функций
— Клиент с одним и тем же именем отслеживает себя и не может быть запущен дважды (если нужно, то придется менять имя исполняемому файлу)
— Для работы клиента на sql база данных, прописанная в настройках должна быть создана, таблицы создавать не нужно, клиент сделает это сам
— Для работы в dbf режиме у пользователя должны быть права на создание файлов в директории, указанной в строке соединения [CONNECT] String
— Текущая версия программы рассчитана на небольшую фирму и ограничена ведением журнала на 5 пользоватлелей и невозможность изменить имя таблицы

//————————————————————————————————————————————
28.01.2024

Обновлен файл конфигурации:

— Обработка «Загрузка users log» может загружать данные из dbf файла штатным 1С средством XBase dBase III. Для этого в строке соединения нужно указать путь к файлу, а имя таблицы будет именем файла (.dbf дописывать в имя таблицы не нужно). Метод работает только для файлового режима запуска 1С.

— Работает выбор и сохранения вариантов отчета.

//————————————————————————————————————————————
30.01.2024

Обновлено. Клиент 1.2.1.6. Косметические изменения …

— Добавлена возможность сворачивать при старте в любом режиме.

— Исправлена ошибка с расчетом простоя «рабочего времени» после 00:00 часов

— Исправлена небольшая «утечка памяти» в режиме самологирования.

— По закрытию окна — сворачивание в трей.

— Для закрытия приложения не в скрытом режиме — отдельная кнопка.

— В демобазе заполнена общая область начальной страницы …

 


76 Comments

  1. V_V_V

    Как сильно клиент грузит систему? Есть ли проблемы с совместимостью для ХР, 7, 8? Более 5-ти пользователей — платно?

    Reply
  2. Kis_s

    (1) V_V_V,

    Вообще не грузит …. он же считывает только активное окно ….

    Плюс всю информацию хранит в памяти и только раз в [TIMER]Update=600 секунд обращается к базе (обычно раз в 10 минут) или к диску

    Проблем совместимости не замечено … проверено на XP, Win7 x86, Win7 x64 ….

    Более 5 клиентов — версия будет попозже …

    Reply
  3. 911service

    Это уже вмешательством в личную жизнь папахивает. Перерывы на работе необходимы и работодателю знать о них не обязательно. Кто-то курить выходит, кто-то на обед, кто-то в соц.сетях посидит.

    Reply
  4. script

    У меня не работает запись в файл.

    Настроил по минимому — файл не появляется и значек в трее не зенелеет.

    Мой раздел конект в ини файле. больше ничего не менял.

    Запустил под правами админа

    [CONNECT]

    ;Строка соединения с базой данных на сервере

    ;sql

    String=ODBC;DSN=MQIS;DRIVER={SQL Server};SERVER=ИмяСервера;DATABASE=ИмяБазыДанных;UID=ИмяПользователя;pwd=Пароль;Trusted_Connection=ИспользоватьВстроеннуюАвторизациюWindows

    ;dbf

    String=Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=I:;

    ;excel

    ;String=Driver={Microsoft Excel Driver (*.xls)};DriverId=790;Dbq=f:UsersLog.xls;DefaultDir=f:;ReadOnly=0;

    Reply
  5. script

    Вот Лог

    26-01-2015 16:51:26 —————————————————————————————

    26-01-2015 16:51:26 Start

    26-01-2015 16:51:26 Initialization

    26-01-2015 16:51:26 Add SysTrayIcon

    26-01-2015 16:51:26 String connection: ODBC

    26-01-2015 16:52:27 Click OK button

    26-01-2015 16:52:27 SetTimer SCAN

    26-01-2015 16:52:27 SetTimer UPDATE

    26-01-2015 16:52:27 SetTimer CONNECT

    26-01-2015 16:52:27 Timer CONNECT

    26-01-2015 16:52:27 Start connect database…

    26-01-2015 16:52:27 Opening database…

    26-01-2015 16:52:27 Error connect database: Источник данных не найден и не указан драйвер, используемый по умолчанию Недопустимый атрибут строки соединения

    26-01-2015 16:52:27 StartTimer CONNECT

    Reply
  6. Kis_s

    (3) 911service,

    Рабочее время выставляется в настройках. Обеденные простои машины тоже учитываются. Отчеты, в основном, делаются по запущенным приложениям, а не по заголовкам окон — их можно и не считывать. Остальное — на усмотрение руководства. Сам использую для себя, чтобы понять на какие терминальные сессии или работы сколько времени потрачено…

    (5) script,

    Неверная строка ODBC …. у Вас разремарена sql переменная. Для DBF базы Нужно

    ;sql

    ;String=ODBC;DSN=MQIS;DRIVER={SQL …

    ;dbf

    String=Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=I:;

    А лучше вообще стереть лишние ODBC… Они даны для примера ….

    Прав лишних не нужно … все работает под обычным пользователем …

    Reply
  7. sys1c

    Будет ли работать на терминальном сервере?

    Reply
  8. Kis_s

    (7) sys1c, Если только запущен на самом сервере. Из опыта эксплуатации — клиента устанавливают и на сервер и на локальные машины, но на локальных машинах запрещается считать окно терминала сервера, чтобы данные не двоились, например:

    [APPLICATIONS]

    SkipWindows = 10.0.0.1|10.0.1

    Локальный же клиент никак не сможет увидеть окна mstsc. Они отсутствуют в локальной системе. В этом можно легко убедиться, запустив spy++ из комплекта MS Visual Studio

    Reply
  9. ya.Avoronov

    Запуск на системе XP SP3. Все провайдеры ADODB в системе установлены. Использую строку подключения к dbf. Ошибка:

    Невозможно установить соединение с базой данных! {Обработка.логЗагрузитьUsersLog.МодульОбъекта(18)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (ADODB.Connection): Не удается найти указанного поставщика. Вероятно, он установлен неправильно.

    Есть ли рекомендации по настройке поставщика?

    Возможно указать путь к dbf и открыть стандартными средствами 1С, без ADODB.Connection?

    Reply
  10. Kis_s

    (9) ya.Avoronov, Хотелось бы универсальности ;о), поэтому и выбрал такой режим ….

    Там же в обработке должна быть вроде выпадающая строка

    Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=Путь;

    а в Имени таблицы нужно написать ИмяФайла — это самый стандартный драйвер от Microsoft ….

    Если останется время, вечером добавлю возможность загружать стандартными 1Совыми XBase …. но только для Файл-Серверного варианта, чтобы без тонких и Web клиентов с передачей файла на сервер….

    Reply
  11. sys1c

    Еще раз хотел бы уточнить. На терминальном сервере необходимо запускать (вижу есть возможность скрытно) файл UsersLog. Т.е. их в процессах, к примеру если 50 человек, будет 50 шт. Надеюсь он работает под правами Юсера?

    Какие мысли у вас по поводу версии на 50 и больше юсеров?

    Reply
  12. AlexanderKai

    Для самоконтроля полезная штука.

    Reply
  13. Kis_s

    (11) sys1c, да, 50, на каждого пользователя терминальной сессии … клиент маленький и шустрый … памяти ест мало …. время опроса можно поставить не 1, а 10-60 секунд — это сведет нагрузку к минимуму, а на данные не повлияет … есть работающий пример 50-120 пользователей терминала и до 300 локальных рабочих мест, но, правда, там работа оффлайн ноутбуков только внедряется…. И модуль загрузки данных более оптимальный — несколько таблиц sql. Работает под правами текущего пользователя, никаких дополнительных полномочий не нужно, лишь бы время от времени был доступ к базе данных…

    После завершения отладки и тестового периода версия на неограниченное число пользователей будет выпущена в свет. Возможно, платная. ;о)

    Reply
  14. Кузьмич

    (3) 911service, поддержу. Это «шестёрочное» решение, нужное в случае, когда надо кого-то выгнать с работы.

    Человек может и не заниматься посторонними вещами, и при этом создать за день 2 документа и 10 номенклатур. А другой может создать 200 документов, 300 номенклатур, и при этом нафлудить в фейсбуке, в контактах и прочих, и начитаться анекдотов. Все от скорости работы человека зависит.

    Блокировать ресурсы адиминистративно надо, а не подглядывать за людьми.

    *Не минусую, хотя наверное зря…

    Reply
  15. Kis_s

    (14) Кузьмич, спорить можно много. Как человек — я Вас поддерживаю. Но ведь Вы понимаете, какие у нас начальники. Этот проект я согласился делать для довольно крупной «офисносидящей» компании, где пользователи каждый день тратили по 20-30 минут на заполнение ежедневных отчетов а-ля «Как я весело провел рабочий день». А это, согласитесь, очень изнурительное дело — ежедневно доказывать, что ты не верблюд … Сейчас же все официально оповещены, что лог ведется, но необходимость в ежедневных отчетах отпала сама собой — за что сами пользователи остались только благодарны ….

    А уж самоконтроль — это вообще полезная штука… ;о)

    Reply
  16. gull22

    Мечта начальника.Жаль, что огрничение на 5 «клиентов»

    Reply
  17. DAnry

    Мнигие затрагивают моральный аспект представленного приложения. Всё зависит в чьи руки оно попадёт и с какой целью будет использоваться. Тоесть само по себе приложение безобидное и даже полезное, ЕСЛИ используется к примеру для самоконтроля, или там для изучения эффективности работы, НО. В руках мерзавца оно может превратиться в инструмент подлости… Можно сравнить с динамитом: изобрели вроде для мирного использования, НО…

    Reply
  18. mc2

    Хорошая идея! К сожалению, не работает при соединении клиентов с сервером 1С через веб-сервер (тонкий клиент, веб-клиент). В качестве предложения по унификации решения: выгружать данные в базу используя веб-сервис 1С. Тогда будет работать наличии любого соединения — есть соединение, выгружаем, а если нет, то буферируем.

    Reply
  19. Kis_s

    (17) DAnry, Тем более, не все работают в Гугле ;о)

    Вот пара примеров из жизни:

    Есть организация, которая использует клиента для полуавтоматического построения табеля работы. При этом сразу ставят 8 часов и не парятся.

    Есть еще организация, занимающаяся аутсорсингом бухгалтерского учета. В заголовках 1С:Предприятия прописали названия организаций — клиентов и руководство может быстро сориентироваться — на кого из клиентов сколько времени тратится. Всем же известно, что 20% клиентов приносят 80% прибыли, а с такой статистикой — можно оперативно принимать управленческие решения.

    (18) mc2, Возможно, можно подумать …. хотя хотелось на начальном этапе сбора статистики «отвязаться» от 1С платформы…

    Reply
  20. AlexanderKai

    Тестирую — на одной базе 1С(конфигуратор) вылезло -298(с минусом) секунд.

    Reply
  21. kauksi

    статья 138 УК РФ. Она называется «Нарушение тайны переписки, телефонных переговоров, почтовых, телеграфных или иных сообщений».

    «Нарушение тайны переписки, телефонных переговоров, почтовых, телеграфных или иных сообщений граждан — наказывается штрафом в размере до восьмидесяти тысяч рублей или в размере заработной платы или иного дохода осужденного за период до шести месяцев, либо обязательными работами на срок до трехсот шестидесяти часов, либо исправительными работами на срок до одного года».

    Но это лишь первая часть закона. Читаем дальше:

    «То же деяние, совершенное лицом с использованием своего служебного положения или специальных технических средств, предназначенных для негласного получения информации — наказывается штрафом в размере от ста тысяч до трехсот тысяч рублей или в размере заработной платы или иного дохода осужденного за период от одного года до двух лет, либо лишением права занимать определенные должности или заниматься определенной деятельностью на срок от двух до пяти лет, либо обязательными работами на срок от ста восьмидесяти до двухсот сорока часов, либо арестом на срок до четырех месяцев, либо лишением свободы на срок до четырех лет».

    Reply
  22. cmd_vasec

    Нашел способ обойти данную программу: когда надо уйти открываешь документ (например) и уходишь. Программа все это время спишет на этот документ.

    А как программа фиксирует бездействие пользователя?

    Reply
  23. AlexanderKai

    (21) kauksi,

    Нарушение тайны переписки, телефонных переговоров, почтовых, телеграфных или иных сообщений граждан

    Эта программа не нарушает тайну переписку, телефонных разговоров.

    Или к чему была статья приведена?

    Reply
  24. Kis_s

    (20) AlexanderKai, Ничего страшного …. это время простоя … т.е было так 1. Начала считать окно … Слила информацию в базу … Обнаружила простой, в кеше информации уже нет, запомнила минус — потом сольет в базу и все сложится …

    (22) cmd_vasec, нет …. время простоя указывается в ini — файле … после обнаружения бездействия время текущего окна минусуется и таймер останавливается ….

    Время простоя берется стандартными API функциями Windows:

    GetLastInputInfo(&lpi);

    DWORD te = ::GetTickCount();

    int timeOutAll = (te — lpi.dwTime);

    (21) kauksi, В заголовках окон Windows НИКОГДА не выводится информация о переписке. А тексты запросов Яндекс и Google и т.д. давным давно используют для контекстной рекламы. Более того, множество программ, открою Вам тайну, используют типовые API функции типа FindWindow(«Текст заголовка окна»…)… не говоря уже о том, что Microsoft не запрещает даже одному приложению отправлять команды для другого. Последовательность из двух команд:

    hWnd = FindWindow(«Одноклассники»…).

    SendMessage(hWnd, WM_CLOSE)

    Закроет браузер без шума и пыли ….

    Reply
  25. ya.Avoronov

    Очень впечатлен программой. Спасибо за старания.

    Отдельное спасибо за Обновление Обработки: «Загрузка users log», может загружать данные из dbf файла штатным 1С средством XBase dBase III

    Буду тестировать на вредителях сотрудниках компании.

    Reply
  26. RealEscander

    Я так понимаю UserLog не учитывает то время пока 1С чего-то активно делает… т.е. теоретически если мне ставят на комп эту прогу, то при запуске тяжёлых отчетов/обработок ранее я или с бумагами или чего смотрел на том-же ИС/мисте то теперь будут считать, что я или бездельничал или смотрел прон-онланн…. Ну зашибись, чё!

    И ещё помнится по охране труда положено в течении часа 5-10 мин отваливать от монитора куда подальше… как понимаю в программе это тоже не учитывается (не ведётся ежечасный лимит простоя).Так?

    Reply
  27. AlexanderKai

    (26) RealEscander,

    Ставь таймаут на 5-10 минут. Если отчет формируется дольше чем 10 минут — это неправильно написанный отчет скорей всего 🙂

    Программа отслеживает время последнего ввода, так что если нажимать раз в минуту что-нибудь, то данные будут верно истолкованы.

    Reply
  28. AlexanderKai

    (26) RealEscander,

    Даже если ты шевельнул мышкой — это уже ввод. И это учтется.

    Reply
  29. ilialin

    <философия>

    В чем смысл заголовка колонок «Время по факту»? Или там есть еще другие заголовки, что-то типа «Запланировано потратить времени…». Почему не просто «Время»?

    </философия>

    <закон>

    (21) kauksi,

    Это относится к личному времени и личной переписке. Время на рабочем месте не личное. Сотрудники предупреждаются о факте контроля.

    </закон>

    <если нет 1С + красивые графики>

    http://www.manictime.com/

    </если нет 1С + красивые графики>

    Reply
  30. 1C82

    (3) 911service, На работе надо заниматься работой. Если вы согласились сами на полный рабочий день , то почему работодатель не должен знать сколько времени вы действительно работали? Если не нравится такая постановка вопроса — идите во фриланс. Я думаю это хорошая программа как для самоконтроля так и для организации эффективного рабочего времени!

    Reply
  31. sys1c
    Нарушение тайны переписки, телефонных переговоров, почтовых, телеграфных или иных сообщений граждан

    Вы на работе сидите на стуле который купила вам организация, пользуетесь инетом который оплачивает вам организация, вы свое время продали работодателю.

    Хотите посидеть в одноклассниках или поиграть в крестики нолики — запускайте на своей мобиле и никто не будет подсматривать.

    Reply
  32. gruk

    (14) Кузьмич, Блокировки ресурсов частично обходятся или заменяются чем либо другим, но не основной работой. Сотрудники очень часто завышают уровень временных затрат на какие-либо выполняемые ими операции и хронически «заняты» или «не успевают». Я конечно про всех не говорю, есть люди которые умеют работать быстро (в основном они просто не занимаются всякой не имеющей отношения к работе чепухой). Да и если видно, что пользователь сидит 2часа в ворде над заявлением из 2 абзацев, ему можно предложить тренажер по скорости печати, курсы компьютерной грамотности или сменить профессию на ту, с которой он легко будет справляться.

    Вот у нас шеф издал приказ и под роспись всех ознакомил, что в конце месяца премию не получат те, кто по анализу трафика будет уличен в соцсетях, новостных и развлекательных сайтах. Итог: на 25 чел снижение трафика на 6ГБ/мес. и некоторые сотрудники стали обходные пути находить. Вот зачем читать новости на сайтах, когда можно подписаться на рассылки 🙂

    Reply
  33. AlX0id

    Добрая штука наверное ) Я для подобных целей использую Manictime — оч удобно и полезно )

    Reply
  34. Kis_s

    (29) ilialin, Отчет «выдран» из рабочей базы. «Время по-факту» — это как раз время, которое отражает программа. Там еще есть ВремяПоПлану, ВремяПоНорме, Отклонения, Превышения, Эффективность и прочие показатели, которые хотел клиент ….

    Reply
  35. arktika1

    Хорошая программа

    только я не понял она работает на Сервере

    при условии что все клиенты терминальные и на машинах работы вообще ни какой нет

    или её все же надо ставить на каждое рабочее место и потом от туда собирать урожай.

    Reply
  36. Kis_s

    (35) arktika1, Как нравится …. можно и туда и туда … просто локальному клиенту запретить считать окно терминала — этим будет заниматься клиент на сервере ….

    Reply
  37. pro1c@inbox.ru

    (30) 1C82,

    для гиков это не проблема!

    есть вирус, будет и антивирус!

    Reply
  38. pro1c@inbox.ru

    помнится внедрили у нас на заре 2000 годов систему отчетов о проделанной работе…

    надоело нам это. написали автоматический генератор формирования отчетов о работе. отсылка teamlead-у письма и т.д.

    все работало, никто ничего не замечал… заметили, когда мы ушли, а письма о проделанной работе все приходили и приходили…

    :)))

    Reply
  39. vnature72

    хм, из доменого юзера даже логи не пишет, запустил под админом —

    31-01-2015 11:40:56 —————————————————————————————
    31-01-2015 11:40:56 Start
    31-01-2015 11:40:56 Initialization
    31-01-2015 11:40:56 Add SysTrayIcon
    31-01-2015 11:40:56 String connection: Driver={Microsoft Excel Driver (*.xls)};DriverId=790;C:logUsersLog.xls;ReadOnly=0;
    31-01-2015 11:41:06 Click OK button
    31-01-2015 11:41:06 SetTimer SCAN
    31-01-2015 11:41:06 SetTimer UPDATE
    31-01-2015 11:41:06 SetTimer CONNECT
    31-01-2015 11:41:06 Timer CONNECT
    31-01-2015 11:41:06 Start connect database…
    31-01-2015 11:41:06 Opening database…
    31-01-2015 11:41:07 Error open database
    31-01-2015 11:41:07 StartTimer CONNECT
    31-01-2015 11:50:18 TimeOut. Go to sleep…
    31-01-2015 11:51:06 Insert data to C:UsersadminAppDataLocalUsersLogUsersLog.dat
    31-01-2015 12:01:06 Insert data to C:UsersadminAppDataLocalUsersLogUsersLog.dat

    Показать

    Может быть проблема с указанием xls файла?

    [CONNECT]

    String=Driver={Microsoft Excel Driver (*.xls)};DriverId=790;C:logUsersLog.xls;ReadOnly=0;

    Reply
  40. Kis_s

    (39) vnature72, проблема с установленными ODBC, а dbf драйвер? Или файл был занят…

    Reply
  41. stagov

    (3) 911service, Не вмешательство в личную жизнь — это конечно святое.НО.. Когда Вы нанимаете сотрудников и еще платите им ЗП, а потом на вопросы почему мы ничего не успеваем, отвечают: — Я была занята другой работой! Так вот из личного примера! Без вмешательства! Касперский — родительский контроль с вкл. запретом соц.сетей, магазинов, аудио-видео. Занятой другой работой человек ч-з неделю уволился. Пропал смысл жизни.

    Reply
  42. stagov

    Ну а с вмешательством… подобная программа слежения была поставлена в офисе торговой компании. Цель была поймать на хищении конкретного человека. Результат: подозреваемый оказался чист, а вот доверенное лицо директора как раз и приворовывало.

    Reply
  43. vnature72
    Reply
  44. vnature72

    s mssql такая-же проблема — таблица создается, данные в ней есть, но вот вытащить в 1с не получается.

    SELECT COUNT(*) FROM UsersLog
    Ошибка {Обработка.логЗагрузитьUsersLog.МодульОбъекта(31)}: Ошибка при вызове метода контекста (Execute): Произошла исключительная ситуация (Microsoft OLE DB Provider for SQL Server): Недопустимое имя объекта «UsersLog».
    
    Reply
  45. it@contlog.ru

    В принципе, все удобно, но программа почему-то в сам лог пишет время снятия, а в базу вставляет без времени, что не очень удобно :

    13-02-2015 15:23:23 INSERT INTO UserLog VALUES (‘2015-02-13′,’sk’,’Входящие — Microsoft Outlook’,»,’OUTLOOK’,14)

    13-02-2015 15:23:23 INSERT INTO UserLog VALUES (‘2015-02-13′,’sk’,’Без имени — Сообщение (HTML) ‘,»,’OUTLOOK’,1)

    ‘,»,’OUTLOOK’,11)

    Reply
  46. i_lo

    Пользуюсь ManicTime. Удобно, но у нее последнее время глюки. Достоинства по сравнению с (0) — красивый интерфейс и график времени.

    (0) Согласен с (45) очень не хватает времени при записи в файл!

    Ещё обнаружил, что при завершении работы системы она не сбрасывает последний кэш в файл. Печально. Терять до 10 минут — это много. Нельзя ли поймать какое-то оповещение от системы и сбросить кэш?

    Reply
  47. kraynev-navi

    (33) ManicTime очень прожорлив. Спустя год-два при запущенной проге уже нельзя открыть файл MS Word — не хватает памяти. Приходилось выгружать. В итоге отказался от него совсем.

    Вопрос по UsersLog. Не удалось заставить работать в интерфейсе такси и в режиме «с закладками» — накапливается только общая работа без детализации по закладкам внутри 1С. Использовал WinSpy++ для определения подчиненных окон. Не удалось найти не V8MDIClient, не V8MDILocalFrame. Находит лишь V8TopLevelFrameSDI и у него элементы с V8FormElement. Указание этого класса к желаемому результату не приводит. Что-то можно сделать?

    windows 7×64, 1C 8.3.5.1383.

    Reply
  48. hibico

    Не буду обсуждать полезность или вредность данных программ. У нас стоит «Crocotime». Смысл работы аналогичный. Хочу только сказать, что не надо быть крутым гуру чтобы обмануть подобную программу. Поэтому, кто поумнее сможет хоть целый день торчать в курилке, а другой будет корпеть за компом.

    Reply
  49. AlX0id

    (47) kraynev-navi,

    Ну у меня пока не дожил до года — где-то полгода пока. Но разработчики утверждают, что производительность программы не зависит от количества информации в БД — не исключено, что зависит от релиза.

    Памяти на данный момент у меня жрет 50 МБ — могу себе позволить )

    Reply
  50. amon_ra

    присоединяюсь к вопросу от (43) vnature72. Может кто-то пояснить как быть?

    Reply
  51. kraynev-navi

    Давайте все позовем топикстартера! Kis_s, приди!!!

    Reply
  52. i_lo

    (43) vnature72, (50) у меня конфа заработала с «Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=C:…UsersLog;». Вот только имя файла пришлось исправить: «UserLog». Соединение было установлено! Дальше была ошибка при загрузке. Обошел тем, что отказался от периода. Конфигуратор в помощь ;)!

    (47) ManicTime уже почти год использования — 55Мб в памяти.

    Reply
  53. IgorArhangel

    Не скачивается клиент. Конфа скачалась а клиент не хочет, 2 ссылки ведут на конфигурацию

    Reply
  54. IgorArhangel

    Все скачалось… Странно

    Reply
  55. hunterok

    Настроил на SQL севрер, будем тестировать. В конфе имя таблицы, кстати, UserLog, а не UsersLog должно быть.

    Не нравится только вот что: как изменить имена пользователей? На компах сотрудников сисадмин поставил хоть что: admin, user и т.п. — оно все в отчет и лезет. Некрасиво.

    Update: Теперь вообще весело) 2 компа с одинаковым именем пользователя — записи в отчете суммируются)

    Неужели нельзя в ini файл добавить опцию указания имени пользователя?

    Update 2: с лицензией не понял. В логах есть «Only five users license». Лицензии докупать нужно что-ли?

    Update 3: Короче, потестировал несколько дней. Мой вывод конкретно после работы с SQL: Продукт сырой, нужна нормальная версия и желательно не просто с датой, но и со временем. За вчера подгрузилась только часть данных, за сегодня вообще данных нет. Логи я еще не смотрел, но сам факт, что сначала данные грузились, а теперь не грузятся — печален. Об именах пользователей уже писал.

    Reply
  56. alekckuc

    Скачал программу вроде все работает. Планирую избавить себя и сотрудников от рутины ввода потраченного времени.

    Хотел бы узнать, будет ли автор развивать функции данной программы ? Будет ли выполнять какие то конкретные просьбы пользователей ? Или может автор выложит исходный код, тогда кто то сможет продолжить проект ?

    Reply
  57. alekckuc

    То же заметил багу с отридцательным временем.

    http://prntscr.com/6spgmz

    Reply
  58. alekckuc

    Опробовал у себя все живет и работает. Попробовал поставить пользователю, его данные в базу не пишутся. Программа запущена таймер бежит никаких сообщений об ошибках не наблюдается.

    Reply
  59. alekckuc

    Заглянул в лог такая картина:

    28-04-2015 13:06:59 String connection:

    ODBC;DSN=MQIS;DRIVER={SQL Server};SERVER=Rds0;DATABASE=time;UID=ПользовательMSSQL;pwd=*********;Trusted_Connection=v

    28-04-2015 13:06:59 SetTimer AUTOSTART

    28-04-2015 13:07:00 Timer AUTOSTART

    28-04-2015 13:07:00 SetTimer SCAN

    28-04-2015 13:07:00 SetTimer UPDATE

    28-04-2015 13:07:00 SetTimer CONNECT

    28-04-2015 13:07:00 Timer CONNECT

    28-04-2015 13:07:00 Start connect database…

    28-04-2015 13:07:00 Opening database…

    28-04-2015 13:07:00 Error connect database: Ошибка входа пользователя «RDS0ВиндовыйПользователь». Недопустимый атрибут строки соединения.

    Не понятно причем тут виндовый юзер, строка соединения то совсем другая

    Reply
  60. Kis_s

    Ребят, сорри, не было в стране …. в ближайшие дни всем отвечу ….

    Reply
  61. alekckuc

    В целом пользуюсь продуктом вполне успешно. Немного допилил на уровне SQL сделал триггер который записывает время апдейта вообще стало хорошо.

    Обнаружил интересную особенность, таймер программы связан с текущим временем, к примеру если я установлю часы на час вперед в программе сразу прибавится этот час к текущему активному окну.

    Reply
  62. alekckuc
    То же заметил багу с отридцательным временем.

    http://prntscr.com/6spgmz

    Понял что это не бага. Отридцательное время пишется при простоее более заданного параметра.

    Reply
  63. ExpertAdmin

    У меня конфигурация работает криво на платформе 8.3 — вариант отчета подробно, не отображает подробную информацию! При этом в логах она имеется.

    Reply
  64. IgorArhangel

    Вопрос к автору.

    Планируется ли расширение функционала?

    И как можно будет наблюдать за более чем пятью компами?

    Reply
  65. check2

    Коллега. подскажите, в чём проблема?

    22-02-2016 04:51:05 —————————————————————————————

    22-02-2016 04:51:05 Start

    22-02-2016 04:51:05 Initialization

    22-02-2016 04:51:05 Add SysTrayIcon

    22-02-2016 04:51:06 String connection: ODBC;DSN=MQIS;DRIVER={SQL Server};SERVER=(local);UID=sa;PWD=UrG23hZt;DATABASE=STAT;LANGUAGE=русский

    22-02-2016 04:51:10 Click OK button

    22-02-2016 04:51:10 SetTimer SCAN

    22-02-2016 04:51:10 SetTimer UPDATE

    22-02-2016 04:51:10 SetTimer CONNECT

    22-02-2016 04:51:10 Timer CONNECT

    22-02-2016 04:51:10 Start connect database…

    22-02-2016 04:51:10 Opening database…

    22-02-2016 04:51:11 Database is open

    22-02-2016 04:51:11 Find table UserLog…

    22-02-2016 04:51:11 Creating table…

    22-02-2016 04:51:11 CREATE TABLE UserLog ([Date] date, [UserName] char(50), [Window] char(200), [SubWindow] char(200), [Application] char(50), [TimeSec] int)

    22-02-2016 04:51:11 Error create table: Столбец, параметр или переменная #1: невозможно найти тип данных date.

    22-02-2016 04:51:11 StartTimer CONNECT

    Reply
  66. itstopru

    Так а проблема с отрицательным временем будет решена или нет?

    Reply
  67. IgorArhangel

    Клиент UsersLog.exe стала падать.

    Windows 7 x64.

    С ошибкой приложение завершено с ошибкой.

    У кого-то такое встречалось?

    С отрицательным временем не поборишься.

    Разве, что ставить интервал сброса в базу большее кол-во времени.

    Я вот поставил интервал в 60 сек.

    Так этих минусов просто немерено.

    Видать программа клиент перед сбросом в базу не учитывает простой.

    И еще вариант уменьшить значение времени простоя.

    Reply
  68. Art77

    (67) IgorArhangel,

    Welcome! http://infostart.ru/public/526958/

    Reply
  69. shmax

    Что то у меня ни как 🙁

    1. начал мучать dbf формат. вроде ограничение на пять пользователей и трафик никакой зачем думаю sql. Как не мучал ini файл строку:

    String=Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;C:31UsersLog.DBF;

    Путь начал указывать сетевой но создаётся из папки запуска, попробовал указывал и так: «C:31» и так : «C:31UserLog.DBF» и так «C:31UsersLog.DBF» и всё равно создаётся файл в папке запуска C:3. Ну думаю фиг с ним убедился что когда он создался в папке запуска данные туда летят все хорошо но в 1с всосать не смог. ругается что не может подключится 🙁

    указывал и только путь до папки и путь с файлом без расширения и путь с файлом и с расширением ни в какую 🙁

    2. плюнул думаю ладно пойду на sql . Создал БД и чтобы не заморачиваться в ини файле указал пароль sa благо тестил на себе. Таблицы не создались в БД. Сейчас попробую опустив параметр Trusted_Connection чтобы проходила авторизация SQL сервера

    Reply
  70. shmax

    c sql ещё поковыряюсь — помогите данные из dbf подгрузить. Допускаю что проблема в том что я работаю не создав пользователя и не выполнив — В 1С устанавливаем доступной роль логUsersLog. Но если в конфигураторе попробовать создать пользователя. то там доступна только одна роль и установив ее пользователь не записывается говоря что нет ни одного пользователя с полными правами

    Reply
  71. shmax

    C SQL после того как опустил параметр «Trusted_Connection » вроде наладилось, создалась таблица и я смог к ней подключится : Соединение успешно установлено! Записей в таблице UserLog: 0. Удивлён только что по умолчанию в 1с стоит имя таблицы UsersLog а создаётся UserLog — не внимательный никогда не запустит

    Reply
  72. Kis_s

    Программа будет полностью переделана, посему на эту версию даю ключ:

    UsersLog.ini

    [MAIN]

    ;Лицензия

    License=UNPV2-RCDPX-HRC71-D1W2A

    Reply
  73. alex_4x

    Добрый день! А можно сделать так, чтобы не только ЗАГОЛОВКИ окон были в логе, но и в отдельной колонке — все открытые URL-ы ?

    Reply
  74. Kis_s

    (74) Нет

    Reply
  75. satur

    (73)

    License=UNPV2-RCDPX-HRC71-D1W2A

    Подскажите есть ли новая версия? или когда планируется и какие изменения или улучшения планируются?

    Reply
  76. webcisp

    Доброго дня. Ограничения более 5 пользователей , будут вами сняты ?

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *