Я работаю в небольшой (10 компьютеров, столько же людей) научно-исследовательской компании. Компания работает в области добычи и подготовки нефти и газа. Основная моя специализация – инженер, но поскольку я достаточно неплохо дружу с компьютерами, то по совместительству я и сисадминю.
Появилось у меня немного свободного времени, и мной было принято решение внедрить в организации систему электронного документооборота.
Работа у нас строится, как, наверное, во многих компаниях по следующей схеме:
Вроде все неплохо структурировано и понятно, но есть одно “но”… После того, как выполняются пункты 4 и 5, начинается чехарда. Вопросы вроде “где результаты анализа проб”, “кто ездил в командировку?”, “кто делал этот отчет в прошлом году” начинают звучать всё чаще… Для того, чтобы найти банальный номер договора, приходится идти к секретарше, брать достаточно здоровую коробку с договорами и начинать их листать. И это, разумеется, дело не пяти минут.
В итоге меня это не то чтобы достало, но у меня появилось немного свободного времени, и я решил найти что-то навроде системы управления клиентами (возможно, для многих более знакомы будут буквы CRM — customer relationship management). Таковую я нашел, и даже поставил, более того, она работает, но об этом я напишу позже, если будет интерес у читателей.
В процессе поиска и настройки CRM, я сделал кое-какие выводы. В частности, я понял, что обычная CRM мне не сильно подойдет. Требования были поставлены такие:
В процессе поисков я перепробовал несколько вариантов, в том числе O3Spaces, OpenKM и Alfresco.
O3Spaces отпугнул меня формой распространения – в дистрибутиве уже содержится пачка документов и несколько пользователей. Alfresco поразил и отпугнул монструозностью своей панели управления.
Взгляд достаточно надолго задержался на OpenKM. Система распространяется в редакциях – Enterprise, Hosted и Community. Сравнение редакций доступно на страничке сравнения. Если вкратце – версия Community не поддерживает WebDAV, UserNews, рабочих процессов (Workflow), не имеет предустановленной системы распознавания текстов (OCR), не имеет поиска по синонимам и не имеет сервиса резервного копирования. Зато она распространяется по лицензи GNU GPL V2.
Для того, чтобы скачать систему достаточно кликнуть по довольно большой и заметной кнопке с надписью “Download now 3.0 community”, которая отправит Вас прямиком на SouceForge, где нам радостно сообщат, что “OpenKM is powerful scalable Document Management System (DMS). OpenKM uses Jboss + J2EE + Ajax web (GWT) + Jackrabbit (lucene) open source technologies”. Для скачивания доступен всего один zip-файл размером в 161 мегабайт.
После того, как файл оказался на жестком диске, его можно просто распаковать перейти в корневую папку, и потом в папку bin. В этой папке имеются все файлы, которые необходимы для запуска системы как на Windows, так и на *nix системах.
Поскольку у меня MacOS, то для запуска мне больше всего, пожалуй, подходит скрипт run.sh. Его и запускаем. По прошествии некоторого времени, в течение которого на экран выводится информация о запуске компонент системы, мы видим радостное
что говорит нам о том, что сервер-таки запустился.
Внимание! По умолчанию OpenKM вешается на порт 8080, так что рекомендую последить, что у вас на этом порту ничего больше не работает, в противном случае придется немножко подпилить конфигурацию OpenKM и повешать его на другой порт. О том, как это делается — немного ниже.
Открываем любимый браузер, и в адресной строчке пишем httр://127.0.0.1:8080/OpenKM. Вуаля! Перед нами интерфейс входа в систему OpenKM! Логин и пароль для входа в систему одинаковы и выглядят как admin/admin.


Интерфейс системы очень радует своей понятностью с самого начала. Дерево папок и документов слева, справа – список файлов и подробная информация о них. В левой верхней части – меню, чуть ниже – кнопки управления. Справа от кнопок управления под логотипом – вкладки для доступа к рабочему столу (на скриншоте активен именно он), поиску и DashBoard, где отображается информация о последних действиях на сайте – заблокированные документы, проверенные документы и так далее.
Также в левой нижней части есть еще 4 вкладки – Taxonomy, где содержатся вcе документы, доступные всем пользователям, My documents, где содержатся ваши документы, недоступные для просмотра никому, кроме вас, Templates, где содержатся шаблоны документов и Trash, куда складываются все удаленные документы.
Итак, для того, чтобы поработать с системой, надо для начала попытаться создать папку и загрузить туда какой-либо документ.

