Постановка задачи
Добрый день. Сегодня, представляем Вашему вниманию возможность получения, обработки и записи информации о распечатанных документах, с последующей загрузкой в конфигурацию "Управление IT-отделом 8". Для этого будем использовать скрипт, написанный на PowerShell, для получения информации и обработку для загрузки полученной информации в 1С.
Журнал событий Windows - это средство, позволяющее программам и самой системе Windows регистрировать и хранить уведомления в одном месте. В журнале регистрируются все ошибки, информационные сообщения и предупреждения программ. Благодаря журналу событий, можно получить статистику использования печатающих устройств, определить наиболее активно используемые устройства, оценить нагрузку на них и принять своевременные решения по закупке расходных материалов, техническом обслуживании или даже замене на более экономичные и производительные. Особенно это актуально в небольших офисах, где не всегда используются сетевые принтеры и МФУ, поэтому получение такой статистики становится довольно сложной задачей. Решить её возможно без использования дополнительного ПО, используя встроенные средства управления журналами Windows и скриптом на PowerShell.
Итак, примем за исходные данные следующую информацию:- В организации есть домен Active Directory;
- В организации используются компьютеры c операционной системой не ниже Windows 7, сервера – с ОС не ниже Windows Server 2008R2;
- Существует необходимость централизовано обрабатывать журналы печати с принтеров и иметь статистику использования и нагрузки на печатающие устройства.
Скрипт получения данных с сервера печати находится в конец статьи.
Описание
Сценарий не получится запустить двойным кликом в проводнике. Это сделано специально для того, чтобы не нанести вред системе случайно запущенным скриптом. Помимо того, что существует ограничение по запуску сценариев, по умолчанию выполнение сценариев в системе запрещено, опять же, по описанной выше причине — не нанести вред системе. Для проверки текущей политики выполнения необходимо запустить PowerShell (нажать Windows + R, в этом окне набрать PowerShell) и ввести следующую команду: "Get-ExecutionPolicy" (без кавычек). С большой вероятностью, если это первый запуск, получим Restricted. Для выполнения и тестирования понизим политику до RemoteSigned ("Разрешено выполнять созданные нами сценарии и скачанные сценарии, подписанные доверенным издателем"), командой "Set-ExecutionPolicy RemoteSigned" (без кавычек).
Чтобы скрипт выбирал информацию за определённый период и сохранял её в нужное место, необходимо его немного изменить «под себя». Для этого необходимо открыть PowerShell из следующего каталога: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe, открыть скрипт. В скрипте, необходимо указать параметры даты, в нашем случае, будем выводить информацию за предыдущий день (PreviousDay). Если стоит задача выводить информацию за предыдущий месяц, или определенный период, необходимо установить соответствующие параметры.

После сохранения, скрипт можно применять по требованию, запуская в командной оболочке PowerShell, а можно назначить в качестве задания в Планировщике заданий.
Для этого необходимо:1) Открыть Планировщик заданий (Пуск – Администрирование – Планировщик заданий)
2) Выбрать пункт «Создать простую задачу...»
3) Ввести имя задачи, описание, выбрать интервал выполнения
4) Выбрать действие «запустить программу». В качестве программы выбрать «C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe», а в качестве аргумента – путь к скрипту
Если скрипт не запускается на исполнение, тогда нужно изменить расширение файла с ".ps1" на "bat", после этого установить его в качестве запуска "Программа или сценарий".
Таким образом, в указанном при создании скрипта каталоге будет с заданным интервалом обновляться файл со списком напечатанных документов.
Результатом работы скрипта, является файл в формате csv. Он сам по себе уже хранит информацию о напечатанных документах. Можно его открыть обычным блокнотом и посмотреть, кто что печатал. Но мы ведь хотим производить периодический анализ напечатанной информации. Поэтому сделаем это в конфигурации "Управление IT-отделом 8". Для этого потребуется обработка "Обработка для импорта в конфигурацию данных сервера печати" (входит в комплект дистрибутива конфигурации). После запуска обработки, необходимо выбрать файл и нажать на кнопку "Загрузить".
Результатом работы, является документ "Изменения показателей оборудования".
В документе можно увидеть основные показатели, необходимые для ведения статистики, с описанием и возможностью изменения.
А анализировать данные можно специальным отчетом, который позволяет увидеть кто, когда и сколько напечатал, а так же сделать детализацию этой информации вплоть до напечатанного документа.
Обработка по загрузке настраивается и запускается автоматически, что позволит в купе с скриптом PowerShell без вмешательства загружать эти данные и анализировать их.