Разработка программного модуля начисления процентов

Автор работы: Пользователь скрыл имя, 08 Июня 2012 в 20:34, курсовая работа

Краткое описание

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

Содержание работы

Задание 3
Введение 4
1. Начисление процентов по вкладам 6
1.1. Депозитные вклады и их классификация 6
1.2. Формула расчета процентов по вкладам 8
2. Структура базы данных ”Депозитные вклады” 12
3. Руководство пользователя 13
3.1. Организация взаимодействия клиентской программы с БД 13
3.2. Разработка интерфейса пользователя 15
Заключение 23
Список литературы 24
Приложение 25
10. Заключение 23
11. Список литературы 24

Содержимое работы - 1 файл

Пояснительная записка2.doc

— 543.50 Кб (Скачать файл)

Большинство банков, предлагают вклады с поквартальной капитализацией (Сбербанк России, ВТБ и т. д.), т.е. с начислением сложных процентов. А некоторые банки, в условиях по вкладам предлагают капитализацию по окончанию срока вложения, т.е. когда вклад пролонгируется на следующий срок, что, мягко говоря, относится к рекламному трюку, который подталкивает вкладчика не забирать начисляемые проценты, но само начисление процентов фактически осуществляется по формуле простых процентов. И повторюсь, когда сумма вклада и срок размещения значительные, такая «капитализация» не приводит к увеличению суммы процентного дохода вкладчика, ведь начисления процентов на полученные в предыдущих периодах процентные доходы нет.

Формула сложных процентов выглядит так:

Рис.3.Формула сложных процентов

Значение символов: I – годовая процентная ставка;

j – количество календарных дней в периоде, по итогам которого банк производит         капитализацию начисленных процентов;

K – количество дней в календарном году (365 или 366);

P – первоначальная сумма привлеченных в депозит денежных средств;

n — количество операций по капитализации начисленных процентов в течение общего срока привлечения денежных средств;

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

Расчет только сложных процентов с помощью формулы, будет выглядеть так:

Рис.4.Расчет только сложных процентов

Значение символов:  I – годовая процентная ставка;

j – количество календарных дней в периоде, по итогам которого банк производит         капитализацию начисленных процентов;

K – количество дней в календарном году (365 или 366);

P – первоначальная сумма привлеченных в депозит денежных средств;

n — количество операций по капитализации начисленных процентов в течение общего срока привлечения денежных средств;

Sp – сумма процентов (доходов).

2.    Структура базы данных ”Депозитные вклады”

Схема базы данных ”Депозитные вклады”, состоящая из пяти таблиц, представлена на рисунке 5:

Рис. 5. Схема базы данных

 

 

 

 

 

 

 

 

 

 

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

3.1.         Организация взаимодействия клиентской программы с БД

Данное приложение разработано в среде Delphi 7.0. Взаимодействие приложения с базой данных осуществлялось с помощью следующих компонентов:

      TADOConnection

      TADOQuery

      TDataSource

      TADODataSet

      TDBGrid

      TDBNavigator

      TComboBox

      TDateTimePicker

 

В компоненте TADOConnection инкапсулированы свойства подключения к конкретной базе данных и возможности манипулирования подключением при использовании механизма ADO. Объект типа TADOConnection подключается к базе данных и контролирует работу всех наборов данных, у которых в качестве свойства Database Name указано его имя.

Разработанное приложение использует этот компонент для динамического подключения к базе данных. Для этого в свойстве компонента ConnectionString указывается:

ConnectionString - имя базы данных, имя сервера БД

Для представления данных использовались компоненты TDBGrid и TComboBox

Для связи этих компонент с компонентом TADOQyery использовался компонент TDataSource.

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

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

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

Совместно с TDBGrid использован TDBNavigator  - простой и эффективный механизм управления данными, представляемыми в компонентах отображения. Навигатор представляет собой панель, в которой содержится ряд кнопок.

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

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

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

 

 

 

 

 

3.2 Разработка интерфейса пользователя

Перед запуском программы необходимо скопировать БД с названием «DepositBD.mdb» и в файле Config.txt прописать путь к ней, других действий перед запускам исполняемого файла Interest.exe не требуется.

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

1)    «Тарифы» - вкладка программы (рис.6), на которой отображается таблица БД – Tariffs. В ней описываются все тарифы, в соответствие с которыми рассчитываются проценты по вкладам. Возможные операции с данными таблицы: Добавление, Удаление, Обновление.

Рис. 6 Вкладка «Тарифы»

 

 

2)              «Вкладчики» (рис. 7) - вкладка, на которой показана вся информация o держателях вклада, а именно: фамилия, имя, отчество, номер паспорта, ИНН, а также дата и место рождения. Все эти поля хранятся в таблице Investors. Возможные операции с данными таблицы: Добавление, Удаление, Обновление.

Рис. 7. Вкладка «Вкладчики»

 

3)              «Вклады» (рис. 8) – последняя и трёх вкладок, на которых отображается содержание БД, она показывает  дочернюю таблицу – Accounts, хранящую основные сведения об депозитах: Номер депозита, код владельца, тариф, дату открытия, дату окончания срока вклада  и сумму вклада. Из возможных операций над таблицей присутствует тока обновление записей.

 

 

Рис. 8. Вкладка «Вклады»

 

4)              «Начисление процентов» (рис. 9) – основная вкладка программы, предоставляющая оператору два режима расчёта процентов:

- По всем депозитам;

- По заданному депозиту;

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

