Информационная система бонусных программ лояльности

Виды деятельности "ИП Голдованская Наталья Георгиевна". Преимущества использования бонусной программы лояльности для организации. Особенности разработки "Информационной системы бонусных программ лояльности". Структура базы данных, тестирование программы.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 17.07.2016
Размер файла 424,6 K

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

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

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

Кировское областное государственное

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

"Кировский Авиационный Техникум"

ВЫПУСНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА

Информационная система бонусных программ лояльности

Студент: Русских А.С.

Руководитель ВКР:

Сандова Э.Г.

2016

Содержание

  • Введение
  • 1. Общая характеристика предприятия
  • 1.1 Организационная структура предприятия
  • 2. Постановка задачи автоматизации
  • 3. Проектные решения
  • 3.1 Техническое обеспечение
  • 3.2 Программное обеспечение
  • 3.3 Информационное обеспечение
  • 3.3.1 Описание используемой СУБД
  • 3.3.2 Структура информационной базы системы
  • 3.3.3 Поддержание ссылочной целостности данных
  • 4. Технология разработки программного обеспечения
  • 4.1 Общие сведения
  • 4.2 Описание функциональной структуры
  • 4.3 Руководство пользователя
  • 4.4 Тестирование программы
  • 5. Экономическое обоснование разработки
  • 5.1 Расчет трудоемкости по видам работ и исполнителям
  • 5.2 Расчет заработной платы
  • 5.3 Расчет материальных затрат
  • 5.4 Расчет сметы затрат
  • 6. Обеспечение безопасности программного продукта
  • Заключение
  • Список использованных источников
  • Приложения

Введение

1С Франчайзи "ИП Голдованская Наталья Георгиевна" предоставляет комплексные услуги (сертифицированные фирмой "1С") по автоматизации учетной и офисной работы, продажу лицензионных программных продуктов зарубежных и отечественных производителей, помощь в выборе программ, доставку, установку, внедрение, послепродажное обслуживание, консультации, индивидуальное обучение.

Основным видом деятельности "ИП Голдованская Наталья Георгиевна" является автоматизация бизнеса, поэтому все существующие бизнес-процессы, начиная от учета документации и заканчивая учетом программных продуктов уже автоматизированы. За автоматизацию отвечает комплексная система "1С-Рарус: Автоматизация 1С: Франчайзи", которая имеет развитые средства построения экономической и аналитической отчетности и расширенный функционал для различной финансово-хозяйственной деятельности.

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

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

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

Преимущества использования бонусной программы для организации:

Повышение лояльности клиентов, побуждение их к повторным покупкам.

Увеличение суммы разовых покупок;

Лучшее привлечение новых клиентов, поскольку бонусы можно получать уже с первой покупки, а скидки по обычно даются со второй;

Бонусы могут быть потрачены только в Вашей организации при приобретении ваших товаров или услуг, следовательно, увеличивают прибыльность компании;

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

Бонусы могут быть потрачены только спустя какое-то время. Таким образом, Ваша компания располагает данными денежными средствами до того момента, пока они не будут использованы покупателем;

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

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

Цель разработки системы:

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

Идентифицировать клиента в процессе приобретения товаров/услуг;

Изучать и анализировать целевую аудиторию предоставляемых организацией продуктов и услуг;

Стимулировать клиента на совершение покупок товаров и услуг путем реализации каналов взаимодействия с клиентами;

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

Информационная система должна разрабатываться в трех модулях. "Приложение для управления бонусной программой" и "Личный кабинет держателя бонусной карты" разрабатывается мною в рамках выполнения ВКР. Моей задачей также является проектирование базы данных, запуск и настройка сервера БД. "Дополнение к типовым конфигурациям 1С Предприятие 8" разрабатывается сотрудниками "ИП Голдованская Наталья Георгиевна". После запуска и начала эксплуатации ИС, сотрудниками организации, на базе существующей информационной системы, будет создана универсальная платформа, для запуска бонусной программы лояльности в любой организации, с целью распространения ее, как собственного программного продукта клиентам и партнерам фирмы.

В результате введения бонусной системы 1С Франчайзи "ИП Голдованская Наталья Георгиевна" получит прирост числа лояльных постоянных клиентов - людям нравится идея накапливать баллы и затем менять их на определенные товары или услуги; возможность изучать и анализировать целевую аудиторию - регистрируясь в бонусной системе, клиент заполняет анкету (контактные данные), благодаря которым организация может лучше узнать "своего клиента", и на основе имеющейся информации координировать свою работу; создать универсальную платформу для запуска бонусной программы лояльности в любой организации, и продавать ее как собственный программный продукт.

1. Общая характеристика предприятия

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

"1С" является официальным дистрибьютором деловых программных продуктов зарубежных и отечественных производителей, таких как Microsoft, Лаборатория Касперского, Eset, ABBYY, DrWeb, Аскон, ПроМТ, Entensys, Novosoft и другие. Из собственных разработок фирмы "1С" наиболее известны программы системы "1С: Предприятие", а также продукты для домашних компьютеров и образовательной сферы.

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

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

Сфера деятельности: Франчайзинга "ИП Голдованская Наталья Георгиевна" - комплексные услуги (сертифицированные фирмой "1С") по автоматизации бизнес-процессов:

Разработка программного обеспечения (прикладные решения, внедрения) для автоматизации производственных и торговых предприятий на платформе "1С: Предприятие" или любой другой.

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

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

Доставка, установка, внедрение программного обеспечения;

