Автоматизация учета гарантийных обязательств перед клиентами ЗАО "Эн. Си. Ар."

Выбор комплекса задач автоматизации и характеристика существующих бизнес процессов. Анализ системы обеспечения информационной безопасности и защиты информации. Этапы жизненного цикла проекта автоматизации. Характеристика входной и оперативной информации.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 10.06.2018
Размер файла 3,9 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

По способу установления связей между данными различают:

* иерархическую;

* сетевую;

* реляционную модель.

Основными компонентами любой из этих моделей являются файлы (или таблицы).

Иерархические модели данных представляют собой графовую модель с вершинами-таблицами. В моделях имеется один файл, который является входом в структуру. Между файлами устанавливаются отношения соподчиненности. У файла может быть одна исходная вершина и несколько подчиненных. Основной тип отношений - 1:М.

В сетевых модификациях каждой документ способен являться пунктом входа в концепцию, и сопряжен с случайным количеством иных файлов взаимоотношениями вида 1:1, 1:М и М:М.

Наиболее обширное продвижение приобрела реляционная форма информации. Присутствие такого рода компании весь сведения показана в варианте таблиц (файлов БД) и взаимоотношений. Таблицы считаются совокупой записей (строчек, кортежей). Среди взаимоотношениями (таблицами) имеются взаимосвязи вида 1:М, М:М. Любое подход обладает источник - данное область журнал (признак) конкретно идентифицирующее её. Это качество реляционной модификации информации ликвидирует повторение данных, стимулирует отбор и допуск к определенным сведениям.

Принятый в реляционной модификации аспект к структурированию и единства информации дает возможность комфортно осуществить и урегулировать процедура проектирования и осуществлении трудных двор информации, а реляционные процедуры имеют сильными способностями управления сведениями и их обрабатывания.

Учитывая все преимущества реляционных моделей данных для представления информации, обрабатываемой при решении задачи целесообразно использовать реляционную модель БД.

2.1.2 Обоснование проектных решений по программному обеспечению

Проектирование программного обеспечения - процесс создания проекта программного обеспечения [24].

Целью проектирования является определение внутренних свойств системы и детализации её внешних (видимых) свойств на основе выданных заказчиком требований к ПО.

При проектировании используется следующее программное обеспечение: Rati0nalR0se, ERwin Data M0deler, MS Visi0.

Rati0nal R0se - средство визуального моделирования объектно-ориентированных информационных систем компании Rati0nal S0ftware C0rp. Работа продукта основана на универсальном языке моделирования UML [17].

ERwin Data M0deler - CASE-средство для проектирования и документирования баз данных, которое позволяет создавать, документировать и сопровождать базы данных, хранилища и витрины данных. Модели данных помогают визуализировать структуру данных, обеспечивая эффективный процесс организации, управления и администрирования таких аспектов деятельности предприятия, как уровень сложности данных, технологий баз данных и среды развертывания [21].

Micr0s0ft Visi0 - редактор диаграмм и блок-схем, входящий в состав пакета Micr0s0ft 0ffice.

Для реализации проекта используется среда программирования B0rland Delphi 7 и система Micr0s0ft Access.

Micr0s0ft Access - система для работы с СУБД корпорации Micr0s0ft. Имеет широкий спектр функций, включая связанные запросы, связь с внешними таблицами и базами данных [24].

К основным достоинствам Access можно отнести простоту создания таблиц и их связывания.

Delphi 7 - это среда быстрой разработки, в которой в качестве языка программирования используется типизированный объектно-ориентированный язык 0bject Pascal [15, с.13].

Средства Delphi, предназначенные для работы с БД, можно разделить на 2 категории: инструментарий и компоненты. Инструментарий включает в себя ряд дополнительных программ, входящих в поставку Delphi и предназначенных для работы с БД. Что касается компонентов, то в VCL имеется множество специализированных компонент, предназначенных для работы с БД [9, с.687].

Базу данных, созданную с помощью Micr0s0ft Access, можно подключить к программе, разработанной в среде Delphi 7, с помощью технологии AD0. Библиотека AD0 служит для доступа к базам данных различных типов и предоставляет объектный программный интерфейс к интерфейсу 0LE DB, который предлагается компанией Micr0s0ft как альтернатива интерфейсу 0DBC. Объектная модель AD0 реализована на базе технологии C0M [16].

Рисунок 8 - Среда B0rland Delphi

Событийная форма в Wind0ws постоянно существовала трудна с целью представления и отладки. Однако непосредственно создание интерфейса в Delphi считается наиболее обычный проблемой с целью разработчика программного обеспечения [4].

pr0cedure TF0rm1.Frame141SpeedButt0n4Click(Sender: T0bject);

begin //Удаление ТТН

if MessageDlg('Удалить запись?', mtC0nfirmati0n, [mb0k, mbCancel], 0)=mr0k

then

DM2.TTNQuery.Delete;

end;

pr0cedure TF0rm1.Frame141SpeedButt0n5Click(Sender: T0bject);

begin

DM2.TTNQuery.Refresh; //Обновить

DM2.TTNPr0dQuery.Refresh;

end;

pr0cedure TF0rm1.Frame141SpeedButt0n6Click(Sender: T0bject);

begin //Поиск

DM2.TTNQuery.Active:=false;

DM2.TTNQuery.SQL.Text:='SELECT * FR0M TTN WHERE TTNData=:d';

DM2.TTNQuery.Parameters[0].Value:=f0rmatdatetime('dd.mm.yyyy',Frame141.DateTimePicker1.Date);

DM2.TTNQuery.Active:=true;

end;

pr0cedure TF0rm1.Frame141SpeedButt0n7Click(Sender: T0bject);

begin

Frame141.DateTimePicker1.F0rmat:= ''''''; //Поиск

DM2.TTNQuery.SQL.Text:='SELECT * FR0M TTN';

DM2.TTNQuery.Active:=true;

Frame141.DateTimePicker1.F0nt.C0l0r:=clgray;

Frame141.TTNGrid.SetF0cus;

end;

В главную очередность Delphi рассчитанный с целью специалистов-создателей коллективных информативных концепций. Но, Delphi способен применяться и педагогами Институтов, студентами, учителями, предпринимателями, абсолютно всеми этими, кто именно применяет пк с исключительно практический целью.

2.1.3 Обоснование проектных решений по техническому обеспечению

Техническое обеспечение - это персональный компьютер, оргтехника, линии связи, оборудование сетей. Вид информационной технологии, зависящий от технической оснащенности (ручной, автоматизированный, удаленный) влияет на сбор, обработку и передачу информации.

Комплекс технических средств составляют:

* компьютеры;

* устройства сбора, накопления, обработки, передачи и вывода информации -жесткие диски, устройства хранения данных, сканеры, принтеры, факсимильные аппараты;

* устройства передачи данных и линий связи - модемы;

* эксплуатационные материалы - бумага, CD (DVD)- диски и т. п.

Присутствие подборе пк следует придерживаться вблизи данных. К подобным данным принадлежат безопасность, адвалорные расходы, эффективность, легкость применения и др. С смысла отмеченных характеристик находится в зависимости вероятность деятельность с спрашиваемыми программными орудиями, а таким образом, и результат формирования концепции.

Свойства:

1) микропроцессор никак не менее Pentiunn- III-800EB,

2) 128 Мб ОЗУпамяти,

3) дисплей 15-17 дюймов,

4) диск емкостью 40-80Гб,

5) флоппи-дисковод с целью дискета, - 3,5 дюйм.

Коммуникационное оборудование (компьютер, сетные адаптеры, направления взаимосвязи), обладающее последующие свойства: компьютер - HP NetServer 5/100, RANN32NNb, 2Gb HDD; направления взаимосвязи -тонкий соосный провод.

Струйные принтеры вида Can0n BJC - либо лазеровые принтеры вида LaserJet 1200.

Копировальный устройство Can0n GP-160. - Стиль программирования -0bject pascal

Стиль запроса к БД- SQL.

Рисунок 9 - Структура технических средств АРМ

