Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Применение процессного подхода для оптимизации бизнес-процессов

Содержание:

Введение

Торговля – обширнейшая область предпринимательской деятельности и сфера приложения труда – получила в последние годы новые импульсы своего развития. В нее влилось много новых предприимчивых людей, в ряде случаев коренным образом поменявших профессию и жизненные ориентиры. От рядовых спекулятивных торговых операций и «челночно-палаточного бизнеса» многие предприниматели перешли уже к более высокой стадии торговой деятельности, организовав индивидуальные или коллективные предприятия. Менеджерам таких предприятий приходится ежедневно сталкиваться с множеством проблем организационного, экономического и финансового характера, которые приходится решать интуитивно, методом «проб и ошибок», приобретая постепенно практический опыт.

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

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

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

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

В данной работе требуется автоматизировать процесс продаж торговой сети ООО «Бытовой мир». Для достижения данной цели потребуется решить следующие задачи:

  • проанализировать деятельность компании;
  • определить требования к информационному и программному обеспечению;
  • провести проектирование системы;
  • определить входящую и результатную информацию;
  • разработать систему.

Глава 1. Аналитическая часть

Выбор комплекса задач автоматизации

ООО «Мир быта» – предприятие розничной торговли. Продаёт бытовую технику. За счет постоянной оптимизации ассортимента, оптимизации взаимоотношений с поставщиками, а также благодаря использованию эффективных маркетинговых и рекламных средств компания продолжает развиваться и завоёвывать новые позиции на рынке.

Доверие и лояльность покупателей – это залог успеха компании в долгосрочной перспективе, поэтому компания стремится оказывать своим покупателям максимально широкий спектр услуг на высочайшем уровне.

Ориентируясь на сложную структуру спроса, компания достигает главного в розничном бизнесе – сбалансированного ценового предложения.

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

Используемые в «Мир быта» программы лояльности являются уникальными на рынке бытовой техники и электроники и доказывают свою эффективность.

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

В таблице 1 представлены основные технико-экономические показатели компании ООО «Мир быта».

Таблица 1.1

Технико-экономические показатели ООО «Мир быта»

Наименование показателя

Значение показателя на 01.06.2016

Численность персонала

80 чел.

Общий капитал

83 000 000 руб.

Расходы по реализации продукции

147 000 000 руб.

Прибыль от продаж

68 000 000 руб.

Характеристика существующих бизнес – процессов

Рассмотрим структурно-функциональную диаграмму деятельности предприятия (рисунок 1). На диаграмме изображены входящие, исходящие, управляющие потоки и исполнители.

\\Mac\Home\Desktop\Снимок экрана 2016-10-26 в 13.17.09.png

Рисунок 1. Структурно-функциональная диаграмма деятельности ООО «Бытовой мир»

Входные потоки:

  • информация о новинках;
  • поставщики;
  • поставки;
  • клиенты;
  • деньги.

Выходные потоки:

  • продажи;
  • договора поставок;
  • затраты;
  • налоги.

Управляющие потоки:

  • ГОСТы;
  • приказы;
  • прайс-лист;
  • уведомления;
  • прайс-лист поставщика.

Исполнители:

  • отдел планирования;
  • отдел поставок;
  • отдел продаж;
  • маркетинговый отдел;
  • бухгалтерия.

На рисунке 2 представлены процессы деятельности предприятия. В него входят следующие процессы:

  • планирование продаж и закупок;
  • маркетинговые мероприятия;
  • поставки товара;
  • продажи;
  • финансовые операции и учёт.

\\Mac\Home\Desktop\Снимок экрана 2016-10-26 в 13.22.34.png

Рисунок 2. Структурно-функциональная диаграмма процессов деятельности предприятия

Рассмотрим комплекс задач, связанный с продажей товара в компании.

На рисунке 3 изображена структурно-функциональная диаграмма процесса продажи.

\\Mac\Home\Desktop\Снимок экрана 2016-10-26 в 13.25.28.png

Рисунок 3. Структурно-функциональная диаграмма процесса продажи

В процесс продаж входит:

  • анализ плана продаж;
  • продажа товара;
  • учёт и оформление отчётов.

Характеристика документооборота, возникающего при решении задачи

Рассмотрим документооборот процесса продаж – рисунок 4.