Интерфейс загрузки документов прост до неприличия – системе надо указать файл и нажать кнопку Send. Файл будет загружен. Если есть необходимость загрузить большой пакет документов – то нужно лишь запаковать папку с этими документами в zip-архив и “скормить” его системе. Файл будет залит на сервер и там распакован. Если поставить галочку около надписи “Notify to users”, то указанным Вами пользователям по электронной почте будет отправлено сообщение о загрузке вами данных файлов (кстати, электронную почту надо настраивать отдельно — системе необходимо указать сервер исходящих сообщений).
В случае, если mime-тип файла системе известен, то файл будет обозначен соответствующей пиктограммой. Текстовый файл ОпенОфиса (odt) – пиктограммой OpenOffice Writer, текстовый файл в формате MS Word – пиктограммой Word'а, и так далее.

В нижней части рабочего пространства во вкладке Properties появляется информация о выделенном файле – название, местоположение, размер, тип mime и другое.
Во вкладке Notes для каждого файла можно добавлять текстовые заметки. И тут-то меня постигло первое разочарование – цвет фона и шрифта, а также размер шрифта заметки сменить нельзя – как-то неправильно работает редактор. Не до конца прикручен, чтоли… непонятно. Итак, напишем, что нам нужно, добавляем заметку… И тут выплывает вторая неприятность – заметку можно добавить, но нельзя удалить! Нету такой кнопки! Как я ни искал – не нашел. Обидно, конечно…
Вкладка History – очень полезная штуковина. Отображает историю версий выделенного документа. Дело в том, что любой из файлов можно взять на проверку и дополнение, выбрав пункт меню “Check out”. Документ будет скачан на Ваш компьютер, где вы сможете ознакомиться с ним и внести необходимые коррективы. После этого необходимо выделить документ и выбрать пункт меню “Check in” — новая версия документа будет загружена на сервер, ей будет присвоен номер версии повыше (если исходник – 1.0, то следующая версия будет 1.1 и так далее) а старая будет доступна во вкладке History. Для того, чтобы удалить историю файлов чтобы она не занимала много места нужно просто нажать кнопку “Compact history”. Название, на мой взгляд не соответствует функции – я было подумал, что старые файлы будут заархивированы, но система просто спросила, уверен ли я, что хочу удалить нафиг всю историю. Ну да ладно, оставим это на совести разработчиков.
Не менее полезная вкладка Security – уже понятно из названия позволяет управлять правами доступа к файлам и папкам. Правда, с ней следует быть осторожнее – запретить доступ можно даже самому себе. Тут уже спасет только Администратор.
В общем и целом – интерфейс программы довольно прост, разберется и не очень понимающий пользователь. Это огромный плюс системы, по одной простой причине – русской локализации OpenKM не имеет.
Еще одна функция системы, которую следует отметить – очень хорошие возможности экспорта и импорта. Во вкладке Administration есть пункт Utilities, который содержит хоть очень полезные функции Экспорт и Импорт. Достаточно указать системе путь к папке, которую нужно импортировать, указать, куда в дереве папок поместить ее и нажать кнопку – через некоторое время в системе будет точнехонько та же иерархия папок, которая была на жестком диске, со всеми файлами. С Экспортом все точно так же, правда с точностью до наоборот – указать системе что и куда экспортировать, и на выходе получаем точную структуру дерева папок, которая была в системе во вкладке Taxonomy. Только тут следует быть осторожным – длина имен папок может получиться слишком большой, что приведет к нечитаемости файлов!
К сожалению, экспорт и импорт таким способом доступен только для администратора. Простым пользователям импорт можно сделать посредством интерфейса загрузки файлов, загрузив zip-архив, а экспорт – через меню, выбрав в нем пункт Export to file.
Вобщем и целом, интерфейс системы, как уже говорилось, достаточно прост и понятен, и освоиться в нем может даже пользователь, никогда не имевший дела с подобными системами.
Еще один существенный плюс системы в ее переносимости. То есть, для того, чтобы сделать резервную копию или даже перенести всю систему на другой компьютер, нет необходимости плясать с бубном, нужно просто остановить систему и скопировать папку. И всё! На новой машине система запустится без вопросов! В частности у меня резервные копии делаются прогламмой Mathusalem. Указываем папку, говорим, когда делать копии и сообщаем программе, что до запуска бэкапа надо запустить скрипт остановки системы, а после бэкапа – скрипт запуска.
Теперь немного о настройке.
Первое. По умолчанию система вешается на порт 8080, что не очень удобно, если на Вашей машине уже запущена программа, занимающая этот порт. OpenKM попросту не запустится правильно и не будет доступен. Чтобы сменить порт, необходимо найти файл server.xml в папке /%OpenKM root%/server/default/deploy/jboss-web.deployer/ и в строке со значением
просто исправить порт на необходимый. Ну и, разумеется, необходимо перезапустить систему.
Второе. По умолчанию система цепляется только к локальному интерфейсу и снаружи недоступна. Для того, чтобы сделать OpenKM доступной снаружи, нужно прописать для стартового скрипта ключ “-b 0.0.0.0” — это забиндит систему на все IP-адреса. Разумеется, можно указать только тот адрес, на котором Вы хотели бы видеть систему доступной.
Третье. Можно (и даже, пожалуй, нужно) запускать систему на сервере автоматически до логина. Для MacOS это делается достаточно просто, руководствуясь статьей «Запускаем программы при запуске Mac OS X — Launchd» хабраюзера OneManStartup.
И, наконец, почему я не стал использовать OpenKM для работы. Вроде бы всё хорошо, система умеет многое. Однако, первое, и, пожалуй, единственное нарекание. Несмотря на то, что OpenKM позиционируется как DMS, то есть, система управления документооборотом, мне кажется, что для документооборота ее использовать будет тяжело. По одной простой причине – возможности общения между исполнителями у данной системы сильно ограничены. Взять хотя бы те же заметки, которые ни удалить, ни поправить нельзя. OpenKM идеально подходит для базы знаний с уже готовыми документами, но никак не для совместной работы. Поэтому, увы и ах, как бы мне ни нравилось – но на работе я ее использовать не буду.
Итак, резюмируя.
Плюсы.
Минусы:
Я бы рекомендовал OpenKM прежде всего тем, кому нужна база знаний с возможностью поиска по названиям и содержимому документов, с простой установкой и понятным интерфейсом.
Появилось у меня немного свободного времени, и мной было принято решение внедрить в организации систему электронного документооборота.
Работа у нас строится, как, наверное, во многих компаниях по следующей схеме:
- Поиск клиентов
- Заключение договора
- Получение исходной информации
- Обследование системы сбора, проведение замеров, обор проб
- Получение результатов анализа проб
- Обработка полученных данных
- Подготовка отчета о проделанной работе
Вроде все неплохо структурировано и понятно, но есть одно “но”… После того, как выполняются пункты 4 и 5, начинается чехарда. Вопросы вроде “где результаты анализа проб”, “кто ездил в командировку?”, “кто делал этот отчет в прошлом году” начинают звучать всё чаще… Для того, чтобы найти банальный номер договора, приходится идти к секретарше, брать достаточно здоровую коробку с договорами и начинать их листать. И это, разумеется, дело не пяти минут.
В итоге меня это не то чтобы достало, но у меня появилось немного свободного времени, и я решил найти что-то навроде системы управления клиентами (возможно, для многих более знакомы будут буквы CRM — customer relationship management). Таковую я нашел, и даже поставил, более того, она работает, но об этом я напишу позже, если будет интерес у читателей.
В процессе поиска и настройки CRM, я сделал кое-какие выводы. В частности, я понял, что обычная CRM мне не сильно подойдет. Требования были поставлены такие:
- OpenSource. Привлекает, прежде всего, не бесплатность (хотя шеф никогда не раскошелился бы на подобную вещь) а поддержка в виде многочисленных форумов и сообществ, и возможность настройки собственными силами.
- Возможность запуска на Linux и Unix платформах. В частности, я использую на работе и дома Mac OS.
- Простота настройки. Хоть я и рулю компами в конторе, но знания у меня, пожалуй, базовые.
- Система должна содержать в себе возможность совместной работы и функционал базы знаний.
- Простота создания резервных копий и миграции.
- Простота в использовании для остальных пользователей.
В процессе поисков я перепробовал несколько вариантов, в том числе O3Spaces, OpenKM и Alfresco.
O3Spaces отпугнул меня формой распространения – в дистрибутиве уже содержится пачка документов и несколько пользователей. Alfresco поразил и отпугнул монструозностью своей панели управления.
Взгляд достаточно надолго задержался на OpenKM. Система распространяется в редакциях – Enterprise, Hosted и Community. Сравнение редакций доступно на страничке сравнения. Если вкратце – версия Community не поддерживает WebDAV, UserNews, рабочих процессов (Workflow), не имеет предустановленной системы распознавания текстов (OCR), не имеет поиска по синонимам и не имеет сервиса резервного копирования. Зато она распространяется по лицензи GNU GPL V2.
Для того, чтобы скачать систему достаточно кликнуть по довольно большой и заметной кнопке с надписью “Download now 3.0 community”, которая отправит Вас прямиком на SouceForge, где нам радостно сообщат, что “OpenKM is powerful scalable Document Management System (DMS). OpenKM uses Jboss + J2EE + Ajax web (GWT) + Jackrabbit (lucene) open source technologies”. Для скачивания доступен всего один zip-файл размером в 161 мегабайт.
После того, как файл оказался на жестком диске, его можно просто распаковать перейти в корневую папку, и потом в папку bin. В этой папке имеются все файлы, которые необходимы для запуска системы как на Windows, так и на *nix системах.
Поскольку у меня MacOS, то для запуска мне больше всего, пожалуй, подходит скрипт run.sh. Его и запускаем. По прошествии некоторого времени, в течение которого на экран выводится информация о запуске компонент системы, мы видим радостное
“INFO [Server] JBoss (MX MicroKernel) [4.2.2.GA (build: SVNTag=JBoss_4_2_2_GA date=200710221139)] Started in 1m:18s:97ms”,
что говорит нам о том, что сервер-таки запустился.
Внимание! По умолчанию OpenKM вешается на порт 8080, так что рекомендую последить, что у вас на этом порту ничего больше не работает, в противном случае придется немножко подпилить конфигурацию OpenKM и повешать его на другой порт. О том, как это делается — немного ниже.
Открываем любимый браузер, и в адресной строчке пишем httр://127.0.0.1:8080/OpenKM. Вуаля! Перед нами интерфейс входа в систему OpenKM! Логин и пароль для входа в систему одинаковы и выглядят как admin/admin.


