Клиент 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? меняем их, если нужно. (Все настройки прокомментированы в самом файле или в описании ниже)
1С
— Поставляемый файл 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 часов
— Исправлена небольшая «утечка памяти» в режиме самологирования.
— По закрытию окна — сворачивание в трей.
— Для закрытия приложения не в скрытом режиме — отдельная кнопка.
— В демобазе заполнена общая область начальной страницы …
Как сильно клиент грузит систему? Есть ли проблемы с совместимостью для ХР, 7, 8? Более 5-ти пользователей — платно?
(1) V_V_V,
Вообще не грузит …. он же считывает только активное окно ….
Плюс всю информацию хранит в памяти и только раз в [TIMER]Update=600 секунд обращается к базе (обычно раз в 10 минут) или к диску
Проблем совместимости не замечено … проверено на XP, Win7 x86, Win7 x64 ….
Более 5 клиентов — версия будет попозже …
Это уже вмешательством в личную жизнь папахивает. Перерывы на работе необходимы и работодателю знать о них не обязательно. Кто-то курить выходит, кто-то на обед, кто-то в соц.сетях посидит.
У меня не работает запись в файл.
Настроил по минимому — файл не появляется и значек в трее не зенелеет.
Мой раздел конект в ини файле. больше ничего не менял.
Запустил под правами админа
[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;
Вот Лог
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
(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… Они даны для примера ….
Прав лишних не нужно … все работает под обычным пользователем …
Будет ли работать на терминальном сервере?
(7) sys1c, Если только запущен на самом сервере. Из опыта эксплуатации — клиента устанавливают и на сервер и на локальные машины, но на локальных машинах запрещается считать окно терминала сервера, чтобы данные не двоились, например:
[APPLICATIONS]
SkipWindows = 10.0.0.1|10.0.1
Локальный же клиент никак не сможет увидеть окна mstsc. Они отсутствуют в локальной системе. В этом можно легко убедиться, запустив spy++ из комплекта MS Visual Studio
Запуск на системе XP SP3. Все провайдеры ADODB в системе установлены. Использую строку подключения к dbf. Ошибка:
Есть ли рекомендации по настройке поставщика?
Возможно указать путь к dbf и открыть стандартными средствами 1С, без ADODB.Connection?
(9) ya.Avoronov, Хотелось бы универсальности ;о), поэтому и выбрал такой режим ….
Там же в обработке должна быть вроде выпадающая строка
Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=Путь;
а в Имени таблицы нужно написать ИмяФайла — это самый стандартный драйвер от Microsoft ….
Если останется время, вечером добавлю возможность загружать стандартными 1Совыми XBase …. но только для Файл-Серверного варианта, чтобы без тонких и Web клиентов с передачей файла на сервер….
Еще раз хотел бы уточнить. На терминальном сервере необходимо запускать (вижу есть возможность скрытно) файл UsersLog. Т.е. их в процессах, к примеру если 50 человек, будет 50 шт. Надеюсь он работает под правами Юсера?
Какие мысли у вас по поводу версии на 50 и больше юсеров?
Для самоконтроля полезная штука.
(11) sys1c, да, 50, на каждого пользователя терминальной сессии … клиент маленький и шустрый … памяти ест мало …. время опроса можно поставить не 1, а 10-60 секунд — это сведет нагрузку к минимуму, а на данные не повлияет … есть работающий пример 50-120 пользователей терминала и до 300 локальных рабочих мест, но, правда, там работа оффлайн ноутбуков только внедряется…. И модуль загрузки данных более оптимальный — несколько таблиц sql. Работает под правами текущего пользователя, никаких дополнительных полномочий не нужно, лишь бы время от времени был доступ к базе данных…
После завершения отладки и тестового периода версия на неограниченное число пользователей будет выпущена в свет. Возможно, платная. ;о)
(3) 911service, поддержу. Это «шестёрочное» решение, нужное в случае, когда надо кого-то выгнать с работы.
Человек может и не заниматься посторонними вещами, и при этом создать за день 2 документа и 10 номенклатур. А другой может создать 200 документов, 300 номенклатур, и при этом нафлудить в фейсбуке, в контактах и прочих, и начитаться анекдотов. Все от скорости работы человека зависит.
Блокировать ресурсы адиминистративно надо, а не подглядывать за людьми.
*Не минусую, хотя наверное зря…
(14) Кузьмич, спорить можно много. Как человек — я Вас поддерживаю. Но ведь Вы понимаете, какие у нас начальники. Этот проект я согласился делать для довольно крупной «офисносидящей» компании, где пользователи каждый день тратили по 20-30 минут на заполнение ежедневных отчетов а-ля «Как я весело провел рабочий день». А это, согласитесь, очень изнурительное дело — ежедневно доказывать, что ты не верблюд … Сейчас же все официально оповещены, что лог ведется, но необходимость в ежедневных отчетах отпала сама собой — за что сами пользователи остались только благодарны ….
А уж самоконтроль — это вообще полезная штука… ;о)
Мечта начальника.Жаль, что огрничение на 5 «клиентов»
Мнигие затрагивают моральный аспект представленного приложения. Всё зависит в чьи руки оно попадёт и с какой целью будет использоваться. Тоесть само по себе приложение безобидное и даже полезное, ЕСЛИ используется к примеру для самоконтроля, или там для изучения эффективности работы, НО. В руках мерзавца оно может превратиться в инструмент подлости… Можно сравнить с динамитом: изобрели вроде для мирного использования, НО…
Хорошая идея! К сожалению, не работает при соединении клиентов с сервером 1С через веб-сервер (тонкий клиент, веб-клиент). В качестве предложения по унификации решения: выгружать данные в базу используя веб-сервис 1С. Тогда будет работать наличии любого соединения — есть соединение, выгружаем, а если нет, то буферируем.
(17) DAnry, Тем более, не все работают в Гугле ;о)
Вот пара примеров из жизни:
Есть организация, которая использует клиента для полуавтоматического построения табеля работы. При этом сразу ставят 8 часов и не парятся.
Есть еще организация, занимающаяся аутсорсингом бухгалтерского учета. В заголовках 1С:Предприятия прописали названия организаций — клиентов и руководство может быстро сориентироваться — на кого из клиентов сколько времени тратится. Всем же известно, что 20% клиентов приносят 80% прибыли, а с такой статистикой — можно оперативно принимать управленческие решения.
(18) mc2, Возможно, можно подумать …. хотя хотелось на начальном этапе сбора статистики «отвязаться» от 1С платформы…
Тестирую — на одной базе 1С(конфигуратор) вылезло -298(с минусом) секунд.
статья 138 УК РФ. Она называется «Нарушение тайны переписки, телефонных переговоров, почтовых, телеграфных или иных сообщений».
«Нарушение тайны переписки, телефонных переговоров, почтовых, телеграфных или иных сообщений граждан — наказывается штрафом в размере до восьмидесяти тысяч рублей или в размере заработной платы или иного дохода осужденного за период до шести месяцев, либо обязательными работами на срок до трехсот шестидесяти часов, либо исправительными работами на срок до одного года».
Но это лишь первая часть закона. Читаем дальше:
«То же деяние, совершенное лицом с использованием своего служебного положения или специальных технических средств, предназначенных для негласного получения информации — наказывается штрафом в размере от ста тысяч до трехсот тысяч рублей или в размере заработной платы или иного дохода осужденного за период от одного года до двух лет, либо лишением права занимать определенные должности или заниматься определенной деятельностью на срок от двух до пяти лет, либо обязательными работами на срок от ста восьмидесяти до двухсот сорока часов, либо арестом на срок до четырех месяцев, либо лишением свободы на срок до четырех лет».
Нашел способ обойти данную программу: когда надо уйти открываешь документ (например) и уходишь. Программа все это время спишет на этот документ.
А как программа фиксирует бездействие пользователя?
(21) kauksi,
Эта программа не нарушает тайну переписку, телефонных разговоров.
Или к чему была статья приведена?
(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)
Закроет браузер без шума и пыли ….
Очень впечатлен программой. Спасибо за старания.
Отдельное спасибо за Обновление Обработки: «Загрузка users log», может загружать данные из dbf файла штатным 1С средством XBase dBase III
Буду тестировать на
вредителяхсотрудниках компании.Я так понимаю UserLog не учитывает то время пока 1С чего-то активно делает… т.е. теоретически если мне ставят на комп эту прогу, то при запуске тяжёлых отчетов/обработок ранее я или с бумагами или чего смотрел на том-же ИС/мисте то теперь будут считать, что я или бездельничал или смотрел прон-онланн…. Ну зашибись, чё!
И ещё помнится по охране труда положено в течении часа 5-10 мин отваливать от монитора куда подальше… как понимаю в программе это тоже не учитывается (не ведётся ежечасный лимит простоя).Так?
(26) RealEscander,
Ставь таймаут на 5-10 минут. Если отчет формируется дольше чем 10 минут — это неправильно написанный отчет скорей всего 🙂
Программа отслеживает время последнего ввода, так что если нажимать раз в минуту что-нибудь, то данные будут верно истолкованы.
(26) RealEscander,
Даже если ты шевельнул мышкой — это уже ввод. И это учтется.
<философия>
В чем смысл заголовка колонок «Время по факту»? Или там есть еще другие заголовки, что-то типа «Запланировано потратить времени…». Почему не просто «Время»?
</философия>
<закон>
(21) kauksi,
Это относится к личному времени и личной переписке. Время на рабочем месте не личное. Сотрудники предупреждаются о факте контроля.
</закон>
<если нет 1С + красивые графики>
http://www.manictime.com/
</если нет 1С + красивые графики>
(3) 911service, На работе надо заниматься работой. Если вы согласились сами на полный рабочий день , то почему работодатель не должен знать сколько времени вы действительно работали? Если не нравится такая постановка вопроса — идите во фриланс. Я думаю это хорошая программа как для самоконтроля так и для организации эффективного рабочего времени!
Вы на работе сидите на стуле который купила вам организация, пользуетесь инетом который оплачивает вам организация, вы свое время продали работодателю.
Хотите посидеть в одноклассниках или поиграть в крестики нолики — запускайте на своей мобиле и никто не будет подсматривать.
(14) Кузьмич, Блокировки ресурсов частично обходятся или заменяются чем либо другим, но не основной работой. Сотрудники очень часто завышают уровень временных затрат на какие-либо выполняемые ими операции и хронически «заняты» или «не успевают». Я конечно про всех не говорю, есть люди которые умеют работать быстро (в основном они просто не занимаются всякой не имеющей отношения к работе чепухой). Да и если видно, что пользователь сидит 2часа в ворде над заявлением из 2 абзацев, ему можно предложить тренажер по скорости печати, курсы компьютерной грамотности или сменить профессию на ту, с которой он легко будет справляться.
Вот у нас шеф издал приказ и под роспись всех ознакомил, что в конце месяца премию не получат те, кто по анализу трафика будет уличен в соцсетях, новостных и развлекательных сайтах. Итог: на 25 чел снижение трафика на 6ГБ/мес. и некоторые сотрудники стали обходные пути находить. Вот зачем читать новости на сайтах, когда можно подписаться на рассылки 🙂
Добрая штука наверное ) Я для подобных целей использую Manictime — оч удобно и полезно )
(29) ilialin, Отчет «выдран» из рабочей базы. «Время по-факту» — это как раз время, которое отражает программа. Там еще есть ВремяПоПлану, ВремяПоНорме, Отклонения, Превышения, Эффективность и прочие показатели, которые хотел клиент ….
Хорошая программа
только я не понял она работает на Сервере
при условии что все клиенты терминальные и на машинах работы вообще ни какой нет
или её все же надо ставить на каждое рабочее место и потом от туда собирать урожай.
(35) arktika1, Как нравится …. можно и туда и туда … просто локальному клиенту запретить считать окно терминала — этим будет заниматься клиент на сервере ….
(30) 1C82,
для гиков это не проблема!
есть вирус, будет и антивирус!
помнится внедрили у нас на заре 2000 годов систему отчетов о проделанной работе…
надоело нам это. написали автоматический генератор формирования отчетов о работе. отсылка teamlead-у письма и т.д.
все работало, никто ничего не замечал… заметили, когда мы ушли, а письма о проделанной работе все приходили и приходили…
:)))
хм, из доменого юзера даже логи не пишет, запустил под админом —
Показать
Может быть проблема с указанием xls файла?
[CONNECT]
String=Driver={Microsoft Excel Driver (*.xls)};DriverId=790;C:logUsersLog.xls;ReadOnly=0;
(39) vnature72, проблема с установленными ODBC, а dbf драйвер? Или файл был занят…
(3) 911service, Не вмешательство в личную жизнь — это конечно святое.НО.. Когда Вы нанимаете сотрудников и еще платите им ЗП, а потом на вопросы почему мы ничего не успеваем, отвечают: — Я была занята другой работой! Так вот из личного примера! Без вмешательства! Касперский — родительский контроль с вкл. запретом соц.сетей, магазинов, аудио-видео. Занятой другой работой человек ч-з неделю уволился. Пропал смысл жизни.
Ну а с вмешательством… подобная программа слежения была поставлена в офисе торговой компании. Цель была поймать на хищении конкретного человека. Результат: подозреваемый оказался чист, а вот доверенное лицо директора как раз и приворовывало.
s mssql такая-же проблема — таблица создается, данные в ней есть, но вот вытащить в 1с не получается.
В принципе, все удобно, но программа почему-то в сам лог пишет время снятия, а в базу вставляет без времени, что не очень удобно :
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)
Пользуюсь ManicTime. Удобно, но у нее последнее время глюки. Достоинства по сравнению с (0) — красивый интерфейс и график времени.
(0) Согласен с (45) очень не хватает времени при записи в файл!
Ещё обнаружил, что при завершении работы системы она не сбрасывает последний кэш в файл. Печально. Терять до 10 минут — это много. Нельзя ли поймать какое-то оповещение от системы и сбросить кэш?
(33) ManicTime очень прожорлив. Спустя год-два при запущенной проге уже нельзя открыть файл MS Word — не хватает памяти. Приходилось выгружать. В итоге отказался от него совсем.
Вопрос по UsersLog. Не удалось заставить работать в интерфейсе такси и в режиме «с закладками» — накапливается только общая работа без детализации по закладкам внутри 1С. Использовал WinSpy++ для определения подчиненных окон. Не удалось найти не V8MDIClient, не V8MDILocalFrame. Находит лишь V8TopLevelFrameSDI и у него элементы с V8FormElement. Указание этого класса к желаемому результату не приводит. Что-то можно сделать?
windows 7×64, 1C 8.3.5.1383.
Не буду обсуждать полезность или вредность данных программ. У нас стоит «Crocotime». Смысл работы аналогичный. Хочу только сказать, что не надо быть крутым гуру чтобы обмануть подобную программу. Поэтому, кто поумнее сможет хоть целый день торчать в курилке, а другой будет корпеть за компом.
(47) kraynev-navi,
Ну у меня пока не дожил до года — где-то полгода пока. Но разработчики утверждают, что производительность программы не зависит от количества информации в БД — не исключено, что зависит от релиза.
Памяти на данный момент у меня жрет 50 МБ — могу себе позволить )
присоединяюсь к вопросу от (43) vnature72. Может кто-то пояснить как быть?
Давайте все позовем топикстартера! Kis_s, приди!!!
(43) vnature72, (50) у меня конфа заработала с «Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=C:…UsersLog;». Вот только имя файла пришлось исправить: «UserLog». Соединение было установлено! Дальше была ошибка при загрузке. Обошел тем, что отказался от периода. Конфигуратор в помощь ;)!
(47) ManicTime уже почти год использования — 55Мб в памяти.
Не скачивается клиент. Конфа скачалась а клиент не хочет, 2 ссылки ведут на конфигурацию
Все скачалось… Странно
Настроил на SQL севрер, будем тестировать. В конфе имя таблицы, кстати, UserLog, а не UsersLog должно быть.
Не нравится только вот что: как изменить имена пользователей? На компах сотрудников сисадмин поставил хоть что: admin, user и т.п. — оно все в отчет и лезет. Некрасиво.
Update: Теперь вообще весело) 2 компа с одинаковым именем пользователя — записи в отчете суммируются)
Неужели нельзя в ini файл добавить опцию указания имени пользователя?
Update 2: с лицензией не понял. В логах есть «Only five users license». Лицензии докупать нужно что-ли?
Update 3: Короче, потестировал несколько дней. Мой вывод конкретно после работы с SQL: Продукт сырой, нужна нормальная версия и желательно не просто с датой, но и со временем. За вчера подгрузилась только часть данных, за сегодня вообще данных нет. Логи я еще не смотрел, но сам факт, что сначала данные грузились, а теперь не грузятся — печален. Об именах пользователей уже писал.
Скачал программу вроде все работает. Планирую избавить себя и сотрудников от рутины ввода потраченного времени.
Хотел бы узнать, будет ли автор развивать функции данной программы ? Будет ли выполнять какие то конкретные просьбы пользователей ? Или может автор выложит исходный код, тогда кто то сможет продолжить проект ?
То же заметил багу с отридцательным временем.
http://prntscr.com/6spgmz
Опробовал у себя все живет и работает. Попробовал поставить пользователю, его данные в базу не пишутся. Программа запущена таймер бежит никаких сообщений об ошибках не наблюдается.
Заглянул в лог такая картина:
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ВиндовыйПользователь». Недопустимый атрибут строки соединения.
Не понятно причем тут виндовый юзер, строка соединения то совсем другая
Ребят, сорри, не было в стране …. в ближайшие дни всем отвечу ….
В целом пользуюсь продуктом вполне успешно. Немного допилил на уровне SQL сделал триггер который записывает время апдейта вообще стало хорошо.
Обнаружил интересную особенность, таймер программы связан с текущим временем, к примеру если я установлю часы на час вперед в программе сразу прибавится этот час к текущему активному окну.
Понял что это не бага. Отридцательное время пишется при простоее более заданного параметра.
У меня конфигурация работает криво на платформе 8.3 — вариант отчета подробно, не отображает подробную информацию! При этом в логах она имеется.
Вопрос к автору.
Планируется ли расширение функционала?
И как можно будет наблюдать за более чем пятью компами?
Коллега. подскажите, в чём проблема?
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
Так а проблема с отрицательным временем будет решена или нет?
Клиент UsersLog.exe стала падать.
Windows 7 x64.
С ошибкой приложение завершено с ошибкой.
У кого-то такое встречалось?
С отрицательным временем не поборишься.
Разве, что ставить интервал сброса в базу большее кол-во времени.
Я вот поставил интервал в 60 сек.
Так этих минусов просто немерено.
Видать программа клиент перед сбросом в базу не учитывает простой.
И еще вариант уменьшить значение времени простоя.
(67) IgorArhangel,
http://infostart.ru/public/526958/
Welcome!
Что то у меня ни как 🙁
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 сервера
c sql ещё поковыряюсь — помогите данные из dbf подгрузить. Допускаю что проблема в том что я работаю не создав пользователя и не выполнив — В 1С устанавливаем доступной роль логUsersLog. Но если в конфигураторе попробовать создать пользователя. то там доступна только одна роль и установив ее пользователь не записывается говоря что нет ни одного пользователя с полными правами
C SQL после того как опустил параметр «Trusted_Connection » вроде наладилось, создалась таблица и я смог к ней подключится : Соединение успешно установлено! Записей в таблице UserLog: 0. Удивлён только что по умолчанию в 1с стоит имя таблицы UsersLog а создаётся UserLog — не внимательный никогда не запустит
Программа будет полностью переделана, посему на эту версию даю ключ:
UsersLog.ini
[MAIN]
;Лицензия
License=UNPV2-RCDPX-HRC71-D1W2A
Добрый день! А можно сделать так, чтобы не только ЗАГОЛОВКИ окон были в логе, но и в отдельной колонке — все открытые URL-ы ?
(74) Нет
(73)
Подскажите есть ли новая версия? или когда планируется и какие изменения или улучшения планируются?
Доброго дня. Ограничения более 5 пользователей , будут вами сняты ?