Результативные интерфейсы обязаны являться явными и вселять собственному пользователю ощущение контролирования.

Результативные интерфейсы никак не обязаны беспокоить пользователя внутренним взаимодействием с концепцией [3].

2.2 Разработка проекта автоматизации

2.2.1 Этапы жизненного цикла проекта автоматизации

Жизненный цикл проекта автоматизации - это период создания и использования ИС, начиная с момента возникновения потребности в ИС и заканчивая моментом полного ее выхода из эксплуатации.

Стадии жизненного цикла информационной системы:

1. Предпроектное обследование:

сбор материалов для проектирования, при этом выделяют формулирование требований, с изучения объекта автоматизации, даются предварительные выводы предпроектного варианта ИС;

анализ материалов и разработка документации, обязательно дается технико экономическое обоснование с техническим заданием на проектирование ИС.

Рисунок 10 Каскадная схема разработки ПО

2. Проектирование:

2.1 предварительное проектирование;

выбор проектных решений по аспектам разработки ИС;

описание реальных компонент ИС;

оформление и утверждение технического проекта (ТП).

2.2 детальное проектирование:

выбор либо разработка математических методов либо алгоритмов программ;

корректировка структур БД;

создание документации на доставку и установку программных продуктов;

выбор комплекса технических средств с документацией на ее установку.

2.3 разработка техно-рабочего проекта ИС (ТРП).

Рисунок 11 Реальный процесс разработки ПО по каскадной схеме

2.4 разработка методологии реализации функций управления с помощью ИС и описанием регламента действий аппарата управления.

3. Разработка ИС:

получение и установка технических и программных средств;

тестирование и доводка программного комплекса;

разработка инструкций по эксплуатации программно-технических средств.

4. Ввод ИС в эксплуатацию:

ввод технических средств;

ввод программных средств;

обучение и сертификация персонала;

опытная эксплуатация;

сдача и подписание актов приемки-сдачи работ.

5. Эксплуатация ИС:

повседневная эксплуатация;

общее сопровождение всего проекта.

Плюсы:

гарантийное качество обслуживания;

экономия денежных средств;

человеческие ресурсы.

Минусы:

не дешево;

утечка информации;

зависимость;

потеря контроля за ИТ.

2.2.2 Характеристика нормативно-справочной, входной и оперативной информации

В системе используются справочники, приведенные в таблице 6.

Таблица 6 Перечень используемых справочников

№ пп

название справочника

ответственный за ведение

средний объём справочника в записях

среднюю частоту актуализации

средний объем актуализации, %

2

Сотрудники

Администратор

200

2 раз в месяц

20

2

Фирма

Администратор

50

2 раз в месяц

20

3

Клиенты

Пользователь

50

2 раз в месяц

20

4

Город

Администратор

500

2 раз в неделю

25

5

Состояние проектов

Пользователь

50

2 раз в месяц

20

Реквизитный состав справочников приведен в таблице 7.

Таблица 7 Реквизитный состав справочников

№ пп

Наименование

Перечень реквизитов

1.

Сотрудники

· Фамилия, имя, отчество

· Дата рождения

· Должность

2.

Фирма

· Наименование

· Город

· Оргформа

· Контактное лицо

3.

Клиенты

· Фирма

· Фамилия, имя, отчество

· Дата регистрации

· Адрес

· E-mail

· ФИО руководителя

4.

Состояние проектов

· Наименование состояния

2.2.3 Характеристика результатной информации

Описание результатных документов приведено в таблице 8.

Таблица 8 Описание выходных документов

№ пп

Наименование

Реквизиты

Таблицы, на основе которых формируется

Частота формирования

Способ доставки

1

Список проектов

· Номер

· Вид

· Наименование клиента

· Состояние

· Завершено

· Добавлено

· Ведет проект

· Добавил проект

· Проекты

· Состояние проектов

· Сотрудники

· Фирмы

· Города

По мере необходимости

Экранная форма

2

Список этапов выполнения проектов

· Номер проекта

· Наименование клиента

· Шаг выполнения

· Дата начала

· Дата окончания

· Добавил

· Ответственный

· Проекты

· Состояние проектов

· Сотрудники

· Фирмы

· Города

По мере необходимости

Экранная форма

2.3 Программное обеспечение задачи

2.3.1 Общие положения (дерево функций и сценарий диалога)

В разработанном модуле предусмотрен только один пользователь - менеджер. Дерево функций модуля представлено на рисунке 12.

Рисунок 12 Дерево функций менеджера

На основании дерева функций разработан сценарий диалога, схематически представленный на рисунке 13.

Рисунок 13 Сценарий диалога

2.3.2 Характеристика базы данных

Схема данных начального этапа проектирования БД представлена на рис. 14

Размещено на http://www.allbest.ru/

Рисунок 14 Схема данных

Логическая модель описывает понятия предметной области, их взаимосвязь, а также ограничения на данные, налагаемые предметной областью [11, с.185].

ER-модель используется при высокоуровневом проектировании баз данных. С её помощью можно выделить ключевые сущности и обозначить связи, которые могут устанавливаться между этими сущностями.

На рисунке 2.2 представлена логическая модель разрабатываемой базы данных.

Размещено на http://www.allbest.ru/

Рисунок 15 - Логическая модель

Целью физического проектирования является преобразование логической модели с учетом синтаксиса, семантики и возможностей выбранной целевой СУБД [11, с.189].

Физическая модель разрабатываемой базы данных представлена на рисунке 16.

Размещено на http://www.allbest.ru/

Рисунок 16 -Физическая модель

2.3.3 Структурная схема пакета (дерево вызова программных модулей)

В основе метода функционирования и условий к интерфейсу разработана гистограмма состояний, изображенного в рисунке 17.

Рисунок 17 - Структурная схема пакета

2.3.4 Описание программных модулей

Функциональная схема разрабатываемого программного продукта отражена на рисунке 18.

Рисунок 18 - Функциональная схема

Пользователю предоставляется возможность работать со справочниками, отчетами либо диаграммами. Для осуществления действий с записями необходимо выбрать справочник. Пользователь может добавлять, удалять, редактировать записи таблиц, а также осуществлять поиск по различным параметрам. Имеется возможность просмотра отчетов, вывода на печать и экспорта в файлы различных форматов.

На рисунке 19 изображена блок-схема алгоритма удаления заказа.

Рисунок 19 Блок-схема алгоритма удаления заказа

2.4 Контрольный пример реализации проекта и его описание

Графический интерфейс пользователя - графическая среда организации взаимодействия пользователя с вычислительной системой.

Графический интерфейс позволяет управлять поведением вычислительной системы через визуальные элементы управления: окна, списки, кнопки и т.д. [18].

pr0cedure TF0rm1.Frame141SpeedButt0n4Click(Sender: T0bject);

begin //Удаление ТТН

if MessageDlg('Удалить запись?', mtC0nfirmati0n, [mb0k, mbCancel], 0)=mr0k

then

DM2.TTNQuery.Delete;

end;

pr0cedure TF0rm1.Frame141SpeedButt0n5Click(Sender: T0bject);

begin

DM2.TTNQuery.Refresh; //Обновить

DM2.TTNPr0dQuery.Refresh;

end;

pr0cedure TF0rm1.Frame141SpeedButt0n6Click(Sender: T0bject);

begin //Поиск

DM2.TTNQuery.Active:=false;

DM2.TTNQuery.SQL.Text:='SELECT * FR0M TTN WHERE TTNData=:d';

DM2.TTNQuery.Parameters[0].Value:=f0rmatdatetime('dd.mm.yyyy',Frame141.DateTimePicker1.Date);

DM2.TTNQuery.Active:=true;

end;

pr0cedure TF0rm1.Frame141SpeedButt0n7Click(Sender: T0bject);

begin

Frame141.DateTimePicker1.F0rmat:= ''''''; //Поиск

DM2.TTNQuery.SQL.Text:='SELECT * FR0M TTN';

DM2.TTNQuery.Active:=true;

Frame141.DateTimePicker1.F0nt.C0l0r:=clgray;

Frame141.TTNGrid.SetF0cus;

end;

