Автоматизация работы расчетно-кассового отдела банка на основе Delphi 6: проектирование баз данных и разработка программных модулей

Содержание
Введение8
1 Принципы построения баз данных10
1. 1 Таблицы баз данных и индексы10
1. 2 Обзор компонентов, используемых для связи с базами данных13
2 Создание приложения для автоматизация работы расчетно-кассового отдела банка в среде ООП Delphi 615
2. 1 Создание главной формы приложения15
2. 2 Создание справочников15
2. 3 Реквизиты банка29
2. 4 Клиенты31
2. 5 Создание пункта меню «Кассовые документы»45
2. 6 Документы кассы45
2. 7 Документы кассы на отправку53
2. 8 Программа КассаРКО56
2. 9 Создание титульной формы программы65
Приложение А. Программные коды модулей РКО (расчетно-кассовый отдел) 66
Приложение В. Программные коды модулей Кассы РКО (касса расчетно-кассового отдела) 108
Заключение133
Список литературы135
АННО ТАЦИЯ
Диплом кіріспеден, 2 бөлімнен, қорытындыдан, қосымшадан және қолданылған әдебиеттер тізімінен тұрады. Диплом көлемі 131 беттен тұрады. Дипломдық жұмысының тақырыбы “Банктің есеп-кассалық бөлімінің жұмысын автоматтандырыру”
АННОТАЦИЯ
Диплом состоит из введения, двух разделов заключения, приложения и списка использованной литературы. Диплом состоит из 131 страницы. Тема дипломной работы - «Автоматизация работы расчетно-кассового отдела банка».
ANNOTATION
The Diploma consists of introduction, two sections, conclusions, applications and list of the used literature. The Diploma consists of 131 pages. Subject of the degree work - "Aautomation of the work of cass department of bank ".
Обозначения и сокращения
Объектно-ориентированное программирование - ООП
Программное обеспечение - ПО
Банковская система - БС
Центральный банк - ЦБ
Республика Казахстан - РК
Операционный фонд - ОФ
Расчетно-кассовый отдел - РКО
Visual Component Library - VCL
Расчетный номер налоплательщика - РНН,
Единый код платежного назначения - ЕКПН
Банковский идентификационный код - БИК
Кодов Бюджетной Классификации - КБК
Введение
Использование самых современных компьютерных технологий приносит банкам крупные прибыли и помогает им победить в конкурентной борьбе. Любая автоматизированная банковская система представляет собой сложный аппаратно-программный комплекс, состоящий из множества взаимосвязанных модулей. Совершенно очевидна роль сетевых технологий и баз данных в таких системах. В сущности Банковская Система представляет из себя комплекс, состоящий из множества локальных и глобальных вычислительных сетей. В банках сегодня применяется самое современное сетевое и телекоммуникационное оборудование. От правильного использования новых информационных технологий зависит эффективность и надежность функционирования банка.
Поскольку спрос на Банковские Системы достаточно велик, а цена высока, многие крупные компании-производители компьютерной техники и ПО предлагают на рынке свои разработки в данной области. Перед отделом автоматизации банка встает трудный вопрос выбора оптимального решения. Банковская сфера определяет два основных требования к БС - обеспечение надежности и безопасности передачи коммерческой информации. В последнее время для взаимодействия с клиентами и осуществления расчетов все чаще используются открытые глобальные сети (например Internet) . Последнее обстоятельство еще более усиливает значимость защиты передаваемых данных от несанкционированного доступа. Судя по всему, в ближайшее время темпы развития БС (особенно в нашей стране) будут стремительно расти. Практически все появляющиеся сетевые технологии будут быстро браться банками на вооружение. Неизбежны процессы интеграции банков в рамках национальных и мировых банковских сообществ. Это обеспечит постоянный рост качества банковских услуг, от которого выиграют в конечном счете все - и банки и их клиенты.
Существует 4 основные направления автоматизации банковского дела:
1. Автоматизация деятельности - внутрибанковское обслуживание:
-автоматизация учетно-операционной работы;
-автоматизация - ведения договоров;
-автоматизация - экономической работы БС (расчет нормативов,
прогнозно-аналитические работы)
-автоматизация новых банковских операций (лизинг) ;
-автоматизация работ с ЦБ.
2. Автоматизация внебанковской деятельности (обслуживание клиентуры) :
обслуживание в офисе; использование пластиковых карт.
3. Автоматизация межбанковских расчетов; межфилиальные расчеты; между банками РК; между банками РК и банками стран СНГ; м/н расчеты (использование СВИФТ) ;
4. Автоматизация внутрибанковских учетных задач: автоматизация учета труда, зарплаты; учета ОФ, материалов и пр.
Несмотря на то, что существует определенный стандарт ведения банковских операций, у каждого взятого в отдельности банка имеются свои особенности ведения банковской документации и не всегда готовое программное обеспечение способно удовлетворить эти запросы. Кроме того, не стоит забывать об очень высокой стоимости специализированного банковского программного обеспечения. В этих условиях отделы автоматизации банков находят компромиссные решения - частично используется доступное специализированное ПО, а некоторые отдельные направления автоматизируются самостоятельно.
Целью моего дипломного проекта является автоматизация расчетно-кассовых операций. Работу по выполнению расчетно-кассовых операций можно разделить на 2 части. В первой части ведется непосредственная работа с клиентом банка, создание Досье для клиента, создание счетов для клиента, ведение приходно-расходных документов, выгрузка кассовых документов по проведенным операциям. Вторая часть работы представляет собой формирование отчетных документов по выгруженным кассовым документам для передачи в бухгалтерию.
Для выполнения поставленной задачи была взята интегрированная среда разработки Delphi6. В этой среде написаны 2 программы. Программа, которая выполняет задачи, поставленные в первой части, называется RKObank. Она содержит множество форм и таблиц баз данных. А для второй части задачи написана программа KassaRKO. Эта программа содержит только одну форму и работает, не считая двух справочных файлов, практически с одним файлом, переданным из первой программы. Передача файлов осуществляется по модему.
1 Принципы построения баз данных
1. 1 Таблицы баз данных и индексы
Всегда, когда возникает потребность манипулировать большими массивами данных, используются базы данных. Коротко рассмотрим эти принципы.
База данных - это прежде всего набор таблиц, хотя иногда в базу данных могут входить также процедуры и ряд других объектов. Таблицу можно представлять себе как обычную двумерную таблицу с характеристиками (атрибутами) какого-то множества объектов. Таблица имеет имя - идентификатор, по которому на нее можно сослаться. В таблице, изображенной внизу, приведен фрагмент подобной таблицы с именем Pers, содержащей сведения о сотрудниках некоторой организации.
Таблица 1 - Структура таблицы Pers
Столбцы таблицы соответствуют тем или иным характеристикам объектов - полям . Каждое поле характеризуется именем и типом хранящихся данных. Имя поля - это идентификатор, который используется в различных программах для манипуляции данными. Он строится по тем же правилам, как любой идентификатор, т. е. пишется латинскими буквами, состоит из одного слова и т. д. Таким образом, имя - это не то, что отображается на экране или в отчете в заголовке столбца (это отображение естественно писать по-русски), а идентификатор, соответствующий этому заголовку. Например, в таблице введены для последующих ссылок имена полей Kod, Name, F_name, S_name, Data_r, Adres, Note, Foto, соответствующие указанным в ней заголовкам полей.
Тип поля характеризует тип хранящихся в поле данных. Это могут быть строки, числа, булевы значения, большие тексты (например, характеристики сотрудников), изображения (фотографии сотрудников) и т. п.
Каждая строка таблицы соответствует одному из объектов. Она называется записью и содержит значения всех полей, характеризующие данный объект.
При построении таблиц баз данных важно обеспечивать непротиворечивость информации. Обычно это делается введением ключевых полей , обеспечивающих уникальность каждой записи. Ключевым может быть одно или несколько полей. В приведенном выше примере можно былобы сделать ключевыми совокупность полей Name, F_name и S_name. Но в этом случае нельзя было бы заносить в таблицу сведения о полных олднофамильцах, у которых совпадают фамилия, имя и отчество. Поэтому в таблицу введено первое поле Kod - номер , которое можно сделать ключевым, обеспечивающим уникальность каждой записи.
При работе с таблицей пользователь или программа как бы скользит курсором по записям. В каждый момент времени есть некоторая текущая запись, с которой и ведется работа. Записи в таблице базы данных физически могут располагаться без какого-либо порядка, просто в последовательности их ввода (появления новых сотрудников) . Но когда данные таблицы предъявляются пользователю, они должны быть упорядочены. Пользователь может хотеть просматривать их в алфавитном порядке, или рассортированными по отделам, или по мере нарастания года рождения и т. п. Для упорядочивания данных используется понятие индекса. Индекс показывает, в какой последовательности желательности просматривать таблицу. Он является как бы посредником между пользователем и таблицей.
Рисунок 1 - Схема перемещения курсора по индексу
Курсор скользит по индексу, а индекс указывает на ту или иную запись таблицы. Для пользователя таблица выглядит упорядоченной, причем он может сменить индекс и последовательность просматриваемых записей изменится. Но в действительности это не связано с какой-то перестройкой самой таблицы и с физическим перемещением в ней записей. Меняется только индекс, т. е. последовательность ссылок на записи.
Индексы могут быть первичными и вторичными. Например, первичным индексом могут служить поля, отмеченные при создании базы данных как ключевые. А вторичные индексы могут создаваться из других полей как в процессе создания самой базы данных, так и позднее в процессе работы с ней. Вторичным индексам присваиваются имена - идентификаторы, по которым их можно использовать.
Если индекс включает в себя несколько полей, то упорядочивание базы данных сначала осуществляется по первому полю, а для записей, имеющих одинаковые значения первого поля - по второму и т. д. Например, базу данных персонала можно индексировать по отделам, а внутри каждого отдела - по алфавиту.
База данных обычно содержит не одну, а множество таблиц. Например, база данных о некоторой организации может содержать таблицу имеющихся в ней подразделений с характеристикой каждого из них. Пример такой таблицы с именем Dep приведен в следующей таблице:
Отдельные таблицы, конечно, полезны, но гораздо больше информации можно извлечь именно из совокупности таблиц. Например, пользователю может потребоваться узнать общее количество сотрудников, работающих в производственных цехах. Но ни одна из приведенных выше таблиц не поможет ответить на этот вопрос, поскольку в таблице Pers отсутствуют сведения о типах отделов, а в таблице Dep - о сотрудниках. Для получения ответов на подобные запросы необходимо рассмотрение совокупности связанных таблиц.
Рисунок 2 - Схема взаимодействия главной и вспомогательной таблицы
В связанных таблицах обычно одна выступает как главная, а другая или несколько других - как вспомогательные, управляемые главной. В этом случае взаимодействие таблиц иллюстрируется рисунком 2. Главная и вспомогательная таблицы связываются друг с другом ключом. В качестве ключа могут выступать какие-то поля, присутствующие в обеих таблицах. Например, в приведенных ранее таблицах головной может быть таблица Dep, а вспомогательной Pers, а связываться они могут по полю Dep, присутствующему в обеих таблицах. Курсор скользит по индексу главной таблицы. Каждой записи в главной таблице ключ ставит в соответствие в общем случае множество записей вспомогательной таблицы. Так в нашем примере каждой записи в главной таблицы Dep соответствуют те записи вспомогательной таблицы Pers, в которых ключевое поле Dep с названием отдела совпадает с названием отдела в текущей записи главной таблицы. Иначе говоря, если в текущей записи главной таблицы в поле Dep написано “Бухгалтерия”, то во вспомогательной таблице Pers выделяются все записи о сотрудниках бухгалтерии.
Создают базы данных и обрабатывают запросы к ним системы управления базами данных - СУБД. Известно множество СУБД, различающихся своими возможностями или обладающих примерно равными возможностями и конкурирующих друг с другом: Paradox, dBase, Microsoft Access, FoxPro, Oracle, InterBase, и много других.
Разные СУБД по-разному организуют и хранят базы данных. Например, Paradox и dBase используют для каждой таблицы отдельный файл. В этом случае база данных - это каталог, в котором хранятся файлы таблиц. В Microsoft Access и InterBase несколько таблиц хранятся как один файл. В этом случае база данных - это имя файла с путем доступа к нему. Системы типа клиент/сервер, такие, как серверы Sybase или Microsoft SQL, хранят все данные на отдельном компьютере и общаются с клиентом посредством специального языка, называемого SQL.
Поскольку конкретные свойства баз данных очень разнообразны, пользователю было бы весьма затруднительно работать, если бы он должен был указывать в своем приложении все эти каталоги, файлы, серверы и т. п. Да и приложение часто пришлось бы переделывать при смене, например, структуры каталогов и при переходе с одного компьютера на другой. Чтобы решить эту проблему, используют псевдонимы баз данных. Псевдоним (alias) содержит всю информацию, необходимую для обеспечения доступа к базе данных. Эта информация сообщается только один раз при создании псевдонима. А приложение для связи с базой данных использует псевдоним. В этом случае приложению безразлично, где физически расположена та или иная база данных, а часто безразлична и СУБД, создавшая и обслуживающая эту базу данных. При смене системы каталогов, сервера и т. п. ничего в приложении переделывать не надо. Достаточно, чтобы администратор базы данных ввел соответствующую информацию в псевдоним.
1. 2 Обзор компонентов, используемых для связи с базами данных
Компоненты, используемые для работы с базами данных, расположены в библиотеке компонентов на страницах Data Access (доступ к данным), BDE (проектирование базы данных) и DataControl (управление данными) .
Каждое приложение, использующее базы данных, обычно имеет, по крайней мере, по одному компоненту следующих трех типов:
- Компоненты - наборы данных (data set), непосредственно связывающиеся с базой данных. Это такие компоненты, какTable, Query, StoredProc.
- Компонент - источник данных (data source), осуществляющий обмен информацией между компонентами первого типа и компонентами визуализации и управления данными. Таким компонентом являетсяDataSource.
- Компоненты визуализации и управления данными, такие, какDBGrid, DBText, DBEditи множество других.
Связь этих компонентов друг с другом и с базой данных можно представить схемой, приведенной на рисунке внизу:
Рисунок 3 - Схема взаимодействия компонентов Delphi с базой данных
Помимо указанных компонентов в приложении может размещаться компонент Database. Этот компонент в основном используется в приложениях, работающих на платформе клиент/сервер. Его задачи связаны с общением с удаленным сервером, реализацией транзакций, работой с паролями. Компонент Database целесообразно вводить в приложении только в сравнительно редких случаях. Если он не введен явно, Delphi автоматически создает его для каждой используемой в приложении базы данных.
Еще один компонент, который тоже автоматически создает Delphi - компонент Session. Это главный компонент любого приложения, работающего с базами данных. Но в явном виде эти компоненты имеет смысл вводить только в многозадачные приложения, в которых обрабатывается несколько потоков информации.
2 Создание приложения для автоматизация работы расчетно-кассового отдела банка в среде ООП Delphi 6
2. 1 Создание главной формы приложения
Для того, чтобы управлять документами Расчетно-Кассового Отдела, создадим новое приложение с помощью команды меню File-New-Application . После выполнения этих команд откроется новая форма. С помощью Инспектора Объектов изменим свойство Name данной формы на fmMain, а в свойство Caption впишем «Автоматизация работы расчетно-кассового отдела банка»- эта надпись появится в заголовке формы. Для того чтобы создать меню, установим компонент MainMenu . C его помощью создаем меню как показано на рисунке:
Рисунок 4 - Вид формы приложения fmMain во время проектирования
Затем сохраняем проект под названием BankRKO. Расширение . dpr присваивается проекту автоматически.
2. 2 Создание справочников
Наша программа будет состоять из двух частей - РКО (расчетно-кассовый отдел) и Касса РКО (Касса расчетно-кассового отдела) .
В расчетно-кассовом отделе будут приниматься платежи по разным видам от физических и юридических лиц, будут заводиться счета для клиентов и т. д. Для этого в программе надо создать ряд таблиц, в том числе и справочных, вспомогательных, значения в которых изменяются крайне редко. С создания таких справочников мы и начнем. Справочники будут храниться в таблицах.
Таблицы создадим с помощью входящей в интегрированную среду программирования Delphi 6 программы Database Desktop . Для этого запустим в Delphi 6 эту программу с помощью команды Tools->Database Desktop.
В открывшемся окне с помощью команд меню File->New->Table создадим новую таблицу (рисунок 5) .
Рисунок 5 - Создание новой таблицы с помощью программы Database Desktop
После этой команды появится диалоговое окно, в котором надо выбрать тип таблицы. Мы выберем тип таблиц dBase IV (рисунок 6) .
Рисунок 6 - Диалоговое окно для выбора типа таблицы
После этого появится диалоговое окно, с помощью которого создается структура таблиц баз данных (рисунок 7) .
Рисунок 7 - Диалоговое окно для создания структуры таблицы
В этом окне надо ввести названия полей, указать их типы, длину полей, и если необходимо определить индексные файлы и прочее. Названия полей будем вводить в столбце Field name, типы полей - в столбце Type, длину полей укажем в столбце Size, а если поле числовое, то количество знаков после десятичной точки указываем в столбце Dec.
Первым делом создадим Справочник банков .
Для этого создадим файл bank. dbf . Его структура видна из рисунка 8.
Рисунок 8 - Структура таблицы bank. dbf
Так же для этой таблицы создадим индексный файл Kodb по одноименному полю Kodb .
... продолжение- Информатика
- Банковское дело
- Оценка бизнеса
- Бухгалтерское дело
- Валеология
- География
- Геология, Геофизика, Геодезия
- Религия
- Общая история
- Журналистика
- Таможенное дело
- История Казахстана
- Финансы
- Законодательство и Право, Криминалистика
- Маркетинг
- Культурология
- Медицина
- Менеджмент
- Нефть, Газ
- Искуство, музыка
- Педагогика
- Психология
- Страхование
- Налоги
- Политология
- Сертификация, стандартизация
- Социология, Демография
- Статистика
- Туризм
- Физика
- Философия
- Химия
- Делопроизводсто
- Экология, Охрана природы, Природопользование
- Экономика
- Литература
- Биология
- Мясо, молочно, вино-водочные продукты
- Земельный кадастр, Недвижимость
- Математика, Геометрия
- Государственное управление
- Архивное дело
- Полиграфия
- Горное дело
- Языковедение, Филология
- Исторические личности
- Автоматизация, Техника
- Экономическая география
- Международные отношения
- ОБЖ (Основы безопасности жизнедеятельности), Защита труда
