Справочник "Банк России"

Разработка программного обеспечения справочника "Банка России". Основные компоненты банка данных. Классификация банка данных по основной компоненте БД. Этапы проектирования БД. Суть языка программирования FoxPro, основные термины, команды и функции.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 07.12.2011
Размер файла 34,7 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

ДАГЕСТАНСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

Факультет: Информатики Управления и Сервиса

Кафедра: Информационных Систем в Экономике

КУРСОВАЯ РАБОТА

«База данных и знаний»

Справочник "Банк России"

Выполнил программу

ст-т 3 курса

826 группы

спец-ть "ИСвЭ"

Магомедов М.М.

Махачкала 2001г.

Введение

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

ОСНОВНЫЕ РАЗДЕЛЫ ПРОЕКТА

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

1. адекватность отображения предметной области;

2. возможность взаимоотношения пользователей различных категорий;

3. удобный интерфейс, позволяющий пользователю быстро освоить систему;

4. обеспечение секретности и конфиденциальности части данных;

5. обеспечение взаимной независимости программ;

6. обеспечение надежности функционирования банка данных.

Основные компоненты банка данных:

Ядром банка данных является БД.

1). БД - это поименованная совокупность взаимосвязанных данных, находятся под управлением СУБД.

2). Следующим компонентом является программные средства, представляющие собой сложный комплекс, обеспечивающий взаимодействие всех частей информационной системы. Основы программных средств составляет СУБД.

3). Технические средства банка данных.

4). Организационно - методические средства, представляют собой различные инструкции, методические и регламентирующие материалы.

5). Пользователи банка данных. Пользователи делятся на администраторов банка данных и конечных пользователей.

Администраторы - это специалисты, участвующие в создании и функционировании банка данных.

Конечные пользователи - это пользователи для нужд, которых и создаётся банк данных. Конечные пользователи могут быть случайными и постоянными.

Банки данных являются сложными системами, и их классификация может быть произведена по разным признакам. Один из этих признаков относится к банку данных в целом, а другие к его компонентам.

Классификация банка данных по основной компоненте БД:

1) по форме представления данных - видео, аудио и мультимедиа;

2) по типу используемой модели сетевой, иерархической и реляционной.

Классификация по СУБД:

1) по языкам общения СУБД;

2) по выполняемым функциям СУБД - информационные и операционные.

Классификация банка данных в целом:

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

платные банки данных делятся: коммерческие и бесприбыльные.

2) По форме собственности банки данных делятся: государственные и негосударственные.

3) По степени доступности данных - общедоступные и с ограниченным доступом к данным.

Этапы проектирования БД

В БД отражается определённая информация о предметной области.

Предметной областью называется часть реального мира, представляющая интерес для данного исследования.

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

Даталогическая модель

Даталогическая модель является моделью логического уровня и представляет собой отображение логической связи между элементами данных. Эта модель строится в единицах допустимых к конкретной СУБД. Описание логической структуры с помощью средств СУБД назывется схемой. Для привязывания даталогической модели в среде хранения данных используется модель данных физического уровня. Эта модель определяет используемое запоминающее устройство, способ представления данных в среде хранения. Модель физического уровня строится также с учетом возможности предоставленных СУБД. Описание физической модели базы данных называется схемой хранения. Соответствующий этап называется физическим проектированием.

Инфологическая модель

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

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

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

Инфологическая модель должна легко воспринимать различных пользователей. Желательно, чтобы ИЛМ строил специалист данной области, или же необходимо проконсультироваться. Нельзя сказать, что в настоящее время существует какой-либо стандарт или хотя бы общепринятый способ построения инфологической модели. Для описания инфологической модели используются как языки описательного типа, так и графические средства. Последнее, в настоящее время, приобретает все большую популярность. Существует ряд средств автоматизации для проектирования, которых исходные данные представляются в виде совокупности графических схем. Графическое представление является наиболее наглядным и простым для восприятия и анализа, поэтому мы воспользуемся в дальнейшем именно графическим способом отображения модели - объект свойство, отношение. В предметной области в процессе обследования и анализа, выделяют классы объектов. Классом объектов называют совокупность объектов обладающих одинаковым набором свойств.

При отражении в информационной системе, каждый объект представляется идентификационным, который отличает один объект класса от другого, а каждый класс объекта представляется своим именем. Каждый объект класса обладает определенным набором свойств. Для объектов одного класса набор этих свойств одинаков, а их значение естественно может быть разным. При описании предметной области надо отобразить связи между объектом и характеризующим его свойством. Связь изображается в виде линии соединяющей его свойства и объект. Связь между объектом и его свойством может быть различной, если объект обладает единственным значением свойства, то связь называется единичной и изображается в виде стрелки. Если объект обладает множеством значений свойства, то связь называется множественной и изображается в следующем виде. Кроме того, некоторые свойства являются постоянными, если их значения не меняются со временем. Такое свойство называется статическим, а свойства, значение которых может изменяться со временем, называется динамическим, и эти свойства обозначаются: S - статическое, D - динамическое.

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

Эта часть содержит ряд тем, которые помогут Вам использовать процедурный язык, включая объяснение соглашений, которые мы используем, чтобы описать синтаксис и правильное применение команд и функций FoxPro. В дополнение к этому обсуждается использование множественных баз данных, контекста записи и приоритета операций. Есть также описания компиляции программ, выполнения программ, сообщений об ошибках.

