Содержание
Введение. 3
1. Аналитическая часть. 6
1.1 Технико-экономическая характеристика предметной области. 6
1.1.1 Характеристика предприятия. 6
1.1.2 Краткая характеристика работы менеджера по поиску клиентов. 7
1.2 Техническая и технологическая сущность задачи. 9
1.3 Обоснование необходимости использования вычислительных и телекоммуникационных средств для решения задачи. 9
1.4 Постановка задачи. 13
1.4.1 Цель и назначение создания или модернизации модулей или сервисов информационной системы.. 13
1.4.2 Общая характеристика организации решения задачи вычислительными и телекоммуникационными средствами. 13
1.5 Анализ существующих разработок. 14
1.5.1 "Эврика" от РУСЛАН Коммуникейшнз. 16
1.6 Обоснование проектных решений по видам обеспечения. 17
1.6.1 По информационному обеспечению комплекса задач. 17
1.6.2 По техническому обеспечению.. 22
1.6.3 По программному обеспечению.. 22
1.6.4 По технологическому обеспечению.. 32
2. Проектная часть. 34
2.1 Техническое обеспечение задачи. 34
2.1.1 Модель информационных потоков в информационной системы и ее описание. 34
2.1.2 Функции и назначение отдельных компонентов проектируемой системы36
2.1.3 Характеристика комплекса в целом.. 42
2.2 Программное обеспечение задачи (комплекса задач, АРМ)43
2.2.1Характеристика базы данных. 43
2.2.1.1 Характеристика инфологической модели БД.. 43
2.2.1.2 Характеристика даталогической модели БД.. 45
2.2.2 Общие положения. 46
2.2.3 Описание программных модулей. 46
2.3 Технологическое обеспечение задачи. 47
3. Обоснование экономической эффективности проекта. 53
3.1 Выбор и обоснование методики расчета экономической эффективности53
3.2 Расчет экономии труда за счет внедрения ИС.. 54
3.3 Рост производительности труда за счет внедрения ИС.. 55
3.4 Расчет затрат на создание программного обеспечения и оценка экономической эффективности. 55
3.4.1 Расчет затрат на разработку системы.. 55
3.4.2 Расчет затрат на основную заработную плату разработчикам.. 56
3.4.3 Расчет дополнительной заработной платы разработчиков программы57
3.4.4 Расчет отчислений на социальное страхование и обеспечение. 58
3.4.5 Расчет затрат на амортизацию ЭВМ, используемых при разработке системы59
3.4.6 Расчет затрат на электроэнергию, используемую ЭВМ в процессе разработки программы.. 60
3.4.7 Расчет накладных расходов. 61
3.5 Расчет экономической эффективности. 62
Заключение. 65
Список используемой литературы.. 66
Приложения. 69
Введение
Руководители западных компаний, выступая перед своими сотрудниками, любят повторять: "Не мы платим вам зарплату - это делают наши клиенты". Добровольное и устойчивое желание клиентов покупать продукцию или услуги компании является независимым показателем конкурентоспособности. Рыночное пространство гудит от "информационного шума", который создают тысячи конкурентов, желающие перекричать друг друга. Уже недостаточно просто иметь уникальный продукт или услугу, на которую существует спрос. Зачастую горлопаны, пусть даже с продуктом худшего качества, имеют не меньше, а часто - больше шансов завоевать внимание клиента и залезть в его карман. С другой стороны, в долгосрочной перспективе рассчитывать только на громкость своего голоса и силу удара локтем также нельзя - клиент не захочет иметь отношения с таким поставщиком и, скорее всего, тихо отступит. Более того, издержки на агрессивную рекламу и маркетинг будут составлять существенную долю себестоимости продукции и снижать ее конкурентоспособность.
Наиболее эффективная стратегия - построение долгосрочных доверительных отношений со всеми существующими и потенциальными клиентами (желательно - персонально с каждым из них), при которых они знали бы о возможностях и конкурентных преимуществах ваших продуктов и услуг и могли бы в нужный момент ими воспользоваться, причем вам не пришлось бы постоянно прилагать к этому огромные усилия.
Для отраслей, в которых конкуренция вышла на уровень взаимодействия с каждым конкретным клиентом, установление и поддержание отношений с ним становится ключевым, если не главным, конкурентным преимуществом. В первую очередь это касается корпоративных продаж, где каждый клиент - это компания со сложной системой внутренних отношений, постоянно изменяющимися требованиями. Знание этих требований, умение наладить отношения с организацией в целом и с людьми, принимающими решения, в частности, является необходимым условием эффективных продаж корпоративным клиентам.
В сфере работы с частными клиентами возможность построения персонализированных отношений также становится ключевым конкурентным преимуществом. Потребитель с большим удовольствием отнесет свои средства в банк, где работает его знакомый или купит автомобиль там, где у него получилось установить личный контакт с продавцом, объяснившим ему честно и обстоятельно преимущества и недостатки различных моделей и предложившим ему оптимальную комплектацию и уникальные ценовые условия. В первую очередь это касается области дорогих покупок (транспорт, недвижимость, мебель, отдых и т.д.), однако постепенно тенденция перемещается в сферу более массовых покупок (связь, развлечения, служба быта).
Целью данной дипломной работы является разработка информационно-аналитической системы контакт центра "СИМПРЕЗА". Для достижения данной цели необходимо решить следующие задачи:
рассмотреть характеристику предприятия;
рассмотреть работу менеджера по поиску клиентов;
выявить техническую и технологическую сущность задачи;
обосновать необходимость использования вычислительных и телекоммуникационных средств для решения задачи;
определить цель и назначение создания или модернизации модулей или сервисов информационной системы;
охарактеризовать организацию решения задачи вычислительными и телекоммуникационными средствами;
рассмотреть существующие разработки;
обоснование проектных решений;
построить модель информационных потоков в информационной системы и описать ее;
рассмотреть физическую схему взаимодействия отдельных частей информационной системы;
рассмотреть функции и назначение отдельных компонентов проектируемой системы;
рассмотреть характеристику комплекса в целом;
построить инфологическую модель БД;
построить даталогическую модель БД;
описать программные модули;
обосновать экономическую эффективность проекта.
1. Аналитическая часть
1.1 Технико-экономическая характеристика предметной области
1.1.1 Характеристика предприятия
Контакт-центр SimPreza создан в 2006г. как центр обработки мультимедийных обращений, который помогает компаниям в развитии отношений с их клиентами удобными и доступными способами коммуникаций.
В собственности контакт - центра современное помещение с развитой инфраструктурой, площадью более 2000 кв. м., позволяющее разместить до 300 операторских мест.
Контакт - центр SimPreza оснащен высоконадежным и полнофункциональным оборудованием и программным обеспечением Infra Telesystems.
Для того чтобы с первого дня оказывать качественные услуги и избежать ошибок роста, при создании контакт-центра были привлечены высококлассные специалисты в области проектирования контакт - центров.
Коллектив компании прошел обучение и практику в крупнейших образовательных центрах, и контакт - центрах г. Москвы.
Для обучения среднего менеджерского состава и операторов на базе контакт - центра создана дирекция по персоналу, для работы в котором привлекаются ведущие специалисты в области подготовки персонала.
Основными услугами компании являются:
Горячая линия
Виртуальный офис
Опросы / Анкетирование
Телемаркетинг
1.1.2 Краткая характеристика работы менеджера по поиску клиентов
Основная задача менеджера по поиску клиентов - проведение работ по поиску и привлечению новых клиентов.
Так, менеджер по поиску клиентов:
1. Осуществляет анализ аудитории потенциальных клиентов, выявляет потребности клиентов, их категорию и направленность.
2. Планирует работу с клиентами, разрабатывает методики общения с ними.
3. Организует предварительные переговоры с клиентами, заинтересовавшимися предложениями (принявшими оферту и пр), уточняет их потребности и подготавливает предложения для конкретных клиентов.
4. Заключает договоры от имени предприятия.
5. Формирует и ведет банк данных о клиентах (клиентскую базу), своевременно вносит в него изменения.
6. Составляет отчеты, содержащие результаты своей деятельности и пожелания клиентов.
Всю деятельность менеджера можно сгруппировать следующим образом:
Сбор и систематизация информации о потенциальных клиентах.
Составление планов обзвона клиентов и встреч.
Работа с клиентом
Составление отчетов о работе
Рассмотрим подробнее каждую группу деятельности.
Сбор и систематизация информации о потенциальных клиентах. К менеджеру поступает информация о потенциальных клиентах. Ключевыми источниками информации являются:
Интернет (поисковые системы и собственные сайты)
Справочники (Желтые страницы, Прайс-лайн и пр)
Готовые базы данных
Личные знакомства
Рекомендации знакомых
Реклама в СМИ (газетах, журналах, ТВ, радио, общественном транспорте и пр.)
Профильные выставки
Уличные вывески, рекламные стенды
Менеджером выявляются клиенты, которым могут быть интересны услуги компании и он заносит их в список. Список потенциальных клиентов ведется в Excel, заполняемая таблица см. таблица 1.1
Таблица 1.1
"Список потенциальных клиентов"
№п / п | Название организации | Вид деятельности |
Адрес | Тел. | Сайт | Контакты | Доп. инф-ия |
Составление планов обзвона клиентов и встреч. На основе списка потенциальных клиентов менеджером составляется план обзвона. Такой план составляется на каждый день. Также в план обзвона заносятся планируемые повторные звонки клиентам по результатам предыдущих звонков.
В план встреч вносятся все планируемые встречи с клиентом.
Работа с клиентом. Каждый день менеджер согласно плану обзвона совершает звонки. По результатам общения с клиентов менеджер либо договаривается о повторном звонке, либо о встрече, либо клиент категорично отказывается от услуг. Аналогично происходит и с планом встреч, с одним отличием - результатом встречи может быть заключенный договор. Результаты каждого звонка и каждой встречи менеджер фиксирует в файле Excel.
Составление отчетов о работе. Каждую неделю менеджер составляет отчеты о проделанной работе. В отчетах фиксируются результаты работы по каждому клиенту. Также менеджером составляется сводный отчет по количеству звонков, встреч, заключенных договоров. Составление отчетов о проделанной работе занимает около 10% рабочего времени менеджера.
1.2 Техническая и технологическая сущность задачи
В рамках данной дипломной работы планируется автоматизировать деятельность менеджера по работе с клиентами. Для этого необходимо решить следующие задачи:
1. Определить функции разрабатываемой ИС. Результаты решения задачи будут служить исходными данными для всех остальных поставленных задач. Информацию для решения поставленной задачи получим из анализа деятельности менеджера, приведенной в 1.1.2
2. Выбрать архитектуру разрабатываемой ИС. Архитектура разрабатываемой ИС должны быть выбрана исходя их функции разрабатываемой ИС.
3. Выбрать средства разработки ИС. Должны быть выбраны наиболее подходящие для решения поставленных задач средства разработки.
4. Построить логическую и физическую модели базы данных. Информацию для решения поставленной задачи получим из анализа деятельности менеджера, приведенной в 1.1.2 и планируемых функций разрабатываемой ИС.
5. Разработать пользовательский интерфейс. Информацию для решения поставленной задачи получим из анализа деятельности менеджера, приведенной в 1.1.2 и планируемых функций разрабатываемой ИС.
1.3 Обоснование необходимости использования вычислительных и телекоммуникационных средств для решения задачи
Для обоснования необходимости использования вычислительных т телекоммуникационных средств необходимо проанализировать бизнес-процессы менеджера по поиску клиентов и выявить недостатки существующей схемы работы.
Бизнес-процесс представляет собой систему последовательных, целенаправленных и регламентированных видов деятельности, в которой посредством управляющего воздействия и с помощью ресурсов входы процесса преобразуются в выходы, результаты процесса, представляющие ценность для потребителей. Бизнес-процессы делят на основные, производящие основные выходы, получаемые клиентами организации, и вспомогательные, выход которых используется другими подразделениями организации.
Функциональная модель BPWin, разработанная для структурно-функционального анализа бизнес-процессов объекта управления и решаемой задачи представлена на рисунках 1.1 - 1.4
Рис.1.1 Контекстная диаграмма "Работа менеджера по поиску клиентов"
Рис.1.2 Декомпозиция работы "Работа менеджера по поиску клиентов"
Рис.1.3 Декомпозиция работы "Сбор и систематизация информации о потенциальных клиентах"
Рис.1.4 Декомпозиция работы "Работа с клиентом"
Как уже было отмечено в 1.1.2, база потенциальных клиентов, а также учет звонков, встреч, заключенных договоров ведется в Excel, отчеты о проделанной работе составляются вручную.
Основные недостатки существующей схемы работы следующие:
1. Высокая трудоемкость обработки информации. На составление отчетов у менеджера уходит в среднем 10% рабочего времени. Также много времени уходит на поиск нужной информации в файлах Excel, неудобно составлять планы обзвона и встреч,
2. Несовершенство организации сбора и регистрации исходной информации.
3. Отсутствие удобной передачи информации по клиентам между сотрудниками при уходе менеджера в отпуск, на больничный, увольнении.
4. Отсутствие оперативного контроля за деятельностью менеджеров.
1.4 Постановка задачи
1.4.1 Цель и назначение создания или модернизации модулей или сервисов информационной системы
Целью создания ИС является автоматизация рутинных операций деятельности менеджера по работе с клиентами, что позволит менеджеру сконцентрироваться на творческом процессе человеческого общения и более эффективно заниматься поиском, привлечением и удержанием прибыльных клиентов.
Разрабатываемая ИС должна выполнять следующие функции:
Ввод, хранение и обработку информации о потенциальных клиентах.
Ввод, хранение и обработку информации о предстоящих звонках и встречах.
Ввод, хранение и обработку информации о результатах встреч и звонков.
Инструменты для удобного составления планов обзвона и планов встреч.
Автоматическое формирование отчетов менеджера за произвольный период времени.
Разграничение прав доступа - менеджер должен видеть и иметь возможность редактировать только прикрепленных к нему клиентов. Видеть всех клиентов может только руководитель отдела.
1.4.2 Общая характеристика организации решения задачи вычислительными и телекоммуникационными средствами
После внедрения разрабатываемой ИС работа менеджера принципиально не изменится - будут оптимизированы отдельные участки работы, кроме того, менеджеру не придется составлять еженедельные отчеты о проделанной работе.
Разрабатываемая ИС поможет менеджерам организовать лучше свою работу, свои контакты с заказчиком, отслеживать ситуации на объекте, более организовано выполнять свои обязательства, запланированные работы.
Руководитель отдела сможет увидеть этот контакты менеджера и их результаты не по окончании недели, а сразу же после того, как эта информация попала в компьютер, т.е. информацию о контактах с клиентами руководитель отдела сможет контролировать буквально в течение нескольких часов.
Более того, и что очень даже немаловажно - руководителю теперь не надо будет тратить время, чтобы спрашивать, чем занимается тот или иной менеджер. Достаточно будет открыть программу и посмотреть, что у него происходит.
1.5 Анализ существующих разработок
Среди лидеров западного рынка CRM-систем следует назвать такие компании, как Siebel, PeopleSoft, Clarify, Pivotal, а также Интернет-системы, ориентированные на CRM для электронной коммерции, - BroadVision и NetPerceptions.
На данный момент на российском рынке имеется пока еще немного реально доступных решений, большинство из которых основаны на западных разработках.
Платинум / Эпикор
Одними из первых на российском рынке стали предлагать CRM-решения компании "Платинум" (ныне - "Эпикор") с модулем Clientele, рассчитанным в основном для оптимизации работы отделов продаж.
Колумбус
Представительство компании "Колумбус" распространяет в России два CRM-решения. Первое - система "Пивотал" одноименной компании, входящей в десятку самых известных производителей CRM-систем на мировом рынке. Эта система находится сейчас в процессе локализации; ведутся переговоры с рядом заказчиков о пилотных проектах. "Пивотал" имеет интерфейс с ERP-системой AXAPTA (компании "Дамгаард"). Второе решение - CRM-модуль в наборе модулей ERP-системы AXAPTA. Это решение интересно тем, что является одним из очень немногих решений, встроенных в ERP-систему в качестве полноправного модуля, поэтому уровень его интеграции с другими модулями ERP-системы AXAPTA значительно выше, чем при использовании отдельных систем, даже от одного поставщика. Система AXAPTA действительно уникальна с точки зрения предоставляемых ею возможностей по работе через Интернет: все сделано на уровне технологий ядра системы, так что эти возможности в равной степени применимы и к модулю заказов для реализации Интернет-магазина, и к модулю CRM. Единственное, что еще предстоит этому относительно молодому CRM-решению, - обеспечить такой же объем функциональности, как и в устоявшихся CRM-системах. Хотя, с другой стороны, вряд ли в российских условиях можно сразу применить более половины функций, встроенных в "старые" CRM-системы, поскольку далеко не все телефонные и Интернет-технологии, необходимые для них, доступны и используются в России (например, американская технология бесплатных номеров 1-800 к нам придет еще не скоро).
Следует отметить, что в отличие от базовых ERP-приложений, которые требуют огромной доработки для доведения их до соответствия требованиям российского законодательства по бухгалтерскому, финансовому и хозяйственному учету, CRM-системы относительно легко переносить из страны в страну - пожалуй, более 90% работы по локализации составляет перевод (для базовых ERP-систем перевод - это 10-20% работ по локализации). Таким образом, можно ожидать, что западные поставщики CRM-решений будут активно выводить их на российский рынок. Однако, как уже говорилось выше, максимальный результат от внедрения CRM-систем возможен только в случае внедрения их вместе с интегрированной внутренней ERP-системой, причем с такой, которая имеет готовый отработанный интерфейс с ней, а в идеале - встроенных в ERP-систему.
1.5.1 "Эврика" от РУСЛАН Коммуникейшнз
CRM-решение, предлагаемое "РУСЛАН Коммуникейшнз", подходит и для небольшого предприятия, так как стоит в несколько раз меньше аналогичных продуктов западного производства, менее приближенных к российской действительности и не имеющих поддержки на местах.
В процессе работы системы постоянно обновляется полная информация о существующих и перспективных партнерах компании, в том числе и информация о телефонных звонках и других контактах данного человека или организации, о посещениях Web-сервера, о завершенных и текущих контрактах и т.д. Система ведет своего рода архив общения с клиентами, напоминая об истечении срока действия контракта, о времени со дня последнего звонка клиенту и т.п. В момент телефонного звонка на компьютер отвечающего сотрудника поступает полная информация о звонящем, так что сотрудник к началу разговора уже готов к общению.
Основополагающим элементом новой структуры является осуществление взаимодействия между Web-порталом предприятия и его телефонной структурой. Одновременная работа в Интернете и по телефону, совместные обсуждения и совместная работа с одними и теми же документами могут производиться не только среди сотрудников предприятия, но и с внешними клиентами. Одновременное взаимодейcтвие с внешним миром через браузер и общение по телефону позволяет осуществлять оперативное взаимодействие с клиентом и со всеми заинтересованными лицами в компании в целях оперативного решения текущих вопросов. В результате увеличивается эффективность работы не только каждого конкретного сотрудника, но и предприятия в целом.
1.6 Обоснование проектных решений по видам обеспечения
1.6.1
По информационному обеспечению комплекса задач
Информационное обеспечение - совокупность форм документов нормативной базы и реализованных решений по объемам, размещению и формам существования информации, которая используется в информационной системе при ее функционировании.
Структура информационного обеспечения:
методические инструктивные;
система классификации и кодирования информации;
информационная база (внешняя: нормативно-справочные документы, информационные сообщения; внутренняя: информационные массивы).
Основные принципы создания информационного обеспечения:
целостность;
вероятность;
контроль;
защита от несанкционированного доступа
единство и гибкость, стандартизация и унификация, адаптивность, минимизация ввода и вывода информации.
Требования к информационному обеспечению:
1) оно должно быть достаточным для выполнения всех функций, которые автоматизируются;
2) для кодирования информации должны использоваться классификаторы, которые есть у заказчика;
3) для кодирования входной информации, которая используется на высшем уровне, должны быть использованы классификаторы этого уровня;
4) должно быть совмещено с информационным обеспечением, которое взаимодействует с ним;
5) формы документов должны отвечать требованиям стандартов унифицированной системы документации, или нормативным документам заказчика;
6) форма документов и видео кадров должны быть согласованы с соответствующими характеристиками терминалов;
7) формы представления выходной информации должны быть согласованы с разработчиком;
8) сроки и сокращение информационных сообщений должны быть общеприняты в этой предметной области и согласованы с заказчиком;
9) в информационной системе должны быть предусмотрены необходимые средства по контролю и обновлению данных в информационных массивах, контроля идентичности информации в БД.
Информационное средство - комплекс упорядоченной относительно постоянной информации на носителях данных.
Информационное изделие - информационное средство, которое прошло испытания и передается заказчику вместе с программным обеспечением его ведения.
Информационная база - совокупность упорядоченной информации, которая используется для функционирования системы и делится на внешнюю и внутреннюю машинную базу:
внешняя машинная информационная база - часть информационной базы, которая представляет собой совокупность сообщений, сигналов и документов, которые предназначены для непосредственного восприятия человека. В данном случае к внешней машинной информационной базе относятся печатаемые документы и отчеты, отображаемые на экране;
внутренняя машинная информационная база - часть информационной базы, которая является совокупностью информации и используется в информационной системе на машинных носителях данных.
В свою очередь внутренняя информационная база может иметь форму хранения данных в виде базы данных или совокупности локальных файлов. База данных - совокупность связанных данных, организованных по определенным правилам, предусматривающим общие принципы описания, хранения и манипулирования, независимая от прикладных программ. Совокупность же локальных файлов не предусматривает описания хранимых данных, ее структура напрямую зависит от используемого приложения и между файлами отсутствуют какие-либо связи. В данном проекте в качестве формы хранения используется база данных, так как она дает большую гибкость в изменении ее структуры, более быструю работу с ней и независимость от прикладного приложения, а также с помощью СУБД автоматическую поддержку целостности базы данных.
Требования при создании внутримашинной информационной базы:
полнота представления данных;
минимальный состав данных;
минимизация времени обработки данных;
независимость структуры массивов от внутренних средств ее организации,
динамичность структуры информационной базы.
В данной работе используется следующее информационное обеспечение:
бизнес-план проекта;
методика расчета показателей экономической эффективности инвестиций.
Система классификации - совокупность методов и правил классификации и ее результата.
Системы классификации бывают двух видов:
иерархическая - последовательное деление множества объектов на подчиненные классификационные группировки. Такая классификация характеризуется количеством степеней классификации, глубиной, емкостью, гибкостью.
Преимуществами такой классификации являются: логичность построения, четкость выделения признаков, большой информационный объем, традиционность и привычность использования.
К недостаткам можно отнести жесткую структуру, необходимость иметь большие резервные емкости.
фасетная - параллельное разделение множества на независимые классификационные группировки.
Преимущества: гибкость структуры, возможность включать новые и удалять старые фасеты. Благодаря этому плюсу, в данном проекте применена именно эта система классификации.
Недостатки: недостаточно полное использование вследствие отсутствия множества возможных комбинаций фасет, непривычность и нетрадиционность использования при ручной обработке. Так как на программном уровне системе проще оперировать структурой фасетов, этот недостаток не является существенным.
Система кодирования - совокупность методов и правил кодирования классификационных группировок и объектов заданной длины.
Они бывают:
порядковые. Создание кода из чисел натурального ряда и его присвоение;
серийно-порядковые. Создание кода из чисел натурального ряда с закреплением отдельных серий и диапазонов за объектами классификации с одинаковыми признаками и его присвоение;
последовательные. Создание кода классификационной группировки с использованием кодов последовательного размещения группировок;
параллельные. Создание кода классификационной группировки или объекта классификации с использованием кодов независимых группировок, которые получены при фасетном методе. Именно такая система и подходит для данного проекта.
Способы кодирования информации:
ручной;
печатный;
автоматизированный, на специальном оборудовании.
Можно по-разному характеризовать понятие модели данных. С одной стороны, модель данных - это способ структурирования данных, которые рассматриваются как некоторая абстракция в отрыве от предметной области. С другой стороны, модель данных - это инструмент представления концептуальной модели предметной области и динамики ее изменения в виде базы данных. На сегодняшний день самыми распространенными являются 3 модели:
сетевая. Эта модель данных является, вероятно, наиболее общей по возможностям представления концептуальной модели. К недостаткам сетевой модели обычно относят сложность получаемой на её основе концептуальной схемы и большую трудоемкость понимания соответствующей схемы внешним пользователем. Также существенным недостатком является "жесткость" получаемой концептуальной схемы. Связи закреплены в записях в виде указателей. При появлении новых аспектов использования этих же данных может возникнуть необходимость установления новых связей между ними. Это требует введения в записи новых указателей, т.е. изменения структуры БД, и, соответственно, переформирования всей базы данных.
иерархическая. Целесообразность появления иерархической модели обусловлена, конечно, тем, что большинство организационных систем реального мира имеют иерархическую структуру (административное деление страны, организационная структура предприятия и т.п.). Соответствующее концептуальное представление также будет иметь иерархическую структуру и естественным образом может быть описано в терминах иерархической модели.
В качестве недостатков иерархической модели можно назвать вышеуказанные недостатки сетевой.
реляционная. Основными используемыми понятиями здесь также являются поле, запись и файл. Структура записи определяет структуру таблицы, содержащей экземпляры соответствующей записи. Столбцы таблицы представляют собой имена полей записи, строки таблицы - экземпляры записи.
Главным преимуществом данной модели является появление новых аспектов использования данных и необходимость введения новых связей не должны приводить к реструктуризации всей модели данных и базы данных в целом. Также большим плюсом является наличие на ее основе множества СУБД. Именно поэтому в данном проекте будет использоваться данная модель.
1.6.2 По техническому обеспечению
Разрабатываемая информационная система будет представлять собой программный комплекс, устанавливаемый и выполняющийся на компьютерах типа PC под управлением OC Windows 98 SE и выше.
Сервер баз данных должен удовлетворять следующим требованиям:
Программное обеспечение: Microsoft SQL Server 2005 SP1 на компьютере под управлением Microsoft Windows 2003 SP1
Аппаратное обеспечение: Pentium IV 3,4 GHz, 1024 Mb ОЗУ, 120 Gb HDD
"Клиентские" ПК должны удовлетворять следующим требованиям:
Программное обеспечение: Windows 98 SE и выше, Internet Explorer 6.0 Дополнительное программное обеспечение: MS Office 2003 и выше
Аппаратное обеспечение: Минимальные характеристики: Celeron 600 Mhz, 128 mb ОЗУ,20 gb HDD. Рекомендуемые характеристики: Pentium II 600 Mhz, 256 mb ОЗУ, 40 gb HDD.
1.6.3 По программному обеспечению
Так как разрабатываемое приложение будет хранить информацию о клиентах, встречах, звонках и т.д., необходимо использовать базу данных. Существует четыре разновидности архитектур баз данных:
• локальные базы данных;
• архитектура "файл-сервер";
• архитектура "клиент-сервер";
• многозвенная (трехзвенная N-tier или multi-tier) архитектура.
Рассмотрим кадждую из них.
Локальные базы данных и архитектура "файл-сервер"
При работе с локальными базами данных сама БД и приложение, ее использующее находятся на одном и том же компьютере. Приложение в таком случае ответственно за поддержание целостности БД и за выполнение запросов к БД.
При работе в архитектуре "файл-сервер" БД и приложение расположены на файловом сервере сети. Возможна многопользовательская работа с одной и той же БД, когда каждый пользователь со своего компьютера запускает приложение, расположенное на сетевом сервере. Тогда на компьютере пользователя запускается копия приложения. По каждому запросу к БД из приложения данные из таблиц БД перегоняются на компьютер пользователя, независимо от того, сколько реально нужно данных для выполнения запроса. После этого выполняется запрос.
В архитектуре "файл-сервер" вся тяжесть выполнения запросов к БД и управления целостностью БД ложится на приложение пользователя. БД на сервере является пассивным источником данных.
Существенных различий с точки зрения архитектуры между однопользовательской архитектурой и архитектурой "файл-сервер" не имеется.
Удаленные базы данных и архитектура "клиент-сервер".
Архитектура "клиент-сервер" разделяет функции приложения пользователя (называемого клиентом) и сервера.
Приложение-клиент формирует запрос к серверу, на котором расположена БД, на структурном языке запросов SQL (Structured Query Languague), являющемся промышленным стандартом в мире реляционных БД. Удаленный сервер принимает запрос и переадресует его SQL-серверу БД. SQL-сервер обеспечивает интерпретацию запроса, его выполнение в базе данных, формирование результата выполнения запроса и выдачу его приложению-клиенту. При этом ресурсы клиентского компьютера не участвуют в физическом выполнении запроса; клиентский компьютер лишь отсылает запрос к серверной БД и получает результат, после чего интерпретирует его необходимым образом и представляет пользователю. Так как клиентскому приложению посылается результат выполнения запроса, по сети "путешествуют" только те данные, которые необходимы клиенту. В итоге снижается нагрузка на сеть. Поскольку выполнение запроса происходит там же, где хранятся данные (на сервере), нет необходимости в пересылке больших пакетов данных. Кроме того, SQL-сервер, если это возможно, оптимизирует полученный запрос таким образом, чтобы он был выполнен в минимальное время с наименьшими накладными расходами.
Все это повышает быстродействие системы и снижает время ожидания результата запроса.
При выполнении запросов сервером существенно повышается степень безопасности данных, поскольку правила целостности данных определяются в базе данных на сервере и являются едиными для всех приложений, использующих эту БД. Таким образом, исключается возможность определения противоречивых правил поддержания целостности. Мощный аппарат транзакций, поддерживаемый SQL-серверами, позволяет исключить одновременное изменение одних и тех желанных различными пользователями и предоставляет возможность откатов к первоначальным значениям при внесении в БД изменений, закончившихся аварийно.
Таким образом, функциями приложения-клиента являются:
1. посылка к серверу запросов;
2. интерпретация результатов запросов, полученных от сервера, и представление их пользователю в требуемой форме;
3. реализация интерфейса пользователя.
Использование архитектуры "клиент-сервер":
1. резко уменьшает сетевой график;
2. понижает сложность приложений-клиентов (поскольку тем уже нет 1 необходимости обеспечивать целостность и безопасность БД и следить за параметрами многопользовательской работы с БД);
3. понижает требования к аппаратным средствам, на которых эти приложения функционируют (т.е. к компьютерам пользователей - клиентов);
4. повышает надежность БД, ее целостность, безопасность и секретность.
Многозвенная архитектура "клиент-сервер"
Развитие идеи архитектуры "клиент-сервер" привело к появлению многозвенной архитектуры доступа к базам данным (в литературе ее также называют трехзвенной архитектурой, N-tier или multi-tier архитектурой).
Архитектура "клиент-сервер" является двухзвенной. Первым звеном является приложение клиента, вторым - сервер БД и сама БД.
В трехзвенной архитектуре наборы данных, бывшие ранее "собственностью" клиентских приложений, выделяются в отдельное звено, называемое сервером приложений.
В качестве СУБД для реализации данного проекта была выбрана "Microsoft SQL Server 2005". SQL Server 2005 является всеобъемлющим, интегрированным сквозным решением, которое наделяет пользователей вашей организации безопасной, надежной, и продуктивной платформой для обработки промышленной информации и приложений, касающихся интеллектуальных ресурсов предприятия. SQL Server 2005 предоставляет мощные, знакомые инструменты для профессионалов информационных технологий так же, как и для работников информационной сферы, уменьшая сложность создания, развёртывания, управления и использования данных предприятия и аналитических приложений на платформах от мобильных устройств до информационных систем предприятия. Благодаря исчерпывающему набору функций, взаимодействию с существующими системами и автоматизации типовых задач, SQL Server 2005 предоставляет полное решение в области хранения данных для предприятий всех масштабов.
Платформа данных SQL Server включает следующие инструменты:
Реляционная база данных: безопасное, надёжное, масштабируемое, высокодоступное ядро с улучшенной производительностью и поддержкой структурированных и неструктурированных (XML) данных.
Replication Services: репликация данных для распределённых и мобильных приложений обработки данных, высокая доступность систем, масштабируемый параллелизм со вторичными хранилищами данных для отчётных решений предприятия и интеграция с разнородными системами.
Notification Services: развитые возможности уведомлений для разработки и внедрения масштабируемых приложений, способных доставлять персонализированные, своевременные обновления информации множеству соединённых и мобильных устройств.
Integration Services: возможности извлечения, преобразования и загрузки для хранилищ данных и интеграции данных в масштабе предприятия.
Analysis Services: аналитическая обработка в реальном времени (OLAP) для быстрого, сложного анализа больших и смешанных наборов данных, использующая многомерное хранение.
Reporting Services: исчерпывающее решение для создания, управления и доставки как традиционных бумажных отчётов, так и интерактивных, основанных на технологии WWW отчётов.
Инструменты управления: SQL Server включает средства управления для развитого управления и настройки баз данных, также как и тесную интеграцию с такими инструментами, как Microsoft Operations Manager (MOM) и Microsoft Systems Management Server (SMS). Стандартные протоколы доступа к данным существенно уменьшают время, необходимое для интеграции данных SQL Server с существующими системами. В дополнение, поддержка Web служб встроена для обеспечения взаимодействия с другими приложениями и платформами.
Инструменты разработки: SQL Server предлагает интегрированные инструменты разработки для ядра базы данных, извлечения, трансформации и загрузки данных, извлечения информации, OLAP и отчётности, которые тесно интегрированы с Microsoft Visual Studio® для предоставления сквозных возможностей разработки приложений. Каждая главная подсистема SQL Server поставляется со своей собственной объектной моделью и набором API для расширения системы данных в любом направлении, которое уникально для вашего бизнеса.
Платформа данных SQL Server 2005 предоставляет организациям всех размеров следующие преимущества:
Использовать активы данных: в дополнение к поставке безопасной, надёжной базы данных для отраслей промышленности и аналитических приложений, SQL Server 2005 позволяет заказчикам получать больше выгоды от их данных включением встроенных функций, таких как отчётность, анализ и извлечение информации.
Увеличить продуктивность: благодаря всеобъемлющим возможностям интеллектуальных ресурсов предприятия и интеграции со знакомыми инструментами, такими, как Microsoft Office System, SQL Server 2005 предоставляет работникам информационной сферы вашего предприятия важную, своевременную информацию, приспособленную для их конкретных нужд. Цель - сделать BI доступными для всех пользователей организации и, конечном счёте, позволить пользователям на всех уровнях организации принимать лучшие бизнес решения, основанные на одном из самых ценных активов - их данных.
Уменьшить сложность информационной технологии: SQL Server 2005 упрощает разработку, внедрение и управление отраслями промышленности и аналитическими приложениями, предоставляя программистам гибкую среду разработки и интегрированные, автоматизированные инструменты управления администраторам баз данных.
Снизить общую стоимость владения: интегрированный подход и фокус на простоте использования и внедрения имеет самые малые в промышленности издержки реализации и поддержки, способствующие быстрому возврату ваших инвестиций в базы данных.
В настоящее время существует множество языков программирования. Однако наиболее подходящими для разработки клиентской части текущего проекта являются объектно-ориентированные языки программирования. Самыми популярными из них являются C++ Builder, Delphi (продукты фирмы Borland) и Microsoft Visual Basic (разработка корпорации Microsoft).
Система объектно-ориентированного программирования C++ Builder предназначена для операционных систем Windows. Интегрированная среда C++ Builder обеспечивает скорость визуальной разработки, продуктивность повторно используемых компонент в сочетании с мощью языковых средств C++, усовершенствованными инструментами и разномасштабными средствами доступа к базам данных.
Профессиональные средства языка C++ интегрированы в визуальную среду разработки. C++Builder предоставляет быстродействующий компилятор с языка Borland C++, эффективный инкрементальный загрузчик и гибкие средства отладки как на уровне исходных инструкций, так и на уровне ассемблерных команд - в расчете удовлетворить высокие требования программистов-профессионалов.
Microsoft Visual Basic - это мощная система программирования, позволяющая быстро и эффективно создавать приложения для Microsoft Windows.
Широкие возможности Visual Basic и его простота послужили основной причиной для выбора его в качестве языка программирования для создания таких Windows-приложений как Excel.
Возможностями Visual Basic являются:
управление множественными проектами с помощью Explorer (Проводник проектов);
использование новых сред Code Editor (Редактор кодов), в том числе Auto Quick Info (Быстрого Авто информатора);
работа с окном Form Layout (Макета бланка) для настройки внешнего вида программы, изменения размеров окон и документов;
выбор и использование функций управления Active X;
использование новых отладочных инструментов и техник для исправления ошибок программирования;
быстрый запуск проекта с одной или более предопределенной формой;
расширение возможностей Microsoft Word через автоматизацию.
Среда программирования Visual Basic содержит все необходимые инструменты для быстрого и эффективного создания мощных программ, работающих в среде Windows.
Инструменты, имеющиеся в среде программирования Visual Basic, помогают при конструировании программ.
Главным недостатком данной среды разработки является отсутствие быстрой визуальной разработки сетевых приложений. Эта среда предоставляет богатые средства только для создания локальных приложений. К тому же получаемое приложение не является полностью самостоятельным, а использует библиотеки интерпретатора языка Basic, вследствие чего из всех рассматриваемых языков программирования, приложения, разработанные на его основе, имеют самый худший показатель по скорости выполнения приложения. По этим двум причинам данное средство разработки тоже мало подходит.
Delphi - это комбинация нескольких важнейших технологий:
высокопроизводительный компилятор в машинный код;
объектно-ориентированная модель компонент;
визуальное (а, следовательно, и скоростное) построение приложений из программных прототипов;
масштабируемые средства для построения баз данных.
Компилятор, встроенный в Delphi, обеспечивает высокую производительность, необходимую для построения приложений в архитектуре "клиент-сервер". Этот компилятор в настоящее время является самым быстрым в мире. Кроме того, Delphi обеспечивает быструю разработку без необходимости писать вставки на Си или ручного написания кода (хотя это возможно).
В процессе построения приложения разработчик выбирает из палитры компонент готовые компоненты как художник, делающий крупные мазки кистью. Еще до компиляции он видит результаты своей работы - после подключения к источнику данных их можно видеть отображенными на форме, можно перемещаться по данным, представлять их в том или ином виде. В этом смысле проектирование в Delphi мало чем отличается от проектирования в интерпретирующей среде, однако после выполнения компиляции получается код, который исполняется в 10-20 раз быстрее, чем, то же самое, сделанное при помощи интерпретатора. Кроме того, в Delphi компиляция производится непосредственно в родной машинный код, в то время как существуют компиляторы, превращающие программу в так называемый p-код, который затем интерпретируется виртуальной p-машиной. Это не может не сказаться на фактическом быстродействии готового приложения.
Основной упор объектно-ориентированной модели в Delphi делается на максимальном повторном использовании кода. Это позволяет разработчикам строить приложения весьма быстро из заранее подготовленных объектов, а также дает им возможность создавать свои собственные объекты для среды Delphi. Никаких ограничений по типам объектов, которые могут создавать разработчики, не существует.
В Delphi все написано на нем же, поэтому разработчики имеют доступ к тем же объектам и инструментам, которые использовались для создания среды разработки. В результате нет никакой разницы между объектами, поставляемыми Borland или третьими фирмами, и объектами, которые вы можете создать.
В стандартную поставку Delphi входят основные объекты, которые образуют удачно подобранную иерархию более, чем из 300 базовых классов. На Delphi можно одинаково хорошо писать как приложения к корпоративным базам данных, так и, к примеру, игровые программы. Во многом это объясняется тем, что традиционно в среде Windows было достаточно сложно реализовывать пользовательский интерфейс. Событийная модель в Windows всегда была сложна для понимания и отладки. Но именно разработка интерфейса в Delphi является самой простой задачей для программиста.
Cреда Delphi включает в себя полный набор визуальных инструментов для скоростной разработки приложений (RAD - rapid application development), поддерживающей разработку пользовательского интерфейса и подключение к корпоративным базам данных. VCL - библиотека визуальных компонент, включает в себя стандартные объекты построения пользовательского интерфейса, объекты управления данными, графические объекты, объекты мультимедиа, диалоги и объекты управления файлами, управление DDE и OLE. Визуальные компоненты в Delphi обладают большой гибкостью. В Delphi визуальные компоненты пишутся на объектном паскале, на том же паскале, на котором пишется алгоритмическая часть приложения. И визуальные компоненты Delphi получаются открытыми для надстройки и переписывания.
VCL-библиотека классов среды проектирования Delphi предоставляет ряд классов, позволяющих быстро и эффективно разрабатывать различные приложения баз данных.
Эти классы представлены следующими группами:
компоненты для доступа к данным, реализующие:
доступ через машину баз данных BDE (Borland Database Engine), предоставляющую доступ через ODBC-драйверы или через внутренние драйверы машины баз данных BDE (компоненты страницы BDE-палитры инструментов);
доступ через ADO-объекты (ActiveX Data Objects), в основе которого лежит применение технологии OLE DB (компоненты страницы ADO);
доступ к локальному или удаленному SQL-серверу InterBase (компоненты страницы InterBase);
доступ посредством легковесных драйверов dbExpress;
доступ к БД при многозвенной архитектуре (компоненты страницы DataSnap);
визуальные компоненты, реализующие интерфейс пользователя;
компоненты для связи источников данных с визуальными компонентами, предоставляющими интерфейс пользователя;
компоненты для визуального проектирования отчетов.
Для обеспечения доступа из приложения к таблицам базы данных MSSQLServer 2005 используется технология ADO.
1.6.4 По технологическому обеспечению
Как уже было отмечено в 1.3 в существующей технологии работы менеджера по поиску клиентов существует ряд недостатков:
1. Высокая трудоемкость обработки информации. На составление отчетов у менеджера уходит в среднем 10% рабочего времени. Также много времени уходит на поиск нужной информации в файлах Excel, неудобно составлять планы обзвона и встреч,
2. Несовершенство организации сбора и регистрации исходной информации.
3. Отсутствие удобной передачи информации по клиентам между сотрудниками при уходе менеджера в отпуск, на больничный, увольнении.
4. Отсутствие оперативного контроля за деятельностью менеджеров.
Разрабатываемая информационная система будет представлять собой клиент - серверный программный комплекс.
С внедрением разрабатываемой ИС эти вышеперечисленные недостатки будут устранены следующим образом:
Вся информация будет храниться в одной базе данных, а не в разрозненных файлах Excel. В разрабатываемой ИС будут удобные инструменты для составления плана звонков, плана встреч, хранения результатов.
Отчеты будут автоматически генерироваться системой на основе вводимой менеджером информации о звонках, встречах и их результатах.
Все вышеперечисленное позволит сократить время на выполнение рутинных операций, увеличит производительность работы менеджера. Также, что немаловажно, работу менеджера можно будет контролировать в режиме реального времени.
2. Проектная часть
2.1 Техническое обеспечение задачи
2.1.1 Модель информационных потоков в информационной системы и ее описание
Диаграммы потоков данных (Data Flow Diagramming) являются основным средством моделирования функциональных требований к проектируемой системе. Требования представляются в виде процессов, связанных потоками данных. Диаграммы потоков данных показывают, как каждый процесс преобразует свои входные данные в выходные, и выявляют отношения между этими процессами. Основные компоненты DFD (как было сказано выше) - процессы или работы, внешние сущности, потоки данных, накопители данных (хранилища).
Модель информационных потоков для разрабатываемой ИС представлена на рисунке 2.1
Рисунок 2.1 Диаграмма потоков данных
К менеджеру поступает информация о потенциальных клиентах. Менеджер анализирует информацию, отбирает клиентов, которых могут заинтересовать услуги компании, и заносит информацию о клиенте в БД.
При составлении плана обзвона и встреч менеджер получает информацию о клиентах из БД и вносит информацию по планам в БД. Для звонка это - клиент, дата, комментарий, для встречи - клиент, дата, место, комментарий.
Для работы с клиентами менеджеру необходимо получать из БД информацию по планам обзвона и встреч, информацию по клиентам. По результатам общения с клиентом менеджер заносит в БД результаты встреч и комментарии.
Отчеты по работе менеджера составляются автоматически на основе ранее внесенных данных.
Физическая схема взаимодействия отдельных частей информационной системы
Разработанный программный комплекс состоит из двух частей - клиент и сервер. Клиентом является запрашивающая машина, сервером - машина, которая отвечает на запрос (см. рисунок 2.2).
Рисунок 2.2 Взаимодействие клиента и сервера
Клиентская часть программного комплекса, установленная на компьютере пользователя выполняет запрос к серверной части, расположенной на сервере. Для взаимодействия используется протокол TCP / IP. Клиент SQL (сервер приложений) выполняет запрос по протоколу TCP / IP. Для взаимодействия с клиентами MS SQL Server использует порт 1433 (по умолчанию). Могут использоваться и другие порты, если используется несколько экземпляров приложения SQL Server. Кроме этого, в SQL Server 2005 используется порт 1434 для обзора списка доступных серверов.
2.1.2 Функции и назначение отдельных компонентов проектируемой системы
Клиентская часть разработанного программного комплекса содержит 10 форм и модуль данных. Дерево классов представлено на рисунке 2.3
Дерево объектов каждой формы и модуля данных представлены на рисунках 2.4 - 2.14.
Рисунок 2.3 Дерево классов программного комплекса
Рисунок 2.4 Дерево объектов формы "Form1"
Рисунок 2.5 Дерево объектов формы "DataModule2"
Рисунок 2.6 Дерево объектов формы "Form3"
Рисунок 2.7 Дерево объектов формы "Form4"
Рисунок 2.8 Дерево объектов формы "Form5"
Рисунок 2.9 Дерево объектов формы "Form7"
Рисунок 2.10 Дерево объектов формы "Form6"
Рисунок 2.11 Дерево объектов формы "Form8"
Рисунок 2.12. Дерево объектов формы "Form9"
Рисунок 2.13. Дерево объектов формы "Form10"
Рисунок 2.14. Дерево объектов формы "Form11"
Модуль Данных (DataModule) предназначен для централизованного хранения и использования компонент доступа к базам данных. Модуль данных разработанной ИС представлен на рисунке 2.15.
Рисунок 2.15. Модуль данных
2.1.3 Характеристика комплекса в целом
Разработанный программный комплекс позволяет автоматизировать рутинные операции деятельности менеджера по работе с клиентами. Он выполняет следующие функции:
Ввод, хранение и обработку информации о потенциальных клиентах.
Ввод, хранение и обработку информации о предстоящих звонках и встречах.
Ввод, хранение и обработку информации о результатах встреч и звонков.
Инструменты для удобного составления планов обзвона и планов встреч.
Автоматическое формирование отчетов менеджера за произвольный период времени.
Разграничение прав доступа - менеджер должен видеть и иметь возможность редактировать только прикрепленных к нему клиентов. Видеть всех клиентов может только руководитель отдела.
2.2 Программное обеспечение задачи (комплекса задач, АРМ)
2.2.1Характеристика базы данных
2.2.1.1 Характеристика инфологической модели БД
В базе данных отображается информация об определенной предметной области. Предметная область - это часть реального мира.
Инфологическая модель (ИМ) предметной области - это описание предметной области, выполненной без ориентации на используемые в дальнейшем программные и технические средства. Содержит исходную информацию о предметной области. Этап создания ИМ называется инфологическим проектированием.
Требования, предъявляемые к инфологической модели:
Адекватное отображение (язык для представления ИМ должен обладать достаточными выразительными возможностями)
Непротиворечивость (не должна допускаться неоднозначная трактовка модели)
Легко расширяемость (обеспечение ввода новых данных без изменения ранее определенных)
Гибкий язык (язык должен быть применим как при ручном, так и при автоматизированном проектировании)
Понятность всем пользователям
Цель инфологического моделирования - создать точное и полное отображение реального мира, используемое в дальнейшем в качестве источника информации для построения БД.
Для решения задач рассмотренных в данном дипломном проекте разработаны логическая и физическая модели данных, представленные на рисунках 2.16 - 2.17.
Данные модели показывает основные сущности, ключевые поля и атрибуты, входящие в каждую сущность. Также показаны информационные связи и потоки информации, позволяющие решить поставленные задачи.
Рис.2.15 Логическая модель данных
Рис.2.16 Физическая модель данных
2.2.1.2 Характеристика даталогической модели БД
Даталогическая модель отражает структуру БД с учетом особенностей модели данных (см. таблицу 2.1)
Таблица 2.1 Даталогическая модель базы данных
Сущность | Идентификатор таблицы | Атрибут | Идентификатор поля | Тип поля |
Менеджер | Manager | Код менеджера | Id_manager | int |
ФИО менеджера | FIO_manager | varchar(30) | ||
Логин | Login | varchar (20) | ||
Пароль | Pass | varchar (20) | ||
Уровень | Level | int | ||
Клиент | Сustomer | Код клиента | Id_customer | int |
Код менеджера | Id_manager | int | ||
Наименование заказчика | Name_organiz | varchar (30) | ||
Вид деятельнос-ти | Activities | varchar (50) | ||
Адрес | Address | varchar (50) | ||
Телефон | Telephone | varchar (50) | ||
Электронная почта | varchar (50) | |||
Сайт | Site | varchar (50) | ||
Контакты | Contact | varchar (50) | ||
Дополнительная информация | Info | varchar (150) | ||
Звонки | Call | Код звонка | Id_call | int |
Код менеджера | Id_manager | int | ||
Код клиента | Id_customer | int | ||
Коммента-рии | Comments | varchar (150) | ||
Дата звонка | Date | datetime | ||
Время звонка |
Time | datetime | ||
Встречи | Meeting | Код встречи | Id_meeting | int |
Код менеджера | Id_manager | int | ||
Код клиента | Id_customer | int | ||
Коммента-рии | Comments | varchar (150) | ||
Место встречи | Place | varchar (50) | ||
Дата встречи | Date | datetime | ||
Время встречи | Time | datetime | ||
Статус | Status | Код статуса | Id_status | int |
Статус | Status | varchar (20) |
2.2.2 Общие положения
Разработанный программный комплекс содержит несколько взаимосвязанных модулей, которые схематично представлены на рис.2.17.
Рисунок 2.17. Дерево модулей программного комплекса
2.2.3 Описание программных модулей
Разрабатываемый проект включает в себя следующие файлы:
1. Файл проекта (Project1. dpr) Этот текстовый файл используется для хранения информации о формах и модулях. В нем содержатся операторы инициализации и запуска программы на выполнение.
2. Файлы форм (Unit1. dfm - Unit11. dfm) Это двоичный или текстовый файл, который создается Delphi для хранения информации о формах
2. Файлы модулей (Unit1. pas - Unit11. pas) Каждой форме проекте, соответствует текстовый файл модуля, используемый для хранения кода.Т. к. форм в проекте 11, модулей соответственно тоже 11.
4. Файл параметров проекта (Project1. dfo) В этом файле хранятся установки параметров проекта.
5. Файл ресурсов (Project1. res) Этот бинарный файл содержит используемую проектом пиктограмму и прочие ресурсы.
6. Объектные файлы модулей (Unit1. dcu - Unit11. dcu) Это откомпилированный файл модулей (Unit1. pas - Unit11. pas), которые компонуется в окончательный исполняемый файл.
7. Исполняемый файл (Project1. ехе) Это исполняемый файл приложения. Он является автономным исполняемым файлом, для которого больше ничего не требуется.
Листинг программного кода приведен в приложении 2.
Листинг скриптов базы данных приведен в приложении 3.
2.3 Технологическое обеспечение задачи
При запуске программы необходимо выбрать имя пользователя и ввести пароль, а также имя сервера или его ip-адрес (см. рисунок 2.18). Если пароль введен верно, загрузится главная форма программы (см. рисунок 2. 19), в противном случае появится сообщение "Неправильный пароль".
Главная форма программы состоит из меню, календаря и списков звонков и встреч. Меню содержит следующие пункты:
Клиенты
Новый
Список
Справочники / только для администратора /
Менеджеры
Статусы клиента
Контакты
Звонки
Встречи
Отчеты
Список клиентов
Деятельность за текущий день
Деятельность за текущую неделю
Деятельность за текущий месяц
Деятельность за текущий год
Выход
При входе в программу по умолчанию показываются звонки и встречи на текущую дату. Для того, чтобы посмотреть информацию за другую дату необходимо кликнуть по выбранной дате в календаре.
Для того, чтобы добавить нового пользователя, необходимо зайти в пункт меню Справочники - > Менеджеры (см. рисунок 2. 20). При добавлении нового пользователя нужно назначить ему права доступа: 0 - менеджер, 1 - руководитель отдела. Добавлять новых пользователей может только руководитель. Также только руководитель может заполнять справочник "статусы клиента" (см. рисунок 2.21).
Рисунок 2.18. Форма "Вход в систему"
Рисунок 2. 19. Форма "Главная форма"
Рисунок 2. 20. Форма "Менеджеры"
Рисунок 2.21. Форма "Статусы клиента"
Рисунок 2.22. Форма "Новый клиент"
Рисунок 2.23. Форма "Список клиентов"
При выборе пункта меню "Клиенты" - > "Новый" появляется форма "Клиенты" (см. рисунок 2.23), на которой можно добавить нового клиента. Для просмотра и редактирования информации об уже существующем клиенте, необходимо выбрать пункт меню "Клиенты" - > "Список".
Рисунок 2.24. Форма "Звонки"
Рисунок 2.25. Форма "Встречи"
При выборе пункта меню "Клиенты" - > "Звонки" появляется форма "Звонки" (см. рисунок 2.24), на которой можно добавить новый звонок.
При выборе пункта меню "Клиенты" - > "Встречи" появляется форма "Встречи" (см. рисунок 2.25), на которой можно добавить новую встречу.
Рисунок 2.26. Меню "Отчеты"
Для формирования отчетов необходимо выбрать пункт меню "Отчеты" (см. рисунок 2.26). В разработанной информационной системе пять отчетов: "Список клиентов", "Деятельность за текущий день", "Деятельность за текущую неделю", "Деятельность за текущий месяц", "Деятельность за текущий год".
Если отчет формирует руководитель, в отчет попадают данные всех менеджеров, если менеджер - то данные только одного менеджера.
3. Обоснование экономической эффективности проекта
3.1 Выбор и обоснование методики расчета экономической эффективности
Внедрение мероприятий по автоматизации работы менеджера связано со значительными материальными затратами на разработку и функционирование системы. Поэтому важнейшей задачей является анализ экономической эффективности внедряемой системы. Ее своевременное решение дает возможность сравнивать различные варианты автоматизации и установить оптимальный вариант, оценить его влияние на изменение показателей деятельности организации.
Эффективность внедрения автоматизированной системы обуславливается действием ряда факторов организационного, информационного и экономического характера.
Организационный эффект проявляется в освобождение работников от рутинных операций по систематизации и группировке учетных данных, записей в реестры и другую документацию.
Информационный фактор эффективности выражается в повышение уровня информированности персонала.
Экономический фактор проявляется в том, что учетная информация, имеющая целью полное и своевременное отражение и состояние объекта и причин, влияющих на его развитие, в конечном счете направлена на улучшение использование ресурсов.
Опыт эксплуатации комплексов задач показал, что в процессе автоматизации достигается снижение трудоемкости отдельных операций, рост производительности и улучшений условий труда отдельных работников, повышение оперативности достоверности, включая подготовку отчетности при постоянно растущем объеме без увеличения численности персонала и т.д.
Итак, для обоснования экономической эффективности разработки и внедрения ИС необходимо:
Произвести расчет экономии труда за счет внедрения ИС и рост производительности труда.
Произвести расчет затрат на разработку необходим для обоснования экономической эффективности системы
Оценить срок окупаемости проекта
3.2 Расчет экономии труда за счет внедрения
ИС
Экономическая эффективность (экономия труда за счет внедрения ИС) рассчитывается по формуле 3.1:
Эг=Тр*N-(То+N*Тэвм) (3.1) где
Эг - экономия труда за счет применения ИС
Тр - затраты времени на решение задач вручную
N - предполагаемое количество дней работы с программой.
То=S*k где S и K - единовременные затраты
S - средняя занятость в течение дня
k - количество дней для составления и отладки программы
Тэвм=Тв+Тм+Тп - время решения задачи на ЭВМ где Тв, Тм, Тп - текущие затраты
Тв - время ввода исходной информации
Тм - машинное время
Тп - время вывода информации на печать (в часах)
До внедрения программного модуля формирование отчетов, составления планов у каждого менеджера уходило следующие количество времени: 4 часа в неделю или 16 часов в месяц. Менеджеров отделе 5.
Тр = 16*5=80
Автоматизация позволила сэкономить время на составление планов и формирование отчетов теперь на это достаточно 30 минут в неделю или 2 часа в месяц на каждого менеджера.
Тэвм=2*5=10
Эг=Тр*N-(То+N*Тэвм) =80 - 10= 70 часов в месяц
3.3 Рост производительности труда
за счет внедрения ИС
Рост производительности труда за счет внедрения ИС рассчитывается по формуле (3.2):
DП=Эг / (Тр*N) *100 (3.2)
DП=70/80*100=87,5%, где DП - изменения производительности труда менеджера.
Проанализировав полученные данные, можно с уверенностью сказать, что внедрение разрабатываемой ИС оправдано.
3.4 Расчет затрат на создание программного обеспечения и оценка экономической эффективности
3.4.1 Расчет затрат на разработку системы
Расчет затрат на разработку необходим для обоснования экономической эффективности системы. Плановые затраты на разработку включают все расходы, связанные с ее выполнением, независимо от источника их финансирования. Определение затрат на разработку производится путем составления калькуляции плановой себестоимости. Она является основным документом, на основании которого осуществляется планирование и учет затрат на выполнение.
Смета затрат включает следующие статьи:
основная заработная плата разработчиков информационной системы;
дополнительная заработная плата разработчиков информационной системы;
отчисления на социальные страхования;
расчет затрат на амортизацию ЭВМ;
расходы на электроэнергию, используемую при разработку информационной системы;
накладные расходы. Рассмотрим более подробно каждую из указанных статей затрат.
3.4.2 Расчет затрат на основную заработную плату разработчикам
Оплата труда представляет совокупность средств, выплаченных работникам в денежной и натуральной форме как за отработанное время, выполненную работу, так и в установленном законодательством порядке за неотработанное время.
Начисление основной заработной платы производится в зависимости от принятых на предприятии форм оплаты труда. При повременной оплате труда основная заработная плата начисляется работникам за фактически отработанное время, а при сдельной за фактически выполненную работу.
Повременная форма оплаты труда находит применение при расчете заработной платы рабочих, служащих, специалистов и руководителей. При этой форме оплаты труда заработная плата рассчитывается исходя из месячного должностного оклада за проработанное время. Необходимо учесть начисление доплат за сверхурочные работы. Доплата начисляется сверх повременного заработка из расчета 20% тарифной ставки рабочего - повременщика.
Затраты на основную заработную плату (Зосн) при повременной форме оплаты труда рассчитываются по формуле (3.3):
Зосн. =Омес. *Траб. *Кд / Др. мес., (3.3) где:
Омес. - месячный оклад разработчика программы;
Др. мес. - среднее количество рабочих дней в месяце;
Траб. - фактическое время участия в разработке программы;
Кд - коэффициент, учитывающий доплаты к основной зарплате. При этом отношение Омес. / Др. мес. характеризует среднюю дневную зарплату разработчика.
В данном дипломном проекте:
Омес. руководителя разработки программы = 60000 руб.
Омес. программиста = 45000 руб.
Др. мес. = 21 день;
Кд=1.
Результаты расчета затрат на основную заработную плату разработчиков программы представлены в таблице 3.1
Таблица 3.1
Затраты на основную заработную плату
Исполнители | Время работы, кол. дней | Оклад | Средняя дневная зарплата мес. / Др. мес, руб. | Затраты на зарплату, руб. |
Руководитель | 4 | 60000р. | 2857р. | 11428р. |
Программист | 42 | 45000р. | 2142р. | 89964р. |
Итого | 101868р. |
3.4.3 Расчет дополнительной заработной платы разработчиков программы
В статье "Дополнительная заработная плата" планируются и учитываются выплаты, предусмотренные законодательством о труде или коллективными договорами за непроработанное на производстве (неявочное) время: оплата очередных и дополнительных отпусков, компенсация за неиспользованный отпуск, оплата льготных часов подросткам, оплата времени, связанного с выполнением государственных и общественных обязанностей и др. Она определяется в процентном отношении основной заработной платы
Здол. = Кдоп. * Зосн. (3.4) где:
Кдоп. - коэффициент, учитывающий величину дополнительной зарплаты разработчиков программы. Примем Кдоп. равным 0,2. На основе формулы (3.4) определяем:
Здоп. = 0,2 * 101868р. = 20373,6 руб.
3.4.4 Расчет отчислений на социальное страхование и обеспечение
В соответствии с законами Российской Федерации о пенсионном обеспечении, о занятости населения, о медицинском страховании, о государственном социальном страховании работники предприятий подлежат обязательному социальному страхованию и обеспечению.
Отчисления на социальное страхование включает в себя (в% к сумме основн., и дополн. заработной платы) приведена в таблице 3.2
Таблица 3.2
Отчисления на социальное страхование
Наименование отчислений | Процент |
социальное страхование | 3,2 |
медицинское страхование | 2,8 |
пенсионный фонд | 20,00 |
ИТОГО: | 26 |
В таблице 3.3 приведены данные применительно к рассчитанной сумме основной и дополнительной заработной плате.
Таблица 3.3
Отчисления на социальные страхования
Вид отчисления | Процент | Сумма отчислений |
Социальное страхование | 3,2 | 3 260р. |
Медицинское страхование | 2,8 | 2 852р. |
Пенсионный фонд | 20 | 20 374р. |
ИТОГО: | 26 | 26 486р. |
3.4.5 Расчет затрат на амортизацию ЭВМ, используемых при разработке системы
Амортизация - это процесс постепенного изнашивания основных средств и перенесения по установленным нормам их стоимости на произведенную продукцию (работы, услуги).
Начисление по установленным нормам амортизации основных средств называется амортизационными отчислениями. Нормы амортизационных отчислений установлены в процентах к балансовой (первоначальной) стоимости основных средств.
Нормы амортизации могут корректироваться в зависимости от отклонений от нормативных условий использования основных средств. Порядок их начисления определен Едиными нормами амортизационных отчислений на полное восстановление основных фондов народного хозяйства Российской Федерации, утвержденными постановлением Совета Министров СССР от 22 октября 1990 года N 1072.
Единые нормы амортизационных отчислений дифференцированы в зависимости от нормативного срока службы основных средств.
Срок службы (Тсл) - величина, обратная норме амортизационных отчислений, представляет собой отношение ста процентов к норме амортизации:
Тсл. =100/На (3.6) где:
На - норма амортизации в %.
Износ отражает моральное и физическое состояние объектов и является одним из критериев замены их на более совершенные, производительные, комфортабельные виды машин, оборудования и др. средств.
Расчет затрат на амортизацию оборудования производится следующим образом:
Зам. =Сперв. *(На / 100) * т * (фаб / Фд. о) (3.7) где:
Сперв. - первоначальная стоимость ЭВМ, используемой при раз
На - норма амортизационных отчислений;
т - количество используемых ЭВМ;
фаб. - время работы ЭВМ;
Фд. о. - действительный годовой фонд времени работы ЭВМ. Примем:
Сперв. == 18000 руб.,
На= 12,5%,
т = 1 шт.,
фаб. = 42 дня * 8 ч. = 336 ч.,
Фд. о. == Кол. раб. дн. * Кол. смен * Продолж. смены =
= 252 дня* 1 смена* 8 ч. = 2016 ч.
На основе формулы определяем:
Зам. = 375руб.
Результаты расчета затрат на амортизацию ЭВМ, используемые при разработке программы, представлены в таблице 3.4
Таблица 3.4
Затраты на амортизацию
Наименование оборудования | Количество единиц оборудования, шт | Время работы оборудования в раб., ч | Норма амортизационных отчислений% | Затраты на амортизацию, руб. |
IВМ РС | 1 | 336 | 12,5 | 375 |
3.4.6 Расчет затрат на электроэнергию, используемую ЭВМ в процессе разработки программы
Затраты на электроэнергию (Зэл. эн) рассчитываются по формуле (3.8):
Зэл. эн. =Цэ. * Р * т * ф (3.8) где:
Р - мощность ЭВМ, используемой при разработке программы;
ф - время работы ЭВМ, используемое при разработке программы;
т - количество используемых ЭВМ;
Цэ. - цена 1 кВт* ч электроэнергии.
Примем:
Р = 250 Вт;
ф = 336 ч;
т = 1;
Цэ. = 3,1 руб. На основе формулы (3.8) определяем Зэл. эн.:
Зэл. эн. = 269,4 руб.
Результаты расчета затрат на электроэнергию, используемую в процессе разработки программы, представлены в таблице 3.5
Таблица 3.5
Затраты на электроэнергию
Наименование оборудования | Количество единиц оборудования т, шт | Время работы оборудования Гр., ч | Мощность оборудования, кВт | Затраты на электроэнергию, руб. |
IВМ РС | 1 | 336 | 0.25 | 269,4 руб. |
3.4.7 Расчет накладных расходов
В статью "Накладные расходы" включаются расходы на управление и хозяйственное обслуживание. По этой статье учитывается заработная плата аппарата управления и общехозяйственных служб, затраты на содержание и текущий ремонт зданий, сооружений, оборудования и инвентаря, амортизационные отчисления на их полное восстановление и капитальный ремонт, расходы по охране труда, научно-технической информации, изобретательству и рационализации. Величина накладных расходов определяется в процентах от основной и дополнительной заработной платы.
Накладные расходы (Рнакл) рассчитываются по формуле (3.9):
Рнакл. =Кн * (Зосн. +Здоп) (3.9) где:
Кн - коэффициент накладных расходов. Примем Кн равным 1.1 На основе формулы (3.9) определяем:
Рнакл. =1.1* (101868 руб. + 20373,6 руб) =134465,76 руб. Результаты расчета затрат на разработку информационной системы предприятия сведем в таблицу 3.6.
Таблица 3.6.
Смета затрат на разработку системы
№п / п | Статьи затрат | Затраты, руб. | % к итогу |
1 | Основная заработная плата разработчиков | 101868 | 35,89 |
2 | Дополнительная заработная плата разработчиков | 20373,6 | 7,18 |
3 | Отчисления на социальное страхование. | 26 486р. | 9,33 |
4 | Амортизационные отчисления | 375 | 0,13 |
5 | Расходы на электроэнергию | 269,4 | 0,09 |
6 | Накладные расходы | 134465,76 | 47,37 |
7 | Итого: | 283837,76 | 100 |
3.5 Расчет экономической эффективности
Внедрение информационной системы сопряжено с капитальными вложениями как на приобретение техники, так и на разработку проекта, выполнение подготовительных работ и подготовку кадров.
Обобщенным критерием экономической эффективности является минимум затрат живого и овеществленного труда
Экономический эффект от внедрения вычислительной и организационной техники подразделяется на прямой и косвенный.
Под прямой экономической эффективностью понимают экономию материально-трудовых ресурсов и денежных средств, полученную в результате сокращения численности управленческого персонала, фонда заработной платы.
Определим экономическую эффективность с помощью трудовых и стоимостных показателей.
На составление отчетности и планов в месяц затрачивалось 80 чел. / ч (Т0) При использовании автоматизированной системы - 10 чел. / ч в месяц (Т1) Абсолютный показатель экономической эффективности Тэк составляет:
Тэк = Т0 - Т1 (3.10)
Тэк = 80 - 10=70 чел. / ч в месяц
Относительный индекс производительности труда вычисляется по формуле (3.11):
J п. т. = Т1/Т0 (3.11)
J п. т. =10/80=0,125
Рассчитаем стоимостной показатель по формуле 3.12
Сэк = С0 - С1 (3.12)
Заработная плата менеджера составляет 50000 руб в месяц, прибавим к ней 26% начислений на зарплату итого получаем 50000 +13000= 63000 руб.
Затраты на заработную плату менеджеров при прежней схеме работы составят 30000 руб (С0). При использовании ИС 3750 руб(С1).
Сэк = 30000 - 3750 =750 р.
Индекс стоимости затрат определяется по формуле 3.13
J ст. затр. = С1/С0 (3.13)
J ст. затр. = 3750/30000 =0,125
Срок окупаемости затрат вычисляется по формуле 3.14
, где (3.14)
З0 - затраты на техническое оборудование;
П0 - затраты на программное обеспечение.
Подставим имеющиеся данные в формулу 2.12, в результате получим:
З0 - затрат на оборудование равны 0, т. к имеющееся оборудование возможно использовать и для новой системы;
П0 - затраты на программное обеспечение вычисленные в п.3.3 равны 283837,76 руб.;
месяцев.
В результате сделанных расчетов можно сделать вывод, что автоматизация повысит абсолютный показатель эффективности использования трудовых ресурсов на 70 часов в месяц, показатель стоимости уменьшит в 0,125 раз, окупаемость проекта около 11 месяцев.
Кроме того, будет достигнута и косвенная эффективность, а именно повысится качество работы, поэтому внедрение данного модуля является необходимым.
Заключение
В процессе работы над данным дипломным проектом была разработана информационно-аналитическая система контакт центра "СИМПРЕЗА". Для этого были решены следующие задачи:
рассмотрена характеристику предприятия;
рассмотрена работу менеджера по поиску клиентов;
выявлена техническую и технологическую сущность задачи;
обоснована необходимость использования вычислительных и телекоммуникационных средств для решения задачи;
определены цель и назначение создания или модернизации модулей или сервисов информационной системы;
охарактеризована организацию решения задачи вычислительными и телекоммуникационными средствами;
рассмотрены существующие разработки;
обоснованы проектные решения;
построена и описана модель информационных потоков в информационной системы;
рассмотрена физическую схему взаимодействия отдельных частей информационной системы;
рассмотрены функции и назначение отдельных компонентов проектируемой системы;
рассмотрена характеристику комплекса в целом;
построена инфологическую модель БД;
построена даталогическую модель БД;
описаны программные модули;
обоснована экономическая эффективность проекта;
Список используемой литературы
1. Автоматизированные информационные технологии управления. / Под ред. Чл. корр. международной академии информатизации проф. Г.А. Титоренко. - М.: ЮНИТИ, 2003.
2. Аляев Ю.А., Козлов О.А. "Алгоритмизация и языки программирования Pascal, C++, Visual Basic". Учебно-справочное пособие. - М.: Финансы и статистика, 2004
3. Аляев Ю.А. и др. "Практикум по алгоритмизации и программированию на языке Паскаль". Учеб. пособие. - М.: Финансы и статистика, 2004
4. Андрейчиков А.В., Андрейчикова О.Н. "Интеллектуальные информационные системы". Учебник. - М.: Финансы и статистика, 2004
5. Балдин К.В. Информационные системы в экономике. Учебник. - М.: Дашков и К, 2007.
6. Барановская Т.П. и др. "Архитектура компьютерных систем и сетей". Учеб. пособие. - М.: Финансы и статистика, 2003
7. Баронов В.В., Калянов Г.Н., Попов Ю.И., Титовский И.Н. Информационные технологии и управление предприятием. - М.: БизнесПРО, 2004.
8. "Бизнес-процессы, основные стандарты их описания", С.М. Ковалев, журнал "Справочник экономиста" №11’2006.
9. Брусакова И.А. Информационные системы и технологии в экономике. - М.: Финансы и статистика, 2005.
10. Вендров А.М. "Практикум по проектированию программного обеспечения экономических информационных систем". Учеб. пособие. - М.: Финансы и статистика, 2004
11. Гасликова И.Р., Гохберг Л.М. Информационные технологии в России. М.: ЦИСН, 2002.
12. Грабауров В.А. Информационные технологии для менеджеров. - М.: Финансы и статистика, 2002
13. Грабауров В.А. "Информационные технологии для менеджеров". - 2-е изд., прераб. и доп. - М.: Финансы и статистика, 2005
14. Дик В.В. "Методология формирования решений в экономических системах и инструментальные среды их поддержки". - М.: Финансы и статистика, 2001
15. Емельянов А.А. и др. "Имитационное моделирование экономических процессов". Учеб. пособие. - М.: Финансы и статистика, 2004
16. Иванов И.А. Инновационный менеджмент. Изд-во Баро-Пресс, Р-н-Д, 2001.
17. Интернет-университет информационных технологий, курс "Проектирование информационных систем", http: // www. intuit. ru
18. Информационные технологии управления: Учебно-практическое пособие / Под ред. Ю.М. Черкасова. - М: ИНФРА-М, 2001.
19. Исаев Г.Н. Информационные системы в экономике. - М.: Омега-Л, 2006.
20. Калашян А.Н., Калянов Г.Н. "Структурные модели бизнеса: DFD-технологии". - М.: Финансы и статистика, 2003
21. Калянов Г.Н. Моделирование, анализ, реорганизация и автоматизация бизнес-процессов. - М.: Финансы и статистика, 2007.
22. Калянов Г.Н. Моделирование, анализ, реорганизация и автоматизация бизнес-процессов. - М.: Финансы и статистика, 2007
23. Козырев А.А. Информационные технологии в экономике и управлении. - СПб.: Изд-во Михайлова В.А., 2003
24. Ларин М.В. Проблемы совершенствования автоматизации управления в современных условиях // Экономика и жизнь 2004. №8. С.18.
25. Марков А.С., Лисовский К.Ю. "Базы данных. Введение в теорию и методологию". Учебник. - М.: Финансы и статистика, 2004
26. Под ред. Н.Л. Прохорова "Управляющие вычислительные комплексы" Учеб. пособие. - 3-е изд., перераб. и доп. - М.: Финансы и статистика, 2003
27. Смирнова Г.Н. и др. "Проектирование экономических информационных систем" Учебник. - М.: Финансы и статистика, 2003
28. Соколов А.П. "Системы программирования: теория, методы, алгоритмы". - М.: Финансы и статистика, 2004
29. Тельнов Ю.Ф. "Реинжиниринг бизнес-процессов". - М.: Финансы и статистика, 2004
30. Трофимов В.В. Информационные системы и технологии в экономике и управлении. - М.: Высшее образование, 2005
31. Уткин В.Б., Балдин К.В. Информационные системы и технологии в экономике. - М.: ЮНИТИ, 2003
32. Фаронов В.В. "Delphi 6" учебный курс - М; Издатель Молгачева С.В., 2003. - 672с., ил.
33. Хотинская Г.И. Информационные технологии управления. - М.: Дело и Сервис (ДИС), 2003.
34. Черемных С.В. и др. "Моделирование и анализ систем. IDEF-технологии: практикум". - М.: Финансы и статистика, 2005
35. Черемных С.В. и др. "Структурный анализ систем: IDEF-технологии". - М.: Финансы и статистика, 2003
Приложения
Приложение 1
.
Должностная инструкция менеджера по ИСКУ клиентов
I. Общие положения
1. Менеджер по работе с клиентами относится к категории руководителей.
2. На должность менеджера по работе с клиентами назначается лицо, имеющее профессиональное (экономическое) образование, дополнительную подготовку по менеджменту, стаж работы в сфере предпринимательства не менее 3 лет.
3. Менеджер по работе с клиентами должен знать:
3.1 Законодательство, регламентирующее вопросы осуществления предпринимательской деятельности.
3.2 Рыночную экономику, предпринимательство и основы ведения бизнеса.
3.3 Основы маркетинга (концепцию маркетинга, основы управления маркетингом, способы и направления исследований рынка).
3.4 Теорию менеджмента, макро- и микроэкономики, делового администрирования.
3.5 Ассортимент, классификацию, характеристику и назначение предлагаемых товаров (продукции).
3.6. Порядок разработки бизнес-планов и коммерческих условий соглашений, договоров.
3.7. Правила установления деловых контактов.
3.8. Правила официального этикета при проведении переговоров с клиентами.
3.9. Теорию межличностного общения.
3.10. Основы социологии и психологии.
3.11 Методы обработки информации с использованием современных технических средств коммуникации и связи, компьютера.
4. Назначение на должность менеджера по работе с клиентами и освобождение от должности производится приказом директора.
5. Менеджер по работе с клиентами подчиняется непосредственно директору предприятия.
6. На время отсутствия менеджера по работе с клиентами (отпуск, болезнь, пр.) его обязанности выполняет лицо, назначенное в установленном порядке. Данное лицо приобретает соответствующие права и несет ответственность за ненадлежащее исполнение возложенных на него обязанностей.
II. Должностные обязанности
Менеджер по работе с клиентами:
1. Осуществляет анализ аудитории потенциальных клиентов, выявляет потребности клиентов, их уровень и направленность.
2. Разрабатывает методики поиска клиентов, планирует работу с клиентами, составляет схемы обращения к клиентам.
3. Непосредственно осуществляет поиск клиентов всеми доступными способами (путем размещения рекламы, участия в выставках, ярмарках, презентациях, направления предложений по средствам коммуникаций, электронной почтой, факсимильными сообщениями, пр).
4. Прогнозирует деловую надежность потенциальных клиентов, их финансовую и материальную обеспеченность.
5. Организует и проводит предварительные переговоры с клиентами, заинтересовавшимися предложениями (принявшими оферту, пр), уточняет потребности каждого конкретного клиента и подготавливает предложение, адресованное определенному клиенту.
6. Встречается с клиентами, убеждает клиентов в выгодности предложения, предлагает на обсуждение и согласование проекты договоров, принимает участие в работе над согласованием разногласий, заключает договоры от имени предприятия.
7. Предлагает клиентам пути решения не согласованных при переговорах вопросов и вопросов, возникших после совершения юридически значимых действий.
8. Поддерживает постоянный контакт с существующими клиентами, организует работу с ними по устоявшимся деловым схемам.
9. Разрабатывает схемы взаимоотношений с наиболее выгодными и перспективными клиентами (предложения особых условий договоров, систем скидок и индивидуального обслуживания, ускоренных сроков и особых условий исполнения договорных обязательств, пр).
10. Разрабатывает и дает клиентам рекомендации и консультации по наиболее эффективному использованию устоявшихся деловых связей; обеспечивает возможность посещения клиентами выставок, ярмарок, презентаций новых продуктов (товаров, услуг).
11. Обеспечивает соблюдение интересов клиентов при выполнении условий договоров подразделениями предприятия.
12. Налаживает обратную связь с клиентами (изучает их требования к продукции (товарам, услугам), устанавливает причины неудовлетворенности клиента совместной работой, анализирует претензии клиентов и принимает все меры по их решению и сохранению деловых связей).
13. Формирует банк данных о клиентах (клиентскую базу), своевременно вносит в нее изменения.
14. Изучает и анализирует политику конкурентов во взаимоотношениях с клиентами.
III. Права
Менеджер по работе с клиентами имеет право:
1. Самостоятельно определять формы работы с клиентами, способы установления деловых связей.
2. Распоряжаться вверенными ему финансовыми средствами (на представительские расходы).
3. Подписывать и визировать документы в пределах своей компетенции.
4. Знакомиться с документами, определяющими его права и обязанности по занимаемой должности, критерии оценки качества исполнения должностных обязанностей.
5. Запрашивать от руководства и специалистов подразделений предприятия информацию и документы, необходимые для выполнения его должностных обязанностей.
6. Требовать от руководства предприятия обеспечения организационно-технических условий и оформления установленных документов, необходимых для исполнения должностных обязанностей.
IV. Ответственность
Менеджер по работе с клиентами несет ответственность:
1. За ненадлежащее исполнение или неисполнение своих должностных обязанностей, предусмотренных настоящей должностной инструкцией, - в пределах, установленных действующим трудовым законодательством Российской Федерации.
2. За правонарушения, совершенные в процессе своей деятельности, - в пределах, установленных действующим административным, уголовным и гражданским законодательством Российской Федерации.
3. За причинение материального ущерба предприятию - в пределах, установленных действующим трудовым и гражданским законодательством Российской Федерации.
Приложение 2.
Листинг программного кода
programProject1;
uses
Forms,
Unit1 in 'Unit1. pas' {Form1},
Unit2 in 'Unit2. pas' {DataModule2: TDataModule},
Unit3 in 'Unit3. pas' {Form3},
Unit4 in 'Unit4. pas' {Form4},
Unit5 in 'Unit5. pas' {Form5},
Unit6 in 'Unit6. pas' {Form6},
Unit7 in 'Unit7. pas' {Form7},
Unit8 in 'Unit8. pas' {Form8},
Unit9 in 'Unit9. pas' {Form9},
Unit10 in 'Unit10. pas' {Form10},
Unit11 in 'Unit11. pas' {Form11};
{$R *. res}
begin
Application. Initialize;
Application. CreateForm(TForm1, Form1);
Application. CreateForm(TDataModule2, DataModule2);
Application. CreateForm(TForm3, Form3);
Application. CreateForm(TForm4, Form4);
Application. CreateForm(TForm5, Form5);
Application. CreateForm(TForm6, Form6);
Application. CreateForm(TForm7, Form7);
Application. CreateForm(TForm8, Form8);
Application. CreateForm(TForm9, Form9);
Application. CreateForm(TForm10, Form10);
Application. CreateForm(TForm11, Form11);
Application. Run;
end.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, Menus, StdCtrls, Buttons, ComCtrls, ExtCtrls,
DBCtrls, Grids, DBGrids, DateUtils;
type
TForm1 = class(TForm)
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
Label1: TLabel;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
Label2: TLabel;
N10: TMenuItem;
N11: TMenuItem;
MonthCalendar1: TMonthCalendar;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
DBGrid2: TDBGrid;
DBNavigator2: TDBNavigator;
N12: TMenuItem;
N13: TMenuItem;
N14: TMenuItem;
N15: TMenuItem;
N16: TMenuItem;
procedure N2Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure N11Click(Sender: TObject);
procedure N10Click(Sender: TObject);
procedure N7Click(Sender: TObject);
procedure N8Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure MonthCalendar1Click(Sender: TObject);
procedure N12Click(Sender: TObject);
procedure N14Click(Sender: TObject);
procedure N13Click(Sender: TObject);
procedure N15Click(Sender: TObject);
procedure N16Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit3, Unit4, Unit2, Unit6, Unit5, Unit7, Unit8, Unit9, Unit10, Unit11;
{$R *. dfm}
procedure TForm1. N2Click(Sender: TObject);
begin
Close;
end;
procedure TForm1. FormShow(Sender: TObject);
begin
Form3. ShowModal;
end;
procedure TForm1. N4Click(Sender: TObject);
begin
If DataModule2. ADOTable1. Active=true then DataModule2. ADOTable1. Active: =false;
DataModule2. ADOTable1. Active: =true;
Form4. ShowModal;
end;
procedure TForm1. N5Click(Sender: TObject);
begin
If DataModule2. ADOTable2. Active=true then DataModule2. ADOTable2. Active: =false;
DataModule2. ADOTable2. Active: =true;
Form6. ShowModal;
end;
procedure TForm1. N11Click(Sender: TObject);
begin
If DataModule2. ADOTable5. Active=true then DataModule2. ADOTable5. Active: =false;
DataModule2. ADOTable5. Active: =true;
If Label2. Caption='0' then
DataModule2. ADOTable5. Filter: ='Id_manager = ' + Label1. Caption;
If DataModule2. ADOTable3. Active=false then DataModule2. ADOTable3. Active: =true;
Form5. Show;
end;
procedure TForm1. N10Click(Sender: TObject);
Var max_num: integer;
begin
Form7. DBLookupComboBox1. ListFieldIndex: =0;
Form7. Edit2. Text: ='';
Form7. Edit3. Text: ='';
Form7. Edit4. Text: ='';
Form7. Edit5. Text: ='';
Form7. Edit6. Text: ='';
Form7. Edit7. Text: ='';
Form7. Edit8. Text: ='';
Form7. Edit9. Text: ='';
DataModule2. ADOQuery1. Active: =true;
max_num: =StrToInt(DataModule2. ADOQuery1. FieldbyName('max_num'). AsString) + 1;
DataModule2. ADOQuery1. Active: =false;
DataModule2. ADOTable3. Active: =true;
Form7. Show;
end;
procedure TForm1. N7Click(Sender: TObject);
begin
If DataModule2. ADOTable5. Active=true then DataModule2. ADOTable5. Active: =false;
DataModule2. ADOTable5. Active: =true;
If Form1. Label2. Caption='0' then DataModule2. ADOTable5. Filter: = 'Id_manager = ' + Form1. Label1. Caption;
Form8. MaskEdit1. Text: ='';
Form8. Edit2. Text: ='';
Form8. ShowModal;
end;
procedure TForm1. N8Click(Sender: TObject);
begin
If DataModule2. ADOTable5. Active=true then DataModule2. ADOTable5. Active: =false;
DataModule2. ADOTable5. Active: =true;
If Form1. Label2. Caption='0' then DataModule2. ADOTable5. Filter: = 'Id_manager = ' + Form1. Label1. Caption;
Form9. MaskEdit1. Text: ='';
Form9. Edit1. Text: ='';
Form9. Edit2. Text: ='';
Form9. ShowModal;
end;
procedure TForm1. BitBtn1Click(Sender: TObject);
begin
If DataModule2. ADOTable5. Active=true then DataModule2. ADOTable5. Active: =false;
DataModule2. ADOTable5. Active: =true;
If Form1. Label2. Caption='0' then DataModule2. ADOTable5. Filter: = 'Id_manager = ' + Form1. Label1. Caption;
Form8. MaskEdit1. Text: ='';
Form8. Edit2. Text: ='';
Form8. ShowModal;
end;
procedure TForm1. BitBtn2Click(Sender: TObject);
begin
If DataModule2. ADOTable5. Active=true then DataModule2. ADOTable5. Active: =false;
DataModule2. ADOTable5. Active: =true;
If Form1. Label2. Caption='0' then DataModule2. ADOTable5. Filter: = 'Id_manager = ' + Form1. Label1. Caption;
Form9. MaskEdit1. Text: ='';
Form9. Edit1. Text: ='';
Form9. Edit2. Text: ='';
Form9. ShowModal;
end;
procedure TForm1. MonthCalendar1Click(Sender: TObject);
Var y, m, d, y1, m1, d1: Word;
begin
DataModule2. ADOTable6. Active: =false;
DataModule2. ADOTable6. Active: =true;
DataModule2. ADOTable7. Active: =false;
DataModule2. ADOTable7. Active: =true;
DecodeDate(MonthCalendar1. Date, y, m, d);
DecodeDate(MonthCalendar1. Date+1, y1, m1, d1);
If Form1. Label2. Caption='0' then DataModule2. ADOTable6. Filter: = 'Id_manager =' + Form1. Label1. Caption + ' and Date >= '+Chr(39) + IntToStr(d) +' / '+ IntToStr(m) +' / '+ IntToStr(y) +' 00: 00: 00 AM'+Chr(39) + ' and Date < '+Chr(39) + IntToStr(d1) +' / '+ IntToStr(m1) +' / '+ IntToStr(y1) +' 00: 00: 00 AM'+Chr(39)
else DataModule2. ADOTable6. Filter: = 'Date >= '+Chr(39) + IntToStr(d) +' / '+ IntToStr(m) +' / '+ IntToStr(y) +' 00: 00: 00 AM'+Chr(39) + ' and Date < '+Chr(39) + IntToStr(d1) +' / '+ IntToStr(m1) +' / '+ IntToStr(y1) +' 00: 00: 00 AM'+Chr(39);
If Form1. Label2. Caption='0' then DataModule2. ADOTable7. Filter: = 'Id_manager =' + Form1. Label1. Caption + ' and Date >= '+Chr(39) + IntToStr(d) +' / '+ IntToStr(m) +' / '+ IntToStr(y) +' 00: 00: 00 AM'+Chr(39) + ' and Date < '+Chr(39) + IntToStr(d1) +' / '+ IntToStr(m1) +' / '+ IntToStr(y1) +' 00: 00: 00 AM'+Chr(39)
else DataModule2. ADOTable7. Filter: = 'Date >= '+Chr(39) + IntToStr(d) +' / '+ IntToStr(m) +' / '+ IntToStr(y) +' 00: 00: 00 AM'+Chr(39) + ' and Date < '+Chr(39) + IntToStr(d1) +' / '+ IntToStr(m1) +' / '+ IntToStr(y1) +' 00: 00: 00 AM'+Chr(39);
end;
procedure TForm1. N12Click(Sender: TObject);
begin
DataModule2. ADOTable5. Active: =false;
DataModule2. ADOTable5. Active: =true;
Form10. QuickRep1. PreviewModal;
end;
procedure TForm1. N14Click(Sender: TObject);
Var y, m, d, y1, m1, d1: Word;
begin
DataModule2. ADOTable10. Active: =false;
DataModule2. ADOTable10. Active: =true;
DecodeDate(Date(), y, m, d);
DecodeDate(Date() +1, y1, m1, d1);
If Form1. Label2. Caption='0' then DataModule2. ADOTable10. Filter: = 'Id_manager =' + Form1. Label1. Caption + ' and Date >= '+Chr(39) + IntToStr(d) +' / '+ IntToStr(m) +' / '+ IntToStr(y) +' 00: 00: 00 AM'+Chr(39) + ' and Date < '+Chr(39) + IntToStr(d1) +' / '+ IntToStr(m1) +' / '+ IntToStr(y1) +' 00: 00: 00 AM'+Chr(39)
else DataModule2. ADOTable10. Filter: = 'Date >= '+Chr(39) + IntToStr(d) +' / '+ IntToStr(m) +' / '+ IntToStr(y) +' 00: 00: 00 AM'+Chr(39) + ' and Date < '+Chr(39) + IntToStr(d1) +' / '+ IntToStr(m1) +' / '+ IntToStr(y1) +' 00: 00: 00 AM'+Chr(39);
Form11. QRLabel1. Caption: ='Отчет за текущий день';
Form11. QuickRep1. PreviewModal;
end;
procedure TForm1. N13Click(Sender: TObject);
Var n, y, m, d, y1, m1, d1: Word;
Date1, Date2: TDateTime;
begin
DataModule2. ADOTable10. Active: =false;
DataModule2. ADOTable10. Active: =true;
n: =DayOfWeek(Date());
If n=1 then Date1: =Date() - 6 else Date1: =Date() - n+2;
If n=1 then Date2: =Date() else Date2: =Date() - n +8;
DecodeDate(Date1, y, m, d);
DecodeDate(Date2+1, y1, m1, d1);
If Form1. Label2. Caption='0' then DataModule2. ADOTable10. Filter: = 'Id_manager =' + Form1. Label1. Caption + ' and Date >= '+Chr(39) + IntToStr(d) +' / '+ IntToStr(m) +' / '+ IntToStr(y) +' 00: 00: 00 AM'+Chr(39) + ' and Date < '+Chr(39) + IntToStr(d1) +' / '+ IntToStr(m1) +' / '+ IntToStr(y1) +' 00: 00: 00 AM'+Chr(39)
else DataModule2. ADOTable10. Filter: = 'Date >= '+Chr(39) + IntToStr(d) +' / '+ IntToStr(m) +' / '+ IntToStr(y) +' 00: 00: 00 AM'+Chr(39) + ' and Date < '+Chr(39) + IntToStr(d1) +' / '+ IntToStr(m1) +' / '+ IntToStr(y1) +' 00: 00: 00 AM'+Chr(39);
Form11. QRLabel1. Caption: = 'Отчет за текущую неделю';
Form11. QuickRep1. PreviewModal;
end;
procedure TForm1. N15Click(Sender: TObject);
Var n, y, m, d, y1, m1, d1: Word;
Date1, Date2: TDateTime;
begin
DataModule2. ADOTable10. Active: =false;
DataModule2. ADOTable10. Active: =true;
DecodeDate(Date(), y, m, d);
If m=12 then m1: =1 else m1: =m+1;
If m=12 then y1: =y+1 else y1: =y;
d: =1;
d1: =1;
If Form1. Label2. Caption='0' then DataModule2. ADOTable10. Filter: = 'Id_manager =' + Form1. Label1. Caption + ' and Date >= '+Chr(39) + IntToStr(d) +' / '+ IntToStr(m) +' / '+ IntToStr(y) +' 00: 00: 00 AM'+Chr(39) + ' and Date < '+Chr(39) + IntToStr(d1) +' / '+ IntToStr(m1) +' / '+ IntToStr(y1) +' 00: 00: 00 AM'+Chr(39)
else DataModule2. ADOTable10. Filter: = 'Date >= '+Chr(39) + IntToStr(d) +' / '+ IntToStr(m) +' / '+ IntToStr(y) +' 00: 00: 00 AM'+Chr(39) + ' and Date < '+Chr(39) + IntToStr(d1) +' / '+ IntToStr(m1) +' / '+ IntToStr(y1) +' 00: 00: 00 AM'+Chr(39);
Form11. QRLabel1. Caption: = 'Отчет за текущий месяц';
Form11. QuickRep1. PreviewModal;
end;
procedure TForm1. N16Click(Sender: TObject);
Var n, y, m, d, y1, m1, d1: Word;
Date1, Date2: TDateTime;
begin
DataModule2. ADOTable10. Active: =false;
DataModule2. ADOTable10. Active: =true;
DecodeDate(Date(), y, m, d);
d: =1;
d1: =1;
m: =1;
m1: =1;
y1: =y+1;
If Form1. Label2. Caption='0' then DataModule2. ADOTable10. Filter: = 'Id_manager =' + Form1. Label1. Caption + ' and Date >= '+Chr(39) + IntToStr(d) +' / '+ IntToStr(m) +' / '+ IntToStr(y) +' 00: 00: 00 AM'+Chr(39) + ' and Date < '+Chr(39) + IntToStr(d1) +' / '+ IntToStr(m1) +' / '+ IntToStr(y1) +' 00: 00: 00 AM'+Chr(39)
else DataModule2. ADOTable10. Filter: = 'Date >= '+Chr(39) + IntToStr(d) +' / '+ IntToStr(m) +' / '+ IntToStr(y) +' 00: 00: 00 AM'+Chr(39) + ' and Date < '+Chr(39) + IntToStr(d1) +' / '+ IntToStr(m1) +' / '+ IntToStr(y1) +' 00: 00: 00 AM'+Chr(39);
Form11. QRLabel1. Caption: = 'Отчет за текущий год';
Form11. QuickRep1. PreviewModal;
end;
end.
unit Unit2;
interface
uses
SysUtils, Classes, DB, ADODB;
type
TDataModule2 = class(TDataModule)
ADOConnection1: TADOConnection;
ADOTable1: TADOTable;
DataSource1: TDataSource;
ADOTable2: TADOTable;
DataSource2: TDataSource;
ADOQuery1: TADOQuery;
DataSource3: TDataSource;
ADOTable3: TADOTable;
ADOTable4: TADOTable;
DataSource4: TDataSource;
ADOTable5: TADOTable;
ADOTable6: TADOTable;
ADOTable7: TADOTable;
DataSource5: TDataSource;
DataSource6: TDataSource;
ADOQuery2: TADOQuery;
ADOQuery3: TADOQuery;
ADOTable8: TADOTable;
ADOTable9: TADOTable;
ADOTable10: TADOTable;
private
{ Private declarations }
public
{ Public declarations }
end;
var
DataModule2: TDataModule2;
implementation
{$R *. dfm}
end.
unit Unit3;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls, unit2;
type
TForm3 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Panel1: TPanel;
BitBtn1: TBitBtn;
Edit3: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
BitBtn2: TBitBtn;
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form3: TForm3;
implementation
uses Unit1;
{$R *. dfm}
procedure TForm3. BitBtn1Click(Sender: TObject);
Var i, l, id: integer;
y, m, d, y1, m1, d1: Word;
pas: string;
begin
DataModule2. ADOConnection1. Connected: =false;
DataModule2. ADOConnection1. ConnectionString: ='';
DataModule2. ADOConnection1. ConnectionString: =DataModule2. ADOConnection1. ConnectionString+'Provider=SQLOLEDB.1; ';
DataModule2. ADOConnection1. ConnectionString: =DataModule2. ADOConnection1. ConnectionString+'Password=asdfghjkl; ';
DataModule2. ADOConnection1. ConnectionString: =DataModule2. ADOConnection1. ConnectionString+'Persist Security Info=True; ';
DataModule2. ADOConnection1. ConnectionString: =DataModule2. ADOConnection1. ConnectionString+'User ID=simp; ';
DataModule2. ADOConnection1. ConnectionString: =DataModule2. ADOConnection1. ConnectionString+'Initial Catalog=simpaza; ';
DataModule2. ADOConnection1. ConnectionString: =DataModule2. ADOConnection1. ConnectionString+'Data Source='+Edit3. Text;
DataModule2. ADOConnection1. Connected: =true;
DataModule2. ADOTable6. Active: =false;
DataModule2. ADOTable7. Active: =false;
DataModule2. ADOTable6. Active: =true;
DataModule2. ADOTable7. Active: =true;
/ / ïðîâåðêà ëîãèíà è ïàðîëÿ
If Edit2. Text='' then ShowMessage('Ââåäèòå ëîãèí') else
If Edit1. Text='' then ShowMessage('Ââåäèòå ïàðîëü')
else begin
DataModule2. ADOTable1. Active: =true;
DataModule2. ADOTable1. First;
pas: ='';
For i: =1 to DataModule2. ADOTable1. RecordCount do
begin
If DataModule2. ADOTable1. FieldByName('Login'). AsString = Edit2. Text
then begin
l: =DataModule2. ADOTable1. FieldByName('Level'). AsInteger;
pas: =DataModule2. ADOTable1. FieldByName('Pass'). AsString;
id: =DataModule2. ADOTable1. FieldByName('Id_manager'). AsInteger;
end;
DataModule2. ADOTable1. Next;
end;
If pas=Edit1. Text then
begin
If l=0 then Form1. N3. Visible: =false;
If l=1 then Form1. N10. Visible: =false;
Form1. Label1. Caption: =IntToStr(Id);
Form1. Label2. Caption: =IntToStr(l);
Form1. MonthCalendar1. Date: =Date();
DecodeDate(Date(), y, m, d);
DecodeDate(Date(), y1, m1, d1);
If l=0 then DataModule2. ADOTable6. Filter: = 'Id_manager =' + Form1. Label1. Caption + ' and Date >= '+Chr(39) + IntToStr(d) +' / '+ IntToStr(m) +' / '+ IntToStr(y) +' 00: 00: 00 AM'+Chr(39) + ' and Date < '+Chr(39) + IntToStr(d1) +' / '+ IntToStr(m1) +' / '+ IntToStr(y1) +' 00: 00: 00 AM'+Chr(39)
else DataModule2. ADOTable6. Filter: = 'Date >= '+Chr(39) + IntToStr(d) +' / '+ IntToStr(m) +' / '+ IntToStr(y) +' 00: 00: 00 AM'+Chr(39) + ' and Date < '+Chr(39) + IntToStr(d1) +' / '+ IntToStr(m1) +' / '+ IntToStr(y1) +' 00: 00: 00 AM'+Chr(39);
If l=0 then DataModule2. ADOTable7. Filter: = 'Id_manager =' + Form1. Label1. Caption + ' and Date >= '+Chr(39) + IntToStr(d) +' / '+ IntToStr(m) +' / '+ IntToStr(y) +' 00: 00: 00 AM'+Chr(39) + ' and Date < '+Chr(39) + IntToStr(d1) +' / '+ IntToStr(m1) +' / '+ IntToStr(y1) +' 00: 00: 00 AM'+Chr(39)
else DataModule2. ADOTable7. Filter: = 'Date >= '+Chr(39) + IntToStr(d) +' / '+ IntToStr(m) +' / '+ IntToStr(y) +' 00: 00: 00 AM'+Chr(39) + ' and Date < '+Chr(39) + IntToStr(d1) +' / '+ IntToStr(m1) +' / '+ IntToStr(y1) +' 00: 00: 00 AM'+Chr(39);
close;
end
else ShowMessage('Íåïðàâèëüíûé ëîãèí èëè ïàðîëü')
end;
/ / Close;
end;
procedure TForm3. BitBtn2Click(Sender: TObject);
begin
Form1. Close;
end;
end.
unit Unit4;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, unit2, Grids, DBGrids, ExtCtrls, DBCtrls, StdCtrls, Buttons;
type
TForm4 = class(TForm)
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
BitBtn1: TBitBtn;
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form4: TForm4;
implementation
{$R *. dfm}
procedure TForm4. BitBtn1Click(Sender: TObject);
begin
DataModule2. ADOTable1. Cancel;
DataModule2. ADOTable1. Active: =false;
Close;
end;
end.
unit Unit5;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, DBCtrls, Grids, DBGrids, unit2, StdCtrls, Buttons,
Mask;
type
TForm5 = class(TForm)
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
DBEdit7: TDBEdit;
DBEdit8: TDBEdit;
BitBtn1: TBitBtn;
DBLookupComboBox1: TDBLookupComboBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form5: TForm5;
implementation
{$R *. dfm}
procedure TForm5. BitBtn1Click(Sender: TObject);
begin
DataModule2. ADOTable5. Cancel;
Close;
end;
procedure TForm5. BitBtn2Click(Sender: TObject);
begin
DataModule2. ADOTable5. Edit;
DataModule2. ADOTable5. FieldByName('Id_status'). AsString: =DBLookupComboBox1. KeyValue;
DataModule2. ADOTable5. Post;
end;
end.
unit Unit6;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, unit2, StdCtrls, Buttons, ExtCtrls, DBCtrls, Grids, DBGrids;
type
TForm6 = class(TForm)
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
BitBtn1: TBitBtn;
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form6: TForm6;
implementation
{$R *. dfm}
procedure TForm6. BitBtn1Click(Sender: TObject);
begin
DataModule2. ADOTable2. Cancel;
DataModule2. ADOTable2. Active: =false;
Close;
end;
end.
unit Unit7;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, DBCtrls, Unit2;
type
TForm7 = class(TForm)
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Edit7: TEdit;
Edit8: TEdit;
Edit9: TEdit;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
DBLookupComboBox1: TDBLookupComboBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form7: TForm7;
implementation
uses Unit1;
{$R *. dfm}
procedure TForm7. BitBtn2Click(Sender: TObject);
begin
Close;
end;
procedure TForm7. BitBtn1Click(Sender: TObject);
begin
DataModule2. ADOTable4. Active: =true;
DataModule2. ADOTable4. InsertRecord([Edit2. Text, Edit3. Text, Edit4. Text, Edit5. Text, Edit6. Text, Edit7. Text, Edit8. Text, Edit9. Text, Form1. Label1. Caption, DBLookupComboBox1. KeyValue]);
Close;
end;
end.
unit Unit8;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Unit2, DBCtrls, ExtCtrls, Grids, DBGrids, StdCtrls, Buttons,
Mask;
type
TForm8 = class(TForm)
DBLookupComboBox1: TDBLookupComboBox;
Label1: TLabel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
Label2: TLabel;
Label3: TLabel;
Edit2: TEdit;
MaskEdit1: TMaskEdit;
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form8: TForm8;
implementation
{$R *. dfm}
procedure TForm8. BitBtn1Click(Sender: TObject);
begin
Close;
end;
procedure TForm8. BitBtn2Click(Sender: TObject);
Var max_num: integer;
begin
DataModule2. ADOQuery2. Active: =false;
DataModule2. ADOQuery2. Active: =true;
DataModule2. ADOTable8. Active: =true;
DataModule2. ADOTable8. InsertRecord([MaskEdit1. Text, DBLookupComboBox1. KeyValue, Edit2. Text]);
Close;
end;
end.
unit Unit9;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls, DBCtrls, Grids, DBGrids, Mask;
type
TForm9 = class(TForm)
DBLookupComboBox1: TDBLookupComboBox;
Label1: TLabel;
BitBtn1: TBitBtn;
Label2: TLabel;
Label3: TLabel;
Edit2: TEdit;
MaskEdit1: TMaskEdit;
BitBtn2: TBitBtn;
Label4: TLabel;
Edit1: TEdit;
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form9: TForm9;
implementation
uses Unit2;
{$R *. dfm}
procedure TForm9. BitBtn1Click(Sender: TObject);
begin
Close;
end;
procedure TForm9. BitBtn2Click(Sender: TObject);
begin
DataModule2. ADOTable9. Active: =true;
DataModule2. ADOTable9. InsertRecord([MaskEdit1. Text, DBLookupComboBox1. KeyValue, Edit2. Text, Edit1. Text]);
Close;
end;
end.
unit Unit10;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, unit2, ExtCtrls, QuickRpt, QRCtrls;
type
TForm10 = class(TForm)
QuickRep1: TQuickRep;
TitleBand1: TQRBand;
QRLabel1: TQRLabel;
PageFooterBand1: TQRBand;
DetailBand1: TQRBand;
QRLabel2: TQRLabel;
QRLabel3: TQRLabel;
QRDBText1: TQRDBText;
QRDBText2: TQRDBText;
QRSysData1: TQRSysData;
QRSysData2: TQRSysData;
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form10: TForm10;
implementation
{$R *. dfm}
end.
unit Unit11;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, unit2, ExtCtrls, QuickRpt, QRCtrls;
type
TForm11 = class(TForm)
QuickRep1: TQuickRep;
TitleBand1: TQRBand;
PageFooterBand1: TQRBand;
DetailBand1: TQRBand;
ColumnHeaderBand1: TQRBand;
QRLabel1: TQRLabel;
QRLabel4: TQRLabel;
QRLabel3: TQRLabel;
QRLabel5: TQRLabel;
QRDBText1: TQRDBText;
QRDBText2: TQRDBText;
QRDBText3: TQRDBText;
QRDBText4: TQRDBText;
QRSysData2: TQRSysData;
QRSysData1: TQRSysData;
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form11: TForm11;
implementation
{$R *. dfm}
end.
Приложение
3. ЛИСТИНГСКРИПТОВБАЗЫДАННЫХ
USE [master]
GO
/ ****** Object: Database [simpaza] Script Date: 04/06/2009 06: 34: 09 ****** /
CREATE DATABASE [simpaza] ON PRIMARY
(NAME = N'simpaza', FILENAME = N'C: Program FilesMicrosoft SQL ServerMSSQL.1MSSQLDATAsimpaza. mdf', SIZE = 2048KB, MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB)
LOG ON
(NAME = N'simpaza_log', FILENAME = N'C: Program FilesMicrosoft SQL ServerMSSQL.1MSSQLDATAsimpaza_log. ldf', SIZE = 1024KB, MAXSIZE = 2048GB, FILEGROWTH = 10%)
COLLATE SQL_Latin1_General_CP1_CI_AS
GO
EXEC dbo. sp_dbcmptlevel @dbname=N'simpaza', @new_cmptlevel=90
GO
IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))
begin
EXEC [simpaza]. [dbo]. [sp_fulltext_database] @action = 'disable'
end
GO
ALTER DATABASE [simpaza] SET ANSI_NULL_DEFAULT OFF
GO
ALTER DATABASE [simpaza] SET ANSI_NULLS OFF
GO
ALTER DATABASE [simpaza] SET ANSI_PADDING OFF
GO
ALTER DATABASE [simpaza] SET ANSI_WARNINGS OFF
GO
ALTER DATABASE [simpaza] SET ARITHABORT OFF
GO
ALTER DATABASE [simpaza] SET AUTO_CLOSE OFF
GO
ALTER DATABASE [simpaza] SET AUTO_CREATE_STATISTICS ON
GO
ALTER DATABASE [simpaza] SET AUTO_SHRINK OFF
GO
ALTER DATABASE [simpaza] SET AUTO_UPDATE_STATISTICS ON
GO
ALTER DATABASE [simpaza] SET CURSOR_CLOSE_ON_COMMIT OFF
GO
ALTER DATABASE [simpaza] SET CURSOR_DEFAULT GLOBAL
GO
ALTER DATABASE [simpaza] SET CONCAT_NULL_YIELDS_NULL OFF
GO
ALTER DATABASE [simpaza] SET NUMERIC_ROUNDABORT OFF
GO
ALTER DATABASE [simpaza] SET QUOTED_IDENTIFIER OFF
GO
ALTER DATABASE [simpaza] SET RECURSIVE_TRIGGERS OFF
GO
ALTER DATABASE [simpaza] SET ENABLE_BROKER
GO
ALTER DATABASE [simpaza] SET AUTO_UPDATE_STATISTICS_ASYNC OFF
GO
ALTER DATABASE [simpaza] SET DATE_CORRELATION_OPTIMIZATION OFF
GO
ALTER DATABASE [simpaza] SET TRUSTWORTHY OFF
GO
ALTER DATABASE [simpaza] SET ALLOW_SNAPSHOT_ISOLATION OFF
GO
ALTER DATABASE [simpaza] SET PARAMETERIZATION SIMPLE
GO
ALTER DATABASE [simpaza] SET READ_WRITE
GO
ALTER DATABASE [simpaza] SET RECOVERY FULL
GO
ALTER DATABASE [simpaza] SET MULTI_USER
GO
ALTER DATABASE [simpaza] SET PAGE_VERIFY CHECKSUM
GO
ALTER DATABASE [simpaza] SET DB_CHAINING OFF
/ ****** Object: Login [simp] Script Date: 04/06/2009 06: 38: 59 ****** /
/ * For security reasons the login is created disabled and with a random password. * /
/ ****** Object: Login [simp] Script Date: 04/06/2009 06: 38: 59 ****** /
CREATE LOGIN [simp] WITH PASSWORD=N'ÝAS¯! s¤i_þ¹R$ßˤ½EÖ
aYêËl1_³; ', DEFAULT_DATABASE= [simpaza], DEFAULT_LANGUAGE= [us_english], CHECK_EXPIRATION=ON, CHECK_POLICY=ON
GO
EXEC sys. sp_addsrvrolemember @loginame = N'simp', @rolename = N'sysadmin'
GO
EXEC sys. sp_addsrvrolemember @loginame = N'simp', @rolename = N'securityadmin'
GO
EXEC sys. sp_addsrvrolemember @loginame = N'simp', @rolename = N'serveradmin'
GO
EXEC sys. sp_addsrvrolemember @loginame = N'simp', @rolename = N'setupadmin'
GO
EXEC sys. sp_addsrvrolemember @loginame = N'simp', @rolename = N'processadmin'
GO
EXEC sys. sp_addsrvrolemember @loginame = N'simp', @rolename = N'diskadmin'
GO
EXEC sys. sp_addsrvrolemember @loginame = N'simp', @rolename = N'dbcreator'
GO
EXEC sys. sp_addsrvrolemember @loginame = N'simp', @rolename = N'bulkadmin'
GO
ALTER LOGIN [simp] DISABLE
USE [simpaza]
GO
/ ****** Object: Table [dbo]. [Manager] Script Date: 04/06/2009 06: 54: 40 ****** /
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo]. [Manager] (
[Id_manager] [bigint] IDENTITY(1,1) NOT NULL,
[FIO_manager] [varchar] (30) COLLATE SQL_Ukrainian_CP1251_CI_AS NULL,
[Login] [varchar] (20) COLLATE SQL_Ukrainian_CP1251_CI_AS NULL,
[Pass] [varchar] (20) COLLATE SQL_Ukrainian_CP1251_CI_AS NULL,
[Level] [bigint] NULL
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
USE [simpaza]
GO
/ ****** Object: Table [dbo]. [Status] Script Date: 04/06/2009 06: 55: 04 ****** /
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo]. [Status] (
[Id_status] [int] IDENTITY(1,1) NOT NULL,
[Status] [varchar] (20) COLLATE SQL_Ukrainian_CP1251_CI_AS NULL
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
USE [simpaza]
GO
/ ****** Object: Table [dbo]. [Customer] Script Date: 04/06/2009 06: 55: 14 ****** /
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo]. [Customer] (
[Name_organiz] [varchar] (30) COLLATE SQL_Ukrainian_CP1251_CI_AS NULL,
[Activities] [varchar] (50) COLLATE SQL_Ukrainian_CP1251_CI_AS NULL,
[Address] [varchar] (50) COLLATE SQL_Ukrainian_CP1251_CI_AS NULL,
[Telephone] [varchar] (50) COLLATE SQL_Ukrainian_CP1251_CI_AS NULL,
[E_mail] [varchar] (50) COLLATE SQL_Ukrainian_CP1251_CI_AS NULL,
[Site] [varchar] (50) COLLATE SQL_Ukrainian_CP1251_CI_AS NULL,
[Contact] [varchar] (50) COLLATE SQL_SwedishStd_Pref_CP1_CI_AS NULL,
[Info] [varchar] (150) COLLATE SQL_Ukrainian_CP1251_CI_AS NULL,
[Id_manager] [int] NULL,
[Id_status] [int] NULL,
[Id_customer] [int] IDENTITY(1,1) NOT NULL
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
USE [simpaza]
GO
/ ****** Object: Table [dbo]. [Call] Script Date: 04/06/2009 06: 55: 29 ****** /
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo]. [Call] (
[Date] [datetime] NULL,
[Id_customer] [int] NULL,
[Comments] [varchar] (150) COLLATE SQL_Ukrainian_CP1251_CI_AS NULL,
[Id_call] [int] IDENTITY(1,1) NOT NULL,
[Id_manager] [int] NULL
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
USE [simpaza]
GO
/ ****** Object: Table [dbo]. [Meeting] Script Date: 04/06/2009 06: 55: 41 ****** /
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo]. [Meeting] (
[Date] [datetime] NULL,
[Id_customer] [int] NULL,
[Comments] [varchar] (150) COLLATE SQL_Ukrainian_CP1251_CI_AS NULL,
[Place] [varchar] (50) COLLATE SQL_Ukrainian_CP1251_CI_AS NULL,
[Id_meeting] [int] IDENTITY(1,1) NOT NULL,
[Id_manager] [int] NULL
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
USE [simpaza]
GO
/ ****** Object: View [dbo]. [Customer_Status] Script Date: 04/06/2009 06: 37: 20 ****** /
SET ANSI_NULLS OFF
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE VIEW [dbo]. [Customer_Status]
WITH VIEW_METADATA
AS
SELECT dbo. Status. Status, dbo. Customer. Id_customer, dbo. Customer. Name_organiz, dbo. Customer. Activities, dbo. Customer. Address,
dbo. Customer. Telephone, dbo. Customer. E_mail, dbo. Customer. Site, dbo. Customer. Contact, dbo. Customer. Info, dbo. Customer. Id_manager,
dbo. Customer. Id_status
FROM dbo. Customer LEFT OUTER JOIN
dbo. Status ON dbo. Customer. Id_status = dbo. Status. Id_status
GO
EXEC sys. sp_addextendedproperty @name=N'MS_DiagramPane1', @value=N' [0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties =
Begin PaneConfigurations =
Begin PaneConfiguration = 0
NumPanes = 4
Configuration = "(H (1 [41] 4 [33] 2 [8] 3))"
End
Begin PaneConfiguration = 1
NumPanes = 3
Configuration = "(H (1 [50] 4 [25] 3))"
End
Begin PaneConfiguration = 2
NumPanes = 3
Configuration = "(H (1 [50] 2 [25] 3))"
End
Begin PaneConfiguration = 3
NumPanes = 3
Configuration = "(H (4 [30] 2 [40] 3))"
End
Begin PaneConfiguration = 4
NumPanes = 2
Configuration = "(H (1 [56] 3))"
End
Begin PaneConfiguration = 5
NumPanes = 2
Configuration = "(H (2 [66] 3))"
End
Begin PaneConfiguration = 6
NumPanes = 2
Configuration = "(H (4 [50] 3))"
End
Begin PaneConfiguration = 7
NumPanes = 1
Configuration = "(V (3))"
End
Begin PaneConfiguration = 8
NumPanes = 3
Configuration = "(H (1 [56] 4 [18] 2))"
End
Begin PaneConfiguration = 9
NumPanes = 2
Configuration = "(H (1 [75] 4))"
End
Begin PaneConfiguration = 10
NumPanes = 2
Configuration = "(H (1 [66] 2))"
End
Begin PaneConfiguration = 11
NumPanes = 2
Configuration = "(H (4 [60] 2))"
End
Begin PaneConfiguration = 12
NumPanes = 1
Configuration = "(H (1))"
End
Begin PaneConfiguration = 13
NumPanes = 1
Configuration = "(V (4))"
End
Begin PaneConfiguration = 14
NumPanes = 1
Configuration = "(V (2))"
End
ActivePaneConfig = 0
End
Begin DiagramPane =
Begin Origin =
Top = 0
Left = 0
End
Begin Tables =
Begin Table = "Customer"
Begin Extent =
Top = 6
Left = 38
Bottom = 114
Right = 189
End
DisplayFlags = 280
TopColumn = 0
End
Begin Table = "Status"
Begin Extent =
Top = 6
Left = 227
Bottom = 84
Right = 378
End
DisplayFlags = 280
TopColumn = 0
End
End
End
Begin SQLPane =
End
Begin DataPane =
Begin ParameterDefaults = ""
End
End
Begin CriteriaPane =
Begin ColumnWidths = 11
Column = 1440
Alias = 900
Table = 1170
Output = 720
Append = 1400
NewValue = 1170
SortType = 1350
SortOrder = 1410
GroupBy = 1350
Filter = 1350
Or = 1350
Or = 1350
Or = 1350
End
End
End
',@level0type=N'SCHEMA', @level0name=N'dbo', @level1type=N'VIEW', @level1name=N'Customer_Status'
GO
EXEC sys. sp_addextendedproperty @name=N'MS_DiagramPaneCount', @value=1,@level0type=N'SCHEMA', @level0name=N'dbo', @level1type=N'VIEW', @level1name=N'Customer_Status'
USE [simpaza]
GO
/ ****** Object: View [dbo]. [Calls] Script Date: 04/06/2009 06: 37: 32 ****** /
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE VIEW [dbo]. [Calls]
WITH VIEW_METADATA
AS
SELECT dbo. Customer. Id_customer AS Expr1, dbo. Customer. Name_organiz, dbo. Call. Id_call, dbo. Call. Date, dbo. Call. Id_customer, dbo. Call. Comments,
dbo. Customer. Id_manager
FROM dbo. Call INNER JOIN
dbo. Customer ON dbo. Call. Id_customer = dbo. Customer. Id_customer
GO
EXEC sys. sp_addextendedproperty @name=N'MS_DiagramPane1', @value=N' [0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties =
Begin PaneConfigurations =
Begin PaneConfiguration = 0
NumPanes = 4
Configuration = "(H (1 [41] 4 [47] 2 [5] 3))"
End
Begin PaneConfiguration = 1
NumPanes = 3
Configuration = "(H (1 [50] 4 [25] 3))"
End
Begin PaneConfiguration = 2
NumPanes = 3
Configuration = "(H (1 [50] 2 [25] 3))"
End
Begin PaneConfiguration = 3
NumPanes = 3
Configuration = "(H (4 [30] 2 [40] 3))"
End
Begin PaneConfiguration = 4
NumPanes = 2
Configuration = "(H (1 [56] 3))"
End
Begin PaneConfiguration = 5
NumPanes = 2
Configuration = "(H (2 [66] 3))"
End
Begin PaneConfiguration = 6
NumPanes = 2
Configuration = "(H (4 [50] 3))"
End
Begin PaneConfiguration = 7
NumPanes = 1
Configuration = "(V (3))"
End
Begin PaneConfiguration = 8
NumPanes = 3
Configuration = "(H (1 [56] 4 [18] 2))"
End
Begin PaneConfiguration = 9
NumPanes = 2
Configuration = "(H (1 [75] 4))"
End
Begin PaneConfiguration = 10
NumPanes = 2
Configuration = "(H (1 [66] 2))"
End
Begin PaneConfiguration = 11
NumPanes = 2
Configuration = "(H (4 [60] 2))"
End
Begin PaneConfiguration = 12
NumPanes = 1
Configuration = "(H (1))"
End
Begin PaneConfiguration = 13
NumPanes = 1
Configuration = "(V (4))"
End
Begin PaneConfiguration = 14
NumPanes = 1
Configuration = "(V (2))"
End
ActivePaneConfig = 0
End
Begin DiagramPane =
Begin Origin =
Top = 0
Left = 0
End
Begin Tables =
Begin Table = "Call"
Begin Extent =
Top = 6
Left = 38
Bottom = 160
Right = 189
End
DisplayFlags = 280
TopColumn = 1
End
Begin Table = "Customer"
Begin Extent =
Top = 6
Left = 227
Bottom = 114
Right = 378
End
DisplayFlags = 280
TopColumn = 7
End
End
End
Begin SQLPane =
End
Begin DataPane =
Begin ParameterDefaults = ""
End
Begin ColumnWidths = 9
Width = 284
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
End
End
Begin CriteriaPane =
Begin ColumnWidths = 11
Column = 1440
Alias = 900
Table = 1170
Output = 720
Append = 1400
NewValue = 1170
SortType = 1350
SortOrder = 1410
GroupBy = 1350
Filter = 1350
Or = 1350
Or = 1350
Or = 1350
End
End
End
',@level0type=N'SCHEMA', @level0name=N'dbo', @level1type=N'VIEW', @level1name=N'Calls'
GO
EXEC sys. sp_addextendedproperty @name=N'MS_DiagramPaneCount', @value=1,@level0type=N'SCHEMA', @level0name=N'dbo', @level1type=N'VIEW', @level1name=N'Calls'
USE [simpaza]
GO
/ ****** Object: View [dbo]. [Meetings] Script Date: 04/06/2009 06: 37: 44 ****** /
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE VIEW [dbo]. [Meetings]
WITH VIEW_METADATA
AS
SELECT dbo. Customer. Id_customer AS Expr1, dbo. Customer. Name_organiz, dbo. Meeting. Date, dbo. Meeting. Comments, dbo. Meeting. Place,
dbo. Meeting. Id_meeting, dbo. Meeting. Id_customer, dbo. Customer. Id_manager
FROM dbo. Meeting INNER JOIN
dbo. Customer ON dbo. Meeting. Id_customer = dbo. Customer. Id_customer
WITH CHECK OPTION
GO
EXEC sys. sp_addextendedproperty @name=N'MS_DiagramPane1', @value=N' [0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties =
Begin PaneConfigurations =
Begin PaneConfiguration = 0
NumPanes = 4
Configuration = "(H (1 [32] 4 [51] 2 [1] 3))"
End
Begin PaneConfiguration = 1
NumPanes = 3
Configuration = "(H (1 [50] 4 [25] 3))"
End
Begin PaneConfiguration = 2
NumPanes = 3
Configuration = "(H (1 [50] 2 [25] 3))"
End
Begin PaneConfiguration = 3
NumPanes = 3
Configuration = "(H (4 [30] 2 [40] 3))"
End
Begin PaneConfiguration = 4
NumPanes = 2
Configuration = "(H (1 [56] 3))"
End
Begin PaneConfiguration = 5
NumPanes = 2
Configuration = "(H (2 [66] 3))"
End
Begin PaneConfiguration = 6
NumPanes = 2
Configuration = "(H (4 [50] 3))"
End
Begin PaneConfiguration = 7
NumPanes = 1
Configuration = "(V (3))"
End
Begin PaneConfiguration = 8
NumPanes = 3
Configuration = "(H (1 [56] 4 [18] 2))"
End
Begin PaneConfiguration = 9
NumPanes = 2
Configuration = "(H (1 [75] 4))"
End
Begin PaneConfiguration = 10
NumPanes = 2
Configuration = "(H (1 [66] 2))"
End
Begin PaneConfiguration = 11
NumPanes = 2
Configuration = "(H (4 [60] 2))"
End
Begin PaneConfiguration = 12
NumPanes = 1
Configuration = "(H (1))"
End
Begin PaneConfiguration = 13
NumPanes = 1
Configuration = "(V (4))"
End
Begin PaneConfiguration = 14
NumPanes = 1
Configuration = "(V (2))"
End
ActivePaneConfig = 0
End
Begin DiagramPane =
Begin Origin =
Top = 0
Left = 0
End
Begin Tables =
Begin Table = "Meeting"
Begin Extent =
Top = 6
Left = 38
Bottom = 114
Right = 189
End
DisplayFlags = 280
TopColumn = 2
End
Begin Table = "Customer"
Begin Extent =
Top = 6
Left = 227
Bottom = 114
Right = 378
End
DisplayFlags = 280
TopColumn = 7
End
End
End
Begin SQLPane =
End
Begin DataPane =
Begin ParameterDefaults = ""
End
Begin ColumnWidths = 9
Width = 284
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
End
End
Begin CriteriaPane =
Begin ColumnWidths = 11
Column = 1440
Alias = 900
Table = 1170
Output = 720
Append = 1400
NewValue = 1170
SortType = 1350
SortOrder = 1410
GroupBy = 1350
Filter = 1350
Or = 1350
Or = 1350
Or = 1350
End
End
End
',@level0type=N'SCHEMA', @level0name=N'dbo', @level1type=N'VIEW', @level1name=N'Meetings'
GO
EXEC sys. sp_addextendedproperty @name=N'MS_DiagramPaneCount', @value=1,@level0type=N'SCHEMA', @level0name=N'dbo', @level1type=N'VIEW', @level1name=N'Meetings'
USE [simpaza]
GO
/ ****** Object: View [dbo]. [Report] Script Date: 04/06/2009 06: 37: 56 ****** /
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE VIEW [dbo]. [Report]
AS
SELECT TOP (100) PERCENT dbo. Customer. Name_organiz, MC. tp, MC. Date, MC. Comments, MC. Place, dbo. Customer. Id_manager
FROM (SELECT Id_customer, '0' AS tp, Date, Comments, ' ' AS Place
FROM dbo. Call
UNION ALL
SELECT Id_customer, '1' AS tp, Date, Comments, Place
FROM dbo. Meeting) AS MC INNER JOIN
dbo. Customer ON MC. Id_customer = dbo. Customer. Id_customer
ORDER BY MC. Date
GO
EXEC sys. sp_addextendedproperty @name=N'MS_DiagramPane1', @value=N' [0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties =
Begin PaneConfigurations =
Begin PaneConfiguration = 0
NumPanes = 4
Configuration = "(H (1 [28] 4 [19] 2 [36] 3))"
End
Begin PaneConfiguration = 1
NumPanes = 3
Configuration = "(H (1 [50] 4 [25] 3))"
End
Begin PaneConfiguration = 2
NumPanes = 3
Configuration = "(H (1 [50] 2 [25] 3))"
End
Begin PaneConfiguration = 3
NumPanes = 3
Configuration = "(H (4 [30] 2 [40] 3))"
End
Begin PaneConfiguration = 4
NumPanes = 2
Configuration = "(H (1 [56] 3))"
End
Begin PaneConfiguration = 5
NumPanes = 2
Configuration = "(H (2 [66] 3))"
End
Begin PaneConfiguration = 6
NumPanes = 2
Configuration = "(H (4 [50] 3))"
End
Begin PaneConfiguration = 7
NumPanes = 1
Configuration = "(V (3))"
End
Begin PaneConfiguration = 8
NumPanes = 3
Configuration = "(H (1 [56] 4 [18] 2))"
End
Begin PaneConfiguration = 9
NumPanes = 2
Configuration = "(H (1 [75] 4))"
End
Begin PaneConfiguration = 10
NumPanes = 2
Configuration = "(H (1 [66] 2))"
End
Begin PaneConfiguration = 11
NumPanes = 2
Configuration = "(H (4 [60] 2))"
End
Begin PaneConfiguration = 12
NumPanes = 1
Configuration = "(H (1))"
End
Begin PaneConfiguration = 13
NumPanes = 1
Configuration = "(V (4))"
End
Begin PaneConfiguration = 14
NumPanes = 1
Configuration = "(V (2))"
End
ActivePaneConfig = 0
End
Begin DiagramPane =
Begin Origin =
Top = 0
Left = 0
End
Begin Tables =
Begin Table = "MC"
Begin Extent =
Top = 6
Left = 38
Bottom = 114
Right = 189
End
DisplayFlags = 280
TopColumn = 0
End
Begin Table = "Customer"
Begin Extent =
Top = 6
Left = 227
Bottom = 114
Right = 378
End
DisplayFlags = 280
TopColumn = 0
End
End
End
Begin SQLPane =
End
Begin DataPane =
Begin ParameterDefaults = ""
End
Begin ColumnWidths = 9
Width = 284
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
End
End
Begin CriteriaPane =
Begin ColumnWidths = 11
Column = 1440
Alias = 900
Table = 1170
Output = 720
Append = 1400
NewValue = 1170
SortType = 1350
SortOrder = 1410
GroupBy = 1350
Filter = 1350
Or = 1350
Or = 1350
Or = 1350
End
End
End
',@level0type=N'SCHEMA', @level0name=N'dbo', @level1type=N'VIEW', @level1name=N'Report'
GO
EXEC sys. sp_addextendedproperty @name=N'MS_DiagramPaneCount', @value=1,@level0type=N'SCHEMA', @level0name=N'dbo', @level1type=N'VIEW', @level1name=N'Report'