Послепродажное обслуживание, сопровождение, техническая поддержка;

Консультации, индивидуальное обучение;

Аренда виртуального выделенного сервера "1С".

1.1 Организационная структура предприятия

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

Различают несколько типов организационных структур: линейные, функциональные, линейно-функциональные, дивизиональные, адаптивные. Рассмотрим основные характеристику структуры характерной для "ИП Голдованская Наталья Георгиевна".

Для 1С Франчайзи "ИП Голдованская Наталья Георгиевна" характерна Линейная организационная структура. Такая структура в организации обусловлена малым количеством подчиненных руководителю лиц.

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

Организационная структура предприятия представлена в приложении А

бонусная информационная программа лояльность

2. Постановка задачи автоматизации

Для роста количества постоянных и привлечения новых клиентов, а также в связи с растущей конкуренцией в 1С Франчайзи "ИП Голдованская Наталья Георгиевна" использовалась дисконтная система.

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

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

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

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

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

В ходе проектирования бонусной программы лояльности готовые программные решения от сторонних разработчиков рассмотрены не были. Такое решение связано с тем, что 1С Франчайзи "ИП Голдованская Наталья Георгиевна" планирует использовать разрабатываемую информационную систему не только внутри организации, но также распространять ее как собственный программный продукт клиентам и партнерам фирмы.

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

Функционал разрабатываемой информационной системы должен обеспечить:

Автоматизацию проведения расчетов (начисление бонусов, списание их при покупке, сгорание бонусных баллов после окончания их срока действия);

Администрирование и управление настройками бонусной системы;

Формирование отчетной документации по результатам работы бонусной программы лояльности;

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

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

Стимулирование клиента на совершение покупок товаров и услуг путем реализации каналов взаимодействия с клиентами на базе смс-рассылок и функционала "Личного кабинета держателя бонусной карты".

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

Источниками информации в ИС служат клиенты и сотрудники организации. Сотрудники вводят (или загружают) информацию о бонусных картах, клиентах, информацию об оплате товаров (услуг), рекламных предложениях, отправляют рекламные смс-сообщения или оповещения. Клиенты вводят (или редактируют) свои контактные данные.

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

Для того чтобы выполнять поставленные цели, разрабатываемая информационная система должна выполнять определенный набор функций. За выполнение этих функций отвечают различные модули ИС. "Информационная система бонусных программ лояльности" состоит из трех модулей: "Дополнение к типовым конфигурациям 1С Предприятие 8", "Приложение для управления бонусной программой" для платформы Win32, "Личный кабинет держателя бонусной карты" для мобильной платформы Android.

"Дополнение к типовым конфигурациям 1С Предприятие 8" отвечает за начисление и оплату бонусами по пороговой схеме для розничных и оптовых продаж.

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

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

В рамках выполнения ВКР мне было предложено спроектировать базу данных, создать "Приложение для управления бонусной программой" для платформы Win32 и "Личный кабинет держателя бонусной карты" для мобильной платформы Android. Дополнение к типовым конфигурациям 1С разрабатывается силами "ИП Голдованская Наталья Георгиевна".

3. Проектные решения

3.1 Техническое обеспечение

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

Для корректной работы "Информационной системы бонусных программ лояльности" необходимо наличие архитектуры "клиент-сервер". Клиент-сервер - вычислительная или сетевая архитектура, в которой задания или сетевая нагрузка распределены между поставщиками услуг (компьютер-сервер) и заказчиками услуг (компьютер-клиент). Физически клиент и сервер - это программное обеспечение. Обычно они взаимодействуют через компьютерную сеть посредством сетевых протоколов и находятся на разных вычислительных машинах, но могут выполняться также и на одной машине. Сервер ожидает от клиентских программ запросы и предоставляют им свои ресурсы в виде данных или сервисных функций.

Наличие локальной вычислительной сети является обязательным условием работы ИС с архитектурой клиент-сервер. ЛВС помогает поддерживать стабильный документооборот, и обеспечивает обмен данными между рабочими станциями и сервером. Сеть состоит и из сервера и подключенных к сети рабочих станций. ЛВС организации должна быть подключена к провайдеру интернета. Рекомендуемое расположение компьютеров, кабелей и других компонентов сети должно быть характерно для топологии сети типа "Звезда".

"Информационной системы бонусных программ лояльности" будет распределена на одном компьютере-сервере и некотором количестве компьютерах-клиентах:

Сервер баз данных;

Одна рабочая станция для сотрудников организации с установленным модулем "Дополнение к типовым конфигурациям 1С Предприятие 8";

Одна рабочая станция для сотрудников организации с установленным модулем "Приложение для управления бонусной программой";

До 1000 терминалов доступа к системе со стороны клиентов организации с установленным модулем "Личный кабинет держателя бонусной карты".

Компьютер-сервер необходим для хранения баз данных информационной системы, выполнения запросов пользователей к ним и прочих вычислительных операций. На компьютер-сервер устанавливается система управления базами данных MySQL. Сервер должен отвечать следующим минимальным требованиям к техническим характеристикам:

ОС: Windows Server 2008, Windows Server 2012, Windows Server 2016;

Процессор: двухъядерный с частотой 2.5 ГГц;

2 ГБ оперативной памяти (ОЗУ);

10 ГБ свободного места на жестком диске на этапе запуска ИС.

Компьютер-клиент необходим для нормального функционирования и работы с информационной системой. Минимальные аппаратные требования рабочей станции для сотрудников организации:

ОС: Microsoft Windows - Win 7, Win 8, Win 8.1, Win10;

Дисплей с разрешением экрана 1280х720 точек и выше;

Процессор с минимальной частотой 2 ГГц;

1 ГБ оперативной памяти (ОЗУ);

100 МБ свободного места на жестком диске;

Манипуляторы типа клавиатура и мышь.

Клиентский терминал доступа к ИС - смартфон или планшет (мобильное устройство) под управлением ОС Android. Минимальные аппаратные требования к терминалу клиентов организации:

ОС: от Android 4.1 x (Jelly Bean) до Android 5.1 х (Lollipop);

Диагональ дисплея 3.5" и выше;

Процессор с частотой 1 ГГц на базе архитектуры ARM v7 или Intel x86;

Графический процессор с поддержкой OpenGL;

512 МБ оперативной памяти (ОЗУ);

50 МБ Свободного места на встроенном накопителе данных.

По мере необходимости исходный код мобильного приложения можно компилировать с использованием Android SDK 6.0 или более поздних версий для возможности запуска на Android 6.0+.

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

При создании базы была использована реляционная СУБД MySQL 5.6 Реляционная база данных MySQL - это одна из самых популярных и самых распространенных СУБД (система управления базами данных) в интернете. Она не предназначена для работы с большими объемами информации, но ее применение идеально для мобильных веб-приложений, как небольших, так и достаточно серьезных.

Программное обеспечение обоих модулей написано на объектно-ориентированном языке С++. В качестве среды разработки используется RAD Studio 10 Seattle разработанная компанией Embarcadero. RAD Studio 10 Seattle - многоязычная интегрированная среда разработки, включающая все необходимые инструменты для моделирования и конструирования приложений на различных платформах, с поддержкой языков Delphi, C и C++. Она предоставляет мощные компоненты VCL для Windows 10 и обеспечивает разработку на FMX для Windows, Mac и мобильных устройств.

"Приложение для управления бонусной программой" разработано только под ОС семейства Microsoft Windows (Win7, Win8, Win8.1, Win10) и имеет 32-битный набор команд. Особых требований к настойкам ОС не предъявляется, кроме того, что встроенный брандмауэр Windows не должен блокировать порт 3306.

"Приложение для управления бонусной программой" позволяет не только напрямую выводить на печать, но и формировать внешние документы в различных форматах - текстовые документы, табличные документы, изображения, веб-документы. Для просмотра и формирования внешних документов необходимо наличие определенного программного обеспечения:

Для формирования, просмотра, редактирования внешних документов в формате *. doc и *. xls, необходимо наличие установленного пакета Microsoft Office 2003 (включая Microsoft Word и Microsoft Excel) или более поздних версий, заканчивая MS Office 2013. Важно: без наличия установленного пакета MS Office документы формироваться не будут!

Для просмотра внешних документов в формате *. pdf необходимо наличие установленного Adobe Acrobat Reader DC или любой другой программы для просмотра PDF документа;

Для просмотра внешних документов в формате *.html, необходимо наличие программного обеспечения для просмотра веб-страниц (например, Internet Explorer, Chrome, Mozilla Firefox, Opera);

Для просмотра внешних документов в формате *. txt, необходима программа просмотра тестовых документов в кодировке UTF-8 (например, Блокнот, AkelPad, WordPad, Microsoft Word);

Для просмотра внешних данных в формате *. bmp, необходима программа просмотра изображений в формате Bitmap Picture (например, Просмотр Фотографий Windows, Paint).

Использование этих форматов для внешних документов было выбрано потому, что они наиболее распространены, и для работы с ними можно использовать бесплатное программное обеспечение, установленное сегодня почти на любом ПК. А также среда разработки, о которой пойдет речь, имеет интегрированные функции формирования документа в приведённых выше форматах. В случае необходимости систему можно легко модернизировать добавив форматы вывода - XML, JSON.

"Приложение для управления бонусной программой" позволяет напрямую вывести на печать некоторые из внешних документов. Для необходимо установить драйвер, с помощью которого Приложение получает доступ к аппаратному обеспечению некоторого подключенного устройства (МФУ, Принтер и т.д.).

"Личный кабинет держателя бонусной карты" разработан под мобильную платформу Android. Стабильная работа приложения гарантируется начиная с версии 4.1 и заканчивая 5.1 Для приложения Личного кабинета в системе должны быть доступны разрешения:

Получение данных о статусе телефона;

Чтение, изменение содержимого SD-карты;

Неограниченный доступ в интернет.

Для стабильной работы приложения необходимо наличие установленного пакета служб и приложений - Google Apps. Других требований к настройкам ОС и программному обеспечению не предъявляется.

3.3 Информационное обеспечение

3.3.1 Описание используемой СУБД

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

Система управления базами данных (СУБД) - совокупность программных средств общего или специального назначения, обеспечивающих управление созданием и использованием баз данных. При создании базы была использована реляционная, клиент-серверная СУБД MySQL 5.6 Реляционная база данных MySQL представляет собой множество взаимосвязанных таблиц, каждая из которых содержит информацию об объектах определенного вида. Каждая строка таблицы содержит данные об одном объекте (например, карте, смс-сообщении, клиенте), а столбцы таблицы содержат различные характеристики (атрибуты) этих объектов.