Важные термины

Чтобы облегчить себе изучение правильного синтаксиса командных операторов, ознакомьтесь с основными терминами.

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

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

Функция - предварительно программируемое вычисление, которое может быть выполнено по требованию из любой точки в FoxPro. Функции могут использоваться в выражениях, если результаты представляются в виде соответствующего типа данных. Просмотрите главу «Функции» для получения полной информации по индивидуальным функциям.

Оператор - это символ или последовательность символов, определяющие операцию, которая должна быть произведена над одним или несколькими значениями для получения результата. Операторы FoxPro и порядок их приоритетов рассматриваются в пункте «Операторы» этой главы.

Многие команды и функции FoxPro требуют использования выражений. Выражение - это комбинация операндов (переменных памяти, полей базы данных, констант, функций) и операторов, которые, будучи вычисленными, имеют результатом один из следующих типов данных - символьные, числовые, логические данные или в виде даты. Большинство команд и функций требуют выражения, которые производят определенный тип данных. Однако такие команды, как STORE и? допускают любой тип выражения. Операнды, входящие в выражение, должны быть такого типа данных (кроме выражений типа «дата»), которые могут содержать и дату, и числовые операнды. Некоторые команды и функции требуют список выражений, представляющий собой одно или несколько выражений, разделенных между собой.

Одно из наиболее общих выражений, с которыми Вы будете работать в FoxPro - это символьное выражение (<expC>). Символьное выражение - это набор символьных данных, который рассматривается как отдельная единица. Очень важно всякий раз, когда появляется литеральная символьная строка там, где требуется символьное выражение, заключать команды или функцию внутри ограничителей - обычно, в кавычки. В качестве ограничителей могут использоваться либо одиночная кавычка, либо двойные кавычки при условии, что соответствующие метки используются для любого одиночного выражения. Т.е., Вы не можете начать текст в кавычках одиночной кавычкой и закончить его двойными кавычками.

Команды и функции по категориям

Эта глава представляет команды и функции FoxPro в сокращенной форме, сгруппированные по типу операции, которую они выполняют. Hекоторые из элементов появляются более, чем 1 раз, если их операции логически попадают более, чем в одну категорию. Для полной информации и примеров, как использовать любую из этих команд и функций, просмотрите алфавитные списки в следующих двух главах.

Вот эти категории:

- символьные функции

- числовые функции

- функции даты и времени

- логические функции

- функции поля и базы данных

- функции изменения данных

- манипуляции переменными памяти

- манипуляции областями (массивами)

- команды и функции среды

- манипуляции базой данных

- манипуляции записями

- индексы

- связи

- управление файлами

- команды структурного программирования

- поддержка ошибок и отладки

- программное выполнение

- обработка событий

- вход и выход файла низкого уровня

- форматирование данных

- распечатка

- меню

- окна

- клавиатурное взаимодействие

Описание команд

ACTIVATE MENU Вывод на дисплей и активация линейки меню Формат: ACTIVATE MENU <имя1> [PAD <имя2>]

Данная команда работает в сочетании с командами DEFINE MENU и DEFINE PAD. Две эти команды определяют линейку меню, которая может располагаться на экране горизонтально или вертикально.

Команда ACTIVATE MENU вызывает на экран или в окно ранее определенную линейку меню, помеченную как <имя1>, и активирует ее для использования.

После активации меню вы можете переходить между элементами линейки при помощи клавиш-стрелок Вправо и Влево. Для перемещения между опциями соответствующих элементам линейки всплывающих меню служат клавиши-стрелки Вверх и Вниз. Опция всплывающего меню становится выбранной, если в момент, когда она выделена, нажать Enter или кнопку мыши. Для деактивации всплывающего меню без выполнения выбора нужно нажать Esc. Деактивировать меню можно также командой DEACTIVATE MENU или активировав другую линейку меню.

Если используется необязательное предложение PAD <имя2>, то при выводе на дисплей выделен будет элемент линейки, указанный в <имя2>. Если это предложение опущено, то выделен будет первый элемент.

ACTIVATE POPUP Вывод на дисплей и активация всплывающего меню Формат: ACTIVATE POPUP <имя>Данная команда активации меню работает в сочетании с командами DEFINE POPUP и DEFINE BAR. Эти две команды определяют всплывающее меню, которое затем может быть выведено в любой позиции крана.

Команда ACTIVATE POPUP вызывает определение, ранее всплывающее меню с именем <имя>, которое затем размещается на экране или в окне и активируется для последующего использования. После активации всплывающего меню вы можете переходить между составляющими его опциями при помощи клавиш-стрелок Вверх и Вниз.

Опция меню считается выбранной, если в момент, когда она выделена, нажать Enter или кнопку мыши. Для деактивации всплывающего меню без выбора следует нажать Esc. Всплывающее меню также может быть деактивировано командой DEACTIVATE POPUP, либо при активации другого всплывающего меню.

ACTIVATE WINDOW Вывод на дисплей и активация окна Формат: ACTIVATE WINDOW[[<имя1>]

[,<имя2>][,...]] | ALL

[BOTTOM | TOP | SAME][NOSHOW]

Данная команда выводит на дисплей и активирует ранее определенное пользователем окно или окна. Активация окна означает направление всего экранного вывода на данное окно.

