Автоматизация рабочего места менеджера в салоне красоты
Знакомство с основными особенностями разработки программного приложения, позволяющее автоматизировать рабочее место менеджера в салоне красоты. Общая характеристика процедуры регистрирования новых клиентов. Анализ преимуществ среды Borland Delphi 7.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 18.07.2014 |
Размер файла | 3,7 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
"Автоматизация рабочего места менеджера в салоне красоты"
программный рабочий место менеджер
Введение
Менеджер - наемный управляющий компанией, фирмой, банком, структурным подразделением, направлением, обладающий в пределах своей компетенции, исполнительной властью. Менеджер занимается планированием, организацией, управлением и контролированием в компании или подразделении.
В должностные инструкции менеджера в салоне красоты входит:
1.Составление графика работы мастеров салона
2.Регистрация клиентов
3.Учет средств на расходные материалы, услуги
С развитием компьютерной техники появилась возможность автоматизировать работу менеджера. Автоматизация позволит сэкономить рабочее время по формированию учетных записей, повысит качество работы менеджера и увеличит количество оказываемых услуг, что будет способствовать процветанию фирмы.
1. Постановка задачи
Задача дипломного проекта разработать программное приложение, позволяющее автоматизировать рабочее место менеджера в салоне красоты, который ведет учет косметических средств, производит запись клиентов, составляет расписание работы сотрудников и оформляет необходимые отчетные документы. Разрабатываемое программное приложение должно отвечать следующим требованиям:
1.Находящаяся информация в программе (о клиентах, мастерах, косметических средствах, заявках) должна быть краткой и давать комплексную информацию об услугах, косметических средствах и клиентах.
2.Сформированные отчеты (по клиентам, заявкам и по косметическим средствам) должны выводиться на печать, осуществлять поиск по фамилии, дате.
3.Должна присутствовать процедура регистрирования новых клиентов.
4.Должен вестись учет косметических средств и определен график работы каждого из сотрудников.
2. Формализация
Для построения необходимо провести формализацию задачи, являющуюся необходимым этапом разработки задачи и заключающуюся в построении структуры таблиц для хранения информации, схемы их взаимосвязей и описания алгоритмов обработки.
Рис.
Разработка проекта реализации задачи выполняется в несколько этапов и начинается с анализа той информации, которая является выходной (формы и отчеты для Borland Delphi 7). Только после выяснения структуры и состава этой информации можно сделать вывод о структуре и составе таблиц данных. Необходимым этапом формализации задачи является нормализация базы данных, которая, по сути, представляет собой процесс оптимизации хранения и использования информации в таблицах.
Наиболее часто используется приведение к третьей нормальной форме (3NF). В результате устраняется избыточность данных и упрощается процесс изменения структуры БД.
Сначала производится приведение к первой нормальной форме(1NF)- каждой таблице назначается первичный ключ, обеспечивающий уникальность каждой записи. Здесь же удаляются все повторяющиеся группы (точнее создается новая таблица для повторяющихся групп).
В процессе приведения ко второй нормальной форме производится устранение избыточности данных - любое поле в таблице, которое является избыточным или всегда остается неизменным, основанным на значении другого поля, необходимо перенести в другую таблицу.
И, наконец, в 3NF все поля каждой таблицы непосредственно связаны с полем первичного ключа и не зависят от других полей. На практике это делается следующим образом - любое поле не связанное с полем первичного ключа, необходимо перенести в отдельную таблицу.
При разработке структуры данных рассматриваемой задачи изначально подразумевалось следование 3NF. В Access существует мастер анализа таблиц, позволяющий еще более упростить этот процесс.
На следующем этапе уточняется структура полей в таблицах, и определяются правила ввода. В Borland Delphi 7 проектируем входные и выходные формы и отчеты. На заключительном этапе создается меню и различные интерфейсные промежуточные формы. Затем, в процессе отладки и доработки, возможен возврат на любой этап процесса разработки.
В следующих разделах пояснительной записки все объекты задачи рассматриваются более подробно.
3. Описание среды программирования
Программное обеспечение «Автоматизация рабочего места менеджера в салоне красоты» разработан на СУБД Microsoft Access XP Borland Delphi 7.
Access XP входит в состав Microsoft Office XP, и как другие компоненты работает в среде Windows 2000 и выше.
Практический минимум, предъявляемым Access XP к персональному компьютеру, является Pentium 2 и 64 Мб при работе под Windows 2000. При стандартной установке набора приложений: Word, Excel, Outlook, Power Point, Access, FrontPage требуется примерно 250 Мб на жестком диске. Рекомендуется монитор SVGA, возможно использование VGA.
Microsoft Access - это функционально полная реляционная СУБД. В ней предусмотрены все необходимые инструментальные средства для определения и обработки данных, а также для управления ими при работе с большими объемами информации. Что касается легкости использования, то Microsoft Access совершил здесь настоящий переворот, и многие для создания своих собственных баз данных и приложений обращаются именно к нему.
Microsoft Access предоставляет максимальную свободу в задании типа ваших данных (текст, числовые данные, даты, время, денежные значения, рисунки, звук, документы, электронные таблицы). Вы можете задать также форматы хранения (длина строки, точность представления чисел и даты времени) и предоставления этих данных при выводе на экран или печать. Для уверенности, что в базе данных хранятся только корректные значения, можно задать условия на значения различной степени сложности.
В Access вы можете при помощи макросов или Access Basic осуществлять динамический обмен данными с другими приложениями. OLE позволяет установить связь с объектами другого приложения или внедрить какие-либо объекты в базу данных Access. Такими объектами могут быть картинки, диаграммы, электронные таблицы или документы из других, поддерживающих OLE приложений Windows.
Microsoft Access может работать с большим числом самых разнообразных форматов данных, включая файловые структуры других СУБД. СУБД позволяет работать с данными, применяя различные способы. Например, вы можете выполнить поиск информации в отдельной таблице или создать запрос со сложным поиском по нескольким связанным между собой таблицам или файлам. С помощью одной единственной команды можно обновить содержание отдельного поля или нескольких записей. Для чтения и корректировки данных, вы можете создать процедуры, использующие функции СУБД. У многих систем имеются развитые возможности для ввода данных и генерации отчетов.
В Microsoft Access для обработки данных ваших таблиц используется мощный язык SQL (Structured Query Language - Структурированный язык запросов). Используя, вы можете выделить из одной или нескольких таблиц необходимую для решения конкретной задачи информацию. Access значительно упрощает задачу обработки данных.
Для написания программы была выбрана среда визуального программирования Borland Delphi 7.
Синтаксис Borland Delphi 7 основан на языке программирования Object Pascal. Borland Delphi 7 полностью поддерживает ООП (объектно-ориентированное программирование), что значительно расширяет возможности среды.
Еще одним немаловажным достоинством выбранной среды Borland Delphi 7 является то, что Borland Delphi 7 во всем мире считается одним из самых простых сред программирования, и , в отличие от всех широко распространенных сред программирования, является строго типизированным, что позволяет свести количество ошибок практически к нулю (за исключением логических ошибок алгоритма).
Borland Delphi 7 предоставляет широкий спектр средств по управлению базами данных, имеющих даже различные технологии структуры и поддержки.
Для разработки базы данных в данной программе выбор пал на технологию ADO, корпорации Microsoft, за свои широкие возможности и простоту использования.
3.1 Требование к техническому обеспечению
Требования к техническому обеспечению определяются требованиями к операционной системе Windows 2000 и выше.
3.2 Требования к программному обеспечению
Для нормальной работы программы необходима операционная система WINDOWS 2000 и выше и установленный Microsoft Access 2003.
4. Методика разработки проекта
4.1 Алгоритмизация задачи
4.1.1 Описание алгоритма
В ходе разработки программного продукта были созданы следующие таблицы:
Таблица № 1. Клиенты
Имя поля |
Тип данных |
Формат поля/размер поля |
Обязательное поле |
|
ID Клиента |
Счетчик |
Длинное целое |
Да |
|
Фамилия |
Текстовый |
50 |
Нет |
|
Имя |
Текстовый |
50 |
Нет |
|
Отчество |
Текстовый |
50 |
Нет |
|
Телефон |
Числовой |
Длинное целое |
Нет |
Таблица № 2. Парикмахеры
Имя поля |
Тип данных |
Формат поля/размер поля |
Обязательное поле |
|
ID Парикмахера |
Счетчик |
Длинное целое |
Да |
|
Фамилия |
Текстовый |
50 |
Нет |
|
Имя |
Текстовый |
50 |
Нет |
|
Отчество |
Текстовый |
50 |
Нет |
|
Телефон |
Числовой |
Длинное целое |
Нет |
|
Дата рождения |
Дата/Время |
Краткий формат времени |
Нет |
|
ID Средства |
Числовой |
Длинное целое |
Нет |
Таблица № 3. Расписание
Имя поля |
Тип данных |
Формат поля/размер поля |
Обязательное поле |
|
ID Расписания |
Счетчик |
Длинное целое |
Да |
|
ID Парикмахера |
Числовой |
Длинное целое |
Нет |
|
Дата |
Дата/время |
Краткий формат времени |
Нет |
|
Время |
Текстовый |
50 |
Нет |
Таблица № 4. Средства
Имя поля |
Тип данных |
Формат поля/размер поля |
Обязательное поле |
|
ID Средства |
Счетчик |
Длинное целое |
Да |
|
Название |
Текстовый |
50 |
Нет |
|
Цена |
Числовой |
Длинное целое |
Нет |
|
Количество |
Числовой |
Длинное целое |
Нет |
|
Наличие |
Текстовый |
50 |
Нет |
Таблица № 5. Услуги
Имя поля |
Тип данных |
Формат поля/размер поля |
Обязательное поле |
|
ID Услуги |
Счетчик |
Длинное целое |
Да |
|
Наименование услуг |
Текстовый |
50 |
Нет |
|
Стоимость |
Денежный |
Денежный |
Нет |
Таблица №6. Заявки
Имя поля |
Тип данных |
Формат поля/размер поля |
Обязательное поле |
|
ID Заявки |
Счетчик |
Длинное целое |
Да |
|
ID Клиента |
Числовой |
Длинное целое |
Нет |
|
ID Парикмахера |
Числовой |
Длинное целое |
Нет |
|
ID Услуги |
Числовой |
Длинное целое |
Нет |
|
Дата записи |
Дата/время |
Краткий формат времени |
Нет |
|
Время |
Дата/время |
Краткий формат времени |
Нет |
|
Дата выполнения |
Дата/время |
Краткий формат времени |
Нет |
4.1.2 Структурная схема
Схема
4.2 Программирование
В соответствии с блок-схемой, приведенной выше в пункте 4.1.2. «Блок схема», в представленной программе разработаны программные модули на Borland Delphi 7.А также запросы Microsoft Access 2003. Тексты программных модулей и запросов приведены в пункте V. «Приложение».
4.3 Аномалии и защитное программирование
В ходе выполнения программы возможно появление на экране сообщений:
1. Сообщение «Ошибка чтения базы данных».
Ошибка возникает при невозможном чтении файла базы данных.
При этом оператор должен:
1. Проверить наличие файла db.mdb. Возможно, файл не существует или находится в другой папке, нежели программа.
2. Возможно, причиной ошибки послужила неисправность носителя.
2. Сообщение «Несоответствие дат».
Ошибка возникает при генерации отчета из-за неправильно введенных дат.
При этом оператор должен:
- Проверить правильность написания дат.
4.4 Тестирование и отладка
Для написания приложения на Borland Delphi я пользовалась движком отладки Borland Debugger Engine. Он имеет некоторые средства отладки такие как:
Ш Контрольная точка остановки программы (Toggle Breakpoint). Программа выполняется в нормальном режиме и прерывает свое выполнение на точках остановки программы.
Ш Запуск программы до команды, выделенной курсором (Run to Cursor). Программа выполняется до команды, выделенной курсором в исходном коде. Дальнейшее выполнение программы осуществляется командами Step Over и Trace Into.
Ш Переход выполнения программы по адресу (Go to Address). Программа выполняется до команды по заданному адресу. Далее можно выполнять программу по одной команде на низком уровне.
Ш Окно слежения за переменными, записями и массивами (Inspect window).
Ш Окно слежения за изменениями значений переменных (Evaluate/Modify window).
Ш Окно слежения за выполнением на низком уровне (CPU window).
5. Анализ результатов решения
В соответствии с пунктом 4.4 тестирование и отладка производились непосредственно во время разработки проекта. После завершения работы над программой было еще раз произведено полное тестирование всей программы.
Получившееся в результате программное обеспечение удовлетворяет всем программным требованиям, полностью работоспособно, не требует принципиальных доработок, и готово к эксплуатации.
6. Инструкция пользователю
Общие сведения о программе
Программа служит для эффективного и быстрого оформления записи клиентов, на какую либо услугу. Программа позволяет значительно повысить скорость работы менеджера: составление графика работы мастеров салона, регистрация клиентов, учет средств на расходные материалы и услуги. Внедрение программы поможет существенно снизить нагрузку при обработке информации и оформлении необходимой документации.
Достоинства программы.
Удобство и простота в эксплуатации (минимальные навыки работы пользователя на ПК); соответствие форм документов самым последним законам РФ; небольшой объём занимаемой памяти. Сокращение времени, используемого сотрудником, для ввода данных и поисков по уже имеющимся данным.
Запуск программы.
Открытие программы осуществляется двойным нажатием левой клавиши на ярлык программы. После запуска программного обеспечения на экране появится главная форма:
Рис.
Описание главного меню программы.
«Меню»:
Рис.
Форма № 1. Клиенты.
Рис.
Эта форма содержит информацию о клиентах, посещающих салон красоты.
В этой форме расположены кнопки:
· Добавить - добавление новой записи;
· Сохранить - сохраняет записи;
· Удалить - удаление уже имеющейся записи;
· Отчет.
Форма № 2. Парикмахеры.
Рис.
В этой форме содержаться сведения о парикмахерах.
В этой форме расположены кнопки:
· Добавить - добавление новой записи;
· Сохранить - сохранение записи;
· Удалить - удаление уже имеющейся записи.
Форма № 3. Расписание
Рис.
Эта форма содержит сведения о графике работы сотрудников.
В этой форме расположены кнопки:
· Добавить - добавление новой записи;
· Сохранить - сохранение записи;
· Удалить - удаление уже имеющейся записи.
Форма № 4 Средства.
Рис.
Эта форма содержит сведения о косметических средствах.
В этой форме расположены кнопки:
· Добавить - добавление новой записи;
· Сохранить - сохранение записи;
· Удалить - удаление уже имеющейся записи;
· Отчет.
Форма № 5 Услуги.
Рис.
Эта форма содержит сведения об услугах, которые оказывает салон красоты.
В этой форме расположены кнопки:
· Добавить - добавление новой записи;
· Сохранить - сохранение записи;
· Удалить - удаление уже имеющейся записи.
Форма № 6 Заявки
Рис.
Эта форма содержит сведения о заявках.
В этой форме расположены кнопки:
· Добавить - добавление новой записи;
· Сохранить - сохранение записи;
· Удалить - удаление уже имеющейся записи;
· Отчет.
Меню «Помощь»
Рис.
Содержит справку по работе с программой и форму «О программе».
Рис.
Меню «Выход»
Рис.
Закрывает программу «Автоматизация рабочего места менеджера в салоне красоты».
II. Экономическая часть.
1. Расчет затрат на разработку.
Целью настоящей дипломной работы является разработка программного обеспечения, позволяющего:
* Автоматизировать рабочее место менеджера.
* Формировать отчетные документы
Данное программное обеспечение имеет перспективы практического применения менеджера в салоне красоты .
Для успешного внедрения программного продукта необходимо не только написать приложение «Автоматизация рабочего места менеджера в салоне красоты», но и доказать его рентабельность.
Полезность и окупаемость всех затрат при разработке необходимо соотнести с сэкономленными деньгами, временем и трудоемкостью, и рассчитать срок окупаемости этих затрат.
Для этого проведем ряд подсчетов. Начнем с анализа временных затрат на разработку программного продукта.
Таблица
Этап разработки |
Содержание работ |
Трудоёмкость ч. |
|
Постановка задачи |
Пред проектное обследование. Разработка, согласование и утверждение технико-экономического обоснования. |
16 |
|
Технический проект |
Уточнение структуры и формы представления входных и выходных данных. Разработка алгоритма решения задачи. Разработка структуры программы. Разработка плана мероприятий по внедрению ПП. Разработка пояснительной записки. Согласование и утверждение технического проекта. |
40 |
|
Рабочий проект |
Написание программы на языке программирования. Первичная отладка, тестирование. Разработка, согласование и утверждение порядка и методики испытаний, корректировка программы. |
80 |
|
Документация и внедрение. |
Разработка программной документации Подготовка к сдаче программы и программной документации |
28 |
|
ИТОГО: |
164 часа |
Подсчет затрат, которое понесло предприятие.
Коэффициент сложности задачи С характеризует относительную сложность программы по отношению к так называемой типовой задаче, реализующей стандартные методы решения, сложность которой принята равной единице
(величина с лежит в пределах от 0,5 до 1,5). Для программного продукта, включающего в себя автоматический поиск и подсчет необходимой информации , сложность задачи берем 0,7.
c = 0,7- коэффициент сложности программы.
Коэффициент коррекции программы p - увеличение объема работ за счет внесения изменений в алгоритм или программу по результатам уточнения постановок(меняется от 0,1 до 0,5). С учетом того, что при проектировании программы я достаточно хорошо представляла себе конечный результат ПП, возьмем коэффициент = 0,2
p = 0,2 - коэффициент коррекции программы в ходе разработки.
Коэффициент увеличения затрат труда - b, вследствие недостаточного описания задачи, в зависимости от сложности задачи принимается от 1 до 1,5, в связи с тем, что данная задача, не потребовала уточнения и больших доработок, примем b = 1,2.
Коэффициент квалификации разработчика k определяется в зависимости от стажа работы и составляет: для работающих до двух лет - 0,8; от двух до трех лет - 1,0; от трех до пяти лет - 1,1 ; от пяти до семи - 1,3 ; более семи лет -1,6. Поскольку стажа работы по специальности у меня нет, возьмем k = 0,8
В связи с коэффициентами заработной платы основная заработная плата разработчика программного продукта составит:
Зпосн=Зп * c * (p+1) * b * k
Зпосн=8000*0,7*(0,2+1)*1,2*0,8=6451.2 руб.\ в месяц
Расчет страховых взносов = Зпосн * (34%)= 6451.2 *0.34 = 2193
Общая заработная плата за весь перид разработки программного продукта составит:
Зобщ=(6451.2 руб. + 2193руб.)*164ч./(22дн.*8ч.)=8054 руб.
Подсчет стоимости эксплуатации вычислительной техники.
Содержание и эксплуатация вычислительного комплекса считается следующим образом:
Свт = См-ч *Tотл ,
где См-ч - стоимость машино-часа.
Tотл - это число часов отладки, и оно равно = 148 часов.
Стоимость машино-часа рассчитывается, как сумма составляющих:
См-ч=(Сэл_эн_в_год+А +З)/Фввт
где Сэл_эн_в_год - стоимость электроэнергии в год,
А - стоимость амортизации за год,
З - затраты на ремонт за год,
Фввт - действительный фонд времени работы вычислительного комплекса.
Стоимость 1 кВт/час электроэнергии составляет: 4 руб.
Один компьютер потребляет 300 Вт в час.
За год отчисления за электроэнергию, потребляемую одной ЭВМ, составляет:
8 ч. * 22 дня * 12 мес. * 0,3 кВт/ч. *4 руб. = 2534 руб.
Программный продукт писался на компьютере, который является собственностью налоговой инспекции. Т.к. до этого он уже использовался по назначению в течение 3-х лет, то необходимо учесть затраты на амортизацию так как срок полезного использования компьютера составляет 4 года.
Стоимость компьютера составляет 24000 руб. сумма амортизационных отчислений: 24000 руб. / 3 года = 8000 руб.
Фввт=Фн -Фп,
Где Фн - номинальный фонд времени работы ПК в год,
Фп -время профилактики =5%.
Фввт=Фн -Фп= (8ч. * 22 дн. * 12 мес.) - (8ч. * 22 дн. * 12 мес. * 0,05)=2112-106=2006 ч.
Стоимость ремонта равна: 24000 * 5% = 1200 руб.
Подсчитаем все затраты за год: 2534+6000+1200=9734 руб.
Стоимость одного машинного часа равна:
Затраты за год/Фввт= См-ч = 2 534,4 +8000+1 200 = 5.8 руб. 2006
Содержание и эксплуатация вычислительного комплекса составляет:
5,8руб/ч * 172 ч = 997,6 руб.
Для эксплуатации данный программный продукт не требует покупки нового ПК и привлечения дополнительных сотрудников.
№ Наименование статьи расходов Затраты, руб.
1 Общая заработная плата 8054
2 Страховые взносы 2193
3 Содержание и эксплуатация вычислительного комплекса. 997,6
ИТОГО: 11244,6 рублей
Экономический эффект от внедрения программного продукта
Экономический эффект - это прежде всего снижение затрат типографии за счет:
* снижения времени, затрачиваемого сотрудниками отдела на поиск информации в базе данных;
* высвобождения времени на выполнение других заданий, следовательно, достигая этим повышения эффективности работы отдела.
Для того чтобы применение и разработка данного программного продукта имело смысл, необходимо доказать его экономическую целесообразность.
Экономический эффект моего дипломного проекта заключается в экономии рабочего времени, затрачиваемого сотрудниками отдела на поиск информации в базе данных.
Для ведения расчетов введем следующие обозначения:
Т1- время, затрачиваемое сотрудниками швейного предприятия на поиск информации;
Т2- время, затрачиваемое на поиск после внедрения программного продукта.
До внедрения программы на то чтобы найти нужную информацию о заказе, рассчитать сумму за заказ, в день сотрудник отдела в среднем тратил около 5 мин. на 1 заказчика:
Т1 = 5мин. или 0,08часа.
После внедрения программы время сократится, и будет составлять 3 мин., за счет уменьшения времени выполнения операций и простоты использования программы:
Т2 = 3мин. или 0,05ч.
Сокращение времени достигается при помощи программного продукта за счет автоматизации ввода необходимой информации, автоматического поиска и подсчета данных.
В среднем за 1 день сотрудник салона сотовой связи выполняет 20 операций или 440 операций в месяц (20 операций в день * 22 рабочих дней).
Количество операций за год равно:
20 операций * 22 дней * 12 мес. = 5280 операций за год.
Теперь подсчитаем, сколько времени тратилось в год до внедрения программы:
5280 операций * 0,08 ч. = 422,4 ч. в год
5280 операций * 0,05 ч. = 264 ч. в год затрачивается на внесение информации после внедрения программного продукта.
?Т = Т1 - Т2 = 422,4ч. - 264ч. = 158,4ч. - экономия времени
* Сокращение трудоемкости 264 * 100% / 422,4 = 62,5%
* Заработная плата сотрудника отдела составляет 6000 рублей в месяц.
* Стоимость одного часа работы составляет:
6000/(8ч*22 дня)=34,1 руб./час
Расчет страховых взносов
(6000*0,34)/ (8ч*22 дня)=11,6 руб./час
* Общая стоимость одного часа работы, включая сумму на страховые взносы - Рсумм:
34,1+11,6=45,7 руб./час
Рассчитаем экономическую эффективность от внедрения программного продукта за год:
Эк.Эф.год.= ? Тгод * Рсумм =158,4*45,7 руб./ч=7238.88 руб./год
Итак, общая экономическая эффективность при внедрении программного продукта в салон красоты составит 7238.88 рублей в год.
Период окупаемости проекта - Т:
Т = суммарные затраты на написание программного продукта / Эк.Эффективности
Т=11244,6/7238,88 руб. = 1,5года.
Следовательно, если салон красоты захочет установить у себя данную программу, он окупится приблизительно за 1,5 года.
III. Заключение.
Разработанное программное приложение «Автоматизация рабочего места менеджера в салоне красоты» которое позволяет эффективно производить учет наличия средств, осуществлять контроль за расписанием работ парикмахеров, быстро находить необходимую информацию по любому виду услуг и его прейскуранту.
Так же программа позволяет осуществлять ввод и хранение данных по клиентам, услугам и средствам, производить поиск по заданным критериям, формировать и выводить на печать отчеты и формы.
Была произведена экономическая оценка эффективности внедрения программного продукта, которая показала,
Срок окупаемости: 1,5 года.
Разработанное программное обеспечение соответствует п.1. «Постановка задачи»
Литература
1. Понамарев В. Базы данных в Delphi 7 - СПб.: Питер, 207.
2. Жуков А. Изучаем Delphi. - СПб.: Питер, 2009.
3. Электронный учебник : http://shiva16.narod.ru/
4. Попов В.Б. Delphi для школьников - Издательство финансы и статистика-2010г.
Приложение
Приложение 1
Главная форма
procedure TForm1.N1112Click(Sender: TObject);
begin
form2.show;
end;
procedure TForm1.N1Click(Sender: TObject);
begin
form3.show;
end;
procedure TForm1.N2Click(Sender: TObject);
begin
form4.show;
end;
procedure TForm1.N3Click(Sender: TObject);
begin
form5.show;
end;
procedure TForm1.N4Click(Sender: TObject);
begin
Form6.show;
end;
procedure TForm1.N5Click(Sender: TObject);
begin
Form7.show
end;
procedure TForm1.N8Click(Sender: TObject);
begin
Close;
end;
procedure TForm1.N10Click(Sender: TObject);
begin
Form8.show;
end;
procedure TForm1.N7Click(Sender: TObject);
begin
WinExec('hh.exe Справка.chm',SW_SHOW);
end;
end.
Форма Клиенты. Приложение 2
var
Form2: TForm2;
WordApp, Doc, app, book, sheet, Excel: variant;
implementation
uses ComObj;
{$R *.dfm}
procedure TForm2.Button1Click(Sender: TObject);
begin
ADOTable1.Insert;
end;
procedure TForm2.Button2Click(Sender: TObject);
begin
ADOTable1.Refresh;
end;
procedure TForm2.Button3Click(Sender: TObject);
begin
if MessageDlg('Вы уверены что хотите удалить эту запись?', mtConfirmation, mbOKCancel, 0) = mrOk
then ADOTable1.Delete;
end;
procedure TForm2.Button4Click(Sender: TObject);
var book,sheet,Excel:Variant;
i:integer;
CurDir:string;
begin
Excel:=CreateOleObject('Excel.Application');
book:=Excel.WorkBooks.Add;
book.Worksheets[3].Delete;
book.Worksheets[2].Delete;
book.Worksheets[1].Name:='Клиенты';
sheet:=book.Worksheets[1];
ADOTable1.First;
sheet.Range['D1']:='Клиенты';
sheet.Range['B6']:='IDКлиента';
sheet.Range['C6']:='Фамилия';
sheet.Range['d6']:='Имя';
sheet.Range['e6']:='Отчество';
sheet.Range['f6']:='Телефон';
//sheet.Range['g6']:='СерияПаспорта';
//sheet.Range['h6']:='НомерПаспорта';
//sheet.Range['A1:E1'].Select;
sheet.Range['b6:h6'].Borders[8].LineStyle:=1;
sheet.Range['B6:h6'].Borders[8].Weight:=-4138;
sheet.Range['B6:h6'].Borders[8].ColorIndex:=-4105;
sheet.Range['B6:h6'].Borders[9].LineStyle:=1;
sheet.Range['B6:h6'].Borders[9].Weight:=-4138;
sheet.Range['B6:h6'].Borders[9].ColorIndex:=-4105;
sheet.Range['B6:h6'].Borders[10].LineStyle:=1;
sheet.Range['B6:h6'].Borders[10].Weight:=-4138;
sheet.Range['B6:h6'].Borders[10].ColorIndex:=-4105;
sheet.Range['B6:h6'].Borders[11].LineStyle:=1;
sheet.Range['B6:h6'].Borders[11].Weight:=-4138;
sheet.Range['B6:h6'].Borders[11].ColorIndex:=-4105;
sheet.Range['B6:h6'].Borders[11].LineStyle:=1;
sheet.Range['B6:h6'].Borders[11].Weight:=-4138;
Sheet.Columns['B:B'].columnWidth:=10;
Sheet.Columns['C:C'].columnWidth:=30;
Sheet.Columns['D:D'].columnWidth:=20;
Sheet.Columns['E:E'].columnWidth:=20;
Sheet.Columns['F:F'].columnWidth:=15;
Sheet.Columns['g:g'].columnWidth:=20;
Sheet.Columns['h:h'].columnWidth:=20;
for i:=1 to ADOTable1.RecordCount do
begin
sheet.Cells[i+5,1].Borders[10].LineStyle:=1;
sheet.Cells[i+5,1].Borders[10].Weight:=-4138;
sheet.Cells[i+5,1].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,1].Borders[10].LineStyle:=1;
sheet.Cells[i+6,1].Borders[10].Weight:=-4138;
sheet.Cells[i+6,1].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,2].Borders[10].LineStyle:=1;
sheet.Cells[i+6,2].Borders[10].Weight:=-4138;
sheet.Cells[i+6,2].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,3].Borders[10].LineStyle:=1;
sheet.Cells[i+6,3].Borders[10].Weight:=-4138;
sheet.Cells[i+6,3].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,4].Borders[10].LineStyle:=1;
sheet.Cells[i+6,4].Borders[10].Weight:=-4138;
sheet.Cells[i+6,4].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,5].Borders[10].LineStyle:=1;
sheet.Cells[i+6,5].Borders[10].Weight:=-4138;
sheet.Cells[i+6,5].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,6].Borders[10].LineStyle:=1;
sheet.Cells[i+6,6].Borders[10].Weight:=-4138;
sheet.Cells[i+6,6].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,2].Borders[8].LineStyle:=1;
sheet.Cells[i+6,2].Borders[8].Weight:=-4138;
sheet.Cells[i+6,2].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,3].Borders[8].LineStyle:=1;
sheet.Cells[i+6,3].Borders[8].Weight:=-4138;
sheet.Cells[i+6,3].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,4].Borders[8].LineStyle:=1;
sheet.Cells[i+6,4].Borders[8].Weight:=-4138;
sheet.Cells[i+6,4].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,5].Borders[8].LineStyle:=1;
sheet.Cells[i+6,5].Borders[8].Weight:=-4138;
sheet.Cells[i+6,5].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,6].Borders[8].LineStyle:=1;
sheet.Cells[i+6,6].Borders[8].Weight:=-4138;
sheet.Cells[i+6,6].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,7].Borders[8].LineStyle:=1;
sheet.Cells[i+6,7].Borders[8].Weight:=-4138;
sheet.Cells[i+6,7].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,7].Borders[10].LineStyle:=1;
sheet.Cells[i+6,7].Borders[10].Weight:=-4138;
sheet.Cells[i+6,7].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,8].Borders[8].LineStyle:=1;
sheet.Cells[i+6,8].Borders[8].Weight:=-4138;
sheet.Cells[i+6,8].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,8].Borders[10].LineStyle:=1;
sheet.Cells[i+6,8].Borders[10].Weight:=-4138;
sheet.Cells[i+6,8].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,2]:=ADOTable1.FieldByName('ID_Klienti').AsString;
sheet.Cells[i+6,3]:=ADOTable1.FieldByName('Familiya').AsString;
sheet.Cells[i+6,4]:=ADOTable1.FieldByName('Imya').AsString;
sheet.Cells[i+6,5]:=ADOTable1.FieldByName('Otchestvo').AsString;
sheet.Cells[i+6,6]:=ADOTable1.FieldByName('Telefon').AsString;
//sheet.Cells[i+6,7]:=ADOTable1.FieldByName('СерияПаспорта').AsString;
//sheet.Cells[i+6,8]:=ADOTable1.FieldByName('НомерПаспорта').AsString;
ADOTable1.Next;
end;
for i:=2 to 8do
begin
sheet.Cells[ADOTable1.RecordCount+6,i].Borders[9].LineStyle:=1;
sheet.Cells[ADOTable1.RecordCount+6,i].Borders[9].Weight:=-4138;
sheet.Cells[ADOTable1.RecordCount+6,i].Borders[9].ColorIndex:=-4105;
end;
CurDir:=GetCurrentDir;
Excel.DisplayAlerts:=false;
book.SaveAs(CurDir+'Клиенты.xls');
Excel.Visible:=true;
end;
procedure TForm2.Button5Click(Sender: TObject);
Begin;
Excel := CreateOleObject('Excel.Application');
Excel.Visible := True;
Excel.Workbooks.Open('C:\Клиент.xls');
Excel.ActiveSheet.Range['A7'].Value:= DBEdit1.Text;
Excel.ActiveSheet.Range['b7'].Value:= DBEdit2.Text;
Excel.ActiveSheet.Range['c7'].Value:= DBEdit3.Text;
Excel.ActiveSheet.Range['d7'].Value:= DBEdit4.Text;
Excel.ActiveSheet.Range['e7'].Value:= dbEdit5.Text;
end;
end.
Форма Парикмахеры. Приложение 3.
procedure TForm3.Button1Click(Sender: TObject);
begin
ADOTable1.Insert;
end;
procedure TForm3.Button2Click(Sender: TObject);
begin
ADOTable1.Refresh;
end;
procedure TForm3.Button3Click(Sender: TObject);
begin
if MessageDlg('Вы уверены что хотите удалить эту запись?', mtConfirmation, mbOKCancel, 0) = mrOk
then ADOTable1.Delete;
end;
end.
Форма Расписание Приложение 4.
procedure TForm4.Button1Click(Sender: TObject);
begin
ADOTable1.Insert;
end;
procedure TForm4.Button2Click(Sender: TObject);
begin
ADOTable1.Refresh;
end;
procedure TForm4.Button3Click(Sender: TObject);
begin
if MessageDlg('Вы уверены что хотите удалить эту запись?', mtConfirmation, mbOKCancel, 0) = mrOk
then ADOTable1.Delete;
end;
end.
Форма Средства. Приложение 5.
procedure TForm5.Button4Click(Sender: TObject);
var book,sheet,Excel:Variant;
i:integer;
CurDir:string;
begin
Excel:=CreateOleObject('Excel.Application');
book:=Excel.WorkBooks.Add;
book.Worksheets[3].Delete;
book.Worksheets[2].Delete;
book.Worksheets[1].Name:='Средств';
sheet:=book.Worksheets[1];
ADOTable1.First;
sheet.Range['D1']:='Средства';
sheet.Range['B6']:='IDСредства';
sheet.Range['C6']:='Название';
sheet.Range['d6']:='Цена';
sheet.Range['e6']:='Количество';
sheet.Range['f6']:='Наличие';
//sheet.Range['g6']:='СерияПаспорта';
//sheet.Range['h6']:='НомерПаспорта';
//sheet.Range['A1:E1'].Select;
sheet.Range['b6:h6'].Borders[8].LineStyle:=1;
sheet.Range['B6:h6'].Borders[8].Weight:=-4138;
sheet.Range['B6:h6'].Borders[8].ColorIndex:=-4105;
sheet.Range['B6:h6'].Borders[9].LineStyle:=1;
sheet.Range['B6:h6'].Borders[9].Weight:=-4138;
sheet.Range['B6:h6'].Borders[9].ColorIndex:=-4105;
sheet.Range['B6:h6'].Borders[10].LineStyle:=1;
sheet.Range['B6:h6'].Borders[10].Weight:=-4138;
sheet.Range['B6:h6'].Borders[10].ColorIndex:=-4105;
sheet.Range['B6:h6'].Borders[11].LineStyle:=1;
sheet.Range['B6:h6'].Borders[11].Weight:=-4138;
sheet.Range['B6:h6'].Borders[11].ColorIndex:=-4105;
sheet.Range['B6:h6'].Borders[11].LineStyle:=1;
sheet.Range['B6:h6'].Borders[11].Weight:=-4138;
Sheet.Columns['B:B'].columnWidth:=10;
Sheet.Columns['C:C'].columnWidth:=30;
Sheet.Columns['D:D'].columnWidth:=20;
Sheet.Columns['E:E'].columnWidth:=20;
Sheet.Columns['F:F'].columnWidth:=15;
Sheet.Columns['g:g'].columnWidth:=20;
Sheet.Columns['h:h'].columnWidth:=20;
for i:=1 to ADOTable1.RecordCount do
begin
sheet.Cells[i+5,1].Borders[10].LineStyle:=1;
sheet.Cells[i+5,1].Borders[10].Weight:=-4138;
sheet.Cells[i+5,1].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,1].Borders[10].LineStyle:=1;
sheet.Cells[i+6,1].Borders[10].Weight:=-4138;
sheet.Cells[i+6,1].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,2].Borders[10].LineStyle:=1;
sheet.Cells[i+6,2].Borders[10].Weight:=-4138;
sheet.Cells[i+6,2].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,3].Borders[10].LineStyle:=1;
sheet.Cells[i+6,3].Borders[10].Weight:=-4138;
sheet.Cells[i+6,3].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,4].Borders[10].LineStyle:=1;
sheet.Cells[i+6,4].Borders[10].Weight:=-4138;
sheet.Cells[i+6,4].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,5].Borders[10].LineStyle:=1;
sheet.Cells[i+6,5].Borders[10].Weight:=-4138;
sheet.Cells[i+6,5].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,6].Borders[10].LineStyle:=1;
sheet.Cells[i+6,6].Borders[10].Weight:=-4138;
sheet.Cells[i+6,6].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,2].Borders[8].LineStyle:=1;
sheet.Cells[i+6,2].Borders[8].Weight:=-4138;
sheet.Cells[i+6,2].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,3].Borders[8].LineStyle:=1;
sheet.Cells[i+6,3].Borders[8].Weight:=-4138;
sheet.Cells[i+6,3].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,4].Borders[8].LineStyle:=1;
sheet.Cells[i+6,4].Borders[8].Weight:=-4138;
sheet.Cells[i+6,4].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,5].Borders[8].LineStyle:=1;
sheet.Cells[i+6,5].Borders[8].Weight:=-4138;
sheet.Cells[i+6,5].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,6].Borders[8].LineStyle:=1;
sheet.Cells[i+6,6].Borders[8].Weight:=-4138;
sheet.Cells[i+6,6].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,7].Borders[8].LineStyle:=1;
sheet.Cells[i+6,7].Borders[8].Weight:=-4138;
sheet.Cells[i+6,7].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,7].Borders[10].LineStyle:=1;
sheet.Cells[i+6,7].Borders[10].Weight:=-4138;
sheet.Cells[i+6,7].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,8].Borders[8].LineStyle:=1;
sheet.Cells[i+6,8].Borders[8].Weight:=-4138;
sheet.Cells[i+6,8].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,8].Borders[10].LineStyle:=1;
sheet.Cells[i+6,8].Borders[10].Weight:=-4138;
sheet.Cells[i+6,8].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,2]:=ADOTable1.FieldByName('ID_Sredstva').AsString;
sheet.Cells[i+6,3]:=ADOTable1.FieldByName('Nazvanie').AsString;
sheet.Cells[i+6,4]:=ADOTable1.FieldByName('Cena').AsString;
sheet.Cells[i+6,5]:=ADOTable1.FieldByName('Kolichestvo').AsString;
sheet.Cells[i+6,6]:=ADOTable1.FieldByName('Nalichie').AsString;
//sheet.Cells[i+6,7]:=ADOTable1.FieldByName('СерияПаспорта').AsString;
//sheet.Cells[i+6,8]:=ADOTable1.FieldByName('НомерПаспорта').AsString;
ADOTable1.Next;
end;
for i:=2 to 8do
begin
sheet.Cells[ADOTable1.RecordCount+6,i].Borders[9].LineStyle:=1;
sheet.Cells[ADOTable1.RecordCount+6,i].Borders[9].Weight:=-4138;
sheet.Cells[ADOTable1.RecordCount+6,i].Borders[9].ColorIndex:=-4105;
end;
CurDir:=GetCurrentDir;
Excel.DisplayAlerts:=false;
book.SaveAs(CurDir+'Средств.xls');
Excel.Visible:=true;
end;
procedure TForm5.Button5Click(Sender: TObject);
begin
Excel := CreateOleObject('Excel.Application');
Excel.Visible := True;
Excel.Workbooks.Open('C:\Средства.xls');
Excel.ActiveSheet.Range['A7'].Value:= DBEdit1.Text;
Excel.ActiveSheet.Range['b7'].Value:= DBEdit2.Text;
Excel.ActiveSheet.Range['c7'].Value:= DBEdit3.Text;
Excel.ActiveSheet.Range['d7'].Value:= DBEdit4.Text;
Excel.ActiveSheet.Range['e7'].Value:= dbEdit5.Text;
end;
end.
Форма Услуги. Приложение 6.
procedure TForm6.Button1Click(Sender: TObject);
begin
ADOTable1.Insert;
end;
procedure TForm6.Button2Click(Sender: TObject);
begin
ADOTable1.Refresh;
end;
procedure TForm6.Button3Click(Sender: TObject);
begin
if MessageDlg('Вы уверены что хотите удалить эту запись?', mtConfirmation, mbOKCancel, 0) = mrOk
then ADOTable1.Delete;
end;
end.
Форма Заявки. Приложение 7.
var
Form7: TForm7;
WordApp, Doc, app, book, sheet, Excel: variant;
implementation
uses ComObj;
{$R *.dfm}
procedure TForm7.Button1Click(Sender: TObject);
begin
ADOTable1.Insert;
end;
procedure TForm7.Button2Click(Sender: TObject);
begin
ADOTable1.Refresh;
end;
procedure TForm7.Button3Click(Sender: TObject);
begin
if MessageDlg('Вы уверены что хотите удалить эту запись?', mtConfirmation, mbOKCancel, 0) = mrOk
then ADOTable1.Delete;
end;
procedure TForm7.Button4Click(Sender: TObject);
var book,sheet,Excel:Variant;
i:integer;
CurDir:string;
begin
Excel:=CreateOleObject('Excel.Application');
book:=Excel.WorkBooks.Add;
book.Worksheets[3].Delete;
book.Worksheets[2].Delete;
book.Worksheets[1].Name:='Заявка';
sheet:=book.Worksheets[1];
ADOTable1.First;
sheet.Range['D1']:='Заявки';
sheet.Range['B6']:='ID Заявки';
sheet.Range['C6']:='ID Клиента';
sheet.Range['d6']:='ID Парикмахера';
sheet.Range['e6']:='ID Услуги';
sheet.Range['f6']:='Дата Записи';
sheet.Range['g6']:='Время';
sheet.Range['h6']:='Дата выполнения';
//sheet.Range['A1:E1'].Select;
sheet.Range['b6:h6'].Borders[8].LineStyle:=1;
sheet.Range['B6:h6'].Borders[8].Weight:=-4138;
sheet.Range['B6:h6'].Borders[8].ColorIndex:=-4105;
sheet.Range['B6:h6'].Borders[9].LineStyle:=1;
sheet.Range['B6:h6'].Borders[9].Weight:=-4138;
sheet.Range['B6:h6'].Borders[9].ColorIndex:=-4105;
sheet.Range['B6:h6'].Borders[10].LineStyle:=1;
sheet.Range['B6:h6'].Borders[10].Weight:=-4138;
sheet.Range['B6:h6'].Borders[10].ColorIndex:=-4105;
sheet.Range['B6:h6'].Borders[11].LineStyle:=1;
sheet.Range['B6:h6'].Borders[11].Weight:=-4138;
sheet.Range['B6:h6'].Borders[11].ColorIndex:=-4105;
sheet.Range['B6:h6'].Borders[11].LineStyle:=1;
sheet.Range['B6:h6'].Borders[11].Weight:=-4138;
Sheet.Columns['B:B'].columnWidth:=10;
Sheet.Columns['C:C'].columnWidth:=30;
Sheet.Columns['D:D'].columnWidth:=20;
Sheet.Columns['E:E'].columnWidth:=20;
Sheet.Columns['F:F'].columnWidth:=15;
Sheet.Columns['g:g'].columnWidth:=20;
Sheet.Columns['h:h'].columnWidth:=20;
for i:=1 to ADOTable1.RecordCount do
begin
sheet.Cells[i+5,1].Borders[10].LineStyle:=1;
sheet.Cells[i+5,1].Borders[10].Weight:=-4138;
sheet.Cells[i+5,1].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,1].Borders[10].LineStyle:=1;
sheet.Cells[i+6,1].Borders[10].Weight:=-4138;
sheet.Cells[i+6,1].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,2].Borders[10].LineStyle:=1;
sheet.Cells[i+6,2].Borders[10].Weight:=-4138;
sheet.Cells[i+6,2].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,3].Borders[10].LineStyle:=1;
sheet.Cells[i+6,3].Borders[10].Weight:=-4138;
sheet.Cells[i+6,3].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,4].Borders[10].LineStyle:=1;
sheet.Cells[i+6,4].Borders[10].Weight:=-4138;
sheet.Cells[i+6,4].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,5].Borders[10].LineStyle:=1;
sheet.Cells[i+6,5].Borders[10].Weight:=-4138;
sheet.Cells[i+6,5].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,6].Borders[10].LineStyle:=1;
sheet.Cells[i+6,6].Borders[10].Weight:=-4138;
sheet.Cells[i+6,6].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,2].Borders[8].LineStyle:=1;
sheet.Cells[i+6,2].Borders[8].Weight:=-4138;
sheet.Cells[i+6,2].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,3].Borders[8].LineStyle:=1;
sheet.Cells[i+6,3].Borders[8].Weight:=-4138;
sheet.Cells[i+6,3].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,4].Borders[8].LineStyle:=1;
sheet.Cells[i+6,4].Borders[8].Weight:=-4138;
sheet.Cells[i+6,4].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,5].Borders[8].LineStyle:=1;
sheet.Cells[i+6,5].Borders[8].Weight:=-4138;
sheet.Cells[i+6,5].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,6].Borders[8].LineStyle:=1;
sheet.Cells[i+6,6].Borders[8].Weight:=-4138;
sheet.Cells[i+6,6].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,7].Borders[8].LineStyle:=1;
sheet.Cells[i+6,7].Borders[8].Weight:=-4138;
sheet.Cells[i+6,7].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,7].Borders[10].LineStyle:=1;
sheet.Cells[i+6,7].Borders[10].Weight:=-4138;
sheet.Cells[i+6,7].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,8].Borders[8].LineStyle:=1;
sheet.Cells[i+6,8].Borders[8].Weight:=-4138;
sheet.Cells[i+6,8].Borders[8].ColorIndex:=-4105;
sheet.Cells[i+6,8].Borders[10].LineStyle:=1;
sheet.Cells[i+6,8].Borders[10].Weight:=-4138;
sheet.Cells[i+6,8].Borders[10].ColorIndex:=-4105;
sheet.Cells[i+6,2]:=ADOTable1.FieldByName('ID_Zayavki').AsString;
sheet.Cells[i+6,3]:=ADOTable1.FieldByName('ID_Klienta').AsString;
sheet.Cells[i+6,4]:=ADOTable1.FieldByName('ID_Parikmahera').AsString;
sheet.Cells[i+6,5]:=ADOTable1.FieldByName('ID_Uslugi').AsString;
sheet.Cells[i+6,6]:=ADOTable1.FieldByName('Data_Zapisi').AsString;
sheet.Cells[i+6,7]:=ADOTable1.FieldByName('Vremya').AsString;
sheet.Cells[i+6,8]:=ADOTable1.FieldByName('Data_Vipolneniya').AsString;
ADOTable1.Next;
end;
for i:=2 to 8do
begin
sheet.Cells[ADOTable1.RecordCount+6,i].Borders[9].LineStyle:=1;
sheet.Cells[ADOTable1.RecordCount+6,i].Borders[9].Weight:=-4138;
sheet.Cells[ADOTable1.RecordCount+6,i].Borders[9].ColorIndex:=-4105;
end;
CurDir:=GetCurrentDir;
Excel.DisplayAlerts:=false;
book.SaveAs(CurDir+'Заявка.xls');
Excel.Visible:=true;
end;
procedure TForm7.Button5Click(Sender: TObject);
begin
Excel := CreateOleObject('Excel.Application');
Excel.Visible := True;
Excel.Workbooks.Open('C:\Заявки.xls');
Excel.ActiveSheet.Range['A7'].Value:= DBEdit1.Text;
Excel.ActiveSheet.Range['b7'].Value:= DBEdit2.Text;
Excel.ActiveSheet.Range['c7'].Value:= DBEdit3.Text;
Excel.ActiveSheet.Range['d7'].Value:= DBEdit4.Text;
Excel.ActiveSheet.Range['e7'].Value:= dbEdit5.Text;
Excel.ActiveSheet.Range['f7'].Value:= dbEdit6.Text;
Excel.ActiveSheet.Range['g7'].Value:= dbEdit7.Text;
end;
end.
Форма О программе. Приложение 8.
procedure TForm8.Button1Click(Sender: TObject);
begin
Close;
end;
end.
· Размещено на Allbest.ru
Подобные документы
Разработка программного обеспечения, которое позволит автоматизировать работу менеджера с клиентами и поставщиками. Определение требований, тестирование, описание программы. Руководство системного программиста. Создание СУБД в DELPHI для менеджера.
дипломная работа [775,0 K], добавлен 16.06.2014Разработка и реализация автоматизированного рабочего места для менеджера по продажам компьютерной техники. Требования к функциональным характеристика программного изделия. Стадии и этапы разработки. Эксплуатационная документация, руководство оператора.
курсовая работа [686,9 K], добавлен 19.05.2014Создание программного средства для автоматизации процесса управления учетом клиентов. Алгоритмы и модели базы данных; документооборот бизнес-процесса "работа отдела продаж", задачи и функции менеджера. Системные требования, экономическое обоснование.
курсовая работа [1,4 M], добавлен 18.03.2013Технико-экономическое описание предметной области и разработка программного проекта по автоматизации рабочего места менеджера по клининговым услугам. Разработка этапов внедрения программного продукта и расчет экономической эффективности его внедрения.
дипломная работа [2,1 M], добавлен 12.04.2014Разработка проектных решений по созданию автоматического рабочего места менеджера сервисного центра для ООО "Пионер". Проектирование структуры базы данных. Логическая структура программы. Схема работы с программным продуктом, особенности его установки.
дипломная работа [1,9 M], добавлен 11.02.2013Определение общих требований к организации автоматизированного рабочего места. Создание модели автоматизированного рабочего места менеджера фирмы "Информстиль". Разработка базы данных и описание алгоритма программы по учету продаж вычислительной техники.
дипломная работа [2,9 M], добавлен 03.07.2015Разработка системы, автоматизирующей рабочее место менеджера кадрового агентства "Job" на основе программного обеспечения Drupal с использованием веб-технологий, упрощающей процесс поиска сотрудников на вакансии, предоставленные клиентами агентства.
курсовая работа [1,1 M], добавлен 08.11.2012Языки программирования, их цели и задачи. Автоматизация рабочего места, реализованная с помощью системы управления базами данных MS Access в приложении Borland Delphi 7. Требования, предъявляемые к эксплуатации ресурса, техническим средствам, обеспечению.
курсовая работа [860,5 K], добавлен 15.12.2010Разработка программного продукта для автоматизации рабочего места менеджера в агентстве недвижимости. Проектирование информационной системы для отдела работы с клиентами с возможностью обработки данных о квартирах, услугах, учете заказов и учете сделок.
курсовая работа [3,1 M], добавлен 13.02.2012Сфера применения автоматизированного рабочего места менеджера системы Клиент-Банк, выполнение финансовых операций и перевод денежных средств между счетами клиента, использование сертифицированных программных средств, их высокая производительность.
курсовая работа [1,1 M], добавлен 28.08.2012