MySQL отличатся хорошей скоростью работы, надежностью, гибкостью. Работа с ней, как правило, не вызывает больших трудностей. Поддержка сервера MySQL автоматически включается в поставку PHP. Обычно MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы. Немаловажным фактором является ее условная бесплатность. MySQL распространяется на условиях общей лицензии GNU (GPL, GNU Public License). Кроме того, MySQL имеет API для языков Delphi, C, C++, Java, Perl, PHP, Python, Ruby, библиотеки для языков платформы.net, а также обеспечивает поддержку для ODBC посредством ODBC-драйвера MyODBC.

Компьютер-сервер, установленный в организации - HP ProLiant ML110, полностью соответствует требованиям необходимым для установки и продуктивной работы сервера MySQL 5.6 в стабильном режиме.

3.3.2 Структура информационной базы системы

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

Источниками поступления информации в ИС служат клиенты и сотрудники организации. Сотрудники вводят (или загружают) информацию о бонусных картах, клиентах, информацию об оплате товаров (услуг), рекламных предложениях, отправляют рекламные смс-сообщения или оповещения. Клиенты вводят (или редактируют) свои контактные данные.

Рисунок 1 - Структурная схема БД

Структура таблицы "clients" (Клиенты)

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

Таблица 1 - "clients"

Наименование полей

Тип данных

Нулевой статус

Ключ

Ограничения

Ссылки

Пример

client_id

integer

Not Null

Первичный

1

card_id

integer

Not Null

Внешний

cards. card_id

124

email

varchar

Null

c86@mail.com

passwd

varchar

Null

reqwery123

first_name

varchar

Null

Русских

last_name

varchar

Null

Алексей

gender

varchar

Null

Мужской

birth_date

datetime

Null

01.01.2001

mobile_phone

varchar

Null

+79120000000

Структура таблицы "cards" (Карты)

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

Таблица 2 - "cards"

Наименование полей

Тип данных

Нулевой статус

Ключ

Ограничения

Ссылки

Пример

card_id

integer

Not Null

Первичный

1

balance

integer

Null

345

stat_id

integer

Null

1

stat

varchar

Null

Активна

type_id

integer

Null

1

type

varchar

Null

Персональная

output_date

datetime

Null

01.01.2001

valid_thru

datetime

Null

01.01.2016

comment

varchar

Null

Карта самого крутого клиента организации

Структура таблицы "transactions" (Транзакции по карте)

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

Таблица 3 - "transactions"

Наименование полей

Тип данных

Нулевой статус

Ключ

Ограничения

Ссылки

Пример

trans_id

integer

Not Null

Первичный

33

card_id

integer

Not Null

Внешний

cards. card_id

1

points

integer

Null

-395

description

varchar

Null

Оплата бонусами

trans_date

datetime

Null

12.03.2016

valid_thru

datetime

Null

Null

comment

varchar

Null

Скидка на оформление годовой подписки

Структура таблицы "offers" (Рекламные предложения)

В данной таблице хранится информациях о рекламных предложениях: полное название (заголовок) предложения, полное описание предложения, дата старта предложения, срок действия и адрес веб-страницы.

Таблица 4 - "offers"

Наименование полей

Тип данных

Нулевой статус

Ключ

Ограничения

Ссылки

Пример

offer_id

integer

Not Null

Первичный

33

title

varchar

Null

Скидка 33%

description

varchar

Null

Cкидка 33% при сделке на сумму более 5000 рублей

date

datetime

Null

12.01.2016

valid_thru

date

Null

12.03.2016

html_path

varchar

Null

http://hipolls.com/ index.html

Структура таблицы "client_offers" (Персональные рекламные предложения)

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

Таблица 5 - "client_offers"

Наименование полей

Тип данных

Нулевой статус

Ключ

Ограничения

Ссылки

Пример

id

integer

Not Null

Первичный

33

client_id

integer

Not Null

Внешний

clients. client_id

1

offer_id

integer

Not Null

Внешний

offers. offer_id

4

stat_id

integer

Null

0

Структура таблицы "sms" (SMS-сообщения)

В данной таблице хранится информациях об отправленных смс-сообщениях: ссылка на клиента, которому было отправлено сообщение, наименование отправителя, дата отправки и текст сообщения.

Таблица 6 - "sms"

Наименование полей

Тип данных

Нулевой статус

Ключ

Ограничения

Ссылки

Пример

sms_id

integer

Not Null

Первичный

3

client_id

integer

Not Null

Внешний

clients. client_id

45

sender

varchar

Null

20

1C43.ru

body

varchar

Null

Заканчива - ется лицензия

date

date

Null

12.08.2015

3.3.3 Поддержание ссылочной целостности данных

Обеспечение качества информации достигается за счет поддержания ссылочной целостности. Основой для обеспечения ссылочной целостности данных является создание первичных и внешних ключей. Кроме того, первичные и внешние ключи помогают обеспечить связь, которая основана на синтаксисе Transact-SQL запросов.

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

Триггер для формирования первичного ключа при добавлении нового клиента:

DELIMITER

CREATE TRIGGER `ins_new` BEFORE INSERT ON `clients`

FOR EACH ROW BEGIN

SET NEW. client_id = 1 + (SELECT MAX (client_id) FROM clients);

SET NEW. group_id = NULL;

END

Триггер для удаления всех транзакций из таблицы "transactions" и отвязки удаляемой карты от профиля клиента при удалении бонусной карты из таблицы "cards":

DELIMITER

CREATE TRIGGER `delete_trans` BEFORE DELETE ON `cards`

FOR EACH ROW BEGIN

DELETE FROM transactions WHERE card_id = OLD. card_id;