Окна пользователя создаются и определяются командой DEFINE WINDOW. При определении окон их имена добавляются к нижней части всплывающего меню WINDOW. Окно, определенное первым, будет находиться в вершине этого списка, а далее будут следовать остальные окна в порядке их определения. Окно, на которое в текущий момент направлен вывод, помечено. Одновременно на экране может находиться несколько окон, однако вывод будет направлен на окно, активированное последним.

При наличии более чем одного окна деактивация текущего окна вывода вызовет его удаление с экрана с перенаправлением вывода на окно, которое было активировано до него. Если окна вывода активны, то вывод происходит на экран.

BROWSE Полноэкранное редактирование базы данных Формат: BROWSE

[FIELDS <список_полей>]

[FORMAT]

[FREEZE <поле>]

[LAST]

[NOAPPEND]

[NOCLEAR]

[NODELETE]

[NOEDIT | NOMODIFY]

[NOFOLLOW]

[NOMENU]

[NORMAL]

[NOWAIT]

[PREFERENCE=<выражC>]

[SAVE]

[WIDTH <выражN>]

[WINDOW <имя>]

BROWSE - это одна из самых полезных команд в FoxPro. Она используется для открытия окна и вывода на дисплей записей базы данных. При этом вы легко можете редактировать записи и добавлять новые. Одновременно может быть открыто до 10 окон BROWSE (по одному на каждую рабочую область). Информацию о работе с окнами BROWSE см. в главе "Руководство по интерфейсу с пользователем" в Руководстве пользователя FoxPro.

Вы можете сохранить любые внесенные вами изменения и выйти из команды BROWSE, нажав Ctrl-W или Ctrl-End, либо нажав кнопку мыши на поле закрытия команды. Нажав Ctrl-Q или Esc, вы можете выйти из команды без сохранения сделанных изменений.

В окне BROWSE можно редактировать поля памяти типа memo.

Для этого нужно выбрать такое поле и нажать Ctrl-PgDn. Если у вас есть мышь, то для открытия поля памяти для редактирования достаточно два раза нажать кнопку, находясь над этим полем. Для выхода из редактирования поля памяти с сохранением внесенных изменений нажмите Ctrl-W или кнопку мыши на поле закрытия команды. Если вы хотите выйти без сохранения изменений, нажмите клавишу Esc, Команда BROWSE поддерживает многочисленные опции. Ниже водится список этих опций с кратким описанием.

FIELD <список_полей> Если задано предложение FIELDS, то на дисплей выводятся только те поля, что указаны в <списке_ полей> и именно в том порядке, в котором они перечислены в списке. Если предложение FIELDS не используется, то выводятся все поля базы данных в последовательности их расположения в структуре базы данных.

DEACTIVATE MENU

Формат: DEACTIVATE MENU

Команда DEACTIVATE MENU удаляет активное меню с экрана, но не из памяти. Одновременно активным может являться только одно меню, поэтому указывать имя меню нет необходимости. Меню можно повторно активировать командой ACTIVATE MENU с именем меню.

Для освобождения конкретного меню из памяти следует дать команду RELEASE MENUS с именем меню. Команды CLEAR ALL и CLEAR MENUS позволяют освободить из памяти все меню.

Команда DEACTIVATE MENUS выполняется только из программных файлов. Управление программой затем возвращается в строку программы, непосредственно после строки, активировавшей меню. Из командного окна команда DEACTIVATE MENU не действует.

DEACTIVATE POPUP Деактивация всплывающего меню и удаление его с экрана Формат: DEACTIVATE POPUP Команда DEACTIVATE POPUP удаляет активное всплывающее меню с экрана или из окна, оставляя его в памяти. Одновременно может быть активным только одно всплывающее меню, поэтому задавать его имя нет необходимости. Для повторной активации всплывающего меню следует дать команду ACTIVATE POPUP с именем всплывающего меню.

Для освобождения конкретного всплывающего меню из памяти следует дать команду RELEASE MENUS с именем меню. Команды CLEAR POPUPS и CLEAR ALL позволяют освободить из памяти все всплывающие меню.

Команда DEACTIVATE POPUP выполняется только из программных файлов. Управление программой затем возвращается в строку про граммы, непосредственно после строки, активировавшей всплывающее меню. Из командного окна команда DEACTIVATE POPUP не действует.

DEACTIVATE WINDOW

Деактивация окон и удаление их с экрана

Формат: DEACTIVATE WINDOW <имя1>[,<имя2>]

[,...] | ALL

Команда DEACTIVATE WINDOW деактивирует активное окно или набор активных окон и удаляет их с экрана. Окно или окна при этом не удаляются из памяти и могут быть снова вызваны на дисплей при помощи команд ACTIVATE WINDOW или SHOW WINDOW.

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

Вы можете деактивировать как отдельное окно, так и набор окон, либо задав для этого одно имя окна, либо включив в <список> имена нескольких окон. При использовании команды DEACTIVATE WINDOW ALL деактивируются все активные окна.

Активные окна могут быть удалены с экрана и из памяти командами CLEAR WINDOWS или RELEASE WINDOWS.

DEFINE BAR Определение опции всплывающего меню формат: DEFINE BAR <выраж N> OF <имя> PROMPT <выраж C1>