-         Фильтр начисления %-тов по вкладам до определенной даты;

-         Фильтр начисления %-тов по вкладам для определенной валюты, на выбор предоставляется три доступных: рубли, доллары и евро.

-         Фильтр начисления %-тов по вклада с определённым тарифом;

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

Рис. 9. Вкладка «Начисление процентов»

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

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

Все начисленные суммы можно занести в таблицу БД нажав кнопку «Внести на счета»

Для примера произведём расчёт по одному из депозитов, для этого выберем режим “Рассчёт по заданному депозиту”.  В поле «Номер счёта» зададим номер 1035616 и нажмём кнопку «Рассчитать». В результате получим таблицу, показанную на рисунки 10.

 

 

Рис. 10. Пример начисления %-тов»

Далее нажмём кнопку «Распечатать отчёт”, в результате получим заполоненный бланк, показанный на рисунке 11.

 

Рис. 11. Выписка со счёта.

41

 



4)              «Депозитный калькулятор» (рис. 12) – последняя вкладка программы является демонстрацией расчётных формул, использованных в программе. В ней все данные, необходимые для начисления процентов по вкладам, вводятся с консоли, а выдаваема выписка со счета аналогична режиму “По заданному депозиту”.

На вкладке возможно задать : валюту вклада, сумму вклада, годовую процентную ставку, период начисления процентов (ежемесячно, ежеквартально, ежегодно, в конце срока вклада), дату открытия вклада, дату закрытия вклада, срок вклада. Так же можно задать параметры налогообложения: ставку рефинансирования (по умолчанию по вкладам в рублях она равна 13% а валюте – 9%) и ставку налогообложения (по умолчанию – 35% в соответствие с законодательством РФ).

 

Рис. 12. Выписка со счёта.

Достоинства программы:

1)     Позволяет рассчитывать проценты по вкладам до любого срока

2)     Позволяет рассчитывать %-ты по депозитам в 3-х валютах;

3)     Выдает детализацию расчетов по месяцам для любого из вкладов

4)     Существует возможность распечатать расчеты в виде выписок и справок.

5)     Имеется автономный депозитный калькулятор;

 

Недостатки программы:

1)    Программа позволяет только рассчитывать проценты по вкладам, но не может вести все депозитные операции.


 


Заключение

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

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

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

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

 

Список литературы

1. Лекции по курсу «Программное обеспечение банковских операций», Карманов П.В

2. Лекции по курсу «Базы данных» Гринченко Н.Н.
З. Лекции по курсу «Клиент-серверные приложения баз данных», Благодаров А.В.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Приложение

Текст программы

41

 



Модуль UInterest.pas

unit UInterest;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, DB, ADODB, Grids, DBGrids, ComCtrls, StdCtrls,DateUtils, DBCtrls,

  ExtCtrls, Spin, FloatSpinEdit, QuickRpt, QRCtrls;

 

type

  TMainForm = class(TForm)

    ADOConnection: TADOConnection;

    DSInvestors: TDataSource;

    ADOQInvestors: TADOQuery;

    ADOQTariffs: TADOQuery;

    DSTariffs: TDataSource;

    ADOQAccounts: TADOQuery;

    DSAccounts: TDataSource;

    DSTime: TDataSource;

    ADOQTime: TADOQuery;

    DataSourceNumDeposit: TDataSource;

    ADOTableNumDeposit: TADOTable;

    ADOTableCyrrency: TADOTable;

    DataSourceCyrrency: TDataSource;

    PageControl1: TPageControl;

    TabSheet1: TTabSheet;

    DBGridTariffs: TDBGrid;

    TabSheet2: TTabSheet;

    DBGridInvestors: TDBGrid;

    TabSheet3: TTabSheet;

    DBGridAccounts: TDBGrid;

    TabSheet4: TTabSheet;

    StringGrid: TStringGrid;

    DBGridTime: TDBGrid;

    TabSheet6: TTabSheet;

    PageControl2: TPageControl;

    TabSheet7: TTabSheet;

    GroupBox1: TGroupBox;

    Label1: TLabel;

    Label2: TLabel;

    Label3: TLabel;

    Label4: TLabel;

    Label5: TLabel;

    Label8: TLabel;

    Label9: TLabel;

    ComboBox1: TComboBox;

    SpinEdit1: TSpinEdit;

    FloatSpinEdit1: TFloatSpinEdit;

    ComboBox2: TComboBox;

    DateTimePicker1: TDateTimePicker;

    GroupBox2: TGroupBox;

    Label6: TLabel;

    Label7: TLabel;

    FloatSpinEdit2: TFloatSpinEdit;

    FloatSpinEdit3: TFloatSpinEdit;

    SpinEdit2: TSpinEdit;

    DateTimePicker2: TDateTimePicker;

    TabSheet8: TTabSheet;

    StringGridDep: TStringGrid;

    Panel1: TPanel;

    RadioGroupCalculate: TRadioGroup;

    DBLookupComboBoxNumDeposit: TDBLookupComboBox;

    DateTimePickerEnd: TDateTimePicker;

    CheckBoxTime: TCheckBox;

    Label10: TLabel;

    Label11: TLabel;

    DBLookupComboBoxCyrrency: TDBLookupComboBox;

    CheckBoxCyrrency: TCheckBox;

    Label12: TLabel;

    DBLookupComboBoxTariff: TDBLookupComboBox;

    CheckBoxTariff: TCheckBox;

Информация о работе Разработка программного модуля начисления процентов