UPDATE clients SET card_id = 0 WHERE card_id = OLD. card_id;

END

Триггер для поддержания ссылочной целостности при удалении записи из таблицы "clients":

DELIMITER

CREATE TRIGGER `delete_dependenses` BEFORE DELETE ON `clients`

FOR EACH ROW BEGIN

DELETE FROM sms WHERE client_id = OLD. client_id;

DELETE FROM client_offers WHERE client_id = OLD. client_id;

END

4. Технология разработки программного обеспечения

4.1 Общие сведения

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

"Приложение для управления бонусной программой" имеет один исполнительный файл с названием "Управление Бонусной Программой. exe" размером 16.8 Мб при объеме исходных текстов программ и ресурсов 9.1 Мб. Итоговый вес модуля может увеличиваться - создание временных ресурсных файлов и файлов для хранения настроек программы.

"Личный кабинет держателя бонусной карты" имеет один исполнительный файл с названием пакета "com. embarcadero. lk10. apk" и названием приложения "Личный Кабинет 1.0". Вес установленного приложения составляет 42.6 Мб при объеме исходных текстов программ и ресурсов 26.1 Мб.

Программное обеспечение обоих модулей "Информационной системы бонусных программ лояльности" написано на объектно-ориентированном языке С++. В качестве среды разработки используется RAD Studio 10 Seattle разработанная компанией Embarcadero. RAD Studio 10 Seattle - многоязычная интегрированная среда разработки, включающая все необходимые инструменты для моделирования и конструирования приложений на различных платформах, с поддержкой языков Delphi, C и C++. Она предоставляет мощные компоненты VCL для Windows 10 и обеспечивает разработку на FMX для Windows, Mac и мобильных устройств. RAD Studio обеспечивает 5-кратно увеличенную скорость разработки и развертывания на нескольких настольных, мобильных, облачных средах и платформах баз данных, включая 32-разрядные и 64-битные ОС Windows.

При разработке "Личного кабинета держателя бонусной карты" использован FireMonkey Фреймворк (FMX) - GUI-framework, использующий возможности графического процессора. FireMonkey входит в состав среды разработки RAD Studio 10 Seattle. Лежащий в его основе движок FMX представляет собой похожий на Flash или WPF, кроссплатформенный Фреймворк для построения пользовательских интерфейсов. Будучи встроенным в С++ Builder, FireMonkey позволяет компилировать один и тот же код приложения для работы в Windows, iOS и Android.

"Приложение для управления бонусной программой" разработано с использованием VCL. Visual Component Library (VCL) - объектно-ориентированная библиотека для разработки программного обеспечения для поддержки принципов визуального программирования. VCL входит в комплект поставки Embarcadero RAD Studio 10 и является, по сути, частью среды разработки, хотя разработка приложений в этих средах возможна и без использования VCL. VCL предоставляет огромное количество готовых к использованию компонентов для работы в самых разных областях программирования, таких, например, как интерфейс пользователя (экранные формы и элементы управления), работа с базами данных, взаимодействие с операционной системой, программирование сетевых приложений и прочее.

Для подключения обоих модулей к базе MySQL был использован компонент от сторонних разработчиков (не входящий в состав RAD Studio 10) - "MySQL Data Access Components (MyDAC)". MyDAC - многофункциональный инструмент для разработки клиент-сервер приложений на Delphi, C++Builder, Lazarus (и Free Pascal) под Windows, Mac OS X, iOS, Android, Linux и FreeBSD, как для 32-битных, так и для 64-битных платформ. MyDAC позволяет разрабатывать быстрые и нативные MySQL приложения и подключаться к MySQL напрямую через TCP/IP, не используя клиентскую библиотеку MySQL.

Для отправки СМС сообщений используется SMS-шлюз предоставляемый порталом "Смс-дисконт - iqsms.ru" SMS-шлюз - интерфейс, который позволяет отправлять и получать SMS-сообщения без использования мобильного телефона. При отправке SMS-сообщения преобразуются в JSON запросы к серверу iqsms.ru. После отправки всех сообщений, сервер посылает ответ о статусе сообщений, также в формате JSON.

4.2 Описание функциональной структуры

Для запуска "Приложения для управления бонусной программой" необходимо переместить файл "УправлениеБонуснойПрограммой. exe" в любой каталог на физическом накопителе доступный для чтения и записи. Запустить файл "УправлениеБонуснойПрограммой. exe" от имени Администратора.

"Приложение для управления бонусной программой" имеет одну входную точку в управляющую программу - файл "УправлениеБонуснойПрограммой. exe"

Для того, чтобы запустить модуль "Личного кабинета держателя бонусной карты", необходимо открыть Play Market. В строке поиска ввести "Личный кабинет 1.0", перейти на страницу приложения из результатов поиска и установить приложение. Запустить приложение "Личный кабинет 1.0" из главного меню. Второй способ - переместить "ru. embarcadero. lk10. apk" в память телефона. Разрешить установку из неизвестных источников, и запустить пакет на установку. Запустить приложение "Личный кабинет 1.0" из главного меню.

"Личный кабинет" имеет три точки входа в управляющую программу - иконка приложения в главном меню, кнопка "запуск" из информации о приложении в настройках, страница приложения в Play Market.

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

Администрирование бонусной системы;

Управление настройками бонусной системы;

Импорт и экспорт данных;

Ведение статистики и формирование отчетных документов;

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

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

Просмотр и редактирование профиля клиента;