[MESSAGE <выражC2>][SKIP[FOR<выражL>]]

Команда DEFINE BAR добавляет опцию всплывающего меню. DEFINE BAR используется совместно с командами DEFINE POPUP и ACTIVATE POPUP для создания всплывающего меню и вывода его на экран. Прежде чем можно будет пользоваться командой DEFINE BAR, необходимо определить само всплывающее меню командой DEFINE POPUP. Меню можно убрать с экрана командой DEACTIVATE POPUP, либо и с экрана и из памяти командами CLEAR ALL, CLEAR POPUPS или RELEASE POPUPS.

DEFINE MENU Создание линейки меню формат:

DEFINE MENU <имя>[MESSAGE<выражC>]Команда DEFINE MENU создает линейку меню и назначает ей имя

После того, как линейка меню определена, вы можете при помощи команды DEFINE PAD определять элементы линейки меню.

DEFINE PAD Определение элемента линейки меню формат: DEFINE PAD <имя> OF <имя_меню> PROMPT <выражC1> [AT <строка>,<столбец>] [MESSAGE<выражC2>]Команда DEFINE PAD служит для помещения в линейку меню элементов меню. Эта команда используется совместно с командой DEFINE MENU, обычно при создании системы меню. Перемещения между элементами линейки меню выполняются при помощи клавиш управления курсором или мыши.

ON SELECTION PAD Hазначает подпрограмму на поле меню.

Формат: ON SELECTION PAD < имя поля >

OF < имя меню > [ < команда > ]

Команда ON SELECTION PAD назначает подпрограмму на поле меню.

Подпрограмма, которая будет выполняться при выборе поля меню, может быть командой, программой или процедурой.

ACTIVATE MENU Вывод на дисплей и активация линейки меню формат: ACTIVATE MENU <имя1> [PAD <имя2>]Данная команда работает в сочетании с командами DEFINE MENU и DEFINE PAD. Две эти команды определяют линейку меню, которая может располагаться на экране горизонтально или вертикально.

Команда ACTIVATE MENU вызывает на экран или в окно ранее определенную линейку меню, помеченную как <имя1>, и активирует ее для использования.

CLEAR MENUS освобождает все меню из памяти, а также с экрана или из окон.

PROCEDURE. Определяет начало подпрограммы Формат: PROCEDURE < имя > Во многих программах некоторые подпрограммы часто повторяются.

Для уменьшения размера и сложности программ определите эти общеупотребительные подпрограммы как процедуры. Здесь мы будем называть эти процедуры подпрограммами.

Подпрограммы могут располагаться как внутри сомой программы, так и в отдельном файле процедур. Если вы часто используете большое количество подпрограмм, то вы можете захотеть расположить их в отдельном программном файле. Программный файл может содержать до 1170 отдельных подпрограмм.

QUIT

Завершает сеанс Fox-Pro.

Формат: QUIT

Команда QUIT используется для завершения текущего сеанса Fox-Pro и возвращает управление в DOS.

SCATTER

Перемещение данных из отдельной записи базы данных в массив или множество переменных памяти Формат

SCATTER [ FIELDS <field_list> ]

TO <array> | MEMVAR | BLANK

Команда SCATTER перемещает данные из текущей записи базы данных в массив переменных памяти или в множество переменных памяти. Этот массив или переменные памяти могут быть отредактированы, и запись может получить новое содержимое из 35-го отредактированного массива переменных памяти или из множества переменных памяти. Команда GATHER запускает перемещение информации из массивов или из переменных памяти в записи базы данных.

Программа на FoxPro

**Программа является головным файлом, ибо в нем определяют

**назначения клавиш, подключают и индексируют файлы баз данных,

*определяются окна, горизонтальное и вертикальные типы меню.

SET TALK OFF

SET DATE GERMAN

CLEAR ALL

SET DELETED ON

SET ESCAPE OFF

SET HELP OFF

SET BELL OFF

CLEAR MACROS

ON KEY

ENDTEXT

Key=INKEY(5)

DELETE FILE bbd.idx

DELETE FILE nbd.dat

USE bank

INDEX ON nom TO bbd COMPACT

USE gni

INDEX ON nom TO nbd COMPACT

USE bank IN a INDEX bbd

USE gni IN b INDEX nbd

SELECT a

SET RELATION TO nom INTO b

*-----------------назначение клавиш-----------------------

ON KEY LABEL ctrl+pgup GO TOP

ON KEY LABEL ctrl+pgdn GO BOTTOM

ON KEY LABEL ctrl+p DO prin

ON KEY LABEL ctrl+n DO vvod

ON KEY LABEL ctrl+d DO del

ON KEY LABEL F1 DO help

*------------------описание окон------------------------------

DEFINE WINDOW first FROM 1,1 TO 22,76 IN SCREEN;

TITLE 'Справочник Банки России';

DOUBLE SHADOW FILL ' ';

COLOR GR+

DEFINE WINDOW second FROM 0,1 TO 14,71 IN WINDOW first;

DOUBLE SHADOW

DEFINE WINDOW third FROM 16,1 TO 18,71 IN WINDOW first;

TITLE 'Строка подсказки';

DOUBLE SHADOW;

COLOR GR+/GR

DEFINE WINDOW f1 FROM 3,3 TO 17,50 COLOR W+/G

