Автоматизация работы аквапарка

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    698 Кб
  • Опубликовано:
    2016-01-28
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Автоматизация работы аквапарка

ВВЕДЕНИЕ

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

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

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

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

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

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

1.     
АНАЛИЗ ИНФОРМАЦИОННЫХ СИСТЕМ В ОБЛАСТИ АВТОМАТИЗАЦИИ ДЕЯТЕЛЬНОСТИ КУЛЬТУРНО-РАЗВЛЕКАТЕЛЬНЫХ ЦЕНТРОВ

1.1    Описание предметной области

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

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

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

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

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

1.2    Анализ существующих программных средств

Концепция Delphi 1 была реализована в конце 1994 года, когда вышла первая версия среды разработки. В основу этого программного продукта легли концепции объектно-ориентированного программирования (ООП) на базе языка Object Pascal и визуального подхода к построению приложений.

После выхода Delphi 1 все компьютерные издания писали об этой среде, как об «убийце Visual Basic». Появление Delphi 2 (32-разрядной) ознаменовало новую эпоху, - появился доступ к возможностям программных интерфейсов Windows NT и Windows 95. Delphi 2 стала средством разработки полноценных приложений клиент/сервер. Вскоре Delphi 3 предоставила разработчикам средства создания распределенных многоуровневых приложений и полноценный инструментарий проектирования приложений для Internet и Intranet. Появилась полноценная поддержка com - модели объектов, ставшей краеугольным камнем современного программирования. Четвертая версия Delphi позволяет полностью интегрировать ваши разработки с объектами com. Поддержка архитектуры corba (common object request broker architecture) открывает перед приложениями, созданными в delphi для платформы wintel (windows + intel), мир других операционных систем (unix, os/2, wms <#"871240.files/image001.jpg">

Рисунок 1.1 - Отношения между CLR, CTS, CLS и библиотеками базовых классов

C# (Си-шарп) - объектно-ориентированный язык программирования для платформы .NET. Разработан в 2000 году Андерсом Хейлсбергом, Скоттом Вилтамутом и Питером Гольде под эгидой Microsoft Research. Основным постулатом С# является высказывание: "всякая сущность есть объект". Язык основан на строгой компонентной архитектуре и реализует передовые механизмы обеспечения безопасности кода. C# был создан специально для технологии ASP.NET. В то же время на C# полностью написана и сама ASP.NET.

C# - это полнофункциональный объектно-ориентированный язык, который поддерживает все три «столпа» объектно-ориентированного программирования: инкапсуляцию, наследование и полиморфизм. Он имеет прекрасную поддержку компонентов, надежен и устойчив благодаря использованию «сборки мусора», обработки исключений, безопасности типов.

Язык C# разрабатывался "с нуля" и вобрал в себя много полезных свойств таких языков, как C++, Java, Visual Basic, а также Pascal, Delphi и др. При этом необходимость обратной совместимости с предыдущими версиями отсутствовала, что позволило языку C# избежать многих отрицательных сторон своих предшественников.

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

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

-       Приложения Windows. К приложениям этого типа относятся приложения, которые имеют знакомый пользователям Windows внешний вид и поведение, как, например, приложение Microsoft Office. Достигается такой внешний вид и поведение применением модуля .NET Framework под названием Windows Forms, по сути, представляющего собой библиотеку элементов управления (вроде кнопок, панелей инструментов, меню и т.п.), с помощью которых можно создавать пользовательский интерфейс Windows.

-       Web-приложения. К приложениям этого типа относятся Web-страницы, вроде тех, что могут просматриваться посредством любого Web-браузера. В состав .NET Framework входит мощная система для генерации Web-содержимого динамическим образом, обеспечивающая персонализацию, безопасность и многое другое. Называется она ASP.NET (Active Server Pages .NET), и благодаря ей, язык C# можно использовать для создания приложений ASP.NET с применением Web-форм.

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

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

Рассмотрим ключевые функциональные возможности языка C#, которые присутствуют во всех его версиях.

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

–       Управление памятью осуществляется автоматически посредством сборки мусора. По этой причине ключевое слово delete в C# не поддерживается.

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

–       Предоставляется аналогичная С++ возможность перегружать операции для пользовательских типов

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

В C# была унифицирована система типов, теперь можно рассматривать каждый тип как объект. Несмотря на то, используется класс, структура, массив или встроенный тип, можно обращаться к нему как к объекту. Объекты собраны в пространства имен (namespaces), которые позволяют программно обращаться к чему-либо. Это значит, что вместо списка включаемых файлов заголовков в своей программе нужно написать какие пространства имен для доступа к объектам и классам внутри них планируется использовать. В C# выражение using позволяет не писать каждый раз название пространства имен, когда используется класс из него. Например, пространство имен System содержит несколько классов, в том числе и Console. Можно писать либо название пространства имен перед каждым обращением к классу, либо использовать using.

Microsoft Office Access или просто Microsoft Access - реляционная СУБД корпорации Microsoft. Имеет широкий спектр функций, включая связанные запросы, связь с внешними таблицами и базами данных. Благодаря встроенному языку VBA, в самом Access можно писать приложения, работающие с базами данных.

Основные компоненты MS Access:

·              построитель таблиц;

·              построитель экранных форм;

·              построитель SQL-запросов (язык SQL в MS Access не соответствует стандарту ANSI);

·              построитель отчётов, выводимых на печать.

Они могут вызывать скрипты на языке VBA, поэтому MS Access позволяет разрабатывать приложения и БД практически «с нуля» или написать оболочку для внешней БД.

Microsoft Jet Database Engine <#"871240.files/image002.jpg">

Рисунок 2.1 - «Схема данных»

3.     
ПРОГРАММНАЯ РЕАЛИЗАЦИЯ АВТОМАТИЗИРОВАННОГО РАБОЧЕГО МЕСТА

3.1    Выбор и обоснование среды разработки

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

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

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

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

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

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

Гибкость Delphi при работе с базами данных основана на низкоуровневом ядре - процессоре баз данных Borland Database Engine (BDE). BDE позволяет осуществлять доступ к данным как с использованием традиционного record-ориентированного (навигационного) подхода, так и с использованием set-ориентированного подхода, используемого в SQL-серверах баз данных.

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

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

Среда программирования представляет собой несколько отдельных окон: меню и инструментальные панели, Object Inspector (в котором можно видеть свойства объекта и связанные с ним события), окна визуального построителя интерфейсов (Visual User Interface Builder), Object Browser (позволяющее изучать иерархию классов и просматривать списки их полей, методов и свойств), окна управления проектом (Project Manager) и редактора.

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

Projeсt Manager - это отдельное окно, где перечисляются модули и формы, составляющие проект. При каждом модуле указывается маршрут к каталогу, в котором находится исходный текст. Жирным шрифтом выделяются измененные, но еще не сохраненные части проекта. В верхней части окна имеется набор кнопок: добавить, удалить, показать исходный текст, показать форму, задать опции и синхронизировать содержимое окна с текстом файла проекта, т. е. с головной программой на языке Pascal.

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

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

3.2    Создание меню, реализующего основные функции информационной системы

delphi программный язык информационный модель

Проект содержит следующие формы:

1.   Главное меню, с помощью которого можно переходить на другие модальные формы (рисунок 3.1).

2.      Оформление нового клиента-меню, где вводятся данные о новом клиенте (рисунок 3.2, рисунок 3.3).

.        Предоставление информации об аттракционах (рисунок 3.4).

.        Заказ - оформление билета клиента (рисунок 3.5).

А также формирует следующие отчеты:

1.   Отчет о клиентах (рисунок 3.6).

2.      Отчет о билетах (рисунок 3.7).

.        Индивидуальный билет клиента (рисунок 3.8).


Рисунок 3.2 - Меню работы с клиентами

Рисунок 3.3 - Меню регистрации нового клиента

Рисунок 3.4 - Оформление билета клиента

Рисунок 3.5 - Информация о тарифах на аттракционы

Рисунок 3.6 - Отчет по клиентам

Рисунок 3.7 - Отчет по билетам

Рисунок 3.8 - Индивидуальный билет клиента

3.3    Описание работы системы и верификация программы

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

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

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

Итак, приведем стоимость аттракционов (Рисунок 3.9):

Рисунок 3.9 - Стоимость аттракционов

Пусть клиент хотел бы получить все услуги аквапарка, кроме горки «Скоростной спуск», а также ему предоставлялась скидка(льгота) 30%. Рассчитаем стоимость предоставляемых ему услуг:

(100+200+400+600)×0,3=390

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

Сверим их с результатами расчета программы (Рисунок 3.10):

Рисунок 3.10 - Индивидуальный билет клиента, сформированный программой

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

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

ЗАКЛЮЧЕНИЕ

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

Компьютерное оснащение данного предприятия можно ограничить наличием 2-3 персональных компьютеров, которые находятся в распоряжении служебного персонала.

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

Список использованных источников

1. Вендров А.М. Case - технологии. Современные методы и средства проектирования информационных систем. - Internet, http/www.citforum.ru/case.... -158 с., ил.

. Марка Д., МакГоуэн К. Методология структурного анализа и проектирования: Пер. с англ. - М.: 1999. - 240 с., ил.

. Шумаков П.В. Delphi 5 и разработка приложений баз данных. - М.: “Нолидж”, 2001. - 704 с., ил.

. Грабер М. Введение в SQL: Пер. с англ. - М.: “ЛОРИ”, 1996. - 341с., ил.

. Дейт К. Дж. Введение в системы баз данных: Пер. с англ. - 6-е изд. - К.: Диалектика, 1998. - 784с., ил.

. Калянов Г.Н. Case-средства. Структурный и системный анализ (автоматизация и применение). - М.: “ЛОРИ”, 1999. - 249 с., ил.

Приложение А

IDEF0 диаграмма


Приложение Б

IDEF0 диаграмма. Деразбиение 1 уровня


Приложение В

Рисунок - IDEF0 диаграмма. Деразбиение 2 уровня


Приложение Г

Листинг программы

unit Unit1;

interface

, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, Menus, jpeg, ExtCtrls, StdCtrls;

= class(TForm): TMainMenu;: TMenuItem;: TMenuItem;: TMenuItem;: TTimer;: TImage;: TMenuItem;: TMenuItem;: TMenuItem;N2Click(Sender: TObject);N5Click(Sender: TObject);Timer1Timer(Sender: TObject);N6Click(Sender: TObject);N7Click(Sender: TObject);

{ Private declarations }

{ Public declarations };

: TForm1;:Boolean;

Unit2, Unit4, Unit6, Unit7, Unit8;

{$R *.dfm}

TForm1.N2Click(Sender: TObject);kkk:integer;.Visible:=False;.Visible:=True;.ADOTable1.First;.Edit1.Text:=Form4.ADOTable1.FieldByName('Цена').Value;

.ADOTable1.Next;.Edit2.Text:=Form4.ADOTable1.FieldByName('Цена').Value;

.ADOTable1.Next;.Edit3.Text:=Form4.ADOTable1.FieldByName('Цена').Value;

.ADOTable1.Next;.Edit4.Text:=Form4.ADOTable1.FieldByName('Цена').Value;

.ADOTable1.Next;.Edit5.Text:=Form4.ADOTable1.FieldByName('Цена').Value;;

TForm1.N5Click(Sender: TObject);.Terminate;;

TForm1.Timer1Timer(Sender: TObject);Form1.AlphaBlendValue <> 255 then.AlphaBlendValue:=Form1.AlphaBlendValue+3;;

TForm1.N6Click(Sender: TObject);.QuickRep1.Preview;;

TForm1.N7Click(Sender: TObject);.QuickRep1.Preview;;

.


, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, DB, Grids, DBGrids, ADODB, StdCtrls, Buttons, jpeg, ExtCtrls,;

= class(TForm): TADOTable;: TADOConnection;: TDBGrid;: TDataSource;: TBitBtn;: TBitBtn;: TBitBtn;DSDesigner: TWideStringField;DSDesigner2: TWideStringField;DSDesigner3: TWideStringField;DSDesigner4: TWideStringField;DSDesigner5: TWideStringField;DSDesigner6: TWideStringField;: TMainMenu;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TBitBtn;: TBitBtn;: TBitBtn;: TBitBtn;: TRadioGroup;: TEdit;: TGroupBox;: TBitBtn;: TEdit;: TButton;BitBtn2Click(Sender: TObject);BitBtn3Click(Sender: TObject);BitBtn4Click(Sender: TObject);BitBtn5Click(Sender: TObject);N2Click(Sender: TObject);N3Click(Sender: TObject);N4Click(Sender: TObject);BitBtn6Click(Sender: TObject);BitBtn7Click(Sender: TObject);BitBtn8Click(Sender: TObject);BitBtn9Click(Sender: TObject);RadioGroup1Click(Sender: TObject);ADOTable1FilterRecord(DataSet: TDataSet;Accept: Boolean);Button1Click(Sender: TObject);

{ Private declarations }

{ Public declarations };

: TForm2;:string;

Unit3, Unit4, Unit1, Unit5, Unit8;

{$R *.dfm}

TForm2.BitBtn2Click(Sender: TObject);WWW:string;MessageDlg('Вы действительно хотите удалить эту запись ???',mtWarning,[mbYes,mbNo],0)=MRyes then:=Form2.ADOTable1.FieldByName('Код клиента').Value;.ADOTable1.Delete;Form3.ADOTable1 do.ADOTable1.First;not eof do

//Form3.ADOTable1.Edit;Form3.ADOTable1.FieldByName('Код клиента').Value=WWW then (Form3.ADOTable1.Delete);.ADOTable1.Next;;;;;

TForm2.BitBtn3Click(Sender: TObject);: integer;Form2.ADOTable1.RecNo=-1 then Form8.Edit1.Text:='1' else.ADOTable1.Last;:=StrToInt(Form2.ADOTable1DSDesigner.value)+1;.Edit1.Text:=IntToStr(KKK);;.Show;;

TForm2.BitBtn4Click(Sender: TObject);.Visible:=False;.Visible:=True;;

TForm2.BitBtn5Click(Sender: TObject);.ADOTable1.Locate('Код клиента',Edit7.Text,[loCaseInsensitive,loPartialKey]);;

TForm2.N2Click(Sender: TObject);.Visible:=False;.Visible:=True;

TForm2.N3Click(Sender: TObject);.Visible:=False;.Visible:=True;;

TForm2.N4Click(Sender: TObject);.Visible:=False;.Visible:=True;;

TForm2.BitBtn6Click(Sender: TObject);.First;;

TForm2.BitBtn7Click(Sender: TObject);.Prior;;

TForm2.BitBtn8Click(Sender: TObject);.Next;;

TForm2.BitBtn9Click(Sender: TObject);.Last;;

TForm2.RadioGroup1Click(Sender: TObject);.ADOTable1.Filtered:=false;radiogroup1.ItemIndex of

:begin:='Фамилия';.ADOTable1.Filtered:=true;;

:begin:='Год рождения' ;.ADOTable1.Filtered:=true;;

:begin:='Возраст';.ADOTable1.Filtered:=true;;;;TForm2.ADOTable1FilterRecord(DataSet: TDataSet;Accept: Boolean);radiogroup1.ItemIndex of

:Accept:=DataSet[po]=Edit6.Text;

:Accept:=DataSet[po]=Edit6.Text;

:Accept:=DataSet[po]=Edit6.Text;;;

TForm2.Button1Click(Sender: TObject);.Terminate;;

.

Unit3;

, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, Grids, DBGrids, DB, ADODB, StdCtrls, Buttons, ComCtrls, Menus,, ExtCtrls;

= class(TForm): TADOConnection;: TADOTable;: TDataSource;: TDBGrid;: TCheckBox;: TCheckBox;: TCheckBox;: TCheckBox;: TCheckBox;: TCheckBox;: TCheckBox;: TCheckBox;: TCheckBox;: TCheckBox;: TGroupBox;: TGroupBox;: TGroupBox;: TGroupBox;: TGroupBox;: TMonthCalendar;: TBitBtn;: TGroupBox;: TGroupBox;: TCheckBox;: TCheckBox;: TEdit;: TEdit;: TLabel;: TLabel;DSDesigner: TWideStringField;DSDesigner2: TWideStringField;DSDesigner3: TWideStringField;DSDesigner4: TWideStringField;DSDesigner5: TWideStringField;DSDesigner6: TWideStringField;DSDesigner7: TWideStringField;DSDesigner8: TWideStringField;DSDesigner9: TWideStringField;DSDesigner10: TWideStringField;DSDesigner11: TDateTimeField;: TBitBtn;: TBitBtn;: TBitBtn;: TBitBtn;: TMainMenu;: TMenuItem;: TMenuItem;: TMenuItem;: TBitBtn;: TButton;: TEdit;: TBitBtn;: TLabel;CheckBox1Click(Sender: TObject);CheckBox2Click(Sender: TObject);CheckBox3Click(Sender: TObject);CheckBox4Click(Sender: TObject);CheckBox5Click(Sender: TObject);CheckBox6Click(Sender: TObject);CheckBox7Click(Sender: TObject);CheckBox8Click(Sender: TObject);CheckBox9Click(Sender: TObject);CheckBox10Click(Sender: TObject);BitBtn1Click(Sender: TObject);CheckBox11Click(Sender: TObject);CheckBox12Click(Sender: TObject);BitBtn5Click(Sender: TObject);BitBtn2Click(Sender: TObject);BitBtn3Click(Sender: TObject);BitBtn4Click(Sender: TObject);N2Click(Sender: TObject);N3Click(Sender: TObject);BitBtn6Click(Sender: TObject);Button1Click(Sender: TObject);BitBtn7Click(Sender: TObject);

{ Private declarations }

{ Public declarations };

: TForm3;: string;

Unit4, Unit2, Unit5, Unit1, Unit8, Unit7, Unit9;

{$R *.dfm}

TForm3.CheckBox1Click(Sender: TObject);(Form3.CheckBox1.Checked=False)and(Form3.CheckBox2.Checked=False)Form3.CheckBox1.Checked:=True;Form3.CheckBox1.Checked=True then.CheckBox2.Checked:=False;.ADOTable1.First;.ADOTable1.MoveBy(1);.Edit1.Text:=Form4.ADOTable1.FieldByName('Цена').Value;;;TForm3.CheckBox2Click(Sender: TObject);.Edit1.Text:='0';(Form3.CheckBox1.Checked=False)and(Form3.CheckBox2.Checked=False)Form3.CheckBox2.Checked:=True;Form3.CheckBox2.Checked=True then.CheckBox1.Checked:=False;;;

TForm3.CheckBox3Click(Sender: TObject);(Form3.CheckBox3.Checked=False)and(Form3.CheckBox4.Checked=False)Form3.CheckBox3.Checked:=True;Form3.CheckBox3.Checked=True then.CheckBox4.Checked:=False;.ADOTable1.First;.ADOTable1.MoveBy(2);.Edit1.Text:=Form4.ADOTable1.FieldByName('Цена').Value;;;TForm3.CheckBox4Click(Sender: TObject);.Edit2.Text:='0';(Form3.CheckBox3.Checked=False)and(Form3.CheckBox4.Checked=False)Form3.CheckBox4.Checked:=True;Form3.CheckBox4.Checked=True then.CheckBox3.Checked:=False;;;

TForm3.CheckBox5Click(Sender: TObject);(Form3.CheckBox5.Checked=False)and(Form3.CheckBox6.Checked=False)Form3.CheckBox5.Checked:=True;Form3.CheckBox5.Checked=True then.CheckBox6.Checked:=False;.ADOTable1.First;.ADOTable1.MoveBy(3);.Edit1.Text:=Form4.ADOTable1.FieldByName('Цена').Value;;;TForm3.CheckBox6Click(Sender: TObject);.Edit3.Text:='0';(Form3.CheckBox5.Checked=False)and(Form3.CheckBox6.Checked=False)Form3.CheckBox6.Checked:=True;Form3.CheckBox6.Checked=True then.CheckBox5.Checked:=False;;;

TForm3.CheckBox7Click(Sender: TObject);(Form3.CheckBox7.Checked=False)and(Form3.CheckBox8.Checked=False)Form3.CheckBox7.Checked:=True;Form3.CheckBox7.Checked=True then.CheckBox8.Checked:=False;.ADOTable1.First;.ADOTable1.MoveBy(4);.Edit1.Text:=Form4.ADOTable1.FieldByName('Цена').Value;;;TForm3.CheckBox8Click(Sender: TObject);.Edit4.Text:='0';(Form3.CheckBox7.Checked=False)and(Form3.CheckBox7.Checked=False)Form3.CheckBox8.Checked:=True;Form3.CheckBox8.Checked=True then.CheckBox7.Checked:=False;;;

TForm3.CheckBox9Click(Sender: TObject);(Form3.CheckBox9.Checked=False)and(Form3.CheckBox10.Checked=False)Form3.CheckBox9.Checked:=True;Form3.CheckBox9.Checked=True then.CheckBox10.Checked:=False;;;TForm3.CheckBox10Click(Sender: TObject);.Edit5.Text:='0';(Form3.CheckBox9.Checked=False)and(Form3.CheckBox10.Checked=False)Form3.CheckBox10.Checked:=True;Form3.CheckBox10.Checked=True then.CheckBox9.Checked:=False;;;

TForm3.BitBtn1Click(Sender: TObject);a,b,c,d,e:String;,ccc:Real;:=Form4.Edit1.Text;:=Form4.Edit2.Text;:=Form4.Edit3.Text;:=Form4.Edit4.Text;:=Form4.Edit5.Text;:=StrToFloat(Edit2.Text);CheckBox11.Checked=True then.ADOTable1.Insert;.ADOTable1.FieldByName('Код билета').Value:=Form8.Edit1.Text;.ADOTable1.FieldByName('Код клиента').Value:=Form8.Edit1.Text;Form3.CheckBox1.Checked=True then Form3.ADOTable1DSDesigner3.Value:=CheckBox1.Caption;Form3.CheckBox2.Checked=True then Form3.ADOTable1DSDesigner3.Value:=CheckBox2.Caption;Form3.CheckBox3.Checked=True then Form3.ADOTable1DSDesigner4.Value:=CheckBox3.Caption;Form3.CheckBox4.Checked=True then Form3.ADOTable1DSDesigner4.Value:=CheckBox4.Caption;Form3.CheckBox5.Checked=True then Form3.ADOTable1DSDesigner5.Value:=CheckBox5.Caption;Form3.CheckBox6.Checked=True then Form3.ADOTable1DSDesigner5.Value:=CheckBox6.Caption;Form3.CheckBox7.Checked=True then Form3.ADOTable1DSDesigner6.Value:=CheckBox7.Caption;Form3.CheckBox8.Checked=True then Form3.ADOTable1DSDesigner6.Value:=CheckBox8.Caption;Form3.CheckBox9.Checked=True then Form3.ADOTable1DSDesigner7.Value:=CheckBox9.Caption;Form3.CheckBox10.Checked=True then Form3.ADOTable1DSDesigner7.Value:=CheckBox10.Caption;Form3.CheckBox11.Checked=True then Form3.ADOTable1DSDesigner8.Value:=CheckBox11.Caption;Form3.CheckBox12.Checked=True then Form3.ADOTable1DSDesigner8.Value:=CheckBox12.Caption;.ADOTable1.FieldByName('Процент скидки').Value:=Edit2.Text;.ADOTable1.FieldByName('Дата покупки').Value:=Form3.MonthCalendar1.Date;.ADOTable1.FieldByName('Цена').Value:=FloatToStr((StrToFloat(a)+StrToFloat(b)+StrToFloat(c)+StrToFloat(d)+StrToFloat(e)-(StrToFloat(a)+StrToFloat(b)+StrToFloat(c)+StrToFloat(d)+StrToFloat(e))/100*x)); //FloatToStr(StrToFloat(a)+StrToFloat(b)+StrToFloat(c)+StrToFloat(d)+StrToFloat(e)-FloatToStr(StrToFloat(a)+StrToFloat(b)+StrToFloat(c)+StrToFloat(d)+StrToFloat(e)/100*x);.ADOTable1.Post;.ADOTable1.Insert;.ADOTable1.FieldByName('Код клиента').Value:=Form8.Edit1.Text;.ADOTable1.FieldByName('Обоснование льготы').Value:=Form3.Edit1.Text;.ADOTable1.FieldByName('Процент скидки').Value:=Form3.Edit2.Text;.ADOTable1.Post;;CheckBox12.Checked=True then.ADOTable1.Insert;.ADOTable1.FieldByName('Код билета').Value:=Form8.Edit1.Text;.ADOTable1.FieldByName('Код клиента').Value:=Form8.Edit1.Text;Form3.CheckBox1.Checked=True then Form3.ADOTable1DSDesigner3.Value:=CheckBox1.Caption;Form3.CheckBox2.Checked=True then Form3.ADOTable1DSDesigner3.Value:=CheckBox2.Caption;Form3.CheckBox3.Checked=True then Form3.ADOTable1DSDesigner4.Value:=CheckBox3.Caption;Form3.CheckBox4.Checked=True then Form3.ADOTable1DSDesigner4.Value:=CheckBox4.Caption;Form3.CheckBox5.Checked=True then Form3.ADOTable1DSDesigner5.Value:=CheckBox5.Caption;Form3.CheckBox6.Checked=True then Form3.ADOTable1DSDesigner5.Value:=CheckBox6.Caption;Form3.CheckBox7.Checked=True then Form3.ADOTable1DSDesigner6.Value:=CheckBox7.Caption;Form3.CheckBox8.Checked=True then Form3.ADOTable1DSDesigner6.Value:=CheckBox8.Caption;Form3.CheckBox9.Checked=True then Form3.ADOTable1DSDesigner7.Value:=CheckBox9.Caption;Form3.CheckBox10.Checked=True then Form3.ADOTable1DSDesigner7.Value:=CheckBox10.Caption;Form3.CheckBox11.Checked=True then Form3.ADOTable1DSDesigner8.Value:=CheckBox11.Caption;Form3.CheckBox12.Checked=True then Form3.ADOTable1DSDesigner8.Value:=CheckBox12.Caption;.ADOTable1.FieldByName('Процент скидки').Value:='-//-//-';.ADOTable1.FieldByName('Дата покупки').Value:=Form3.MonthCalendar1.Date;:=StrToFloat(a)+StrToFloat(b)+StrToFloat(c)+StrToFloat(d)+StrToFloat(e);Form3.ADOTable1.FieldByName('Скидка').Value = 'Да' then.ADOTable1.FieldByName('Цена').Value:=FloatToStr(ccc*(1-strtofloat(Form3.ADOTable1.FieldByName('Процент скидки').Value))).ADOTable1.FieldByName('Цена').Value:=FloatToStr(ccc*(1-strtofloat(Form3.ADOTable1.FieldByName('Процент скидки').Value)));.ADOTable1.Post;;;

TForm3.CheckBox11Click(Sender: TObject);(Form3.CheckBox11.Checked=False)and(Form3.CheckBox12.Checked=False).CheckBox11.Checked:=True;.Edit1.Enabled:=False;.Edit2.Enabled:=False;;Form3.CheckBox11.Checked=True then.Edit1.Enabled:=True;.Edit1.Color:=clWindow;.Edit2.Enabled:=True;.Edit2.Color:=clWindow;.CheckBox12.Checked:=False;;

TForm3.CheckBox12Click(Sender: TObject);(Form3.CheckBox11.Checked=False)and(Form3.CheckBox12.Checked=False).CheckBox12.Checked:=True;.Edit1.Enabled:=False;.Edit2.Enabled:=False;;Form3.CheckBox12.Checked=True then.Edit1.Color:=cl3DLight;.Edit1.Enabled:=False;.Edit2.Color:=cl3DLight;.Edit2.Enabled:=False;.CheckBox11.Checked:=False;

;;

TForm3.BitBtn5Click(Sender: TObject);.Last;;

TForm3.BitBtn2Click(Sender: TObject);.First;;

TForm3.BitBtn3Click(Sender: TObject);.Prior;;

TForm3.BitBtn4Click(Sender: TObject);.Next;;

TForm3.N2Click(Sender: TObject);.Visible:=False;.Visible:=True;;

TForm3.N3Click(Sender: TObject);.Visible:=False;.Visible:=True;;

TForm3.BitBtn6Click(Sender: TObject);WWW:string;MessageDlg('Вы действительно хотите удалить эту запись ???',mtWarning,[mbYes,mbNo],0)=MRyes then:=Form3.ADOTable1.FieldByName('Код клиента').Value;.ADOTable1.Delete;Form2.ADOTable1 do.ADOTable1.First;not eof doForm2.ADOTable1.FieldByName('Код клиента').Value=WWW then (Form2.ADOTable1.Delete);.ADOTable1.Next;;;;;

TForm3.Button1Click(Sender: TObject);.Terminate;;

TForm3.BitBtn7Click(Sender: TObject);.ADOTable1.Filtered:=false;.ADOTable1.Filter:='[Код билета]='+Form3.Edit6.Text;.ADOTable1.Filtered:=true;.QuickRep1.Preview;.ADOTable1.Filtered:=false;.Edit6.Text:='';;

.

Unit4;

, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, Grids, DBGrids, DB, ADODB, jpeg, ExtCtrls, StdCtrls, Buttons,;

= class(TForm): TADOConnection;: TADOTable;: TDataSource;: TDBGrid;: TEdit;: TEdit;: TEdit;: TEdit;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TCheckBox;: TBitBtn;: TEdit;: TMainMenu;: TMenuItem;: TMenuItem;CheckBox1Click(Sender: TObject);BitBtn1Click(Sender: TObject);N2Click(Sender: TObject);

{ Private declarations }

{ Public declarations };

: TForm4;

Unit2, Unit1;

{$R *.dfm}

TForm4.CheckBox1Click(Sender: TObject);CheckBox1.Checked=False then.Edit1.Enabled:=False;.Edit2.Enabled:=False;.Edit3.Enabled:=False;.Edit4.Enabled:=False;.Edit5.Enabled:=False;

//Если не поставлена галочка "Изменить" в "Тариф" то Edit 1-5 становятся др. цвета-неактивными

Form4.Edit1.Color:=cl3DLight;.Edit2.Color:=cl3DLight;.Edit3.Color:=cl3DLight;.Edit4.Color:=cl3DLight;.Edit5.Color:=cl3DLight;

//Присвоение Edit`у значения.ADOTable1.First;.Edit1.Text:=Form4.ADOTable1.FieldByName('Цена').Value;

.ADOTable1.Next;.Edit2.Text:=Form4.ADOTable1.FieldByName('Цена').Value;

.ADOTable1.Next;.Edit3.Text:=Form4.ADOTable1.FieldByName('Цена').Value;

.ADOTable1.Next;.Edit4.Text:=Form4.ADOTable1.FieldByName('Цена').Value;

begin.Edit1.Enabled:=True;.Edit2.Enabled:=True;.Edit3.Enabled:=True;.Edit4.Enabled:=True;.Edit5.Enabled:=True;

//Если поставлена галочка "Изменить" в "Тариф" то Edit 1-5 становятся др. цвета-активными

Form4.Edit1.Color:=clWindow;.Edit2.Color:=clWindow;.Edit3.Color:=clWindow;.Edit4.Color:=clWindow;.Edit5.Color:=clWindow;;;

TForm4.BitBtn1Click(Sender: TObject);.ADOTable1.First;.ADOTable1.Edit;.ADOTable1.FieldByName('Цена').Value:=Form4.Edit1.Text;.ADOTable1.Post;

.ADOTable1.Next;.ADOTable1.Edit;.ADOTable1.FieldByName('Цена').Value:=Form4.Edit2.Text;.ADOTable1.Post;

.ADOTable1.Next;.ADOTable1.Edit;.ADOTable1.FieldByName('Цена').Value:=Form4.Edit3.Text;.ADOTable1.Post;

.ADOTable1.Next;.ADOTable1.Edit;.ADOTable1.FieldByName('Цена').Value:=Form4.Edit4.Text;.ADOTable1.Post;

.ADOTable1.Next;.ADOTable1.Edit;.ADOTable1.FieldByName('Цена').Value:=Form4.Edit5.Text;.ADOTable1.Post;

;TForm4.N2Click(Sender: TObject);.Visible:=False;.Visible:=True;;

.

Unit5;

, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, Grids, DBGrids, DB, ADODB, Menus, StdCtrls, Buttons, ExtCtrls;

= class(TForm): TADOConnection;: TADOTable;: TDataSource;: TDBGrid;: TMainMenu;: TMenuItem;: TMenuItem;: TGroupBox;: TBitBtn;: TBitBtn;: TBitBtn;: TBitBtn;: TRadioGroup;: TEdit;: TGroupBox;: TBitBtn;: TEdit;N2Click(Sender: TObject);BitBtn1Click(Sender: TObject);BitBtn2Click(Sender: TObject);BitBtn3Click(Sender: TObject);BitBtn4Click(Sender: TObject);RadioGroup1Click(Sender: TObject);ADOTable1FilterRecord(DataSet: TDataSet;Accept: Boolean);BitBtn5Click(Sender: TObject);

{ Private declarations }

{ Public declarations };

: TForm5;:string;

Unit1;

{$R *.dfm}

TForm5.N2Click(Sender: TObject);.Visible:=False;.Visible:=True;;

TForm5.BitBtn1Click(Sender: TObject);.First;;

TForm5.BitBtn2Click(Sender: TObject);.Prior;;

TForm5.BitBtn3Click(Sender: TObject);.Next;;

TForm5.BitBtn4Click(Sender: TObject);.Last;;

TForm5.RadioGroup1Click(Sender: TObject);.ADOTable1.Filtered:=false;radiogroup1.ItemIndex of

:begin:='Обоснование льготы';.ADOTable1.Filtered:=true;;

:begin:='Процент скидки' ;.ADOTable1.Filtered:=true;;;;TForm5.ADOTable1FilterRecord(DataSet: TDataSet;Accept: Boolean);RadioGroup1.ItemIndex of

:Accept:=DataSet[po]=Edit1.Text;

:Accept:=DataSet[po]=Edit1.Text;;;TForm5.BitBtn5Click(Sender: TObject);.ADOTable1.Locate('Код клиента',Edit2.Text,[loCaseInsensitive,loPartialKey]);;

.

Unit6;

, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, DB, ADODB, QuickRpt, QRCtrls, ExtCtrls;

= class(TForm): TQuickRep;: TQRBand;: TQRBand;: TQRSysData;: TQRSubDetail;: TADOTable;: TDataSource;: TQRShape;: TQRDBText;: TQRShape;: TQRShape;: TQRShape;: TQRShape;: TQRShape;: TQRDBText;: TQRDBText;: TQRDBText;: TQRDBText;: TQRDBText;: TQRBand;: TQRLabel;: TQRSysData;: TQRShape;: TQRShape;: TQRShape;: TQRShape;: TQRShape;: TQRLabel;: TQRLabel;: TQRLabel;: TQRLabel;: TQRLabel;: TQRShape;: TQRLabel;

{ Private declarations }

{ Public declarations };

: TForm6;

{$R *.dfm}

.

Unit7;

, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, QuickRpt, QRCtrls, ExtCtrls, DB, ADODB;

= class(TForm): TQuickRep;: TQRBand;: TQRBand;: TQRSysData;: TQRSubDetail;: TDataSource;: TADOTable;: TQRDBText;: TQRShape;: TQRBand;: TQRSysData;: TQRLabel;: TQRShape;: TQRShape;: TQRShape;: TQRShape;: TQRShape;: TQRLabel;: TQRLabel;: TQRLabel;: TQRLabel;: TQRLabel;: TQRShape;: TQRShape;: TQRShape;: TQRShape;: TQRLabel;: TQRLabel;: TQRLabel;: TQRLabel;: TQRShape;: TQRShape;: TQRLabel;: TQRLabel;: TQRShape;: TQRShape;: TQRShape;: TQRShape;: TQRShape;: TQRShape;: TQRShape;: TQRShape;: TQRShape;: TQRDBText;: TQRDBText;: TQRDBText;: TQRDBText;: TQRDBText;: TQRDBText;: TQRDBText;: TQRDBText;: TQRDBText;

{ Private declarations }

{ Public declarations };

: TForm7;

{$R *.dfm}

.

Unit8;

, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, DB, Grids, DBGrids, ADODB, StdCtrls, Buttons, jpeg, ExtCtrls,;

= class(TForm): TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TBitBtn;: TEdit;: TEdit;: TEdit;: TEdit;: TEdit;BitBtn1Click(Sender: TObject);

{ Private declarations }

{ Public declarations };

: TForm8;

Unit2;

{$R *.dfm}

TForm8.BitBtn1Click(Sender: TObject);ppp:integer;.ADOTable1.Last; //перемещ. курсор на последнюю позицию:=Form2.ADOTable1.RecNo+1;.ADOTable1.Insert;PPP=0 then ppp:=1;.ADOTable1.Insert;.ADOTable1.FieldByName('Код клиента').Value:=Edit1.Text;.ADOTable1.FieldByName('Фамилия').Value:=Edit2.Text;.ADOTable1.FieldByName('Имя').Value:=Edit3.Text;.ADOTable1.FieldByName('Отчество').Value:=Edit4.Text;.ADOTable1.FieldByName('Год рождения').Value:=Edit5.Text;.ADOTable1.FieldByName('Возраст').Value:=IntToStr(2014-StrToInt(Form8.Edit5.Text));.ADOTable1.Post;.Close;.Edit2.Text:='';.Edit3.Text:='';.Edit4.Text:='';.Edit5.Text:='';;

. unit Unit8;

, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, DB, Grids, DBGrids, ADODB, StdCtrls, Buttons, jpeg, ExtCtrls,;

= class(TForm): TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TBitBtn;: TEdit;: TEdit;: TEdit;: TEdit;: TEdit;BitBtn1Click(Sender: TObject);

{ Private declarations }

{ Public declarations };

: TForm8;

Unit2;

{$R *.dfm}

TForm8.BitBtn1Click(Sender: TObject);ppp:integer;.ADOTable1.Last; //перемещ. курсор на последнюю позицию:=Form2.ADOTable1.RecNo+1;.ADOTable1.Insert;PPP=0 then ppp:=1;.ADOTable1.Insert;.ADOTable1.FieldByName('Код клиента').Value:=Edit1.Text;.ADOTable1.FieldByName('Фамилия').Value:=Edit2.Text;.ADOTable1.FieldByName('Имя').Value:=Edit3.Text;.ADOTable1.FieldByName('Отчество').Value:=Edit4.Text;.ADOTable1.FieldByName('Год рождения').Value:=Edit5.Text;.ADOTable1.FieldByName('Возраст').Value:=IntToStr(2014-StrToInt(Form8.Edit5.Text));.ADOTable1.Post;.Close;.Edit2.Text:='';.Edit3.Text:='';.Edit4.Text:='';.Edit5.Text:='';;

.

Unit9;

, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, DB, ADODB, QRCtrls, QuickRpt, ExtCtrls;

= class(TForm): TADOTable;: TDataSource;: TQuickRep;: TQRSubDetail;: TQRDBText;: TQRDBText;: TQRDBText;: TQRDBText;: TQRDBText;: TQRDBText;: TQRDBText;: TQRDBText;: TQRDBText;: TQRBand;: TQRLabel;: TQRLabel;: TQRLabel;: TQRLabel;: TQRLabel;: TQRLabel;: TQRLabel;: TQRLabel;: TQRLabel;: TQRLabel;: TQRLabel;: TQRLabel;: TQRSysData;: TQRLabel;: TQRLabel;

{ Private declarations }

{ Public declarations };

: TForm9;


{$R *.dfm}

.

Похожие работы на - Автоматизация работы аквапарка

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!