Просмотр бонусного баланса и списка транзакций по бонусной карте;

Регистрация новых клиентов в бонусной системе.

Входными данными в "Приложении для управления бонусной программой" являются:

Информация о бонусных картах: идентификатор, баланс, срок активности карты, дополнительная информация;

Данные клиентов: фамилия, имя, дата рождения, пол, номер телефона, email;

Персональные рекламные предложения: название предложения, полное описание, срок действия, путь с web-странице;

Смс-сообщения: номер телефона, текст сообщения.

Выходными данными в Приложении являются:

Итоговый баланс бонусной карты;

Журнал транзакций по бонусной карте;

Статистика активности пользователей бонусной программы;

Цепочки личных предложений и смс-сообщений;

Отчеты во внешних документах (word, excel, pdf, txt).

Входными данными в "Личном кабинете держателя бонусной карты" является информация о клиенте:

Фамилия, имя, дата рождения, пол, номер телефона клиента;

Информация для авторизации: адрес электронной почты, пароль.

Выходными данными в Личном кабинете являются:

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

Список транзакций по карте.

4.3 Руководство пользователя

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

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

Руководство пользователя представлено в приложении Б.

Главное окно и развернутое swipe-меню "Приложения для управления бонусной программой" представлено на рисунке 2.

Главный экран "Личного кабинета держателя бонусной карты" представлен на рисунке 3.

Рисунок 2 - Главное окно "Приложения для управления бонусной программой"

Рисунок 3 - Главный экран "Личного кабинета"

Ниже представлен исходный код основных функций "Приложения для управления бонусной программой" и "Личного кабинета держателя бонусной карты".

1) Функция начисления бонусных баллов:

if (ToggleSwitch1->Enabled)

{

// АВТО РЕЖИМ

if (ToggleSwitch1->State == tssOff & bonus>=0)

{

CardsTable->Filter = L"card_id = "+ IntToStr (card_id);

CardsTable->Filtered = true;

CardsTable->Active = true;

ServiceQuery->Active = false;

ServiceQuery->SQL->Clear ();

ServiceQuery->SQL->Add ("Select max (trans_id) as max_id from transactions");

ServiceQuery->Active = true;

ServiceQuery->Execute ();

// ОПЛАТА БОНУСАМИ---------

CardsTable->Edit ();

if (RadioButton2->Checked) // ЧАСТИЧНАЯ

{

CardsTable->FieldByName ("balance") - >AsInteger = CardsTable->FieldByName ("balance") - >AsInteger - ceil (sCurrencyEdit2->Value);

}

else // ВСЕМИ БОНУСАМИ

{

if (ceil (itog) >= CardsTable->FieldByName ("balance") - >AsInteger) // Если сумма платежа больше количества бонусов на счету

{

CardsTable->FieldByName ("balance") - >AsInteger = CardsTable->FieldByName ("balance") - >AsInteger - CardsTable->FieldByName ("balance") - >AsInteger;

}

if (ceil (itog) < CardsTable->FieldByName ("balance") - >AsInteger) // Если сумма платежа МЕНЬШЕ количества бонусов на счету

{

CardsTable->FieldByName ("balance") - >AsInteger = CardsTable->FieldByName ("balance") - >AsInteger - ceil (itog);

}

}

CardsTable->Post ();

if (summa<itog)

{

TransTable->Insert ();

TransTable->FieldByName ("trans_id") - >AsInteger = ServiceQuery->FieldByName ("max_id") - >AsInteger + 1;

TransTable->FieldByName ("card_id") - >AsInteger = card_id;

TransTable->FieldByName ("points") - >AsInteger = bonus;

TransTable->FieldByName ("description") - >AsString = L"Оплата бонусами";

TransTable->FieldByName ("trans_date") - >AsDateTime = Now ();

TransTable->FieldByName ("comment") - >AsString = "Покупка - "+Edit1->Text + " - " + sSpinEdit1->Text + "x за счет бонусных баллов";

TransTable->Post ();

}

// НАЧИСЛЕНИЕ БОНУСОВ ЗА ПОКУПКУ-----

CardsTable->Edit ();

CardsTable->FieldByName ("balance") - >AsInteger = CardsTable->FieldByName ("balance") - >AsInteger + ceil (bonus);

CardsTable->Post ();

ServiceQuery->Active = false;

ServiceQuery->Active = true;

ServiceQuery->Execute ();

TransTable->Insert ();

TransTable->FieldByName ("trans_id") - >AsInteger = ServiceQuery->FieldByName ("max_id") - >AsInteger + 1;

TransTable->FieldByName ("card_id") - >AsInteger = card_id;

TransTable->FieldByName ("points") - >AsInteger = bonus;

TransTable->FieldByName ("description") - >AsString = L"Покупка";

TransTable->FieldByName ("trans_date") - >AsDateTime = Now ();

if (CheckBox1->Checked)

{

TransTable->FieldByName ("valid_thru") - >AsDateTime = AdvDateTimePicker1->DateTime;

}

TransTable->FieldByName ("comment") - >AsString = "Оплата - "+Edit1->Text + " - " + sSpinEdit1->Text + "x";

TransTable->Post ();

FormClean->Execute ();

Application->MessageBox (L"Бонусные баллы успешно начислены в режиме авто!",L"Бонусная система", MB_OK);

}

// РУЧНОЙ РЕЖИМ

if (ToggleSwitch1->State == tssOn & sCurrencyEdit3->Value>0)

{

CardsTable->Filter = L"card_id = "+ IntToStr (card_id);

CardsTable->Filtered = true;

CardsTable->Active = true;

CardsTable->Edit ();

CardsTable->FieldByName ("balance") - >AsInteger = CardsTable->FieldByName ("balance") - >AsInteger + ceil (sCurrencyEdit3->Value);

CardsTable->Post ();

ServiceQuery->Active = false;

ServiceQuery->SQL->Clear ();

ServiceQuery->SQL->Add ("Select max (trans_id) as max_id from transactions");

ServiceQuery->Active = true;

ServiceQuery->Execute ();

TransTable->Insert ();

TransTable->FieldByName ("trans_id") - >AsInteger = ServiceQuery->FieldByName ("max_id") - >AsInteger + 1;

TransTable->FieldByName ("card_id") - >AsInteger = card_id;

TransTable->FieldByName ("points") - >AsInteger = ceil (sCurrencyEdit3->Value);

TransTable->FieldByName ("description") - >AsString = Edit2->Text;

TransTable->FieldByName ("trans_date") - >AsDateTime = Now ();

if (CheckBox1->Checked)

{

TransTable->FieldByName ("valid_thru") - >AsDateTime = AdvDateTimePicker1->DateTime;

}

TransTable->FieldByName ("comment") - >AsString = Memo1->Text;

TransTable->Post ();

FormClean->Execute ();

Application->MessageBox (L"Бонусные баллы успешно начислены в ручном режиме!",L"Бонусная система", MB_OK);

}

}