Рисунок 4 - Документооборот

В документообороте участвуют:

  • продавец;
  • кассир;
  • бухгалтер.

Следовательно, для решения задачи автоматизации продаж в торговой сети «Мир быта» требуется разработать систему, которая позволит:

  • вести учёт товаров;
  • учёт продавцов-консультантов;
  • магазинов в сети;
  • распределение товаров по сети;
  • работу продавцов консультантов;
  • учёт продаж.

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

В системе фигурируют следующие сущности:

  • товар;
  • магазин;
  • продавец;
  • размещение;
  • продажа.

Товары характеризуются:

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

Магазины характеризуются: название; адрес; телефон.

Продавцы: ФИО; адрес; телефон.

Размещение: товар; магазин; количество.

Продажа характеризуется:

  • дата и время в магазине;
  • сумма.

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

Следовательно, помимо рассмотренных таблиц в базе потребуются следующие справочники: назначение; тип товара; производитель; страна производства.

В системе должны формироваться следующие отчёты:

  • отчёт о лидерах продаж по типу техники;
  • отчёт об объёмах продаж продавцов;
  • отчёт о проданном товаре;
  • отчёт об объёмах продаж магазинов.

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

Для проектирования системы потребуются CASE-средства. Для проектирования бизнес-процессов выбран CA ERWin Process Modeler. Инструмент позволяет создавать схемы в нотации IDEF0, которые идеально подходят для таких задач.

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

Для реализации потребуется выбрать язык разработки и среду разработки. В качестве языка разработки выбирается Delphi. В качестве среды разработки RAD Studio. Для хранения данных выбирается СУБД Access.

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

Технология Microsoft ActiveX Data Objects обеспечивает универсальный доступ к источникам данных из приложений БД. Такую возможность предоставляют функции набора интерфейсов, созданные на основе общей модели объектов СОМ и описанные в спецификации OLE DB.

Технология ADO и интерфейсы OLE DB обеспечивают для приложений единый способ доступа к источникам данных различных типов. Например, приложение, использующее ADO, может применять одинаково сложные операции и к данным, хранящимся на корпоративном сервере SQL, и к электронным таблицам, и локальным СУБД. Запрос SQL, направленный любому источнику данных через ADO, будет выполнен.

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

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

Четыре компонента наборов данных (ADODataSet, ADOTable, ADOQuery и ADOStoredProc) фактически полностью реализованы общим для них базовым классом TCustomADODataSet. Этот компонент несет ответственность за выполнение большинства функций, присущих набору данных. Производные компоненты являются тонкими оболочками, которые делают доступными для внешнего мира те или иные возможности базового компонента. Таким образом, компоненты обладают множеством общих черт.

Глава 2. Проектная часть

Информационная модель и её описание

Спроектируем информационную модель системы учёта продаж в сети магазинов ООО «Мир быта». Модель представлена на рисунке 5.

В системе выделены следующие сущности:

  • товар;
  • продавец;
  • магазин;
  • размещение;
  • продажа;
  • список.

Справочники:

  • тип товара;
  • назначение;
  • страна;
  • производитель.

Результатной информацией является:

  • чек;
  • отчёт о лидерах продаж по типу техники;
  • отчёт об объёмах продаж продавцов;
  • отчёт о проданном товаре;
  • отчёт об объёмах продаж магазинов.

Рисунок 5 – Информационная модель

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

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

Перечень нормативно-справочной информации приведён в таблице 2.

Таблица 2

Перечень нормативно-справочной информации

Справочник

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

Актуализация

Тип товара

Продавец

1 раз в год

Назначение

Продавец

2 раза в год

Производитель

Продавец

5 раз в год

Страна

Продавец

2 раз в год

Перечень входной информации и её реквизиты представлены в таблице 3.

Таблица 3

Перечень входной информации

Название

Реквизиты

Магазин

название;

адрес;

телефон.

Продавец

ФИО;

адрес;

телефон.

Товар

назначение;

тип техники;

производитель;

страна производства;

модель;

габариты;

вес;

технические характеристики;

цена.

Размещение

товар;

магазин;

количество.

Продажа

дата и время в магазине;

сумма.

Список

товар;

количество;

общая стоимость одной позиции;

продавец.

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

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