Три принципа разработки пользовательского интерфейса формулируются так:

- контроль пользователем интерфейса;

- уменьшение загрузки памяти пользователя;

- последовательность пользовательского интерфейса.

Система включает в себя 11 форм.

При запуске открывается главное окно (рисунок 2.9). Оно отражает данные о заказах, документах и ТТН.

Рисунок 20 - Главное окно приложения

Главное меню содержит пункты:

- «Операции»;

- «Справочники»;

- «Отчеты»;

- «Диаграммы»;

- «Помощь».

Пункт «Операции» содержит подпункты «Новый заказ», «Новый документ», «Новая ТТН», посредством которых добавляются записи соответственно в таблицы Заказы, Документы, ТТН.

pr0cedure TF0rm1.SpeedButt0n7Click(Sender: T0bject);

begin

DM2.ZDTQuery.SQL.Clear; //Поиск

DM2.ZDTQuery.SQL.Add('SELECT * FR0M ((((Zakazy Z');

DM2.ZDTQuery.SQL.Add('INNER J0IN Sprav0chnik_k0ntragent0v K 0N Z.ZID_K=K.KID)');

DM2.ZDTQuery.SQL.Add('INNER J0IN Sprav0chnik_meneger0v_p0_sbytu M 0N Z.ZIDM=M.MID)');

DM2.ZDTQuery.SQL.Add('LEFT J0IN D0cumenty D 0N Z.Zn0mer=D.DNZak)');

DM2.ZDTQuery.SQL.Add('LEFT J0IN TTN T 0N Z.ZN0mer=T.TTNNZak)');

DM2.ZDTQuery.Active:=true;

Edit1.F0nt.C0l0r:=clgray;

Edit1.Text:='Поиск по контрагенту';

ZDTGrid.SetF0cus;

end;

Поиск по заданному параметру осуществляется нажатием кнопки «Поиск». Отменить его можно кнопкой «Отмена».

С помощью подпункта «Банки» можно открыть окно для просмотра и редактирования списка банков (рисунок 21). Другие вспомогательные таблицы открываются в аналогичном окне.

Рисунок 21 - Банки

Для добавления и редактирования контрагента применяется следующая форма (рисунок 22).

Рисунок 22 - Добавление контрагента

pr0cedure TF0rm1.N15Click(Sender: T0bject);

begin

F0rm5.Capti0n:='Банки'; //Открыть Банки

DM2.BankiQuery.Active:=true;

F0rm5.BankiGrid.Visible:=true;

F0rm5.DBNavigat0r1.DataS0urce:=DM2.BankiQueryDS;

F0rm5.Sh0wM0dal;

end;

pr0cedure TF0rm1.N16Click(Sender: T0bject);

begin

F0rm5.Capti0n:='Состав ПО'; //Открыть ПО

DM2.TkaniQuery.Active:=true;

F0rm5.TkaniGrid.Visible:=true;

F0rm5.DBNavigat0r1.DataS0urce:=DM2.TkaniQueryDS;

F0rm5.Sh0wM0dal;

end;

pr0cedure TF0rm1.N17Click(Sender: T0bject);

begin

F0rm5.Capti0n:='Отрасль'; //Открыть отрасль

DM2.PVGQuery.Active:=true;

F0rm5.PVGGrid.Visible:=true;

F0rm5.DBNavigat0r1.DataS0urce:=DM2.PVGQueryDS;

F0rm5.Sh0wM0dal;

end;

По нажатию на кнопку «Создать» откроется окно для просмотра и редактирования вспомогательных справочников, внешний вид которого представлен на рисунке 21.

pr0cedure TF0rm1.Frame141SpeedButt0n4Click(Sender: T0bject);

begin //Удаление ТТН

if MessageDlg('Удалить запись?', mtC0nfirmati0n, [mb0k, mbCancel], 0)=mr0k

then

DM2.TTNQuery.Delete;

end;

pr0cedure TF0rm1.Frame141SpeedButt0n5Click(Sender: T0bject);

begin

DM2.TTNQuery.Refresh; //Обновить

DM2.TTNPr0dQuery.Refresh;

end;

pr0cedure TF0rm1.Frame141SpeedButt0n6Click(Sender: T0bject);

begin //Поиск

DM2.TTNQuery.Active:=false;

DM2.TTNQuery.SQL.Text:='SELECT * FR0M TTN WHERE TTNData=:d';

DM2.TTNQuery.Parameters[0].Value:=f0rmatdatetime('dd.mm.yyyy',Frame141.DateTimePicker1.Date);

DM2.TTNQuery.Active:=true;

end;

pr0cedure TF0rm1.Frame141SpeedButt0n7Click(Sender: T0bject);

begin

Frame141.DateTimePicker1.F0rmat:= ''''''; //Поиск

DM2.TTNQuery.SQL.Text:='SELECT * FR0M TTN';

DM2.TTNQuery.Active:=true;

Frame141.DateTimePicker1.F0nt.C0l0r:=clgray;

Frame141.TTNGrid.SetF0cus;

end;

Добавление и редактирование модели происходит в следующем окне (рисунок 22).

Рисунок 22 - Добавление модели

begin

ShellExecute(Handle, '0pen', 'HELP.chm',nil, nil, SW_SH0W); // Вызов справки

end;

pr0cedure TF0rm1.SpeedButt0n6Click(Sender: T0bject);

begin //Поиск

if ((length(Edit1.Text)>0) and n0t (Edit1.Text='Поиск по контрагенту')) then

begin

DM2.ZDTQuery.SQL.Clear;

DM2.ZDTQuery.SQL.Add('SELECT * FR0M ((((Zakazy Z');

DM2.ZDTQuery.SQL.Add('INNER J0IN Sprav0chnik_k0ntragent0v K 0N Z.ZID_K=K.KID)');

DM2.ZDTQuery.SQL.Add('INNER J0IN Sprav0chnik_meneger0v_p0_sbytu M 0N Z.ZIDM=M.MID)');

DM2.ZDTQuery.SQL.Add('LEFT J0IN D0cumenty D 0N Z.Zn0mer=D.DNZak)');

DM2.ZDTQuery.SQL.Add('LEFT J0IN TTN T 0N Z.ZN0mer=T.TTNNZak)');

DM2.ZDTQuery.SQL.Add('WHERE K.KNaim LIKE ''%'+Edit1.Text+'%''');

DM2.ZDTQuery.Active:=true;

end

else

Sh0wMessage('Введите значение для поиска!');

end;

Добавляются и редактируются заказы в окнах Добавление заказа (рисунок 2.13) либо Редактирование заказа, которые имеют одинаковый состав полей.

Рисунок 22 - Добавление заказа

После заполнения данных о заказе необходимо выбрать продукцию. По нажатию кнопки «Изменить» для этого откроется окно (рисунок 23).

Рисунок 23 - Выбор продукции

Чтобы выбрать продукцию, необходимо выделить строку с артикулом, сделать двойной щелчок левой кнопкой мыши и ввести количество. По окончании выбора нажать кнопку «Готово».

begin

ShellExecute(Handle, '0pen', 'HELP.chm',nil, nil, SW_SH0W); // Вызов справки

end;

pr0cedure TF0rm1.SpeedButt0n6Click(Sender: T0bject);

begin //Поиск

if ((length(Edit1.Text)>0) and n0t (Edit1.Text='Поиск по контрагенту')) then

begin

DM2.ZDTQuery.SQL.Clear;

DM2.ZDTQuery.SQL.Add('SELECT * FR0M ((((Zakazy Z');

DM2.ZDTQuery.SQL.Add('INNER J0IN Sprav0chnik_k0ntragent0v K 0N Z.ZID_K=K.KID)');

DM2.ZDTQuery.SQL.Add('INNER J0IN Sprav0chnik_meneger0v_p0_sbytu M 0N Z.ZIDM=M.MID)');

DM2.ZDTQuery.SQL.Add('LEFT J0IN D0cumenty D 0N Z.Zn0mer=D.DNZak)');

DM2.ZDTQuery.SQL.Add('LEFT J0IN TTN T 0N Z.ZN0mer=T.TTNNZak)');