2) Функция занесения данных в систему (на примере добавления бонусной карты):

if (sEdit1->Text == "") // Проверка полей ввода

{

Shape2->Visible = true;

Application->MessageBox (L"Не все поля заполнены!",L"Ошибка выполнения", MB_OK | MB_ICONWARNING);

return;

}

ServiceQuery->Active = false;

ServiceQuery->SQL->Clear ();

ServiceQuery->SQL->Add ("SELECT card_id FROM cards WHERE card_id = " + sEdit1->Text); // Проверка на наличие номера карты в базе

ServiceQuery->Active = true;

if (ServiceQuery->RecordCount>0)

{

Application->MessageBox (L"Карта с таким номером уже существует!",L"Ошибка выполнения", MB_OK | MB_ICONWARNING);

return; // Если карта существует, то прерываем выполнение функции

}

//

CardsTable->Insert ();

CardsTable->FieldByName ("card_id") - >AsInteger = StrToInt (sEdit1->Text);

CardsTable->FieldByName ("balance") - >AsInteger = ceil (sCurrencyEdit1->Value);

CardsTable->FieldByName ("stat_id") - >AsInteger = 1;

CardsTable->FieldByName ("stat") - >AsString = L"Активна";

if (ComboBox1->ItemIndex==0) // Проверяем какой тип карты выбран

{

CardsTable->FieldByName ("type_id") - >AsInteger = 1;

CardsTable->FieldByName ("type") - >AsString = L"Персональная";

}

if (ComboBox1->ItemIndex==1) // Проверяем какой тип карты выбран

{

CardsTable->FieldByName ("type_id") - >AsInteger = 10;

CardsTable->FieldByName ("type") - >AsString = L"Подарочная";

}

CardsTable->FieldByName ("output_date") - >AsDateTime = Now ();

if (CheckBox1->Checked) {CardsTable->FieldByName ("valid_thru") - >AsDateTime = sDateEdit1->Date; }

CardsTable->FieldByName ("comment") - >AsString = sMemo1->Text;

CardsTable->Post ();

Application->MessageBox (L"Карта успешно добавлена!",L"Выполнено", MB_OK | MB_ICONINFORMATION);

AddTabRefresh->Execute (); // Выполняем действие по очистке формы

3) Функция редактирования данных (на примере редактирования информации о карте):

ServiceQuery->Active = false; // Составление строки запроса-НАЧАЛО

ServiceQuery->SQL->Clear ();

ServiceQuery->SQL->Add ("UPDATE cards");

ServiceQuery->SQL->Add ("SET balance = " + FloatToStr (ceil (BonusEdit->Value)));

ServiceQuery->SQL->Add (",stat_id = "+IntToStr (StatusComboBox->ItemIndex));

ServiceQuery->SQL->Add (",stat = '"+StatusComboBox->Text+"'");

if (CardTypeComboBox->ItemIndex==0)

{

ServiceQuery->SQL->Add (",type_id = 1");

ServiceQuery->SQL->Add (",type = 'Персональная'");

}

if (CardTypeComboBox->ItemIndex==1)

{

ServiceQuery->SQL->Add (",type_id = 10");

ServiceQuery->SQL->Add (",type = 'Персональная'");

}

if (CheckBox2->Checked)

{ServiceQuery->SQL->Add (",valid_thru = '"+FormatDateTime ("yyyy-mm-dd",ValidDateEdit->Date) +"'"); }

else

{CardsTable->FieldByName ("valid_thru") - >Value=Null; }

ServiceQuery->SQL->Add (",comment = '"+CommentMemo->Text+"'");

ServiceQuery->SQL->Add ("WHERE card_id = "+CardsTable->FieldByName ("card_id") - >AsString);

ServiceQuery->ExecSQL ();

// Составление строки запроса-КОНЕЦ

Application->MessageBox (L"Изменения успешно внесены!",L"Выполнено", MB_OK | MB_ICONINFORMATION);

// Обновим информацию в визуальных компонентах

CardsTable->Active = false; CardsTable->Active = true;