К результатной информации относится:

  • чек;
  • отчёт о лидерах продаж по типу техники;
  • отчёт об объёмах продаж продавцов;
  • отчёт о проданном товаре;
  • отчёт об объёмах продаж магазинов.

Состав отчётов представлен в таблице 4.

Таблица 4

Реквизиты результатной информации ИС учёта продаж

Название

Реквизиты

Условия отбора

Отчёт о лидерах продаж по типу техники

Производитель

Модель

Количество

Сумма

Диапазон дат

Тип техники

Отчёт об объёмах продаж продавцов

Продавец

Магазин

Сумма

Диапазон дат

Отчёт о проданном товаре

Магазин

Количество

Сумма

Диапазон дат

Товар

Отчёт об объёмах продаж магазинов

Магазин

Сумма

Диапазон дат

На рисунках 6 – 9 представлены шаблоны данных отчётов.

\\Mac\Home\Desktop\Снимок экрана 2016-10-26 в 21.20.36.png

Рисунок 6 – Шаблон отчёта о лидерах продаж по типу техники

\\Mac\Home\Desktop\Снимок экрана 2016-10-26 в 21.20.43.png

Рисунок 7 – Шаблон отчёта об объёмах продаж продавцов

\\Mac\Home\Desktop\Снимок экрана 2016-10-26 в 21.20.50.png

Рисунок 8 – Шаблон отчёта о проданном товаре

\\Mac\Home\Desktop\Снимок экрана 2016-10-26 в 21.21.13.png

Рисунок 9 – Шаблон отчёта об объёмах продаж магазинов

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

Для разработки приложения построим дерево функций, которые должна позволять выполнять система – рисунок 10.

Рисунок 10 – Дерево функций

Основными функциями являются:

  1. учёт товаров;
    1. учёт размещения товаров по сети;
  2. учёт продаж;
    1. учёт списка проданного товара;
    2. расчёт общей суммы для товарной позиции;
    3. расчёт общей суммы по чеку;
  3. учёт персонала;
  4. учёт магазинов;
  5. формирование отчётов.

Дополнительные:

  1. ведение справочников;
  2. настройка подключения к базе данных.

Рассмотрим сценарий диалога, который покажет возможность навигации по приложению – рисунок 11.

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

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

База данных системы учёта продаж сети магазинов ООО «Мир быта» состоит из следующих таблиц:

  • «Товар»;
  • «Продавец»;
  • «Магазин»;
  • «Размещение»;
  • «Продажа»;
  • «Список»;
  • «Назначение»;
  • «ТипТехники»;
  • «Производитель»;
  • «Страна».

Рассмотрим подробнее состав таблиц базы данных (таблицы 5 – 14).

Таблица 5

Таблица «Товар»

Поле

Тип поля

Ограничения

Код

Счётчик

PK

Назначение

Числовой

FK, not null

ТипТехники

Числовой

FK, not null

Производитель

Числовой

FK, not null

Страна

Числовой

FK

Модель

Короткий текст

20, not null

Габариты

Короткий текст

20

Вес

Короткий текст

20

Цена

Денежный

Характеристика

Короткий текст

100

Таблица 6

«Продавец»

Поле

Тип поля

Ограничения

Код

Счётчик

PK

ФИО

Короткий текст

60, not null

Адрес

Короткий текст

30

Телефон

Короткий текст

15

Магазин

Числовой

FK, not null

Таблица 7

«Магазин»

Поле

Тип поля

Ограничения

Код

Счётчик

PK

Название

Короткий текст

20, not null

Адрес

Короткий текст

30

Телефон

Короткий текст

15

Таблица 8

«Размещение»

Поле

Тип поля

Ограничения

Код

Счётчик

PK

Товар

Числовой

FK, not null

Магазин

Числовой

FK, not null

Количество

Числовой

Not null

Таблица 9

«Продажа»

Поле

Тип поля

Ограничения

Код

Счётчик

PK

Состоялась

Дата и время

Not null

Сумма

Денежный

Not null

Магазин

Числовой

FK, not null

Таблица 10

«Список»

Поле

Тип поля

Ограничения

Код

Счётчик

PK

Продажа

Числовой

FK, not null

Размещение

Числовой

FK, not null

Продавец

Числовой

FK