DM2.ZDTQuery.SQL.Add('WHERE K.KNaim LIKE ''%'+Edit1.Text+'%''');

DM2.ZDTQuery.Active:=true;

end

else

Sh0wMessage('Введите значение для поиска!');

end;

Для расчета суммы заказа применяется кнопка «Рассчитать».

При добавлении либо редактировании документа выводится следующее окно (рисунок 24).

Рисунок 24 - Добавление документа

Добавлять и редактировать товарно-транспортные накладные можно в следующем окне (рисунок 25).

Рисунок 25 - Добавление ТТН

При добавлении ТТН в поле Номер заказа можно выбрать только номера тех заказов, по которым были составлены документы-основания. Наименование контрагента и сумма заказа появляются автоматически после выбора номера.

begin

ShellExecute(Handle, '0pen', 'HELP.chm',nil, nil, SW_SH0W); // Вызов справки

end;

pr0cedure TF0rm1.SpeedButt0n6Click(Sender: T0bject);

begin //Поиск

if ((length(Edit1.Text)>0) and n0t (Edit1.Text='Поиск по контрагенту')) then

begin

DM2.ZDTQuery.SQL.Clear;

DM2.ZDTQuery.SQL.Add('SELECT * FR0M ((((Zakazy Z');

DM2.ZDTQuery.SQL.Add('INNER J0IN Sprav0chnik_k0ntragent0v K 0N Z.ZID_K=K.KID)');

DM2.ZDTQuery.SQL.Add('INNER J0IN Sprav0chnik_meneger0v_p0_sbytu M 0N Z.ZIDM=M.MID)');

DM2.ZDTQuery.SQL.Add('LEFT J0IN D0cumenty D 0N Z.Zn0mer=D.DNZak)');

DM2.ZDTQuery.SQL.Add('LEFT J0IN TTN T 0N Z.ZN0mer=T.TTNNZak)');

DM2.ZDTQuery.SQL.Add('WHERE K.KNaim LIKE ''%'+Edit1.Text+'%''');

DM2.ZDTQuery.Active:=true;

end

else

Sh0wMessage('Введите значение для поиска!');

end;

Пункт меню «Отчеты» открывает окно выбора отчета (рисунок 26).

Рисунок 26 - Выбор отчета

Пункт меню «Диаграммы» содержит в себе подпункты «Регионы» и «Количество заказов», которые открывают соответственно диаграммы «Соотношение контрагентов по регионам» (рисунок 26) и «Количество выполненных заказов за каждый месяц текущего года» (рисунок 27).

Рисунок 27 - Соотношение контрагентов по регионам

Рисунок 28 - Количество выполненных заказов за каждый месяц текущего года

begin

ShellExecute(Handle, '0pen', 'HELP.chm',nil, nil, SW_SH0W); // Вызов справки

end;

pr0cedure TF0rm1.SpeedButt0n6Click(Sender: T0bject);

begin //Поиск

if ((length(Edit1.Text)>0) and n0t (Edit1.Text='Поиск по контрагенту')) then

begin

DM2.ZDTQuery.SQL.Clear;

DM2.ZDTQuery.SQL.Add('SELECT * FR0M ((((Zakazy Z');

DM2.ZDTQuery.SQL.Add('INNER J0IN Sprav0chnik_k0ntragent0v K 0N Z.ZID_K=K.KID)');

DM2.ZDTQuery.SQL.Add('INNER J0IN Sprav0chnik_meneger0v_p0_sbytu M 0N Z.ZIDM=M.MID)');

DM2.ZDTQuery.SQL.Add('LEFT J0IN D0cumenty D 0N Z.Zn0mer=D.DNZak)');

DM2.ZDTQuery.SQL.Add('LEFT J0IN TTN T 0N Z.ZN0mer=T.TTNNZak)');

DM2.ZDTQuery.SQL.Add('WHERE K.KNaim LIKE ''%'+Edit1.Text+'%''');

DM2.ZDTQuery.Active:=true;

end

else

Sh0wMessage('Введите значение для поиска!');

end;

В пункт меню «Помощь» входят подпункты «О программе» (рисунок 29) и «Справка».

Глава 3. Обоснование экономической эффективности проекта

3.1 Выбор и обоснование методики расчёта экономической эффективности

Практически все методики расчета экономической эффективности основаны на показателях инвестиций вложенных в проект

На основании данных из первого раздела можно сделать вывод, что автоматизация должна проходить поэтапно, вложение инвестиций целиком в весь проект бессмысленно, так как может возникнуть необходимость остановки проекта.

В первом разделе было обосновано, что глобального пересмотра технической инфраструктуры компании не требуется, а значит и больших инвестиционных вложений тоже не требуется.

К тому же при собственной разработке осуществляется полный контроль над ходом проекта.

На каждом из этапов существуют свои показатели, на которые можно ориентироваться, данные входные показатели являются установленными. Поэтому в данной ситуации лучше всего рассчитать экономическую эффективность по показателям.

Основными показателями являются временные и трудовые показатели затрат на осуществление операций в ИС.

Для расчета экономической эффективности необходимо сравнить два типа показателей.

Показатели, которые были приведены в начале проекта - базовый вариант, и те показатели, которых планируется достичь путем реализации данного проекта - предлагаемый вариант.

После выбора показателей необходимо произвести расчет:

Для трудовых затрат:

- абсолютное снижение трудовых затрат

Т = Т0 - Т1,

где Т0 - трудовые затраты на обработку информации по базовому варианту;

Т1 - трудовые затраты на обработку информации по предлагаемому варианту;

- коэффициент относительного снижения трудовых затрат

КТ =Т / T0 * 100%,

- индекс снижения трудовых затрат либо повышение производительности труда

YT = T0 / T1

А так же для стоимостных затрат.

- абсолютное снижение стоимостных затрат

С = С0 - С1,

где С0 - стоимостные затраты на обработку информации по базовому варианту;

С1 - стоимостные затраты на обработку информации по предлагаемому варианту.

- коэффициент относительного снижения трудовых затрат

Кс =С / С0 * 100%,

- индекс снижения трудовых затрат либо повышение производительности труда

YС = С0 / С1

А после чего рассчитать срок окупаемости проекта:

Ток = КП /C

3.2 Расчёт показателей экономической эффективности проекта

Разработка программной продукции является сложным и длительным процессом, требующим выполнения большого числа разнообразных операций. Как правило, процесс разработки больших программных комплексов осуществляется совместно разработчиками постановки задач и разработчиками программного обеспечения.

Постановка задачи дипломной работы - разработать математическую модель программного обеспечения.

Организационно-экономическая часть НИР включает в себя следующие этапы:

· Определение этапов НИР

· Расчет трудоёмкости проекта

· Определение численности исполнителей

· Построение сетевой модели проекта

· Составление графика выполнения работ

· Календарный график выполнения проекта

· Анализ структуры затрат проекта

· Маркетинговое исследование и анализ эффективности разработки данного программного обеспечения

1. Определение этапов научно-исследовательской работы.

Этапы выполнения работы:

Этап 1: Постановка задачи.

Этап 2: Разработка алгоритмов, выбор среды программирования.

Этап 3: Разработка программных модулей (программного обеспечения).

Этап 4: Тестирование и отладка: разработка методики проведения тестирования, отладка ПО.

Этап 5: Установка разработанного ПО, адаптация к условиям его использования.

2 Расчет трудоемкости проекта

Общие затраты труда на разработку и внедрение программного обеспечения (ПО) QP определяются следующим образом:

, (1)

где ti - затраты труда на выполнение i-го этапа проекта.

Полный перечень работ с разделением их по этапам выполнения проекта оформлено в виде таблицы 1 «Перечень работ проекта разработки ПО».

Для заполнения последних двух столбцов таблицы использован подход при помощи экспертных оценок. Ожидаемая продолжительность работ tож вычисляется по следующей формуле:

, (2)

где Тmin и Тmax -минимальная и максимальная продолжительность работы. Они назначаются в соответствии с экспертными оценками.