CardsQuery->Refresh ();

4) Функция импорта данных для любой таблицы:

void __fastcall TForm1:: SpeedButton2Click (TObject *Sender)

{

Table->Active = false;

Table->TableName = DBLookupComboBox1->Text;

Table->Active = true;

int col,row;

PageControl1->ActivePage = TabSheet3;

AdvStringGrid1->LoadFromXLSSheet (sFilenameEdit1->FileName,Edit1->Text);

row = AdvStringGrid1->RowCount;

ProgressBar1->Max = row-1;

col = AdvStringGrid1->ColCount;

for (int i = 0; i < row-1; i++)

{

Table->Insert ();

for (int j = 0; j < col; j++)

{

String ftype = FieldTypeNames [Table->FieldByName (AdvStringGrid1->Cells [j] [0]) - >DataType];

if (ftype == "WideString" & AdvStringGrid1->Cells [j] [i+1]! ="") {Table->FieldByName (AdvStringGrid1->Cells [j] [0]) - >AsString = AdvStringGrid1->Cells [j] [i+1]; }

if (ftype == "DateTime" & AdvStringGrid1->Cells [j] [i+1]! ="") {Table->FieldByName (AdvStringGrid1->Cells [j] [0]) - >AsDateTime = StrToDateTime (AdvStringGrid1->Cells [j] [i+1]); }

if (ftype == "Date" & AdvStringGrid1->Cells [j] [i+1]! ="") {Table->FieldByName (AdvStringGrid1->Cells [j] [0]) - >AsDateTime = StrToDate (AdvStringGrid1->Cells [j] [i+1]); }

if (ftype == "Integer" & AdvStringGrid1->Cells [j] [i+1]! ="") {Table->FieldByName (AdvStringGrid1->Cells [j] [0]) - >AsInteger = StrToInt (AdvStringGrid1->Cells [j] [i+1]); }

if (ftype == "AutoInc" & AdvStringGrid1->Cells [j] [i+1]! ="") {}

}

Table->Post ();

ProgressBar1->Position = ProgressBar1->Position +1;

}

PageControl1->ActivePage = TabSheet4;

5) Функция авторизации клиента:

// ПОДКЛЮЧЕНИЕ К БАЗЕ

try {MyConnection1->Connected=true; }

catch (.) {ShowMessage (L"Ошибка соединения. Проверьте подключение к интернету!"); return; }

// ПРОВЕРЯЕМ ЗАПОЛНЕНИЕ ПОЛЕЙ ВВОДА

if (Edit2->Text=="") {ShowMessage (L"Введите Email!"); return; }

if (Edit1->Text=="") {ShowMessage (L"Введите Пароль!"); return; }

// ВЫПОЛНЕНИЕ ЗАПРОСА С ПАРАМЕТОМ

MyQuery2->ParamByName ("email") - >Value = Edit2->Text; // считываем параметр

MyQuery2->Active=true;

MyQuery2->Execute (); // выполняем запрос

// АВТОРИЗАЦИЯ

if (MyQuery2->FieldByName ("passwd") - >AsString == Edit1->Text) // Проверяем введеный пароль

{

ProfileForm->MyQuery1->ParamByName ("clientid") - >Value = MyQuery2->FieldByName ("client_id") - >AsInteger; // считывам параметр для запроса

ProfileForm->Show ();

}

else

{

ShowMessage (L"Неверный Email или Пароль!"); return;

}

6) Функция регистрации пользователя:


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

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

    курсовая работа [29,2 K], добавлен 28.11.2010

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

    курсовая работа [4,1 M], добавлен 07.04.2012

  • Расчет плана производства по кварталам и месяцам. Примеры программ, используемые для создания БД. Проектирование базы данных при помощи обучающей программы Fox-Pro. Системный интерфейс приложения, структура файла и его заполнение, окно редактирования.

    курсовая работа [662,3 K], добавлен 14.11.2014

  • Этапы разработки информационной системы "Детский клуб": определение основных сценариев вариантов использования программы, приведение диаграмм последовательности, кооперации и состояния ключевых компонентов базы, создание примерного интерфейса системы.

    курсовая работа [297,3 K], добавлен 25.11.2010

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

    курсовая работа [673,9 K], добавлен 20.11.2011

  • Описание входной и выходной информации. Программно-технические средства, необходимые для разработки программы "Автоматизированная информационная справочная система аптеки". Возможность формирования и корректировки файлов, тестирование программы.

    курсовая работа [761,7 K], добавлен 18.12.2013

  • Разработка программы для учета услуг на предприятии и хранения данных о сотрудниках и заказчиках. Анализ и состав входящей и исходящей информации. Структура базы данных, выполнение запросов. Система управления базами данных, принципы их организации.

    курсовая работа [1,7 M], добавлен 06.12.2012

  • Сравнительный анализ языков программирования высокого уровня Си и Паскаль. Реализация алгоритма обработки данных. Тестирование и отладка программы или пакета программ. Структура программы на языке Турбо Паскаль. Указатели и векторные типы данных.

    курсовая работа [233,5 K], добавлен 14.12.2012

  • Характеристика и принцип работы подсистемы-инсталлятора Windows Installer, ее структура и назначение. Порядок и варианты установки программ в ОС Linux, их преимущества и недостатки. Методика и основные этапы составления базы данных программ-аналогов.

    курсовая работа [369,2 K], добавлен 24.08.2009

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

    курсовая работа [2,1 M], добавлен 10.04.2023

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