Количество

Числовой

Not null

Сумма

Денежный

Not null

Таблица 11

«Назначение»

Поле

Тип поля

Ограничения

Код

Счётчик

PK

Название

Короткий текст

20, not null

Таблица 12

«ТипТехники»

Поле

Тип поля

Ограничения

Код

Счётчик

PK

Название

Короткий текст

20, not null

Таблица 13

«Производитель»

Поле

Тип поля

Ограничения

Код

Счётчик

PK

Название

Короткий текст

20, not null

Таблица 14

«Страна»

Поле

Тип поля

Ограничения

Код

Счётчик

PK

Название

Короткий текст

20, not null

Связи между таблицами: «Товар» и «Размещение»; «Магазин» и «Размещение»; «Продажа» и «Список»; «Размещение» и «Список»; «Магазин» и «Продажа»; «Продавец» и «Список»; «Магазин» и «Продавец» - это связи типа «один-ко-многим» с каскадным обновлением и удалением.

Получившаяся схема данных представлена на рисунке 12.

\\Mac\Home\Desktop\Снимок экрана 2016-08-26 в 20.40.43.png

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

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

Информационная система учёта продаж в сети магазинов ООО «Мир быта» состоит из следующих модулей:

  • uMain;
  • uList;
  • uItems;
  • uDistrib;
  • uLibrary;
  • uReport;
  • uDM.

Схема модулей представлена на рисунке 13.

Рисунок 13 – Схема модулей

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

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

Таблица 11

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

Модуль

Описание

uMain

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

uList

Добавление товарных позиций в список проданного

uItems

Учёт товаров и размещения по магазинам.

uDistrib

Управление списком размещения товара по магазинам.

uLibrary

Управления справочной информации.

uReport

Формирование и вывод отчётов.

uDM

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

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

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

Работа начинается с главной формы, которая представлена на рисунке 14.

\\Mac\Home\Desktop\Снимок экрана 2016-08-27 в 2.52.05.png

Рисунок 14. Главное окно

Для учёта товаров и размещения в главном меню требуется выбрать пункт Главное - Товары. Откроется окно, представленное на рисунке 15.

\\Mac\Home\Desktop\Снимок экрана 2016-08-27 в 2.52.36.png

Рисунок 15. Окно учёта товаров

Для добавления размещения товара используется окно, представленное на рисунке 16.

\\Mac\Home\Desktop\Снимок экрана 2016-08-27 в 2.52.51.png

Рисунок 16. Окно размещения товаров

Оформление продаж происходит в главном окне. Для этого требуется в сплывающем меню таблицы продаж выбрать пункт Добавить. На рисунке 17 представлено окно редактирования списка проданного.

\\Mac\Home\Desktop\Снимок экрана 2016-08-27 в 2.52.24.png

Рисунок 17. Окно добавления товаров в список проданного

Для формирования отчётов требуется выбрать пункт меню Отчёты и выбрать нужный тип. Пример формирования отчёта представлен на рисунке 18.

\\Mac\Home\Desktop\Снимок экрана 2016-08-27 в 2.53.55.png

Рисунок 18. Пример отчёта о лидерах продаж по типу техники

Разработанное приложение позволяет управлять данными в базе и выводить отчёты, необходимые в работе.

Заключение

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

Функционал системы:

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

Было проведено проектирование, построена информационная модель. Рассмотрена входная, нормативно-справочная и результатная информация.

Была разработана база данных, которая содержит следующие таблицы:

  • товар;
  • магазин;
  • продавец;
  • размещение;
  • продажа;
  • список;
  • назначение;
  • типтехники;
  • производитель;
  • страна.

Было разработано приложение, которое состоит из следующих модулей:

  • uMain;
  • uItems;
  • uList;
  • uDistrib;
  • uLibrary;
  • uReport;
  • uDM.

В результате было создано приложение, которое соответствует поставленной задаче. Был рассмотрен контрольный пример работы в приложении.