Таблица 1. Перечень работ проекта разработки ПО

Этап ti

№ рабо-ты

Эта-пы работ

Содержание работы

Исполни-тель

Кол-во испол-ните-лей

Тmin

Tmax

Трудоемкость

(чел-час)

(чел-дни)

I

1

0-1

Получение исходных данных для разработки ПО, выбор языка программирования, постановка задачи.

Инженер-исследо-ватель

1

20

25

22

2,75

2

1-2

Разработка общих алгоритмов.

1

90

110

98

12,25

II

3

2-3

Разработка структуры программы, построение структуры данных.

Инженер-програм-мист

1

70

90

78

9,75

4

3-4

Создание основного программного обеспечения

1

180

220

196

24,5

5

4-5

Разработка программы для визуализации графиков

1

40

60

48

6

6

5-6

Оптимизация визуализации

1

30

40

34

4,25

7

6-7

Разработка программной документации.

Инженер-исследо-ватель

1

40

50

44

5,5

III

8

7-8

Разработка методики проведения тестирования ПО. Подготовка тестового задания.

1

70

90

78

9,75

9

8-9

Тестирование, отладка и исправление недочетов и ошибок. Корректировка документации.

Инженер- програм-мист

1

80

120

96

12

IV

10

9-10

Установка разработанного ПО, адаптация ПО к условиям его использования

1

40

50

44

5,5

3 Определение численности исполнителей

Разработка данного ПО осуществляется двумя исполнителями - инженером-исследователем и инженером-программистом, которые будут работать попеременно. Работы 1, 2, 7, 8 будет осуществлять инженер-исследователь, а работы 3, 4, 5, 6, 9, 10 - инженер-программист.

4 Сетевая модель проекта

Построим сетевой график (рис. 1.), который устанавливает взаимосвязь между всеми работами проекта и позволяет определить продолжительность и трудоемкость как отдельных этапов, так и всего проекта в целом.

Рисунок 30 Сетевой график выполнения работ

Сетевой график не разветвленный, следовательно, критический путь проходит через все вершины и составляет 93 дня.

5 Календарный график выполнения проекта

Для иллюстрации последовательности проводимых работ проекта применим ленточный график. На диаграмме Ганта (рис. 2.) на оси Х показаны календарные дни от начала проекта до его завершения, а по оси У - выполняемые этапы работ.

Перевод рабочих дней в календарные осуществлялся путем деления количества рабочих дней на коэффициент Кпв=0,71.

Из диаграммы Ганта видно, что на каждый этап работ требуется один исполнитель. Следовательно, все время работа будет одинаковой напряженности. Этапы идут последовательно один за другим, поэтому оптимизировать выполнение работ невозможно.

Все работы будут завершены за 131 день (4 с половиной месяца), что удовлетворяет требованиям заказчика.

6 Анализ структуры затрат проекта

Затраты на выполнение проекта К состоят из затрат на заработную плату исполнителям (СЗП), затрат на закупку оборудования (СОБ), затрат на организацию рабочих мест (СОРГ), и затрат на накладные расходы (СНАКЛ).

. (3)

Затраты на выплату исполнителям заработной платы определяются соотношением:

, (4)

где СЗП.осн - основная заработная плату, СЗП.доп - дополнительная заработная плата, СЗП.отч - отчисления с заработной платы.

Основная заработная плата определяется исходя из месячного оклада исполнителя и количества отработанных дней

, (5)

где QМ - месячный оклад,

FМ - месячный фонд рабочего времени (примем FМ =21,8),

ТЗАН - число дней, отработанных исполнителем проекта.

Расчет затрат на заработную плату отражен в таблице 2 «Расчет затрат на заработную плату».

Таблица 2. Расчет затрат на заработанную плату

Должность

Оклад QМ, руб

Дневной оклад

Трудовые затраты Тзан, раб. дн.

Основная з/п СЗ ОСН, руб

1

Инженер - исследователь

60000

2752,3

31

85321,3

2

Инженер - программист

80000

3669,7

62

227521,4

Средний оклад по профессиям был определён с помощью интернет-сервиса hh.ru.

Расходы на дополнительную заработную плату учитывают все выплаты непосредственно исполнителям за время, не проработанное на производстве, но предусмотренное законодательством, в том числе оплата очередных отпусков, компенсация за недоиспользованный отпуск и т.п. Величина этих затрат составляет 20% от размера основной заработной платы:

Отчисления с заработной платы состоят в настоящее время в уплате единого социального налога. В статье учитываются отчисления в бюджет социального страхования по установленному законодательством тарифу от суммы основной и дополнительной заработной платы, т. е.:

где: Нсоц - коэффициент отчислений на социальное страхование, включающий в себя соц. страхование - 5,4%, пенсионный фонд - 28%, фонд занятости - 2%, обязательное медицинское страхование - 3,6% и нужды образовательных учреждений - 1%. Поэтому коэффициент Нсоц=0,4. Следовательно,

Затраты на приобретение спецоборудования определим с учетом состава оборудования и необходимого его количества. Необходимое оборудование и затраты на его приобретение отражены в таблице 3 «Материалы и оборудование, необходимые для разработки ПО».

При расчете затрат на спецоборудование (персональный компьютер и принтер) необходимо учесть амортизационные расходы СА:

,

где: Сi - стоимость оборудования,

- действительный годовой фонд времени (259 дней),

- норма годовых амортизационных отчислений для оборудования данного вида (так как компьютерная техника допускает ускоренную амортизацию, то для компьютера =24%, а для принтера =20%.).

- время использования оборудования (в данном случае 91 рабочий дней).

.

Затраты на материалы и канцтовары включают стоимость всех материалов, используемых при разработке ПО. Результаты отражены в таблице 3.

Таблица 3. Материалы и оборудование, необходимое для разработки ПО

№ п/п

Наименование материалов либо оборудования

Кол-во, V, шт

Цена за единицу, Сi, руб

Сумма, руб

Оборудование,

1

ПК Intel C0re i5 4690K, 3500 МГц, 8192 Мб, 1000 Гб

2

25000

50000

2

Лазерный принтер HP LaserJet Pr0 200c0l0r M251n

1

6000

6000

3

Доска меловая

1

2000

2000

Программное обеспечение

4

0S Wind0ws 7,

Среда разработки MS Visual Studi0 C/C++

MS W0rd

2

0

0

Материалы, канцтовары, мебель

5

Бумага Svet0C0py, 500л.

2

150

300

7

Картриджи к принтеру

1

1500

1500

8

Стандартный набор офисной мебели

2

12500

25000

Итого

84800

Итого

С учётом транспортных расходов

88200

При расчете стоимости материалов учтем транспортно-заготовительные расходы (3-5% от стоимости материалов). В результате затраты на материалы составят =88200 руб., где Ктр=0,04 - коэффициент учета транспортных расходов.

Расчет затрат, связанных с организацией рабочих мест для исполнителей проекта, проводим, ориентируясь на требования СанПиНа и на стоимость годичной аренды помещения требуемого уровня сервиса. Учтем, что для Томска средняя цена 1 кв.м. в год составляет 24000 руб. Минимальная площадь рабочего места инженера-исследователя и инженера-программиста равна 6 кв.м. Тогда (учитывая, что они будут работать попеременно) затраты на аренду помещения Сорг:

,

где СМ кв.м. - стоимость одного квадратного метра в год,

S - арендуемая площадь,

t раб - срок аренды,

FД - действительный годовой фонд времени.

Таким образом Сорг=36700 руб.

Накладные расходы, связанные с выполнением проекта, вычисляем, ориентируясь на расходы по основной заработной плате. Обычно они составляют от 60% до 100% расходов на основную заработную плату.

Таблица 4. Структура затрат

Название статьи

% от общей У

Сумма (руб.)

1

Основная заработная плата -

37,2%

312843

2

Дополнительная заработная плата -

7,4%

62568,5

3

Социальное страхование -

17,9%

150164,6

4

Спецоборудование -

10,5%

88200

5

Амортизация -

0,3%

2585,3

6

Аренда -

4,4%

36700

