Каждый человек должен иметь хорошее место работы. И это не только кресло, стол, компьютер и условия в кабинете. Это и информационная система, с которой он взаимодействует 8 часов в день.
Информационная система может быть в виде бумажных документов. Может иметь вид Excel файлов. Более современный вариант — это групповые чаты в мессенджерах.
Создавая систему личных кабинетов для сотрудников, вы можете расширить этот подход в дальнейшем и на поставщиков, партнеров, заказчиков.
Рассматривайте ее как экосистему вашего бизнеса, которая развивается постепенно по мере возникновения новых вызовов и потребностей.
Что такое личный кабинет на сайте для сотрудников
Это рабочее место сотрудника
Павел приходит на работу, включает компьютер, заходит на портал, вводит логин и пароль. Что он видит?
Он видит статистические данные за предыдущий день, текущие задачи, открытые заказы. Он видит только то, что ему положено видеть. Он может делать с заказами только то, что предопределено для него бизнес-логикой приложения. Эту бизнес-логику закладываете вы сами на этапе создания системы.
✨КАК СДЕЛАТЬ АВТОФАРМ ИВЕНТ ЯИЦ С *ТЕЛЕФОНА* БЕСПЛАТНО В ARM WRESTLE SIMULATOR В РОБЛОКС!? ROBLOX
Если работа сотрудника связана с обработкой информации, то он может работать в пределах системы 90% времени. Все равно есть звонки, встречи и т.д., которые зачастую удобнее проводить старыми удобными средствами.
Практически любую деятельность бизнеса можно свести к обработке неких заявок, именно их цикруляция в системе и является центральной в системе личных кабинетов. Каждый сотрудник выполняет просто свою роль в процессе обработки неких заявок.
Каждый сотрудник наделен определенными ролями. Директор, менеджер, оператор, кассир, водитель. Роль определяет возможности человека в системе. Человек может совмещать несколько ролей.
Сотрудник в системе имеет свой интерфейс личного кабинета, который определяется его ролями. Это упрощает для него понимание системы — нет ничего лишнего, что не связано с его обязанностями.
Роли пользователя задают некую лыжню для пользователя — он может делать только те действия, которые мы предусмотрели для его роли.
Задача бизнеса — эффективная работа каждого сотрудника. Минимум отвлекающих факторов, минимум ошибок при выполнении типовых задач.
Что дает личный кабинет для руководства компании
Контроль действий и поведения сотрудников
В идеале вся работа сотрудника должна проводиться и фиксироваться через систему, при этом данные сохраняются в единое хранилище данных.
Это позволяет анализировать данные, авторизировать такой анализ, делать выводы по статистике, а не ощущениям. В итоге это все нужно для принятия правильных решений.
Если вся работа сотрудника происходит в виде открытия страниц, заполнения полей и нажатия кнопок, вы можете каждое действие отследить, понять как быстро оно выполняется, в правильной ли последовательности, с выполнением ли всех предписаний.
Что вы можете контролировать:
✨КАК СДЕЛАТЬ АВТОФАРМ ИВЕНТ ЯИЦ БЕСПЛАТНО В ARM WRESTLE SIMULATOR В РОБЛОКС!? ROBLOX
- когда человек начинает работать?
- сколько в среднем идет превышение по задачам?
- как быстро человек переходит с одной задачи на другую?
- сколько в среднем человек закрывает оценочных часов по задачам?
- как долго он обрабатывает новые заявки?
Контроль доступа к ресурсам
База клиентов — это критичный ресурс. Нельзя давать всем доступ к базе клиентов, т.к. ее просто могут унести с собой при увольнении.
Необходимо давать ограниченный доступ к критичным ресурсам. Сотрудник должен работать только с той информацией, которая ему нужна в текущий момент.
Можно создать инструменты работы в кабинете таким образом, чтобы затруднить сотруднику за один раз скопировать множество данных. К примеру, закрыть доступ к старым потенциальным клиентам, либо давать ограниченно информацию по ним.
Помимо конфиденциальности есть еще и целостность данных. Может случиться так, что один человек случайно или намеренно повредит данные. И пусть это будет 1 строка в данных, а не все хранилище.
Установка способа работы для сотрудника, стандартизация задач сотрудника через личный кабинет
В деловой рутине, чем стандартнее, тем лучше. Не нужно каждый раз изобретать что-то. Просто сделайте хорошо то, что вы всегда делаете. Для большинства задач нужно именно это.
Если в компании нет стандарта выполнения задач, то каждый сотрудник будет выполнять, как он считает нужным. Будет высокий брак. Люди будут забывать сделать важные шаги.
Необходимо продумать свой идеальный процесс, наполнить его артефактами выполнения.
Личные кабинеты для сотрудников — это всего лишь инструмент реализации этой задачи. Они позволяют сделать процесс, который сотруднику сложно будет обойти.
Сложно ехать по глубокому снегу без лыжни.
Ускорение процессов, увеличение прозрачности процессов
Бывает трудно определить в чем именно возникают замедления в процессах. Кто именно фальшивит в оркестре?
Метрики работы по процессам дают возможность понять, где именно возникает наибольшая задержка.
Подобная прозрачность позволяет оптимизировать любой процесс: раскладываем на составляющие, ищем проблемные точки, думаем как их улучшить, улучшаем, заново измеряем.
Гибкость в работе
Если есть инструмент коллективной работы, предполагающий только наличие интернета и браузера, то появляются возможности работать удаленно. Некоторые сотрудники могут работать удаленно. Контроль системы можно вести с телефона, находясь в отпуске.
При этом важно перейти от парадигмы контроля «за плечом» к контролю «по метрикам».
Если сотрудник выполняет все быстро и заданным качеством, то какая разница, где он сейчас находится. Это также дает возможность сотруднику по-быстрому сделать из дома в выходной небольшое дело через личный кабинет, вместо того, чтобы ехать на другой конец города для 15 минут работы.
Мотивация, активность, игрофикация
У вас появляются более точные метрики для поощрения. Не просто смутные ощущения «он неплохо работает», а «сделано 23 задачи, закрыто 10 заказов, выручка 250 т.р.».
Можно вводить свои правила и элементы игрофикации для стимулирования людей работы в системе. И затем на основе показателей делать премии.
Какие это будут показатели, как будет считаться премия — это другой вопрос. Придумав свою систему показателей, вы сможете ее реализовать в системе личных кабинетов.
Уменьшение количества ошибок персонала
Есть такое понятие «защита от дурака», когда система заранее предугадывает простые типовые ошибки. Вы можете настроить свои процессы так, чтобы затруднить пользователю ошибаться.
Чем ниже брак, тем быстрее двигаются процессы, тем больше объем выполненной работы.
Анализируйте типовые ошибки сотрудников и думайте как их можно избежать за счет строгих правил системы.
Cнижение издержек на обслуживание системы — проще обновлять и модернизировать
Как создать программу арм
Итак, база данных создана. Теперь, наконец, можно заняться созданием автоматизированных рабочих мест.
Сколько и каких автоматизированных рабочих мест должно быть создано, обычно решается на этапе проектирования данных. В данном простейшем случае очевидно, что работа по вводу данных в информационную систему подразделяется на три основных дочерних работы: ввод сведений о врачах поликлиники (это обычно делается в отделе кадров, и соответственно следует создать АРМ инспектора отдела кадров), ввод сведений о пациентах (рабочее место медрегистратора), ввод сведений о статистических талонах (рабочее место медстатистика). Помимо этого, кто-то должен осуществлять заполнение справочников «Цель посещения» и «Статус» (можно добавить эти функции в АРМ медстатистика, так как объем этих таблиц невелик). Что касается списка диагнозов, он может быть либо введен в базу данных кем-либо из персонала поликлиники, либо импортирован администратором базы данных из какого-либо другого формата, так как этот список основан на реально существующем и неоднократно опубликованном документе.
В общем случае эти рабочие места могут представлять собой отдельные приложения, обращающиеся к определенным таблицам в базе данных, а различные пользователи информационной системы должны иметь соответствующие их служебным обязанностям права доступа к таблицам. Например, представляется разумным запретить медрегистратору и медстатистику вносить изменения в таблицы со списком врачей, а кадровику вносить изменения в списки пациентов. Если исходить из того, что медстатистиков, медрегистраторов и кадровиков может быть несколько, имеет смысл создать в базе данных соответствующие роли (если, конечно, создание ролей поддерживается выбранным сервером), и назначить каждому пользователю соответствующую роль.
Руководствуясь этими соображениями, создадим три роли в базе данных с соответствующими правами доступа к таблицам и три автоматизированных рабочих места для инспектора отдела кадров, медрегистратора и медстатистика, возложив на последнего также обязанность корректировать список диагнозов.
Первые два АРМ-а создать относительно несложно (одно из них предназначено для ввода данных в одну таблицу, другое — в две таблицы, связанные соотношением «один ко многим»). Для этой цели можно воспользоваться утилитой Database Form Wizard и затем внести небольшие изменения в сгенерированные формы и код, в частности, для обеспечения возможности не использовать мышь при массовом вводе данных, а также для установки фокуса ввода в первое поле формы при создании новой записи (в обработчике события OnNewRecord соответствующего компонента TTable). Кроме того, следует исключить возможность ввода пользователем значения поля PROF_ID в список врачей — в этом случае значение этого поля генерируется автоматически в соответствии со значением в выбранной строке списка специальностей, что исключает попытки создания некорректной записи уже на уровне клиентского приложения (рис. 7,8)
Рис. 7. Автоматизированное рабочее место медрегистратора
Рис. 8. Автоматизированное рабочее место инспектора отдела кадров.
Автоматизированное рабочее место медстатистика в нашей версии информационной системы используется не только для ввода данных в таблицу статистических талонов, но и для ввода данных в три словарных таблицы — список диагнозов, целей и статусов посещения. Поэтому выполним его в виде многостраничного блокнота. Для ввода словарных таблиц используем компоненты DBGrid (рис.9), а на интерфейсе ввода данных в таблицу статистических талонов остановимся отдельно.
Рис.9. Автоматизированное рабочее место медстатистика — ввод справочных таблиц
Используя серверную СУБД и сгенерировав базу данных с учетом правил ссылочной целостности в соответствии со схемой данных, представленной на рис.4, мы, конечно, можем быть уверены, что ввести в базу данных некорректные значения полей DOCT_ID, DIAG_ID, STAT_ID, PURP_ID, PAT_ID сервер пользователю не даст. Однако это вовсе не означает, что можно поместить на форму набор компонентов TDBEdit для ввода данных в эти поля.
Такая реализация интерфейса приведет к совершенно неприемлемым условиям труда пользователя, вводящего данные — он должен помнить наизусть все табельные номера, номера карт и коды во вспомогательных таблицах и в случае ошибок сталкиваться с сообщениями, сгенерированными триггерами сервера. Более разумно использовать выбор нужного значения из списка, поэтому для ввода данных в эти поля поместим на форму компоненты TDBLookupCombBox и выберем в качестве значения ListSource источники данных, связанные с соответствующими словарными таблицами, в качестве значения КеуField — имена их первичных ключей, а в качестве ListField — имена полей, в которых хранятся соответствующие названия статусов, диагнозов, имена врачей и др. Теперь пользователь может выбирать значения полей DOCT_ID, DIAG_ID, STAT_ID, PURP_ID, PAT_ID из выпадающих списков, в которых содержатся не коды, а символьные строки (рис 10). Таким образом, мы избавились от необходимости непосредственного ввода пользователем значений внешних ключей, заменив его выбором из соответствующих списков.
Рис.10. Автоматизированное рабочее место медстатистика — ввод статистических талонов.
Такая реализация автоматизированного рабочего места, разумеется, не является идеальной. Если список статусов и целей посещения обычно действительно невелик, и выпадающий список здесь вполне уместен, то список пациентов, скорее всего, будет составлять не меньше сотни строк.
Поэтому вполне уместно либо иметь этот список в отсортированном по алфавиту виде (например, создав соответствующий индекс в базе данных, либо используя в качестве источника данных компонент TQuery с соответствующим предложением Order by). В этом случае при наборе начала фамилии пациента указатель в списке автоматически установится на ближайшую подходящую позицию. Примерно так же можно поступить и со списком диагнозов. Возможен также ввод каких-либо признаков (например, специальности врача или типа заболевания) и дальнейший выбор диагноза или фамилии врача из отфильтрованного списка, причем такая фильтрация записей может быть реализована как с помощью параметризованного запроса, выполняемого на сервере, так и с помощью локального фильтра в клиентском приложении. Какую из реализаций выбрать, зависит от размера справочной таблицы — локальные фильтры могут быть более производительны, чем параметризованный запрос, если таблица целиком кэшируется на рабочей станции, то есть ее объем сравним с емкостью буферов для кэширования данных.
Отметим также, что в списке пациентов могут быть полные тезки. В этом случае следует создать в списке пациентов вычисляемое поле (например, включающее фамилию, имя , отчество и дату рождения пациента) и использовать его для поиска.
Источник: citforum.ru
Создание экранов арм
Проиллюстрируем создание системы автоматизации путем проектирования «от шаблонов», т.е. будем создавать информационную базу проекта – каналы по аргументам разрабатываемых шаблонов экранов и программ, дополняя основной подход методами автопостроения и связывания каналов в узлах проекта.
Воспользуемся пользовательской библиотекой компонентов. Для этого скопируем файл tmdevenv.tmul из поддиректории %TRACE MODE%Lib в директорию %TRACE MODE%.
Откроем интегрированную систему разработки и с помощью щелчка ЛК по иконке создадим новый проект. В качестве стиля разработки выберемСтандартный.
Перейдем в слой Библиотеки_компонентов, где в разделе Пользовательская откроем библиотеку Библиотека_1. Сохраненный в данной библиотеке объект Объект_1 содержит в своем слое Ресурсы необходимый для дальнейшей разработки набор графических объектов – изображения клапанов, емкостей, двигателей и т.д.
Перенесем группы в слой Ресурсы текущего проекта с помощью механизма drag-and-drop и переименуем их как показано ниже.
Здесь же в слое Ресурсы создадим группу Картинки для помещения в нее текстур, которые будут применены в оформлении создаваемых графических экранов.
Создадим в группе Картинки новый компонент – Библиотека_Изображений#1.
Откроем двойным щелчком ЛК вновь созданную библиотеку для редактирования. Для ее наполнения воспользуемся иконкой на панели инструментов. В открывшемся диалоге выбора файлов для импорта укажем поддиректорию…LibTexture. Выберем все файлы и нажмем экранную кнопку Открыть.
Подобным описанному выше способу создадим в слое Ресурсы группу Анимация, в ней — библиотеку Библиотека_Видеоклипов#1. Наполним ее содержимым …LibAnimation.
После проведения подготовительных мероприятий сохраним выполненную работу, нажав ЛК и указав имя.
Перейдя в слой Шаблоны_экранов, создадим в нем компонент Экран#1.
На созданном экране будут отображаться технологические параметры участка термической обработки, с него же будем осуществлять формирование задания на поддержание рабочей температуры. Переименуем его в Участок_термообработки. Создадим также экраны для задания параметров ПДД-регулятора, участков хранения и дозирования. Переименуем их соответственно:
Создание экрана для Участка термообработки
В соответствии с ТЗ на проектирование назначим аргументы шаблону экрана участка термообработки – щелчок ПК на созданном шаблоне экрана и выбор из выпадающего списка пункта Свойства, далее переход во вкладку Аргументы. Здесь и далее с помощью иконки создаются необходимые аргументы, задаются их имена, тип, тип данных, значения по умолчанию, привязки, флаги и т.д.
Те аргументы, значения которых будут отображаться на экране, имеют тип IN, а те, что задаются с клавиатуры АРМ, отображаются на экране и пересылаются в конечном итоге в PC-based контроллер, имеют тип OUT. В процедуре автопостроения каналов от шаблонов автопривязка аргументов будет осуществляться соответственно к атрибутам Реальное и входное значение каналов.
Закроем бланк свойств экрана щелчком ЛК на . Для перехода к непосредственному созданию и редактированию содержимого экрана дважды нажмем на нем ЛК мыши. Зададим в качестве фона экрана текстуруmetal_011. Для этого выберем в основном меню пункт Сервис, в нем – Параметры экрана. В открывшемся диалоговом окне укажем в качестве типа фона изображение, а из имеющихся в библиотеке текстур — metal_011.
После нажатия экранной кнопки Готово фон графического экрана будет изменен на указанный.
С помощью графических объектов (ГО), сохраненных в ресурсных библиотеках и вызываемых с помощью иконки панели инструментов, а также графических элементов (ГЭ) объемных труб
и текста
, создадим статическую часть экрана. Примерный вид представлен ниже.
Графические объекты размещаются с использованием метода drag-and-drop и допускают масштабирование. Для изменения размера ГО необходимо выделить его ЛК и с помощью позиционирования указателя мыши в узловые точки выполнить необходимые корректирующие действия:
Значения расхода теплоносителя и рабочей температуры будем отображать с помощью ГЭ Показывающий прибор . Разместив их на экране, двойным щелчком ЛК откроем свойства левого ГЭ и зададим ему свойства:
В нижней части экрана с помощью иконки разместим ГЭ Тренд для вывода значений аргументовТемпература_рабочая, Расход_теплоносителя и Задание_температуры. Основные свойства ГЭ оставим заданными по умолчанию, добавив заголовок Участок термообработки.
Определим для отображения на тренде три кривые, связав их с соответствующими аргументами экрана, и зададим для них цвет и толщину линий, интервалы выводимых значений.
Для формирования задания регулятору разместим справа от ГЭ Тренд ГЭ Прямоугольник , он будет служить подложкой для ГЭ Ползунок
с помощью которого будем задавать величину задания и отображать его же. Точную величину задания будем отображать в верхней части прямоугольника с помощью ГЭ Текст
. Откажемся от использования рамки и заливки для данного ГЭ.
Свойства ГЭ назначим следующим образом:
В правом верхнем углу экрана разместим надпись – Участок термообработки.
Так как для АРМ будет разработано еще два экрана (Хранение и Дозирование), то для осуществления переходов между экранами необходимо предусмотреть соответствующие средства. В качестве них будем использовать ГЭ .
Двойным щелчком ЛК на ГЭ Хранение откроем его свойства, в разделе События
выделим ЛК пунктmousePressed (событие по нажатию ЛК на ГЭ) и по нажатию ПК добавим переход на экран.
В открывшемся пункте Jump to Screen по нажатию ЛК из списка выберем шаблон экрана Участок_Хранения.
Подобным образом поступим для организации перехода на экран участка дозирования.
Параметры ПДД-регулятора – Кп, Кд, Кдд и зону нечувствительности будем формировать с помощью всплывающего окна, открытие данного окна оформим также с помощью ГЭ , который разместим в левой части экрана, привязку выполним как в описанных выше случаях.
Для отображения в левом верхнем углу графического экрана текущей даты и времени воспользуемся ГЭ Календарь . Настройку ГЭ выполним следующим образом:
Источник: studfile.net