Список используемой литературы

  1. Бритов Г., Осипова Т. Моделирование бизнес-процессов. /Бритов Г., Осипова Т. - М.: LAP, 2014. – 124 с.
  2. Грекул В.И., Денищенко Г.Н., Коровкина Н.Л. Проектирование информационных систем. - М.: Интуит, 2014. 240с.
  3. Гамма Э., Хелм Р., Джонсон Р., Влиссидес Дж. Приемы объектно-ориентированного проектирования. Паттерны проектирования. - СПб.: Питер, 2015. – 368 с.
  4. Гурвиц Г. Microsoft Access 2010. Разработка приложений на реальном примере. - СПб.: БХВ-Петербург, 2010. - 497с.
  5. Илюшечкин В. Основы использования и проектирования баз данных. Учебник. - М.:Юрайт, 2014. - 214с.
  6. Коваленко В. Проектирование информационных систем. / Коваленко В. - М.: Форум, 2012. - 320с.
  7. Кузнецов С. Базы данных. - М.: Academia, 2012. - 496с.
  8. Основы использования и проектирования баз данных. Учебник / Илюшечкин В. - М.: Юрайт, 2014. - 214с.
  9. Осипов Д. Delphi. Программирование для Windows, OS X, iOS и Android. - СПб.: БХВ-Петербург, 2016. - 310с.
  10. Уткин В., Балдин К. Информационные системы в экономике. - М.: Academia, 2012. - 288с.

Приложение

Исходный код модуля «uDM»

unit uDM;

interface

uses

System.SysUtils, System.Classes, Data.DB, Data.Win.ADODB, Dialogs, IniFiles, Forms;

type

TDM = class(TDataModule)

MainConn: TADOConnection;

tblTypeItems: TADOTable;

tblProducer: TADOTable;

tblCountry: TADOTable;

tblDest: TADOTable;

tblItem: TADOTable;

tblSale: TADOTable;

tblList1: TADOTable;

tblShop: TADOTable;

tblWorker: TADOTable;

tblShopGlobal: TADOTable;

tblTypeItemsFilter: TADOTable;

tblProducerFilter: TADOTable;

qryReport: TADOQuery;

dsTypeItems: TDataSource;

dsProducer: TDataSource;

dsCountry: TDataSource;

dsDest: TDataSource;

dsItem: TDataSource;

dsDistrib: TDataSource;

dsSale: TDataSource;

dsList: TDataSource;

dsShop: TDataSource;

dsWorker: TDataSource;

dsShopGlobal: TDataSource;

dsTypeItemsFilter: TDataSource;

dsProducerFilter: TDataSource;

dsReport: TDataSource;

tblTypeItemsКод: TAutoIncField;

tblTypeItemsНазвание: TWideStringField;

tblProducerКод: TAutoIncField;

tblProducerНазвание: TWideStringField;

tblCountryКод: TAutoIncField;

tblCountryНазвание: TWideStringField;

tblDestКод: TAutoIncField;

tblDestНазвание: TWideStringField;

tblItemКод: TAutoIncField;

tblItemМодель: TWideStringField;

tblItemХарактеристики: TWideStringField;

tblItemГабариты: TWideStringField;

tblItemВес: TWideStringField;

tblItemНазначение: TIntegerField;

tblItemТипТехники: TIntegerField;

tblItemПроизводитель: TIntegerField;

tblItemСтрана: TIntegerField;

tblItemЦена: TBCDField;

tblItemTypeItems: TStringField;

tblItemDestItem: TStringField;

tblItemProducerItem: TStringField;

tblShopКод: TAutoIncField;

tblShopНазвание: TWideStringField;

tblShopАдрес: TWideStringField;

tblShopТелефон: TWideStringField;

tblShopGlobalКод: TAutoIncField;

tblShopGlobalНазвание: TWideStringField;

tblShopGlobalАдрес: TWideStringField;

tblShopGlobalТелефон: TWideStringField;

tblSaleКод: TAutoIncField;

tblSaleСостоялась: TDateTimeField;

tblSaleСумма: TBCDField;

tblSaleМагазин: TIntegerField;

tblList1Код: TAutoIncField;

tblList1Продажа: TIntegerField;

tblList1Продавец: TIntegerField;

tblList1Размещение: TIntegerField;

tblList1Количество: TIntegerField;

tblList1Сумма: TBCDField;

tblWorkerКод: TAutoIncField;

tblWorkerФИО: TWideStringField;

tblWorkerТелефон: TWideStringField;

tblWorkerАдрес: TWideStringField;

tblWorkerМагазин: TIntegerField;