7

Накладные расходы -

22,3%

187705

Итого

100

840766,4

Из структуры затрат видно, что больше всего тратится на заработные платы сотрудникам.

7 Определение преимущества разрабатываемого алгоритма

Выводы

В результате выполнения организационно-экономической части работы получены следующие результаты:

1) Была определена полная продолжительность проведения НИР: 93 рабочих дня. Составлен ленточный график Ганта.

2) Рассчитаны затраты на проведение работы, которые составили 838181 рублей.

3) Были указаны преимущества разрабатываемого программного обеспечения.

ЗАКЛЮЧЕНИЕ

Разработанная система существенно улучшит работу отделов, которые непосредственно общается с клиентом (отдел продаж, отдел маркетинга, сервисные отделы, абонентские службы, call-центр),что, в свою очередь, дает возможность:

- планировать и отслеживать историю взаимодействий с клиентами;

- обеспечивать независимость сведений о клиентах от конкретных менеджеров;

- обнаруживать организации, с которыми не было взаимодействий долгое время, что, в свою очередь, может повысить эффективность работы с клиентской базой;

- проводить сегментацию клиентов (например, по отрасли, статусу и/или региону и т.д.);

- планировать и отслеживать будущие сделки (договоры) и платежи по ним;

- иметь систему напоминаний и оповещений сотрудникам и руководителям (например, об истечении срока выполнения задачи или поступлении нового клиента в работу и т.д.).

Таким образом, отмеченные преимущества внедрения системы в бизнес компании и систему их отношений клиентов, с учетом всех проблемных аспектов адаптации данной концепции (CRM-система) в деятельности ее структурных подразделений, несомненно, позволит принимать грамотные управленческие решения в отношении работы с клиентами, а также выстроить оптимальные стратегии развития компании на перспективных для нее рынках товаров и услуг.

Созданное автоматизированное рабочее место дает возможность автоматизировать работу отдела гарантийных обязательств перед клиентами.

Созданная система упрощает работу с документацией для сотрудников ЗАО «ЭН.СИ.АР».

В ходе формирования системы в согласовании с постановкой задачи были изобретены:

· схема вариантов применения,

· концептуальная форма предметной зоны,

· диаграммы деятельности, реляционная схема информации,

· гистограмма состояний интерфейса,

· формы интерфейса, диаграмма частей и диаграмма развертывания. Была сделана отчасти проверка и настройка системы.

Система дает возможность:

· специалисту отдела кадров формировать, готовить к печати, смотреть необходимые для работы документы: индивидуальные карточки, трудовые контракты, штатный график, план отпусков, приказы;

· начальству наблюдать за ростом труда профессионалов;

· сотрудникам завода смотреть нужные им данные.

В этой дипломной работе было практически рассмотрено программирование на языке Delphi.

Программный продукт включает конфигурацию пользователей, что раскрывается уже после пуска дополнения.

Таким способом, в дипломной работе получилось спроектировать и разработать автоматизированную систему либо АРМ отдела гарантийных обязательств перед клиентами ЗАО «ЭН.СИ.АР»., что полностью удовлетворяет установленным условиям.

Список литературы

Электронная библиотека МФПА Micr0s0ft S0luti0ns Framew0rk Модель процессов MSF вер. 3.1

ГОСТ Р 51241-2008 - «Средства и системы контроля и управления доступом. Классификация. Общие технические требования. Методы испытаний», Руководящий документ, 2008г.

ГОСТ Р ИСО/МЭК 12207-99 - «Информационная технология. Процессы жизненного цикла программных средств» Руководящий документ, Госстандарт России, Москва, Переиздан июль 2003г.

«Методология функционального моделирования IDEF0», Руководящий документ, Госстандарт России.;

Вендров А.М. «CASE технологии Современные методы и средства проектирования информационных систем» М.: Финансы и статистика, 1998г. - 176 с.: ил.;

Гулиян Г.Б., Нестеров И.А. «Основы организации компьютерных сетей. Часть 1.», Московская финансово-промышленная академия. - М., 2007г. - 169 с. ил.;

Крис Дж. Дейт «Введение в системы баз данных» - Киев: Вильямс, 2007г. - 1328 с.: ил.;

Микрюков В. Ю. «Информация, информатика, компьютер, информационные системы, сети», Москва: Феникс, 2007г. - 448 с.: ил.;

Мишенин А. И. «Теория экономических информационных систем», Москва: Финансы и статистика, 2007г. - 240 с.: ил.;

Хомоненко А. Д., Цыганков В. М., Мальцев М. Г. «Баз данных», Учебник, Корона - Век, 2010г. - 736 с.: ил.;

«Mem0ry Limits f0r Wind0ws Release»

http://msdn.micr0s0ft.c0m/en-us/library/aa366778%28VS.85%29.aspx

https://msdb.ru/D0wnl0ads/Wind0wsServer2008/Datasheet_Wind0ws_Server_2008.pdf

«Сравнение различных выпусков Wind0ws Server 2003»

http://www.micr0s0ft.c0m/Rus/Wind0wsServer2003/evaluati0n/features/c0mpareediti0ns.mspx

http://www.0penview.ru/s_desk.htm

Лекция: Основные понятия технологии проектирования информационных систем (ИС) http://www.intuit.ru

Сайт московского исследовательского института системного проектирования http://miisp.ru/index.php?0pti0n=c0ntent&task=view&id=491

http://www.r0dnik.ru/pr0duct/server/rab_stati0n/server/ Критерии выбора серверной платформы.

http://www.interface.ru/fset.asp?Url=/misc/rcrm1.htm Рынок CRM-систем

http://www.erpselecti0n.ru/analitiks/k0ltun0va_demands.shtmlТребования к информационной системе и модели жизненного цикла

Лекция: Классификаторы в ИС http://www.intuit.ru

ГОСТ 19781-90

Липаев В.В. / Процессы и стандарты жизненного цикла сложных программных средств / Москва / СИНТЕГ / 2006

Методология и технология ЖЦ http://cmc0ns.c0m/articles/0bshhie_stati_rup/

23. курс Верификация программного обеспечения информация [+]Авторы: С.В. Синицын, Н.Ю. Налютин http://www.intuit.ru

ПРИЛОЖЕНИЕ

unit Unit1;

interface

uses

Wind0ws, Messages, SysUtils, Variants, Classes, Graphics, C0ntr0ls, F0rms,

Dial0gs, Menus, XPMan, ExtCtrls, DB, AD0DB, DBCtrls, Grids, DBGrids,

StdCtrls, Unit4, Unit6, Unit8, Unit11, Unit14, C0mCtrls, ShellAPI,

Butt0ns;

type

TF0rm1 = class(TF0rm)

XPManifest1: TXPManifest;

MainMenu1: TMainMenu;

N11: TMenuItem;

N21: TMenuItem;

N31: TMenuItem;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

N6: TMenuItem;

N9: TMenuItem;

N10: TMenuItem;

N12: TMenuItem;

Frame41: TFrame4;

Frame61: TFrame6;

Frame81: TFrame8;

Frame111: TFrame11;

Frame141: TFrame14;

N5: TMenuItem;

N13: TMenuItem;

N22: TMenuItem;

N7: TMenuItem;

N8: TMenuItem;

N14: TMenuItem;

Panel1: TPanel;

ZDTGrid: TDBGrid;

Panel2: TPanel;

Label1: TLabel;

Panel3: TPanel;

SpeedButt0n7: TSpeedButt0n;

SpeedButt0n6: TSpeedButt0n;

DBNavigat0r1: TDBNavigat0r;

Edit1: TEdit;

N15: TMenuItem;

N16: TMenuItem;

N17: TMenuItem;

pr0cedure N4Click(Sender: T0bject);

pr0cedure N6Click(Sender: T0bject);

pr0cedure Frame61SpeedButt0n1Click(Sender: T0bject);

pr0cedure Frame41SpeedButt0n1Click(Sender: T0bject);

pr0cedure N9Click(Sender: T0bject);

pr0cedure N1Click(Sender: T0bject);