DEFINE WINDOW poisk FROM 7,28 TO 9,55 TITLE 'Укажите ключ'

*------------------описание меню-------------------------

SET MESSAGE WINDOW first

DEFINE MENU file BAR AT LINE 1 IN WINDOW first COLOR SCHEME 10

DEFINE PAD prosm OF file PROMPT '\<База данных';

MESSAGE 'Работа с базами данных'

DEFINE PAD poisk OF file PROMPT '\<Поиск данных';

MESSAGE 'Поиск данных по ключу'

DEFINE PAD filtr OF file PROMPT '\<Фильтрация данных';

MESSAGE 'Фильтр просмотра данных'

DEFINE PAD quit OF file PROMPT '\<Выход из программы';

MESSAGE 'Выход из программы'

ON SELECTION PAD prosm OF file ACTIVATE POPUP prosm

ON SELECTION PAD poisk OF file ACTIVATE POPUP poisk

ON SELECTION PAD filtr OF file ACTIVATE POPUP filtr

ON SELECTION PAD quit OF file ACTIVATE POPUP quit

DEFINE POPUP prosm FROM 2,1 COLOR SCHEME 10

DEFINE BAR 1 OF prosm PROMPT 'BROWSE';

MESSAGE 'Просмотр данных без внесения изменений'

DEFINE BAR 2 OF prosm PROMPT 'Редактирование';

MESSAGE 'Просмотр данных с возможностью изменения'

ON SELECTION BAR 1 OF prosm DO read

ON SELECTION BAR 2 OF prosm DO look

DEFINE POPUP poisk FROM 2,15 COLOR SCHEME 10

DEFINE BAR 1 OF poisk PROMPT 'По коду ГНИ';

MESSAGE 'Поиск данных по коду Гос-ой Налоговой Инспекции'

DEFINE BAR 2 OF poisk PROMPT 'По БИКу';

MESSAGE 'Поиск данных по банковскому идентификационному коду'

DEFINE BAR 3 OF poisk PROMPT 'По названию';

MESSAGE 'Поиск данных по названию банка'

ON SELECTION POPUP poisk DO poisk

DEFINE POPUP filtr FROM 2,35 COLOR SCHEME 10

DEFINE BAR 1 OF filtr PROMPT 'По названию';

MESSAGE 'Просмотр банков по названию'

DEFINE BAR 2 OF filtr PROMPT 'По адресу';

MESSAGE 'Просмотр банков по адресу'

DEFINE BAR 3 OF filtr PROMPT 'По руководителю банка';

MESSAGE 'Просмотр банков по руководителю'

DEFINE BAR 4 OF filtr PROMPT 'По БИКу';

MESSAGE 'Просмотр банков по банковскому идентификационному коду'

ON SELECTION POPUP filtr DO filtr

DEFINE POPUP quit FROM 2,50 COLOR SCHEME 10

DEFINE BAR 1 OF quit PROMPT 'Выход в FoxPro'

DEFINE BAR 2 OF quit PROMPT 'Выход в Ms-Dos'

ON SELECTION POPUP quit do end

ACTIVATE WINDOW first

ACTIVATE MENU file

RETURN

**Дает возможность пользователю выбрать между принтером и файлом

**при выводе информации программой PRIN.PRG

PROCEDURE CHOICE

y=BAR()

DO CASE

CASE y=1

SET PRINTER TO info.dat ADDITIVE

SET PRINTER ON

?' '

?' Порядковый номер : ',a.nom

?' Б И К : ',a.bik

?' Название банка : ',a.naim_b

?' Руководитель банка : ',a.ruk_b

?' Телефон банка : ',a.telefon

?' Адрес банка : ',a.adres

?' Расчётный счёт : ',a.r_schet

?' Код ГНИ : ',b.kod_gni

?' Название ГНИ : ',b.naim_gni

?' Адрес ГНИ : ',b.adres_gni

?' Телефон ГНИ : ',b.telefon_g

?' Поставлен на учёт : ',a.post_uch

?'---------------------------------------------'

SET PRINTER OFF

CASE y=2

SET PRINTER TO LPT1

IF PRINTSTATUS()

SET PRINTER ON

SET PRINTER OFF

?' '

?' Порядковый номер : ',a.nom

?' Б И К : ',a.bik

?' Название банка : ',a.naim_b

?' Руководитель банка : ',a.ruk_b

?' Телефон банка : ',a.telefon

?' Адрес банка : ',a.adres

?' Расчётный счёт : ',a.r_schet

?' Код ГНИ : ',b.kod_gni

?' Название ГНИ : ',b.naim_gni

?' Адрес ГНИ : ',b.adres_gni

?' Телефон ГНИ : ',b.telefon_g

?' Поставлен на учёт : ',a.post_uch

?'---------------------------------------------'

ELSE

WAIT 'Принтер не готов' WINDOW NOWAIT

ENDIF

ENDCASE

DEACTIVATE POPUP choice

RETURN

**Программа выдает запрос о подтверждении удаления и только после

**подтверждения удаляет ее полностью

PROCEDURE DEL

WAIT 'Вы действительно хотите удалить запись (ДА-любая клавиша,НЕТ-ESC)?' WINDOW

n=RECNO()

IF LASTKEY()#27

SELECT a

DELETE

PACK

**SELECT b