dsWorkerList: TDataSource;

tblWorkerList: TADOTable;

tblWorkerListКод: TAutoIncField;

tblWorkerListФИО: TWideStringField;

tblWorkerListТелефон: TWideStringField;

tblWorkerListАдрес: TWideStringField;

tblWorkerListМагазин: TIntegerField;

tblList1WorkerList: TStringField;

tblTypeItemsFilterКод: TAutoIncField;

tblTypeItemsFilterНазвание: TWideStringField;

tblProducerFilterКод: TAutoIncField;

tblProducerFilterНазвание: TWideStringField;

tblDistrib: TADOTable;

tblDistribКод: TAutoIncField;

tblDistribТовар: TIntegerField;

tblDistribМагазин: TIntegerField;

tblDistribКоличество: TIntegerField;

tblDistribShopDist: TStringField;

qryItemSearch: TADOQuery;

dsItemSearch: TDataSource;

qryDistrib: TADOQuery;

tblList: TADODataSet;

dsList1: TDataSource;

procedure tblSaleAfterScroll(DataSet: TDataSet);

private

procedure ReadConnectionString;

procedure WriteConnectionString;

public

procedure LinkedBase(conn: boolean);

procedure SettingLink;

end;

var

DM: TDM;

implementation

{%CLASSGROUP 'Vcl.Controls.TControl'}

{$R *.dfm}

procedure TDM.SettingLink;

begin

LinkedBase(false);

mainConn.ConnectionString:=PromptDataSource(0,mainConn.ConnectionString);

WriteConnectionString;

LinkedBase(true);

end;

procedure TDM.tblSaleAfterScroll(DataSet: TDataSet);

begin

tblList.Close;

tblList.Parameters.ParamByName('Kod').Value:=tblSale.FieldByName('Код').AsInteger;

tblList.Open;

tblList.FieldByName('Код').Visible:=false;

tblList.FieldByName('Продажа').Visible:=false;

tblList.FieldByName('Размещение').Visible:=false;

tblList.FieldByName('Продавец').Visible:=false;

tblList.FieldByName('Товар').DisplayWidth:=62;

end;

procedure TDM.LinkedBase(conn: boolean);

var

i: integer;

begin

mainConn.Connected:=false;

MainConn.ConnectionString:='';

if conn then ReadConnectionString;

try

mainConn.Connected:=conn;

if mainConn.Connected then begin

for i := 0 to ComponentCount - 1 do

if Components[i] is TADOTable then

(Components[i] as TADOTable).Active:=conn;

qryItemSearch.Active:=conn;

end;

except

on E: Exception do begin

if MessageDlg('Хотите настроить подключение?',mtWarning,mbOkCancel,0)=1 then

SettingLink;

end;

end;

end;

{****Функции работы с подключением к базе****}

procedure TDM.ReadConnectionString; //читаем строку подключения из файла setup.ini

var

fl_str, conn_str: string;

myIniFile: TIniFile;

begin

fl_str:=ExtractFilePath(Application.Exename) + 'setup.ini'; //путь к файлу stup.ini

if FileExists(fl_str) then //файл существует?

begin

myIniFile:=TIniFile.Create(fl_str); //подключаемся к файлу

MainConn.ConnectionString:=myIniFile.ReadString('Connect','Str',''); //и читаем из него строку подключения

end;

if MainConn.ConnectionString='' then //если строка подключения всё же пуста, то

begin

ShowMessage('Не настроено подключение к базе'); //выводим предупреждение

conn_str:=PromptDataSource(0,mainConn.ConnectionString);

mainConn.ConnectionString:=conn_str;//PromptDataSource(0,mainConnect.ConnectionString); //начинаем настройку подключения

WriteConnectionString;

end;

end;

procedure TDM.WriteConnectionString; //записываем строку подключения в файл setup.ini

var

fl_str: string;

myIniFile: TIniFile;

begin

fl_str:=ExtractFilePath(Application.Exename) + 'setup.ini'; //путь к файлу setup.ini

myIniFile:=TIniFile.Create(fl_str); //подключаемся к файлу

myIniFile.WriteString('Connect','Str',MainConn.ConnectionString); //пишем строку подключения в раздел Connect

myIniFile.Free;

end;

end.