pr0cedure Frame81SpeedButt0n1Click(Sender: T0bject);

pr0cedure N10Click(Sender: T0bject);

pr0cedure N2Click(Sender: T0bject);

pr0cedure N12Click(Sender: T0bject);

pr0cedure N3Click(Sender: T0bject);

pr0cedure Frame141SpeedButt0n1Click(Sender: T0bject);

pr0cedure Frame111SpeedButt0n1Click(Sender: T0bject);

pr0cedure F0rmCreate(Sender: T0bject);

pr0cedure Frame41SpeedButt0n2Click(Sender: T0bject);

pr0cedure Frame41SpeedButt0n3Click(Sender: T0bject);

pr0cedure Frame41SpeedButt0n4Click(Sender: T0bject);

pr0cedure Frame41SpeedButt0n5Click(Sender: T0bject);

pr0cedure Frame41Edit1Enter(Sender: T0bject);

pr0cedure Frame41SpeedButt0n6Click(Sender: T0bject);

pr0cedure Frame41SpeedButt0n7Click(Sender: T0bject);

pr0cedure Frame61SpeedButt0n3Click(Sender: T0bject);

pr0cedure Frame61SpeedButt0n4Click(Sender: T0bject);

pr0cedure Frame61SpeedButt0n5Click(Sender: T0bject);

pr0cedure Frame61SpeedButt0n2Click(Sender: T0bject);

pr0cedure Frame61SpeedButt0n6Click(Sender: T0bject);

pr0cedure Frame61SpeedButt0n7Click(Sender: T0bject);

pr0cedure Frame61Edit1Enter(Sender: T0bject);

pr0cedure Frame81SpeedButt0n3Click(Sender: T0bject);

pr0cedure Frame81SpeedButt0n4Click(Sender: T0bject);

pr0cedure Frame81SpeedButt0n5Click(Sender: T0bject);

pr0cedure Frame81Edit1Enter(Sender: T0bject);

pr0cedure Frame81SpeedButt0n6Click(Sender: T0bject);

pr0cedure Frame81SpeedButt0n7Click(Sender: T0bject);

pr0cedure Frame111SpeedButt0n3Click(Sender: T0bject);

pr0cedure Frame111SpeedButt0n4Click(Sender: T0bject);

pr0cedure Frame111SpeedButt0n5Click(Sender: T0bject);

pr0cedure Frame111Edit1Enter(Sender: T0bject);

pr0cedure Frame111SpeedButt0n6Click(Sender: T0bject);

pr0cedure Frame111SpeedButt0n7Click(Sender: T0bject);

pr0cedure Frame141SpeedButt0n3Click(Sender: T0bject);

pr0cedure Frame141SpeedButt0n4Click(Sender: T0bject);

pr0cedure Frame141SpeedButt0n5Click(Sender: T0bject);

pr0cedure Frame141SpeedButt0n6Click(Sender: T0bject);

pr0cedure Frame141SpeedButt0n7Click(Sender: T0bject);

pr0cedure N13Click(Sender: T0bject);

pr0cedure N22Click(Sender: T0bject);

pr0cedure N31Click(Sender: T0bject);

pr0cedure N8Click(Sender: T0bject);

pr0cedure Frame141DateTimePicker1Change(Sender: T0bject);

pr0cedure F0rmSh0w(Sender: T0bject);

pr0cedure F0rmCl0se(Sender: T0bject; var Acti0n: TCl0seActi0n);

pr0cedure N14Click(Sender: T0bject);

pr0cedure SpeedButt0n6Click(Sender: T0bject);

pr0cedure Edit1Enter(Sender: T0bject);

pr0cedure SpeedButt0n7Click(Sender: T0bject);

pr0cedure N15Click(Sender: T0bject);

pr0cedure N16Click(Sender: T0bject);

pr0cedure N17Click(Sender: T0bject);

private

{ Private declarati0ns }

public

{ Public declarati0ns }

end;

var

F0rm1: TF0rm1;

implementati0n

uses Unit2, Unit3, Unit5, Unit7, Unit9, Unit12, Unit13, Unit15,

Unit16, Unit17;

{$R *.dfm}

pr0cedure TF0rm1.N4Click(Sender: T0bject);

begin

Panel1.Visible:=false;

Frame61.Visible:=false; //Открытие справочника Контрагенты

Frame81.Visible:=false;

Frame141.Visible:=false;

Frame111.Visible:=false;

Frame41.Visible:=true;

DM2.ZakQuery.SQL.Text:='SELECT * FR0M Zakazy';

DM2.M0dQuery.SQL.Text:='SELECT * FR0M Sprav0chnik_m0deley';

DM2.K0ntrQuery.SQL.Text:='SELECT * FR0M Sprav0chnik_k0ntragent0v';

DM2.D0cQuery.SQL.Text:='SELECT * FR0M D0cumenty';

DM2.TTNQuery.SQL.Text:='SELECT * FR0M TTN';

DM2.TTNQuery.Cl0se;

DM2.TTNPr0dQuery.Cl0se;

DM2.D0cQuery.Cl0se;

DM2.DRekQuery1.Cl0se;

DM2.ZakQuery.Cl0se;

DM2.ZPr0dQuery1.Cl0se;

DM2.M0dQuery.Cl0se;

DM2.MArtikQuery.Cl0se;

DM2.K0ntrQuery.0pen;

DM2.RekQuery.0pen;

Frame41.K0ntrGrid.SetF0cus;

end;

pr0cedure TF0rm1.N6Click(Sender: T0bject);

begin

Panel1.Visible:=false;

Frame61.Visible:=true; //Открытие справочника Модели

Frame41.Visible:=false;

Frame81.Visible:=false;

Frame141.Visible:=false;

Frame111.Visible:=false;

DM2.ZakQuery.SQL.Text:='SELECT * FR0M Zakazy';

DM2.K0ntrQuery.SQL.Text:='SELECT * FR0M Sprav0chnik_k0ntragent0v';

DM2.M0dQuery.SQL.Text:='SELECT * FR0M Sprav0chnik_m0deley';

DM2.D0cQuery.SQL.Text:='SELECT * FR0M D0cumenty';

DM2.TTNQuery.SQL.Text:='SELECT * FR0M TTN';

DM2.TTNQuery.Cl0se;

DM2.TTNPr0dQuery.Cl0se;

DM2.D0cQuery.Cl0se;

DM2.DRekQuery1.Cl0se;

DM2.ZakQuery.Cl0se;

DM2.ZPr0dQuery1.Cl0se;

DM2.K0ntrQuery.Cl0se;

DM2.RekQuery.Cl0se;

DM2.M0dQuery.0pen;

DM2.MArtikQuery.0pen;

Frame61.M0dGrid.SetF0cus;

end;

pr0cedure TF0rm1.Frame61SpeedButt0n1Click(Sender: T0bject);

begin

Panel1.Visible:=true;

DM2.ZDTQuery.Cl0se;

DM2.ZDTQuery.0pen;

Frame61.Visible:=false; //Закрытие справочника

DM2.M0dQuery.Active:=false;

DM2.ArtikQuery.Active:=false;

DM2.TkaniQuery.Active:=false;

DM2.TNVEDQuery.Active:=false;

DM2.VidyQuery.Active:=false;

DM2.PVGQuery.Active:=false;

end;

pr0cedure TF0rm1.Frame41SpeedButt0n1Click(Sender: T0bject);

begin

Panel1.Visible:=true;

DM2.ZDTQuery.Cl0se;

DM2.ZDTQuery.0pen;

Frame41.Visible:=false; //Закрытие справочника Контрагенты

DM2.K0ntrQuery.Active:=false;

DM2.RekQuery.Active:=false;

DM2.Tipk0ntrQuery.Active:=false;

DM2.BankiQuery.Active:=false;

DM2.RegQuery.Active:=false;

end;

pr0cedure TF0rm1.N9Click(Sender: T0bject);

begin

Panel1.Visible:=false;

Frame61.Visible:=false; //Открытие справочника Заказы

Frame81.Visible:=true;

Frame41.Visible:=false;

Frame111.Visible:=false;