** GO n

**DELETE

** PACK

ELSE

ENDIF

SELECT a

DO look

DEACTIVATE POPUP

RETURN

банк данный справочник

**Программа осуществляет закрытие всех активных файлов, очистку

**окон, меню, экрана, а также включает возможность получения

**справки при нажатии клавиши F1.

PROCEDURE END

y=BAR()

do case

case y=1

*CLOSE ALL

ON KEY

SET HELP ON

DEACTIVATE WINDOW ALL

DEACTIVATE MENU

DEACTIVATE POPUP

CLEAR ALL

cancel

case y=2

quit

endcase

**----------Процедура FILTER.PRG----------------

PROCEDURE filtr

SET CURSOR ON

y=BAR()

DO CASE

CASE y=1

ACTIVATE WINDOW poisk

@ 0,2 GET a DEFAULT SPACE(15)

READ

a=zag(ALLTRIM(a),.f.)

SET FILTER TO a.Naim_b=a

CASE y=2

ACTIVATE WINDOW poisk

@ 0,2 GET a DEFAULT SPACE(10)

READ

a=zag(ALLTRIM(a),.f.)

SET FILTER TO a.Adres=a

CASE y=3

ACTIVATE WINDOW poisk

@ 0,2 GET a DEFAULT SPACE(20)

READ

a=zag(ALLTRIM(a),.f.)

SET FILTER TO a.Ruk_b=a

CASE y=4

ACTIVATE WINDOW poisk

@ 0,2 GET a DEFAULT SPACE(10)

READ

a=zag(ALLTRIM(a),.f.)

SET FILTER TO a.Bik=a

ENDCASE

DEACTIVATE WINDOW poisk

DO read

RETURN

**--------Процедура HELP.PRG--------

**Программа осуществляет вывод окна, в котором выводится

**контекстная справка о горячих клавишах, используемых

**в программе.

PROCEDURE HELP

PUSH KEY CLEAR

SET CURSOR OFF

ACTIVATE WINDOW f1

TEXT

^N - дополнение базы новой записью

^D - удаление текущей записи

^P - вывод/печать текущей записи

--------------------------------------------

^PgUp - переход в начало базы

^PgDn - переход в конец базы

--------------------------------------------

^Q - выход из окна редактирования

(внесенная информация сохраняется)

Esc - то же, но информация не сохраняется

ENDTEXT

WAIT ''

DEACTIVATE WINDOW f1

SET CURSOR ON

POP KEY

RETURN

**Программа осуществляет вывод базы данных во втором окне.

**Изменяются имена полей, осуществляется контроль выхода

**из поля.

**Функция HLP осуществляет вывод строки подсказки о назначении

**текущего поля в третьем окне.

PROCEDURE LOOK

SET CURSOR ON

ACTIVATE WINDOW third

GO TOP

BROWSE TITLE 'F1 - вызов окна помощи';

FIELDS a.nom :H=' №' :W=hlp(),;

a.bik :H='БИК' :W=hlp(),;

a.naim_b :H='Название банка ' :W=hlp(),;

a.ruk_b :H='Руководитель' :W=hlp(),;

a.telefon :H='Телефон банка' :W=hlp(),;

a.adres :H='Адрес банка' :W=hlp(),;

a.r_schet :H='Расчётный счёт' :W=hlp(),;

b.kod_gni :H='Код ГНИ ' :W=hlp(),;

b.naim_gni :H='Название ГНИ ' :W=hlp(),;

b.adres_gni :H='Адрес ГНИ ' :W=hlp(),;

b.telefon_g :H='Телефон ГНИ ' :W=hlp(),;

a.post_uch :H='Поставлен на учёт ' :W=hlp();

WINDOW second COLOR W/GR

DEACTIVATE WINDOW third

DEACTIVATE POPUP

RETURN

*---------------функция вывода строки-подсказки-------------------

function hlp

set cursor off

@0,1 FILL to 0,70 color GR/GR

DO CASE

CASE VARREAD()='Nom'

@0,1 SAY 'Порядковый номер '

CASE VARREAD()='Bik'

@0,1 SAY 'Банковский идентификационный код'

CASE VARREAD()='Naim_b'

@0,1 SAY 'Название банка'

CASE VARREAD()='Ruk_b'

@0,1 SAY 'Руководитель банка'

CASE VARREAD()='Telefon'

@0,1 SAY 'Телефон банка'

CASE VARREAD()='Adres'

@0,1 SAY 'Адрес банка'

CASE VARREAD()='R_schet'

@0,1 SAY 'Расчетный счёт банка'

CASE VARREAD()='Kod_gni'

@0,1 SAY 'Код ГНИ '

CASE VARREAD()='Naim_gni'

@0,1 SAY 'Название ГНИ '

CASE VARREAD()='Adres_gni'

@0,1 SAY 'Адрес ГНИ '

CASE VARREAD()='Telefon_g'

@0,1 SAY 'Телефон ГНИ '

CASE VARREAD()='Post_uch'

@0,1 say 'Дата установления на учёт в ГНИ '

ENDCASE

**Программа осуществляет возможность поиска.

**В случае удачи запись выводится программой

**PRIN в дополнительном окне, иначе выводится сообщение об

**не удачном поиске.

PROCEDURE POISK

PUSH KEY CLEAR