Интерфейс системы очень радует своей понятностью с самого начала. Дерево папок и документов слева, справа – список файлов и подробная информация о них. В левой верхней части – меню, чуть ниже – кнопки управления. Справа от кнопок управления под логотипом – вкладки для доступа к рабочему столу (на скриншоте активен именно он), поиску и DashBoard, где отображается информация о последних действиях на сайте – заблокированные документы, проверенные документы и так далее.
Также в левой нижней части есть еще 4 вкладки – Taxonomy, где содержатся вcе документы, доступные всем пользователям, My documents, где содержатся ваши документы, недоступные для просмотра никому, кроме вас, Templates, где содержатся шаблоны документов и Trash, куда складываются все удаленные документы.
Итак, для того, чтобы поработать с системой, надо для начала попытаться создать папку и загрузить туда какой-либо документ.

Интерфейс загрузки документов прост до неприличия – системе надо указать файл и нажать кнопку Send. Файл будет загружен. Если есть необходимость загрузить большой пакет документов – то нужно лишь запаковать папку с этими документами в zip-архив и “скормить” его системе. Файл будет залит на сервер и там распакован. Если поставить галочку около надписи “Notify to users”, то указанным Вами пользователям по электронной почте будет отправлено сообщение о загрузке вами данных файлов (кстати, электронную почту надо настраивать отдельно — системе необходимо указать сервер исходящих сообщений).
В случае, если mime-тип файла системе известен, то файл будет обозначен соответствующей пиктограммой. Текстовый файл ОпенОфиса (odt) – пиктограммой OpenOffice Writer, текстовый файл в формате MS Word – пиктограммой Word'а, и так далее.