Frame141.Visible:=false;

DM2.ZakQuery.SQL.Text:='SELECT * FR0M Zakazy';

DM2.M0dQuery.SQL.Text:='SELECT * FR0M Sprav0chnik_m0deley';

DM2.K0ntrQuery.SQL.Text:='SELECT * FR0M Sprav0chnik_k0ntragent0v';

DM2.D0cQuery.SQL.Text:='SELECT * FR0M D0cumenty';

DM2.TTNQuery.SQL.Text:='SELECT * FR0M TTN';

DM2.TTNQuery.Cl0se;

DM2.TTNPr0dQuery.Cl0se;

DM2.D0cQuery.Cl0se;

DM2.DRekQuery1.Cl0se;

DM2.M0dQuery.Cl0se;

DM2.MArtikQuery.Cl0se;

DM2.RekQuery.Cl0se;

DM2.K0ntrQuery.Cl0se;

DM2.ZakQuery.0pen;

DM2.ZPr0dQuery1.0pen;

Frame81.ZakGrid.SetF0cus;

end;

pr0cedure TF0rm1.N1Click(Sender: T0bject);

begin

with F0rm9 d0 //Добавление заказа

begin

Capti0n:='Добавление заказа';

DM2.ZakQuery.Active:=true;

DM2.ZPr0dQuery1.Active:=true;

DM2.K0ntrQuery.Active:=true;

DM2.MenQuery.Active:=true;

F0rm9.Label6.Capti0n:='';

F0rm9.Label7.Capti0n:='';

F0rm9.BitBtn5.Enabled:=false;

F0rm9.DateTimePicker1.Date:=Date;

DM2.AD0C0nnecti0n1.BeginTrans;

DM2.ZakQuery.Append;

Sh0wM0dal;

end;

end;

pr0cedure TF0rm1.Frame81SpeedButt0n1Click(Sender: T0bject);

begin

Panel1.Visible:=true;

DM2.ZDTQuery.Cl0se;

DM2.ZDTQuery.0pen;

Frame81.Visible:=false; //Закрытие справочника Заказы

DM2.ZakQuery.Cl0se;

DM2.ZPr0dQuery1.Cl0se;

DM2.K0ntrQuery.Active:=false;

DM2.MenQuery.Active:=false;

end;

pr0cedure TF0rm1.N10Click(Sender: T0bject);

begin

Panel1.Visible:=false;

Frame61.Visible:=false; //Открытие справочника Документы

Frame81.Visible:=false;

Frame41.Visible:=false;

Frame141.Visible:=false;

Frame111.Visible:=true;

DM2.ZakQuery.SQL.Text:='SELECT * FR0M Zakazy';

DM2.M0dQuery.SQL.Text:='SELECT * FR0M Sprav0chnik_m0deley';

DM2.K0ntrQuery.SQL.Text:='SELECT * FR0M Sprav0chnik_k0ntragent0v';

DM2.D0cQuery.SQL.Text:='SELECT * FR0M D0cumenty';

DM2.TTNQuery.SQL.Text:='SELECT * FR0M TTN';

DM2.TTNQuery.Cl0se;

DM2.TTNPr0dQuery.Cl0se;

DM2.ZakQuery.Cl0se;

DM2.ZPr0dQuery1.Cl0se;

DM2.M0dQuery.Cl0se;

DM2.MArtikQuery.Cl0se;

DM2.K0ntrQuery.Cl0se;

DM2.RekQuery.Cl0se;

DM2.D0cQuery.0pen;

DM2.DRekQuery1.0pen;

Frame111.D0cGrid.SetF0cus;

end;

pr0cedure TF0rm1.N2Click(Sender: T0bject);

begin

with F0rm12 d0

begin //Добавление документа

DM2.DRekQuery1.0pen;

DM2.K0ntrQuery.Active:=true;

DM2.BankiQuery.Active:=true;

DM2.D0cQuery.Active:=true;

DM2.Tipd0cQuery.Active:=true;

Capti0n:='Добавление документа';

DM2.DN0mQuery.SQL.Clear;

DM2.DN0mQuery.SQL.Add('SELECT ZN0mer FR0M Zakazy WHERE N0T EXISTS (SELECT DNZak FR0M D0cumenty WHERE D0cumenty.DNZak=Zakazy.ZN0mer)');

DM2.DN0mQuery.0pen;

DM2.DRekQuery2.Active:=true;

DM2.Tipd0cQuery.Active:=true;

DBL00kupC0mb0B0x1.Visible:=true;

DBText1.Visible:=false;

DBL00kupC0mb0B0x1.KeyValue := NULL;

DBL00kupC0mb0B0x2.KeyValue := NULL;

DateTimePicker1.Date:=Date;

Label6.Capti0n:='';

DBL00kupC0mb0B0x1.Read0nly:=false;

DM2.D0cQuery.Append;

DM2.AD0C0nnecti0n1.BeginTrans;

Sh0wM0dal;

end;

end;

pr0cedure TF0rm1.N12Click(Sender: T0bject);

begin

Panel1.Visible:=false;

Frame61.Visible:=false; //Открытие справочника ТТН

Frame81.Visible:=false;

Frame41.Visible:=false;

Frame111.Visible:=false;

Frame141.Visible:=true;

DM2.ZakQuery.SQL.Text:='SELECT * FR0M Zakazy';

DM2.M0dQuery.SQL.Text:='SELECT * FR0M Sprav0chnik_m0deley';

DM2.K0ntrQuery.SQL.Text:='SELECT * FR0M Sprav0chnik_k0ntragent0v';

DM2.D0cQuery.SQL.Text:='SELECT * FR0M D0cumenty';

DM2.TTNQuery.SQL.Text:='SELECT * FR0M TTN';

DM2.ZakQuery.Cl0se;

DM2.K0ntrQuery.Cl0se;

DM2.D0cQuery.Cl0se;

DM2.DRekQuery1.Cl0se;

DM2.ZPr0dQuery1.Cl0se;

DM2.M0dQuery.Cl0se;

DM2.MArtikQuery.Cl0se;

DM2.RekQuery.Cl0se;

DM2.TTNQuery.0pen;

DM2.TTNPr0dQuery.0pen;

end;

pr0cedure TF0rm1.N3Click(Sender: T0bject);

begin

DM2.TTNQuery.0pen;

with F0rm13 d0 //Добавление ТТН

begin

Capti0n:='Добавление ТТН';

DBText3.Visible:=false;

DBL00kupC0mb0B0x1.Visible:=true;

DM2.TTNN0mQuery.0pen;

DBL00kupC0mb0B0x1.KeyValue := NULL;

DateTimePicker1.Date:=Date;

DM2.TTNQuery.Append;

DM2.AD0C0nnecti0n1.BeginTrans;

Sh0wM0dal;

end;

end;

pr0cedure TF0rm1.Frame141SpeedButt0n1Click(Sender: T0bject);

begin

Panel1.Visible:=true;

DM2.ZDTQuery.Cl0se;

DM2.ZDTQuery.0pen;

Frame141.Visible:=false; //Закрытие справочника ТТН

DM2.TTNQuery.Cl0se;

DM2.TTNPr0dQuery.Cl0se;

end;

pr0cedure TF0rm1.Frame111SpeedButt0n1Click(Sender: T0bject);

begin

Panel1.Visible:=true;

DM2.ZDTQuery.Cl0se;

DM2.ZDTQuery.0pen;

Frame111.Visible:=false; //Закрытие справочника Документы

DM2.D0cQuery.Active:=false;

DM2.DRekQuery1.Active:=false;

DM2.K0ntrQuery.Active:=false;

DM2.BankiQuery.Active:=false;

DM2.Tipd0cQuery.Active:=false;

end;

pr0cedure TF0rm1.F0rmCreate(Sender: T0bject);

begin

CurrencyDecimals:=0;

//Не показывать копейки

end;

pr0cedure TF0rm1.Frame41SpeedButt0n2Click(Sender: T0bject);

begin

with F0rm3 d0

begin //Добавление контрагента

Capti0n:='Добавление контрагента';


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.