Курсовая по Delphi. курсовая работа. 1. Разработка эскизного и технического проекта программы 3
Скачать 1.13 Mb.
|
dp содержит предыдущую версию сохранения файла Project1.dpr.Титульный лист Содержание Оглавление1. Разработка эскизного и технического проекта программы: 3 1.1. Назначение и область применения: 3 Программный продукт «Вкладчик» предназначен для автоматизации работы банка с физическими лицами в части учета депозитов. Производится учет клиентов, счетов, операций по счетам, договоров депозитов. Ведутся договора депозитов (открытие, оформление документов, начисление процентов, закрытие), производятся платежи клиентов физических лиц. Все это хранится в базе данных. Приложение разработано под операционную систему Windows XP/7/10. 3 1.2. Технические характеристики. 4 1.2.1. Постановка задачи 4 1.2.3. Организация входных и выходных данных 7 Входные данные. 7 1. Разработка эскизного и технического проекта программы:1.1. Назначение и область применения:Актуальность данной программы обусловлена тем что, на сегодняшний день современные информационные технологии позволяют значительно облегчить работу любого предприятия, начиная с больших предприятий и заканчивая мелкими частными фирмами и организациями. В наше время в сфере бизнеса ведется обработка огромного количества информации о аренде, кредитах, вкладах, товарах, поставщиках, заказах, и т.д. Хранить, обрабатывать и пользоваться информацией при помощи старых методов просто не эффективно на сегодняшний день. И поэтому на замену бумажной работе приходят БД, причем каждая БД направлена на конкретную область или сферу применения. Следуя этим фактам при использовании БД существенно увеличивается эффективность деятельности , это за собой повлечет увеличение меньшей затраты времени на работу с информацией и меньшего количества ошибок и недочетов. Программный продукт «Вкладчик» предназначен для автоматизации работы банка с физическими лицами в части учета депозитов. Производится учет клиентов, счетов, операций по счетам, договоров депозитов. Ведутся договора депозитов (открытие, оформление документов, начисление процентов, закрытие), производятся платежи клиентов физических лиц. Все это хранится в базе данных. Приложение разработано под операционную систему Windows XP/7/10. В программе «Вкладчик» использованы различные процедуры и функции, предназначенные для обработки и редактирования . В данной программе реализовано большое количество различных методов работы с информацией, использовано много компонентов, позволяющих качественно и быстро организовать удобную работу. Программа может служить наглядным пособием для показа работы этих процедур и функций. 1.2. Технические характеристики.1.2.1. Постановка задачиПри разработке программного продукта для обеспечения его максимальной эффективности очень важно учитывать все особенности информационной среды, в которой будет происходить его эксплуатация. Чем больше информации, тем точнее можно определить, что необходимо для программного продукта такого типа, что будет входить в его состав, какие функции он должен выполнять и т.д. Целью данной курсовой работы является разработка автоматизированной системы учета вкладов в банке. Автоматизация позволит работникам избавиться от многих рутинных процессов, что обеспечит наиболее быстрое, полное и качественное обслуживание клиентов. Требуется разработать информационную систему для ведения учета вкладов в банке. Система должна собирать и накапливать сведения о деятельности отдела банка, работающего с вкладчиками. Структура приложения обязательно должна включать следующие классы, созданные студентом: вкладчик, вклад, тип вклада, сведения о банке, операции с вкладом. В информационной системе необходимо хранить большое количество информации, вследствие чего разработка программного продукта начинается с создания базы данных, в которой хранится информация о клиентах. Перечень задач для реализации: спроектировать базу данных; создать формы для работы с базой; организовать пользовательское меню; создать поисковые системы; сформировать отчеты. создать пользовательские классы Необходимо разработать базу данных, которая отвечает следующим показателям: полнота; достоверность; актуальность; эффективность; оперативность; удобный интерфейс. 1.2.2. Описание алгоритма В программе используется следующий алгоритм. Вход. Операционное окно. Через операционное окно можно перейти для добавления нового клиента, поиска и редактирования, а также для вспомогательных документов. Из окна добавления клиента, информация попадает в базу. В окне поиск и редактирование информация выводится из базы, где можно вкладчика, а также открыть карточку клиента. Информация и документы содержит реквизиты банка, договор и закон по отмыванию доходов преступным путем. Выход. 1.2.3. Организация входных и выходных данныхВходные данные.Перечень документов, необходимых для открытия счета в банке физическому лицу. Заявление на открытие счета. Паспорт Заявление на открытие счета. Выходными данными является: Договор Общий отчет по клиентам Карточка клиента Выходные документы и отчеты получаются на основании входных данных. 1.Договор 2 .Общий отчет по клиентам 3 .Карточка клиента в программе 1.2.4. Выбор состава технических и программных средств Для реализации базы данных была использована система управления базами данных Microsoft Office Access, входящая в состав стандартного набора Microsoft Office. Microsoft Office Access предоставляет методы удобного управления данными за счет упрощения создания и применения схем и таблиц стилей. Microsoft Access позволяет легко описывать и доставлять сложные, структурированные данные в любое или из любого приложения стандартным, совместимым способом. Microsoft Office Access имеет интерфейс, характерный для Windows-приложений и относится к системам, ориентированным на пользователя, что позволяет легко выполнять основные действия с базой данных, не прибегая к программированию. Данное программное обеспечение применяется для организаций с относительно небольшим объемом данных. Сама информационная система реализована в среде разработки приложений Delphi. В основе Delphi лежит технология визуального проектирования и методология объектно-ориентированного программирования. Для представления программ в Delphi используется разработанный Borland язык Object Pascal. Среда разработки приложений Delphi предоставляет программисту широкие возможности создания интерфейса пользователя и большой выбор компонентов, входящих в стандартный набор, с помощью которых можно создавать приложения достаточно высокого уровня сложности. Среда программирования обладает всеми возможностями современных систем управления базами данных. Для корректной работы программы компьютер должен соответствовать следующим минимальным требованиям: MS Windows XP/Vista/7; процессор 1 ГГц; 128 МБ ОЗУ; 20 МБ свободного пространства на диске; принтер; клавиатура; мышь. Также на компьютере необходимо наличие таких программных продуктов как: Microsoft Word; Microsoft Excel; Microsoft Access. Так как программа не является установочной с применением setup функций, она не нуждается в установке. Также программа не нуждается в настройках. Программа устанавливается с флеш накопителя или же диска при помощи копирования ее на рабочий стол или в необходимую вам папку на диске С. Копирование можно произвести: - при помощи панели инструментов (используя соответствующие кнопки копировать и вставить); - при помощи клавиатуры (используя клавиши: для копирования – Ctrl+Insert или Ctrl+C и для вставки – Shift+Insert или Ctrl+B); - при помощи мыши (выделить необходимый файл, нажать правую кнопку мыши – появиться всплывающее меню – выбираете пункт «копировать»; затем в необходимом месте снова щелкнуть правой кнопкой мыши, и во всплывающем меню выбираете пункт «вставить»). После того, как Вы запустили программу, на экране монитора появится окно программы «Вкладчик». Разработка рабочего проекта 2.1. Разработка программы Разработка базы данных Первым этапом разработки программы было создание базы данных в Microsoft Access Microsoft Office Access - СУБД корпорации Microsoft. Имеет широкий спектр функций, включая связанные запросы, связь с внешними таблицами и базами данных. База данных находится в папке с программой с названием DB.mdb. Состоит из таблицы table_db со следующими полями: FIO – Фамилия Имя Отчество Address – Адрес вкладчика Pass – Паспортные данные Tel – Телефон вкладчика Data_r – Дата рождения Vklad – Наименование вклада Proc – Процент по вкладу Summ – Сумма вклада Data_n – Дата открытия вклада Data_o – Дата окончания Oper – Операция Открытие, Закрытие Raschet_proc – Расчет процентов по вкладу N_Dog – Номер договора Разработка программы В данной среде был создан проект с названием Project1.dpr. Данный проект состоит из пяти форм. Основная форма(Form1) Главная форма представляет собой стандартное окно класса TForm и содержит следующие необходимые для функционирования программы компоненты, расположенные ниже, в порядке их размещения: MainMenu1 – состоит из следующих пунктов: 1. Новый клиент 1.1. Добавить 2. Поиск и редактирование 3. Информация 3.1. Реквизиты банка 3.2. Договор 3.3. Федеральный закон 115 Image1 – Фон основного окна Label1, Label2, Timer1 – Отображает текущую дату и время Форма 2 (Form2) Форма 2 предназначена для добавления информации о вкладчике, вкладе, процентам по вкладу и состоит из следующих компонентов: Edit1 – Фамилия имя отчество Edit2 – Адрес вкладчика Edit3 – Паспортные данные Edit4 – Номер телефона DateTimePicker1 – Дата рождения Combobox2 – Выбор вклада Combobox1 – Процент по вкладу Edit5 – Сумма вклада DateTimePicker2, DateTimePicker3 – Ввод даты начала и окончания вклада Combobox3 – Операция по вкладу Edit8 – Номер договора Button4, Edit6 – При нажатии на кнопку Button4 в Edit6 производится расчет количества дней по вкладу Button5, Edit7 – При нажатии на кнопку Button5 в Edit7 производится расчет суммы процентов Button1 – Добавляет данные в базу Button2 – Очищает компоненты Button3 – Выходит из формы Button7 – Справка BitBtn1 – Открывает калькулятор Label1-Label13 – предназначены для описания Image1 – Фон для формы Также на форме расположены три компонента для связи с БД: DataSource1, ADOConnection1 и ADOTable1. Форма 3(Form3) На форме 3 расположены реквизиты банка: Название, адрес, счет,,ОГРН, БИК, ИНН,КПП в компоненте Memo1 Форма 5(Form5) Форма 5 предназначена для просмотра, поиска и редактирования вкладчика. Основным компонентом является DBGrid1, он выводит информацию из базы данных. С помощью DBNavigator1 можно управлять компонентом DBGrid1 Button1,Edit1 – Поиск вкладчика по фамилии Button5,Edit2 – Поиск по номеру договора Button2 – Обновляет сведения базы данных Button4 – Открывает отчет для печати Button3 – Закрытие формы Label1,Label2 - Описание На форме расположены три компонента для связи с БД: DataSource1, ADOConnection1 и ADOTable1. Форма 6(Form6) Форма 6 представляет собой карточку конкретного клиента. Label1-Label13 – Описание DBEdit1-DBEdit12 – вывод информации о вкладчике Button3 – выход из формы Описание процедур ФОРМА 1 procedure TForm1.Add1Click(Sender: TObject); - Переход на форму 2 добавление вкладчика procedure TForm1.N1Click(Sender: TObject); - Переход на форму 5 Поиск и редактирование procedure TForm1.N2Click(Sender: TObject); - Выход из программы procedure TForm1.N4Click(Sender: TObject); - Информация о программе procedure TForm1.N5Click(Sender: TObject); - Переход на форму 3 реквизиты банка procedure TForm1.N6Click(Sender: TObject); - Открытие договора для заполнения procedure TForm1.Timer1Timer(Sender: TObject); - Выводит на основном окне текущую дату и время procedure TForm1.N1151Click(Sender: TObject); - Открывает федеральный закон ФОРМА 2 procedure Button3Click(Sender: TObject); - Закрытие формы procedure Button2Click(Sender: TObject); - Очистка Edit procedure Button1Click(Sender: TObject); - Сохранение информации в базу, обнуление Edit, установка текущей даты в DateTimePicker procedure Button4Click(Sender: TObject); - Расчет дней вклада procedure FormCreate(Sender: TObject); - Текущая дата в DateTimePicker procedure Button5Click(Sender: TObject); - Производится расчет суммы процентов procedure Button7Click(Sender: TObject); - Справка procedure BitBtn1Click(Sender: TObject); - Открытие калькулятора Форма 5 procedure Button3Click(Sender: TObject); - Закрытие формы procedure Button1Click(Sender: TObject); - Поиск вкладчика по ФИО procedure Button2Click(Sender: TObject); - Обновление DBGrid1 и размер колонок procedure Button4Click(Sender: TObject); - Сохранение в файл из DBGrid1 procedure FormCreate(Sender: TObject); - Ширина столбцов в DBGrid1 при открытии формы procedure DBGrid1DblClick(Sender: TObject); - Переход на на форму 6 на карточку вкладчика, вывод информации о вкладчике на форме 6 procedure Button5Click(Sender: TObject); - Поиск по номеру договора Классы Также в программе созданы и реализованы следующие классы: -вклад(TVklad) , который включает в себя наименование вклада, процент по вкладу, операция, а также расчет дней в году и процента -информация о вкладе(TBank), в котором содержатся реквизиты банка. Руководство пользователя Программа расположена в папке project. Запустить можно с локального диска С, нажав дважды левой кнопкой мыши по исполняемому файлу Project1.exe. Появится операционное окно на котором расположены следующие вкладки: Новый клиент – после перехода откроется окно для заполнения данных о клиенте ,а также информации по вкладу. В этом окне все поля должны быть заполнены. Кнопка «Внести» добавляет нового вкладчика в базу данных, последовательность кнопок: расчет количества дней - расчет процентов – Внести. Кнопка «Очистить» очищает форму для повторного внесения данных. Кнопка «Отмена» производит выход из окна добавления в операционное окно. Также для удобства имеется калькулятор для дополнительных расчетов. Поиск и редактирование – при нажатии откроется окно с информацией по всем вкладчикам в виде таблицы. В ней можно делать изменения с помощью панели расположенной ниже, а также производить поиск по ФИО и номеру договора. Кнопка «Обновить» получает обновленную информацию из базы данных. Кнопка «Сохранить и открыть отчет» открывает таблицу в формате Excel для последующего сохранения и печати. Кнопка «Закрыть» производит выход из окна. При нажатии на определенного клиента из таблицы двойным щелчком левой кнопки мыши открывается карточка клиента для удобства просмотра. Информация – Здесь расположен договор в формате Word для печати и составления. Реквизиты банка, а также Федеральный закон О противодействии легализации (отмыванию) доходов, полученных преступным путем, и финансированию терроризма. О программе – Версия ПО. Выход – Закрывает программу Тестирование программы Тестирование является одним из самых важных моментов при создании программного продукта, потому что благодаря им, видно как лучше организовать работу программы и ее интерфейс. Целью проведения испытания программного продукта является проверка правильности работы программы, выявление противоречий между разработанной системой и первоначальными целями ее создания и выявление возможных ошибок при работе с программой. Также в ходе тестирования программы производится проверка на соответствие техническим требованиям, то есть испытания производятся на нескольких компьютерах различной конфигурации. Тестирование проводят для проверки, удовлетворяет ли программа первоначальным требованиям, предъявляемым к системе. Тестирование должны быть целенаправленными, систематизированными и максимально простыми, для выявления работоспособности программы и совместимости с различным аппаратным и программным обеспечением. Критериями оценки работоспособности программного продукта является выполнение всех функций поставленной задачи. Испытания должны производится так, чтобы обеспечить проверку всех возможных условий возникновения ошибки. Окончательный результат испытания программы состоит в проверке полноты и качества решения поставленной задачи, бесперебойной работы программы и проверке удобства пользованием интерфейса для пользователя. Данный программный продукт испытывался постоянно в процессе его создания, проверялась практически каждая ветвь алгоритма. При возникновении ошибок они устранялись, и программа испытывалась вновь. Испытания проводились до тех пор, пока не были устранены все ошибки. Данный программный продукт удовлетворяет всем функциональным требованиям, имеет понятный пользователю интерфейс, исключает появлении системных ошибок. При тестировании программного продукта добавление в базу данных, поиск, расчеты, экспорт в Excel, вывод отчетов происходит корректно. Результаты тестирования полностью совпадают с ожидаемыми результатами. Заключение В основе среды Delphi лежит одноименный язык программирования — Delphi, ранее известный как Object Pascal. При разработке программы среда Delphi выполняет свою часть работы — создает пользовательский интерфейс согласно вашему дизайну, а вы выполняете свою часть — пишите обработчики событий на языке Delphi. Объем вашей работы зависит от программы: чем сложнее алгоритм, тем тяжелее ваш труд. Необходимо заранее усвоить, что невозможно заставить средство разработки делать всю работу за вас. Некоторые задачи среда Delphi действительно полностью берет на себя, например создание простейшей программы для просмотра базы данных. Однако большинство задач не вписываются в стандартные схемы — вам могут понадобиться специализированные компоненты, которых нет в палитре компонентов, или для задачи может не оказаться готового решения, и вы вынуждены будете решать ее с помощью операторов языка Delphi. В процессе выполнения курсового проекта были разработаны структура и алгоритм работы приложения «Учёт вкладов, помещённых в банк». При этом были учтены особенности реализации других компонентов информационной системы. Результатом работы стало создание программного обеспечения. Программа Project1.exe написана на языке Object Pascal в среде программирования Delphi 7.0. с использованием СУБД Microsoft Access, предназначена для работы в операционной системе MS Windows XP и отлажена на данных контрольного примера. В процессе разработки курсового проекта были приобретены навыки в области построения баз данных, а также создания пользовательских классов. Кроме того, был разработан удобный интерфейс. Было написано руководство пользователя. Приложение unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ImgList, ExtCtrls, Menus, ShellAPI, Grids, Calendar, Buttons, DBGrids, DB, ADODB; type TForm1 = class(TForm) Image1: TImage; MainMenu1: TMainMenu; File1: TMenuItem; Add1: TMenuItem; N1: TMenuItem; N2: TMenuItem; N3: TMenuItem; N4: TMenuItem; N5: TMenuItem; N6: TMenuItem; Timer1: TTimer; Label1: TLabel; Label2: TLabel; N1151: TMenuItem; procedure Add1Click(Sender: TObject); procedure N1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure N4Click(Sender: TObject); procedure N5Click(Sender: TObject); procedure N6Click(Sender: TObject); procedure Timer1Timer(Sender: TObject); procedure N1151Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation uses Unit2, Unit3, Unit5, Unit6, Unit7; {$R *.dfm} procedure TForm1.Add1Click(Sender: TObject); //переход на форму 2 добавление вкладчика begin form2.showmodal; end; procedure TForm1.N1Click(Sender: TObject); // переход на форму 5 Поиск и редактирование begin form5.showmodal; end; procedure TForm1.N2Click(Sender: TObject); //выход из программы begin Form1.Close; end; procedure TForm1.N4Click(Sender: TObject); //о программе begin ShowMessage('Версия ПО: 1.0 Воронеж 2019.'); end; procedure TForm1.N5Click(Sender: TObject); // реквизиты банка begin bank:=Tbank.Create; bank.a:='Банк NewContact'; bank.b:='394700,Воронежская обл., г. Воронеж, ул. Мира, д. 64'; bank.c:='ОГРН: 1027739019208'; bank.d:='КПП: 7706092528'; bank.e:='КПП: 770501001'; bank.f:='К/С: 30101810300000000985'; bank.g:='БИК: 044525985'; Form3.memo1.text:=bank.a+#13#10+bank.b+#13#10+bank.c+#13#10+bank.d+#13#10+bank.e+#13#10+bank.f+#13#10+bank.g; form3.showmodal; end; procedure TForm1.N6Click(Sender: TObject); //открывает договор для заполнения begin ShellExecute (Form5.Handle, 'open', 'Dogovor.doc', nil, nil, SW_SHOWNORMAL); //открыть договор end; procedure TForm1.Timer1Timer(Sender: TObject); //время на основной форме begin Label1.Caption:=TimeToStr(Time); Label2.Caption:=DateToStr(Date); end; procedure TForm1.N1151Click(Sender: TObject); begin ShellExecute (Form5.Handle, 'open', 'Fedzakon.doc', nil, nil, SW_SHOWNORMAL); //открыть фз115 end; end. unit Unit2; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ComCtrls, DB, ADODB, ExtCtrls, Buttons, Unit1; type TForm2 = class(TForm) Label1: TLabel; Edit1: TEdit; Edit2: TEdit; Label2: TLabel; Label3: TLabel; Label4: TLabel; Edit3: TEdit; Edit4: TEdit; Label5: TLabel; Label6: TLabel; Label7: TLabel; Edit5: TEdit; ComboBox1: TComboBox; ComboBox2: TComboBox; Button1: TButton; Button2: TButton; Button3: TButton; Label8: TLabel; DateTimePicker1: TDateTimePicker; Label9: TLabel; Label10: TLabel; DateTimePicker2: TDateTimePicker; DateTimePicker3: TDateTimePicker; DataSource1: TDataSource; ADOConnection1: TADOConnection; ADOTable1: TADOTable; Label11: TLabel; ComboBox3: TComboBox; Button4: TButton; Label12: TLabel; Edit6: TEdit; Button5: TButton; Edit7: TEdit; Button7: TButton; Image1: TImage; Label13: TLabel; Edit8: TEdit; BitBtn1: TBitBtn; procedure Button3Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Button7Click(Sender: TObject); procedure BitBtn1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; type TVklad = class(TObject) private public FType_vkl: string; // Тип вклада зарплатный FType_vkl1: string; // Тип вклада Пенсионный FType_vkl2: string; // Тип вклада Социальный FProc: double; // Процент FSumm: double; // Сумма FData_N, FData_O : Double; // Дата начала и окончания FOper: string; // Операция с вкладом Открытие FOper2: string; // Закрытие FDog: integer; // Номер договора FDays:double; FD_year:double; FSumm_proc:double; protected published end; var Form2: TForm2; Vklad: Tvklad; implementation {$R *.dfm} procedure TForm2.Button3Click(Sender: TObject); begin Form2.Close; //Закрытие формы на кнопку end; procedure TForm2.Button2Click(Sender: TObject); begin edit1.clear; //Кнопка чистит Edit edit2.clear; edit3.clear; edit4.clear; edit5.clear; edit6.clear; edit7.clear; Combobox1.Clear; Combobox2.Clear; Combobox3.Clear; end; procedure TForm2.Button1Click(Sender: TObject); begin ADOTable1.open; ADOTable1.edit; ADOTable1.insert; ADOTable1.FieldByName('FIO').AsString:=Edit1.Text; // Добавление в таблицу ADOTable1.FieldByName('adress').AsString:=Edit2.Text; ADOTable1.FieldByName('pass').AsString:=Edit3.Text; ADOTable1.FieldByName('Tel').AsString:=Edit4.Text; ADOTable1.FieldValues['Data_r'] := DateTimePicker1.Date; ADOTable1.FieldByName('vklad').AsString:=ComboBox2.Text; ADOTable1.FieldByName('proc').AsString:=ComboBox1.Text; ADOTable1.FieldByName('Summ').AsString:=Edit5.Text; ADOTable1.FieldValues['Data_n'] := DateTimePicker2.Date; ADOTable1.FieldValues['Data_o'] := DateTimePicker3.Date; ADOTable1.FieldByName('oper').AsString:=Combobox3.Text; ADOTable1.FieldByName('Raschet_proc').AsString:=Edit7.Text; ADOTable1.FieldByName('N_dog').AsString:=Edit8.Text; ADOTable1.post; //сохранение Edit1.Text:=''; //обнуление Edit1 Edit2.Text:=''; Edit3.Text:=''; Edit4.Text:=''; Edit5.Text:='0'; Edit6.Text:='1'; Edit7.Text:=''; Edit8.Text:=''; ComboBox1.Text:='0'; ComboBox2.Text:=''; ComboBox3.Text:=''; DateTimePicker1.Date:=Date; DateTimePicker2.Date:=Date; DateTimePicker3.Date:=Date; end; procedure TForm2.Button4Click(Sender: TObject); //разница дней var AllDays: integer; begin AllDays:= (trunc(DateTimePicker3.Date)-trunc(DateTimePicker2.Date))+1; Edit6.Text:=IntToStr(AllDays); end; procedure TForm2.FormCreate(Sender: TObject); // var Fproc: integer; begin Vklad:= TVklad.Create; Vklad.FType_vkl:= 'Зарплатный'; Vklad.FType_Vkl1:= 'Пенсионный'; Vklad.FType_Vkl2:= 'Социальный'; comboBox2.Items.Add(Vklad.FType_Vkl); // Добавляют в Combobox2 названия вклада comboBox2.Items.Add(Vklad.FType_Vkl1); comboBox2.Items.Add(Vklad.FType_Vkl2); begin for FProc:= 1 to 10 do //Выбор процента вклада от 1 до 10 Combobox1.Items.Add(IntToStr(FProc)); end; DateTimePicker1.Date:=Date; // устанавливает текущуюю дату DateTimePicker2.Date:=Date; DateTimePicker3.Date:=Date; Vklad.FOper:='Открытие'; Vklad.FOper2:='Закрытие'; comboBox3.Items.Add(Vklad.FOper); comboBox3.Items.Add(Vklad.FOper2); end; procedure TForm2.Button5Click(Sender: TObject); //расчет по вкладу begin Vklad.FSumm:=strtofloat(edit5.text); Vklad.FProc:= strtofloat(Combobox1.text); Vklad.FDays:=strtofloat(edit6.text); Vklad.FD_year:=367; Vklad.FSumm_proc:=(Vklad.FSumm*Vklad.FProc*Vklad.FDays)/(Vklad.FD_year*100); Edit7.Text:=FloatToStr(Vklad.FSumm_proc); end; procedure TForm2.Button7Click(Sender: TObject); begin Showmessage ('Все поля должны быть заполнены,даты выставлены.'+#13#10+'Последовательность кнопок:Расчет количества дней-Расчет процентов-Внести.'); end; procedure TForm2.BitBtn1Click(Sender: TObject); begin WinExec(Pchar('calc.exe'), SW_SHOWNORMAL); end; end. unit Unit3; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm3 = class(TForm) Memo1: TMemo; procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } end; type Tbank = class(TObject) public a,b,c,d,e,f,g:string; end; var Form3: TForm3; bank: Tbank; implementation uses unit1; {$R *.dfm} procedure TForm3.FormCreate(Sender: TObject); begin Form3.Width:=400; Form3.Height:=250; Form3.BorderStyle:=bsSingle; Form3.Memo1.Color:=clTeal; Form3.Memo1.Font.Size:=14; Form3.Memo1.Align:=alClient; Form3.Memo1.Alignment:=taCenter; end; end. unit Unit5; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, DB, ADODB, ExtCtrls, DBCtrls, StdCtrls, Grids, DBGrids, RpDefine, RpRender, RpRenderCanvas, RpRenderPrinter, ShellApi; type TForm5 = class(TForm) DBGrid1: TDBGrid; Button1: TButton; Button3: TButton; DBNavigator1: TDBNavigator; ADOConnection1: TADOConnection; ADOTable1: TADOTable; DataSource1: TDataSource; Edit1: TEdit; Label1: TLabel; Button2: TButton; Button4: TButton; Image1: TImage; Button5: TButton; Edit2: TEdit; Label2: TLabel; procedure Button3Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure DBGrid1DblClick(Sender: TObject); procedure Button5Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form5: TForm5; implementation uses Unit6; {$R *.dfm} procedure TForm5.Button3Click(Sender: TObject); begin Form5.Close; end; procedure TForm5.Button1Click(Sender: TObject); begin if not adotable1.Locate('FIO', Edit1.Text,[loCaseInsensitive, loPartialKey] ) then showmessage('Вкладчик отсутствует') ; if adotable1.Locate('FIO', Edit1.Text,[loCaseInsensitive, loPartialKey] ) then DBGrid1.DataSource.DataSet.Locate('FIO',Edit1.Text,[loCaseInsensitive, loPartialKey]); //Поиск вкладчика по ФИО end; procedure TForm5.Button2Click(Sender: TObject); //Обновление DBGrid begin ADOtable1.Close; ADOTable1.Open; DBGrid1.Columns[0].Width := 0 ; DBGrid1.Columns[1].Width := 200; DBGrid1.Columns[2].Width := 250; DBGrid1.Columns[3].Width := 80; DBGrid1.Columns[4].Width := 80; DBGrid1.Columns[5].Width := 110; DBGrid1.Columns[6].Width := 80; DBGrid1.Columns[7].Width := 80; DBGrid1.Columns[8].Width := 80; DBGrid1.Columns[9].Width := 110; DBGrid1.Columns[10].Width := 110; DBGrid1.Columns[11].Width := 80; DBGrid1.Columns[12].Width := 80; end; procedure TForm5.Button4Click(Sender: TObject); //сохранение в файл из DBGrid var i: Integer; ds: TDataSet; s: AnsiString; sCSV: TStringList; begin ds := DBGrid1.DataSource.DataSet; s := ''; sCSV:= TStringList.Create; try ds.First; while not ds.Eof do begin s := ''; for i := 0 to ds.Fields.Count - 1 do s := s + '"' + ds.Fields[i].AsString + '";'; sCSV.Add(s); ds.Next; end; sCSV.SaveToFile('\Project\csvexample.csv'); finally sCSV.Free; end; ShellExecute (Form5.Handle, nil, '\Project\csvexample.csv', nil, nil, SW_RESTORE); //открыть документ end; procedure TForm5.FormCreate(Sender: TObject); //Ширина столбцов begin DBGrid1.Columns[0].Width := 0; DBGrid1.Columns[1].Width := 200; DBGrid1.Columns[2].Width := 250; DBGrid1.Columns[3].Width := 80; DBGrid1.Columns[4].Width := 80; DBGrid1.Columns[5].Width := 110; DBGrid1.Columns[6].Width := 80; DBGrid1.Columns[7].Width := 80; DBGrid1.Columns[8].Width := 80; DBGrid1.Columns[9].Width := 110; DBGrid1.Columns[10].Width := 110; DBGrid1.Columns[11].Width := 80; DBGrid1.Columns[12].Width := 80; end; procedure TForm5.DBGrid1DblClick(Sender: TObject); // переход с формы 5 на форму 6 для просмотра вкладчика 2й клик begin Form6.Show; Form6.DBEdit1.Text := DBGrid1.DataSource.DataSet.FieldByName('FIO').AsString; //вывод в DBEdit инфы из столбца в DBGrid Form6.DBEdit2.Text := DBGrid1.DataSource.DataSet.FieldByName('Adress').AsString; Form6.DBEdit3.Text := DBGrid1.DataSource.DataSet.FieldByName('pass').AsString; Form6.DBEdit4.Text := DBGrid1.DataSource.DataSet.FieldByName('tel').AsString; Form6.DBEdit5.Text := DBGrid1.DataSource.DataSet.FieldByName('data_r').AsString; Form6.DBEdit6.Text := DBGrid1.DataSource.DataSet.FieldByName('vklad').AsString; Form6.DBEdit7.Text := DBGrid1.DataSource.DataSet.FieldByName('proc').AsString; Form6.DBEdit8.Text := DBGrid1.DataSource.DataSet.FieldByName('summ').AsString; Form6.DBEdit9.Text := DBGrid1.DataSource.DataSet.FieldByName('data_n').AsString; Form6.DBEdit10.Text := DBGrid1.DataSource.DataSet.FieldByName('data_o').AsString; Form6.DBEdit11.Text := DBGrid1.DataSource.DataSet.FieldByName('oper').AsString; Form6.DBEdit12.Text := DBGrid1.DataSource.DataSet.FieldByName('raschet_proc').AsString; end; procedure TForm5.Button5Click(Sender: TObject); begin if not adotable1.Locate('N_dog', Edit2.Text,[loCaseInsensitive, loPartialKey] ) then showmessage('Вкладчик отсутствует') ; if adotable1.Locate('N_dog', Edit2.Text,[loCaseInsensitive, loPartialKey] ) then DBGrid1.DataSource.DataSet.Locate('N_dog',Edit1.Text,[loCaseInsensitive, loPartialKey]); //Поиск вкладчика по номеру договора end; end. unit Unit6; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, DB, ADODB, StdCtrls, Buttons, DBCtrls, Mask, ExtCtrls; type TForm6 = class(TForm) DBEdit1: TDBEdit; DBEdit2: TDBEdit; DBEdit3: TDBEdit; DBEdit4: TDBEdit; DBEdit5: TDBEdit; DBEdit6: TDBEdit; DBEdit7: TDBEdit; DBEdit8: TDBEdit; DBEdit9: TDBEdit; DBEdit10: TDBEdit; DBEdit11: TDBEdit; DBEdit12: TDBEdit; ADOConnection1: TADOConnection; ADOTable1: TADOTable; DataSource1: TDataSource; Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; Label7: TLabel; Label8: TLabel; Label9: TLabel; Label10: TLabel; Label11: TLabel; Label12: TLabel; Button3: TButton; Label13: TLabel; Image1: TImage; procedure Button3Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form6: TForm6; implementation {$R *.dfm} procedure TForm6.Button3Click(Sender: TObject); begin form6.Close; end; end. Приложение 2 Файлы проекта Типичное приложение, разработанное в Delphi, состоит из файлов разных типов, каждый из которых имеет своё расширение имени. .dpr. Файл проекта Delphi. Delphi создаёт файл проекта автоматически при первом сохранении нового приложения. Как правило, не возникает необходимости модифицировать файл проекта. Не следует удалять файл .dpr. .pas. Файлы модулей. Содержат исходный код программ на языке Delphi. Как правило, приложение Delphi имеет по одному файлу .pas для модуля каждой экранной формы, хотя можно включать в эти файлы собственный код, не связанный с экранными формами. Не следует удалять файл .pas. .dfm. Файлы описания формы. Содержат информацию о свойствах экранной формы и включённых в неё объектов, а также о событиях и процедурах их обработки. Не следует удалять файл .dfm. .dcu. Файлы, содержащие компилированный код, полученный на основе информации из соответствующих файлов .pas и .dfm. .res. Файл ресурсов. Содержит двоичные ресурсы (пиктограммы и прочие растровые изображения), используемые в проекте. .exe. Выполняемый файл, полученный на основе файлов .dcu в результате компоновки. .dof. Файл опций проекта. Содержит настройки проекта, модифицированные в диалоговом окне, которое открывается по команде Project/Options. .dll. Файлы библиотек. Содержат код для библиотеки динамической компоновки. . Структура файла проекта Любая программа в Delphi состоит из файла проекта (.dpr) и одного или нескольких модулей (.pas). Файл проекта автоматически создаётся Delphi и предназначен для обработки компилятором. Для просмотра файла проекта используется пункт меню Project/ViewSource. Delphi покажет окно кода с закладкой Project1, содержащее следующий текст: program Project1; uses Forms, Unit1 in 'Unit1.pas' {Form1}, Unit2 in 'Unit2.pas' {Form2}, Unit3 in 'Unit3.pas' {Form3}, Unit4 in 'Unit4.pas' {Frame4: TFrame}, Unit5 in 'Unit5.pas' {Form5}, Unit6 in 'Unit6.pas' {Form6}, Unit7 in 'Unit7.pas'; {$R *.res} begin Application.Initialize; Application.CreateForm(TForm1, Form1); Application.CreateForm(TForm2, Form2); Application.CreateForm(TForm3, Form3); Application.CreateForm(TForm5, Form5); Application.CreateForm(TForm6, Form6); Application.Run; end. Список используемой литературы Фленов М.Е. «Библия Delphi». 2011г. Культин Н.Б. «Основы программирования в Delphi 7». 2006г. Фаронов В.В. «Delphi. Программирование на языке высокого уровня: Учебник для вузов». 2004г. Бобровский С.И. «Delphi 7. Учебный курс». 2008г. Климова Л.М. «Delphi 7. Основы программирования. Решение типовых задач». 2006г. с.480 Глушаков С.В., Клевцов А.Л. «Программирование в среде Delphi 7.0». 2003г. Тюкачев Н. и др. «Программирование в Delphi для начинающих». 2007г. Желонкин А. «Основы программирования в интегрированной среде Delphi». 2006г. 13.Емельянов и др. «Основы программирования на Delphi». 2005г. 14. Введение в среду визуального программирования Delphi: Методические указания-Ч.2 /С.ВБорисов, С.С.Комалов, И.Л.Серебрякова и др.; Под ред.Б.Г.Трусова. - М.:Изд-во МГТУ им.Н.Э.Баумана, 2011.-96 с.: ил. Также в подготовке курсовой работы использовалось множество интернет-ресурсов. |