y=BAR()

ACTIVATE WINDOW poisk

DO CASE

CASE y=1

@ 0,2 GET a PICTURE '99999' DEFAULT 0

READ

LOCATE FOR a.kod_gni=a

CASE y=2

@ 0,2 GET a PICTURE '9999999999' DEFAULT 0

READ

LOCATE FOR a.bik=a

CASE y=3

@ 0,2 GET a DEFAULT SPACE(15)

READ

a=zag(ALLTRIM(a),.f.)

LOCATE FOR a.naim_b=a

ENDCASE

IF !FOUND()

WAIT 'ПОИСК НЕ УДАЧНЫЙ' WINDOW

ELSE

DO prin

ENDIF

DEACTIVATE WINDOW poisk

DEACTIVATE POPUP poisk

POP KEY

RETURN

**Программа производит вывод записи в дополнительном окне и

**дает возможность осуществить дальнейшую работу по выводу

**записи в файл или на принтер.

PROCEDURE PRIN

SET CURSOR OFF

PUSH KEY CLEAR

DEFINE POPUP choice FROM 2,18 COLOR SCHEME 10

DEFINE BAR 1 OF choice PROMPT 'вывод данных в файл'

DEFINE BAR 2 OF choice PROMPT 'вывод данных на принтер'

ON SELECTION POPUP choice DO choice

DEFINE WINDOW prin FROM 6,8 TO 17,67 TITLE 'Информация о клиенте';

DOUBLE SHADOW COLOR GR+/GR

ACTIVATE WINDOW prin

?' Порядковый номер : ',a.nom

?' Б И К : ',a.bik

?' Название банка : ',a.naim_b

?' Имя руководителя : ',a.ruk_b

?' Телефон банка : ',a.telefon

?' Адрес банка : ',a.adres

?' Расчётный счёт : ',a.r_schet

?' Код ГНИ : ',b.kod_gni

?' Название ГНИ : ',b.naim_gni

?' Адрес ГНИ : ',b.adres_gni

?' Телефон ГНИ : ',b.telefon_g

?' Поставлен на учёт : ',a.post_uch

WAIT 'Любая клавиша - ЗАПИСЬ, Esc - ОТКАЗ' WINDOW

IF LASTKEY()#27

ACTIVATE POPUP choice

ENDIF

RELEASE WINDOW prin

POP KEY

RETURN

**Программа осуществляет вывод базы данных во втором окне.

**Данные разрешены только к просмотру.

**Функция HLP осуществляет вывод строки подсказки о назначении

**текущего поля в третьем окне.

PROCEDURE READ

SET CURSOR ON

PUSH KEY CLEAR

ACTIVATE WINDOW third

GO TOP

BROWSE FIELDS a.nom :H=' №' :W=hlp(),;

a.bik :H='БИК' :W=hlp(),;

a.naim_b :H='Название банка ' :W=hlp(),;

a.ruk_b :H='Руководитель' :W=hlp(),;

a.telefon :H='Телефон банка' :W=hlp(),;

a.adres :H='Адрес банка' :W=hlp(),;

a.r_schet :H='Расчётный счёт' :W=hlp(),;

b.kod_gni :H='Код ГНИ' :W=hlp(),;

b.naim_gni :H='Название ГНИ' :W=hlp(),;

b.adres_gni :H='Адрес ГНИ' :W=hlp(),;

b.telefon_g :H='Телефон ГНИ' :W=hlp(),;

a.post_uch :H='Поставлен на учёт' :W=hlp();

NOAPPEND NODELETE NOMODIFY;

WINDOW second COLOR W/GR

SET FILTER TO

POP KEY

DEACTIVATE WINDOW third

DEACTIVATE POPUP

RETURN

*---------------функция вывода строки-подсказки-------------------

function hlp

set cursor off

@0,1 FILL to 0,70 color GR/GR

DO CASE

CASE VARREAD()='Nom'

@0,1 SAY 'Порядковый номер '

CASE VARREAD()='Bik'

@0,1 SAY 'Банковский идентификационный код'

CASE VARREAD()='Naim_b'

@0,1 SAY 'Название банка'

CASE VARREAD()='Ruk_b'

@0,1 SAY 'Руководитель банка'

CASE VARREAD()='Telefon'

@0,1 SAY 'Телефон банка'

CASE VARREAD()='Adres'

@0,1 SAY 'Адрес банка'

CASE VARREAD()='R_schet'

@0,1 SAY 'Расчетный счёт банка'

CASE VARREAD()='Kod_gni'

@0,1 SAY 'Код ГНИ'

CASE VARREAD()='Naim_gni'

@0,1 SAY 'Название ГНИ '

CASE VARREAD()='Adres_gni'

@0,1 SAY 'Адрес ГНИ'

CASE VARREAD()='Telefon_g'

@0,1 SAY 'Телефон ГНИ'

CASE VARREAD()='Post_uch'

@0,1 say 'Дата установления на учёт в ГНИ '

ENDCASE

**Программа дополняет файл GOST.DBF и VREM.DBF новой записью.

PROCEDURE VVOD

SET CURSOR ON

DEFINE WINDOW vvod FROM 3,10 TO 15,65 TITLE 'Ввод новых данных' DOUBLE

SELECT a

ACTIVATE WINDOW vvod

GO BOTTOM