В нижней части рабочего пространства во вкладке Properties появляется информация о выделенном файле – название, местоположение, размер, тип mime и другое.
Во вкладке Notes для каждого файла можно добавлять текстовые заметки. И тут-то меня постигло первое разочарование – цвет фона и шрифта, а также размер шрифта заметки сменить нельзя – как-то неправильно работает редактор. Не до конца прикручен, чтоли… непонятно. Итак, напишем, что нам нужно, добавляем заметку… И тут выплывает вторая неприятность – заметку можно добавить, но нельзя удалить! Нету такой кнопки! Как я ни искал – не нашел. Обидно, конечно…
Вкладка History – очень полезная штуковина. Отображает историю версий выделенного документа. Дело в том, что любой из файлов можно взять на проверку и дополнение, выбрав пункт меню “Check out”. Документ будет скачан на Ваш компьютер, где вы сможете ознакомиться с ним и внести необходимые коррективы. После этого необходимо выделить документ и выбрать пункт меню “Check in” — новая версия документа будет загружена на сервер, ей будет присвоен номер версии повыше (если исходник – 1.0, то следующая версия будет 1.1 и так далее) а старая будет доступна во вкладке History. Для того, чтобы удалить историю файлов чтобы она не занимала много места нужно просто нажать кнопку “Compact history”. Название, на мой взгляд не соответствует функции – я было подумал, что старые файлы будут заархивированы, но система просто спросила, уверен ли я, что хочу удалить нафиг всю историю. Ну да ладно, оставим это на совести разработчиков.
Не менее полезная вкладка Security – уже понятно из названия позволяет управлять правами доступа к файлам и папкам. Правда, с ней следует быть осторожнее – запретить доступ можно даже самому себе. Тут уже спасет только Администратор.
В общем и целом – интерфейс программы довольно прост, разберется и не очень понимающий пользователь. Это огромный плюс системы, по одной простой причине – русской локализации OpenKM не имеет.
Еще одна функция системы, которую следует отметить – очень хорошие возможности экспорта и импорта. Во вкладке Administration есть пункт Utilities, который содержит хоть очень полезные функции Экспорт и Импорт. Достаточно указать системе путь к папке, которую нужно импортировать, указать, куда в дереве папок поместить ее и нажать кнопку – через некоторое время в системе будет точнехонько та же иерархия папок, которая была на жестком диске, со всеми файлами. С Экспортом все точно так же, правда с точностью до наоборот – указать системе что и куда экспортировать, и на выходе получаем точную структуру дерева папок, которая была в системе во вкладке Taxonomy. Только тут следует быть осторожным – длина имен папок может получиться слишком большой, что приведет к нечитаемости файлов!
К сожалению, экспорт и импорт таким способом доступен только для администратора. Простым пользователям импорт можно сделать посредством интерфейса загрузки файлов, загрузив zip-архив, а экспорт – через меню, выбрав в нем пункт Export to file.
Вобщем и целом, интерфейс системы, как уже говорилось, достаточно прост и понятен, и освоиться в нем может даже пользователь, никогда не имевший дела с подобными системами.
Еще один существенный плюс системы в ее переносимости. То есть, для того, чтобы сделать резервную копию или даже перенести всю систему на другой компьютер, нет необходимости плясать с бубном, нужно просто остановить систему и скопировать папку. И всё! На новой машине система запустится без вопросов! В частности у меня резервные копии делаются прогламмой Mathusalem. Указываем папку, говорим, когда делать копии и сообщаем программе, что до запуска бэкапа надо запустить скрипт остановки системы, а после бэкапа – скрипт запуска.
Теперь немного о настройке.
Первое. По умолчанию система вешается на порт 8080, что не очень удобно, если на Вашей машине уже запущена программа, занимающая этот порт. OpenKM попросту не запустится правильно и не будет доступен. Чтобы сменить порт, необходимо найти файл server.xml в папке /%OpenKM root%/server/default/deploy/jboss-web.deployer/ и в строке со значением
Connector port="8080" address="${jboss.bind.address}
просто исправить порт на необходимый. Ну и, разумеется, необходимо перезапустить систему.
Второе. По умолчанию система цепляется только к локальному интерфейсу и снаружи недоступна. Для того, чтобы сделать OpenKM доступной снаружи, нужно прописать для стартового скрипта ключ “-b 0.0.0.0” — это забиндит систему на все IP-адреса. Разумеется, можно указать только тот адрес, на котором Вы хотели бы видеть систему доступной.
Третье. Можно (и даже, пожалуй, нужно) запускать систему на сервере автоматически до логина. Для MacOS это делается достаточно просто, руководствуясь статьей «Запускаем программы при запуске Mac OS X — Launchd» хабраюзера OneManStartup.
И, наконец, почему я не стал использовать OpenKM для работы. Вроде бы всё хорошо, система умеет многое. Однако, первое, и, пожалуй, единственное нарекание. Несмотря на то, что OpenKM позиционируется как DMS, то есть, система управления документооборотом, мне кажется, что для документооборота ее использовать будет тяжело. По одной простой причине – возможности общения между исполнителями у данной системы сильно ограничены. Взять хотя бы те же заметки, которые ни удалить, ни поправить нельзя. OpenKM идеально подходит для базы знаний с уже готовыми документами, но никак не для совместной работы. Поэтому, увы и ах, как бы мне ни нравилось – но на работе я ее использовать не буду.
Итак, резюмируя.
Плюсы.
- Бесплатность
- OpenSource
- Простота установки
- Простота эксплуатации
- Очень наглядна
- Возможность ведения версий документов
- Хорошие возможности экспорта-импорта
- Удобство и простота резервного копирования
Минусы:
- Вкладка Notes работает плохо
- В общем и целом – неразвитые возможности для совместной работы.
Я бы рекомендовал OpenKM прежде всего тем, кому нужна база знаний с возможностью поиска по названиям и содержимому документов, с простой установкой и понятным интерфейсом.