Для доступа к БД в C++Builder необходим источник данных, описанный компонентом DataSource. Однако, этот компонент не указывает данные на прямую, он ссылается либо на таблицу, либо на результат запроса, либо на хранимую процедуру. Соответственно в форме необходимо иметь компоненты Table, Query или StoredProc.[6]
Если в форме размещен компонент Table или Query, то для связи с ним можно использовать свойство DataSet компонента DataSource. Для данного свойства ObjectInspector перечисляет доступные наборы данных текущей формы или других форм. Наиболее простой способ доступа к данным в C++Builder заключается в использование компонента Table. Объект Table просто ссылается на таблицу БД. При этом необходимо указать имя БД в его свойстве DatabaseName. Можно ввести само имя, псевдоним или путь к каталогу с файлами таблицы ObjectInspector перечисляет допустимые имена, которые зависят от псевдонимов, установленных в DBF. Необходимо также имя файла, содержащего таблицу, в составе TableName. ObjectInspector перечисляет таблицы текущей БД (или каталога).
Работа с набором данных (таблица или запрос) может выполняться при разных состояниях, определяемых свойством State, которое может принимать несколько различных значений:
- dsBrowse обеспечивает обычный просмотр, используемый для поиска данных и предварительного просмотра записей;
- dsEdit используется для режима редактирования. Вход в это состояние происходит при вызове метода Еdit или свойства AvtoEdit компонента DataSource;
- dsInsert применяется, если в набор данных нужно добавить новую запись. Это происходит при вызове метода Insert, перемещение к последней строке компонента DB Navigator;
- dsInactive является состоянием закрытого набора данных;
- SetKey указывает на поиск в наборе данных. Это состояние имеет место между вызовом метода SetKey;
- dsCals Fieds является состоянием набора данных во времени вычисления поля (вызов обработки события On Cals Fields).
В большинстве случаев переходы между этими состояниями выполняются автоматически, однако следует иметь ввиду, что существует много событий, относящихся к переходам между состояниями.
Отображение данных в среде C++Builder осуществляется с помощью компонентов, которые похожи на обычные управляющие элементы Windows, но знают, как обращаться с данными. Все эти компоненты находятся на странице DataControls палитры DelphiComponents:
- DBGrid представляют собой сетку, способную отразить таблицу как одно целое. Он обеспечивает прокрутку и навигацию, а также редактирование содержимого сетки.
- DB Navigator представляет собой набор кнопок, и используется для навигации и выполнения действий над БД.
- DBLabel используется для отображения содержимого поля, которое нельзя модифицировать.
- DBEdit позволяет редактировать поле (изменять текущие значения).
- DBMemo используется для просмотра и модификации большого текстового поля, которое будет сохранено в памяти, или на BLOB (Binak Legre Object – большой двойной объект).
- DBImage используется для показа картинки, хранимой в поле BLOB.
- DBListBox и DBComboBox используется для выбора единственного значения из указанного множества.
- DBCheckBox используется для показа и переключения параметра, соответствующего выполнению некоторой функции.
- DBCtrlGrid представляет собой сетку для нескольких записей и может владеть набором других компонентов обработки данных. Такие компоненты дублируются для каждой записи набора данных.
Все указанные компоненты связываются с источником данных с помощью соответствующего свойства DataSource. Многие из них ссылаются на определенное поле данных источника с помощью свойства DataFiled. Допустимые значения этого свойства представляются в виде выпадающего комбинированного списка. Другие свойства компонентов страницы DataControls подобны свойствам соответствующих стандартных управляющих элементов.
Языком программирования в среде C++Builder является С++.
Структура программы, использующая объектное программирование, существенно отличается от традиционной структуры программ с жестким, заранее заданным алгоритмом. Здесь программа выглядит как совокупность, в некотором смысле, самостоятельных, обособленных блоков, выполняющих те или иные операции, а связь между ними определяется результатами предыдущих этапов и взаимодействием программы через внешние устройства с пользователем. После выполнения очередного блока программа приостанавливается и дожидается сообщения от оператора, которое через ОС Windows2000 передаётся программе.
Структурно программа формируется из модулей, выполняющих отдельные операции, входящие в состав функционального набора АРМ.
Информационное обеспечение системы «ОБМЕННЫЙ ПУНКТ» предусматривает организацию его информационной базы, регламентирует информационные связи и предопределяет состав и содержание всей системы информационного отображения.
Применительно к системы «ОБМЕННЫЙ ПУНКТ», входящего в состав автоматизированной банковской системы, первоочередной задачей при его разработке является организация внутримашинной информационной базы (ВИБ), которая представляет собой совокупность специальным образом организованных на машинных носителях массивов (файлов), баз данных и их информационных связей.
Спецификой деятельности обменного пункта является жесткая регламентация его деятельности инструкциями о порядке организации работы обменного пункта на территории РФ совершения учета валюто- обменных операций уполномоченными банками. Этими инструкциями устанавливается перечень и форма входных и выходных документов.
Входными документами при проведение валюто‑ обменных операций являются:
- распоряжение на установку курсов покупки / продажи валют в обменном пункте;
- справки на получение аванса денежных средств и документации по процедурам совершения операций и др.
Состав выходных документов следующий:
- Реестры покупки/продажи валюты.
- Справка об остатках на конец рабочего дня.
- Инструкцией разрешаются некоторые изменения формы и содержания документов.
Имея уже установленное представление входной и выходной информации, главной задачей при разработке внутримашинной информационной базы является создание структуры БД, обеспечивающей:
- простоту и удобство работы;
- соответствующие условия доступа к базам с учетом санкционированного доступа к данным;
- достаточную производительность для работы в режиме реального времени.
Современные автоматизированные банковские системы имеют состав аппаратных средств, в которую входят:
- средства вычислительной техники;
- средства телекоммуникации и связи;
- оборудование ЛВС;
- оборудование, автоматизирующее различные банковские услуги: автоматы – кассиры, терминалы торговой системы, пластиковые карты;
- средства, автоматизирующие работу с денежной наличностью.
Возможности создаваемых в рамках АБС автоматизированных рабочих мест различного уровня в значительной степени зависят от состава технических средств, их архитектуры и функциональных характеристик. Поэтому на стадии проектирования АРМ формируются требования к определенным параметрам технических средств хранения, обработки и выдачи информации, набору функциональных устройств, интерфейсам и т.д.
К особенностям АРМ «Кассир», которые должны учитываться при его техническом оснащении, относятся следующие факторы:
- работа в реальном времени;
- ежедневная настройка системы по ряду параметров;
- работа с документами строгой отчетности, в том числе распечатка в соответствующих местах нужных данных;
- работа с наличными денежными средствами;
- сравнительно небольшой объем обрабатываемой информации.
На основе вышеизложенного можно предложить следующий состав аппаратных средств:
- IBM совместимый персональный компьютер на базе микропроцессора Pentium с тактовой частотой 400‑ 630 Мгц;
- объем оперативной памяти 128 МБ;
- накопитель на жестком магнитном диске, емкостью не менее 10.0 Гб;
- лазерный принтер;
- блок бесперебойного питания;
- устройства приема / передачи данных на сервер на основе модема;
- детектор валют;
- счетчик купюр.
В состав автоматизированной системы «ОБМЕННЫЙ ПУНКТ» входит 3 АРМа:
- АРМ «КАССИР».
- АРМ «БУХГАЛТЕР».
- АРМ «АДМИНИСТРАТОР».
Каждый АРМ выполняет строго определенные функции на каждом этапе построения отчетных результирующих документов.
Обработка данных
АРМ Кассир представляет собой программный модуль с простым и понятным интерфейсом пользователя, который посредством взаимодействия с дополнительными модулями подготавливает и формирует данные для занесения в базу данных и вывода на печатающее устройство.
Вид главного окна программы представлен на рисунке 4.1
Рис. 4.1.
АРМ Кассир представляет собой программный модуль с простым и понятным интерфейсом пользователя, который посредством взаимодействия с дополнительными модулями подготавливает и формирует данные для занесения в базу данных и вывода на печатающее устройство.
Каждое поле на форме предназначено для занесения данных при совершении кассовой операции по обслуживанию клиента.
Перемещения по полям формы можно осуществлять тремя различными способами:
1. Нажатием клавиши TAB.
2. Нажатием клавиши ENTER.
3. При помощи мыши.
В поля РЕЗИДЕНТ, ДОКУМЕНТ, КОД ВАЛЮТЫ и КОД ВИДА ОПЕРАЦИИ встроены выпадающие списки, в которых данные можно выбирать при помощи мыши, либо стрелками на клавиатуре (в момент нахождения поля в фокусе).