a=a.nom

APPEND BLANK

replace a.nom with (a+1)

@0,1 SAY 'Дополнение первой базы данных'

@1,1 SAY 'Введите название банка:' GET naim_b DEFAULT SPACE(15) VALID zag('naim_b',.T.)

READ

@2,1 SAY 'Введите дату учёта:' GET post_uch DEFAULT {}

READ

@3,1 SAY 'Введите имя руководителя:' GET ruk_b DEFAULT SPACE(20) VALID zag('ruk_b',.T.)

READ

@4,1 SAY 'Введите номер телефона банка:' GET telefon DEFAULT SPACE(10)

READ

@5,1 SAY 'Введите адрес банка:' GET adres DEFAULT SPACE(20) VALID zag('adres',.T.)

READ

@6,1 SAY 'Введите рассчётный счёт:' GET R_schet DEFAULT SPACE(10)

READ

@7,1 SAY 'Введите БИК:' GET Bik DEFAULT SPACE(10)

READ

@8,1 SAY 'Введите Код ГНИ:' GET Kod_gni DEFAULT SPACE(10) VALID zag('Kod_gni',.T.)

read

RELEASE WINDOW vvod

SELECT a

DO look

RETURN

**Программа осуществляет конвертацию вводимых в поля прописных

**букв в заглавные.

PROCEDURE ZAG

PARAMETER p,k

PUSH KEY

s='abcdefghijklmnopqrstuvwxyzабвгдежзийклмнопрстуфхцчшщыьъэюя'

z='ABCDEFGHIJKLMNOPQRSTUVWXYZАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЫЬЪЭЮЯ'

IF k

REPLACE &p WITH CHRTRAN(&p,s,z)

ELSE

POP KEY

RETURN CHRTRAN(p,s,z)

ENDIF

POP KEY

RETURN

ЗАКЛЮЧЕНИЕ
В этой курсовой работе основной задачей являлось разработка программного обеспечения справочника “Банка России”. Мною выполнена программа на языке FoxPro, которая решается при помощи структур команд СУБД FoxPro.
Эта программа позволяет произвести поиск и фильтрацию:
поиск по:
коду Государственной налоговой инспекции,
банковскому идентификационному коду,
названию банка;
фильтрацию по:
названию банка,
адресу банка,
руководителю банка,
банковскому идентификационному коду;
Также программа организует выход в FoxPro и в MS - DOS.

Список использованной литературы

1. А. В. Попов “FoxPro 2.5/2.6”.

2. Четвериков, Ревунков “Базы и банки данных” .

3. Евдокимов “Экономическая информатика”.

Размещено на Allbest.ru


Подобные документы

  • Определение базы данных и банков данных. Компоненты банка данных. Основные требования к технологии интегрированного хранения и обработки данных. Система управления и модели организации доступа к базам данных. Разработка приложений и администрирование.

    презентация [17,1 K], добавлен 19.08.2013

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

    методичка [1,1 M], добавлен 20.05.2014

  • Реализация базы данных, содержащей несколько таблиц, а также информационных запросов, форм и отчетов к ней в СУБД FoxPro. База данных "Справочник Меломана" спроектирована для быстрого поиска исполнителей и информации об их творческой деятельности.

    курсовая работа [5,8 M], добавлен 28.04.2012

  • Структура данных с указанием типов. Общая структурная схема программы. Алгоритмы сортировки вставками. Назначение make-файла. Функции управления программой; перемещения и корректировки введенных данных и их удаления справочника, загрузки данных из файла.

    курсовая работа [1,3 M], добавлен 12.01.2016

  • Характеристика работы Алтайского филиала телекоммуникаций "Сибирьтелеком". Разработка программы для автоматизации работы телефонного справочника. Основные функции программного продукта: хранение, обработка, ввод и редактирование информации об абонентах.

    дипломная работа [6,0 M], добавлен 07.06.2012

  • Изучение теоретических основ автоматизации документооборота отдела по работе с физическими лицами коммерческого банка. Общая характеристика работы отдела банка. Описание процесса создания базы данных с помощью выбранного программного средства MS Access.

    дипломная работа [5,5 M], добавлен 10.07.2014

  • Рассмотрение особенностей языка программирования С++. Пример составления программы - информационно-поискового справочника. Описание алгоритмов коррекции данных, введённых пользователем. Тестирование полученной программы, предусмотрение ее защиты.

    курсовая работа [20,0 K], добавлен 05.03.2015

  • Понятия банка и базы данных, ее компоненты. Многоуровневые модели предметной области, их представление в базе данных. Идентификация объектов и записей. Способы обращения к записям или отдельным элементам данных, их поиск. Определение структуры данных.

    контрольная работа [39,6 K], добавлен 10.04.2010

  • Типы оборудования, относящиеся к компьютерной технике. Состав системного блока и периферийные устройства. Классификация программного обеспечения. Требования, предъявляемые к системам управления базами данных. Задачи и этапы проектирования баз данных.

    контрольная работа [4,1 M], добавлен 18.02.2014

  • Разработка автоматизированной системы кредитования банка: концептуальная модель предметной области. Построение инфологической и даталогической модели средствами MySQL; таблицы и схемы базы данных; формулировка запросов для отображения данных их таблиц.

    курсовая работа [8,7 M], добавлен 18.01.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.