Учебная работа. Реферат: Разработка модулей для БД Автоматизированная система обработки пенсионной документации на базе
C самого начала развития вычислительной техники образовались два основных направления ее использования. Первое направление — применение вычислительной техники для выполнения численных расчетов. Второе направление — это использование средств вычислительной техники в автоматических или автоматизированных информационных системах. В самом широком смысле информационная система представляет собой программный комплекс, функции которого состоят в поддержке надежного хранения информации в памяти компьютера, выполнении преобразований информации и/или вычислений. Обычно объемы информации, с которыми приходится иметь дело таким системам, достаточно велики, а сама информация имеет достаточно сложную структуру. Классическими примерами информационных систем являются банковские системы, системы резервирования авиационных или железнодорожных билетов, мест в гостиницах и т.д.
На самом деле, второе направление возникло несколько позже первого. Это связано с тем, что на заре вычислительной техники компьютеры обладали ограниченными возможностями в части памяти. Поскольку информационные системы требуют сложных структур данных, эти индивидуальные дополнительные средства управления данными являлись существенной частью информационных систем и практически повторялись от одной системы к другой. Стремление выделить и обобщить общую часть информационных систем, ответственную за управление сложно структурированными данными, явилось первой причиной создания СУБД. Очень скоро стало понятно, что невозможно обойтись общей библиотекой программ, реализующей над стандартной базовой файловой системой более сложные методы хранения данных. Настоящие СУБД обеспечивают гораздо более тонкую синхронизацию параллельного доступа к данным.
Таким образом, СУБД решают множество проблем, которые затруднительно или вообще невозможно решить при использовании файловых систем. При этом существуют приложения, для которых вполне достаточно файлов; приложения, для которых необходимо решать, какой уровень работы с данными во внешней памяти для них требуется, и приложения, для которых безусловно нужны базы данных.
Система STAY — среда разработки и функционирования приложений в области сетевой обработки данных.
Система STAY версии 2.0 предоставляет:
— иерархическую систему управления сетевыми базами данных;
— иерархическую систему управления локальными базами данных;
— высокоуровневую файловую систему;
— средства организации модулей и памяти;
— оконный пользовательский интерфейс;
— генератор отчетов и средства управления печатью;
— средства обмена с внешними файлами;
— подпрограммы арифметических вычислений;
— интерпретатор выражений;
— гипертекстовую HELP-систему;
— пакет разработки ресурсов;
— встроенную отладку;
— набор встроенных сервисных функций;
— утилиты;
— поддержку национальных алфавитов и представлений валют;
— работу с числовыми полями от 1 до 6 байтов, символьными полями до
255 байтов, полями типа «дата» и «время«, а также произвольными
текстовыми и битовыми последовательностями до 64Кб.
STAY может функционировать на компьютере 286/12Мгц/640Кб. Рекомендуемая минимальная конфигурация 386/25Мгц/2Мб. Сетевые возможности поддерживаются в среде NetWare Novell версии не ниже 3.11 с Btrieve версии не ниже 6.10.
Концепция СУБД STAY реализует иерархический подход к организации базданных, наиболее адекватно отражающий отношения между объектами реального мира. количество уровней иерархии не ограничено. Информация корневой записи и всех подчиненных уровней хранится в одной физической записи, что позволяет обеспечить высокую скорость выборки данных, характеризующих объект.
Элементами, хранимыми в базах данных, могут быть числовые и символьные поля, произвольные текстовые и битовые последовательности, структуры, наборы.
Сетевая СУБД использует в качестве ядра систему Btrieve. Механизмы
блокировок и транзакций обеспечивают надежное хранение данных и разделение доступа рабочих станций к совместно используемым данным.
локальная СУБД использует оригинальную структуру баз данных, но полностью совместима с сетевой СУБД и имеет аналогичную логическую архитектуру.
Используется для организации баз данных на локальных станциях. Отладка
программ может производиться с использованием локальной СУБД. Файловая система, являясь надстройкой над файловой системой DOS, предоставляет полный набор функций доступа к произвольным файлам, обеспечивая при этом эффективную буферизацию, использование транзакций и блокировок, обработку сбойных и исключительных ситуаций.
средства управления модулями и памятью обеспечивают эффективную архитектуру сложных программных комлексов. Под модулями понимаются EXE-модули и динамически загружаемые библиотеки (аналогичные DLL Windows). При наличии расширенной памяти возможна свертка в нее EXE-модулей при загрузке дочерних модулей, что позволяет создавать глубоко иерархические программные комплексы без создания оверлейныхструктур.
Обработчики сбойных и исключительных ситуаций позволяют произвести перехват таких ситуаций и корректное завершение модуля или какой-либо его функции.
Оконный пользовательский интерфейс поддерживает спецификации Common User Access архитектуры SAA. Окно является основным объектом при программировании в среде STAY. Фактически STAY-программа представляет собой множество обработчиков сообщений окон и их подпрограмм. Оконный интерфейс обеспечивает автономный диалог пользователя с приложением, решая вопросы отрисовки окон, организации многоуровневых меню, управления курсорами, выбора, модификации и контроля значений полей. В окнах могут определяться таблицы, непосредственно связанные с базами данных. При этом интерфейс обеспечивает выбор записей в базе, их вставку, удаление и модификацию. При работе с сетевыми базами данных интерфейс контролирует совместное обновление записей.
Поддерживаются такие элементы окон: поля значений, поля меню, зависимые и независимые переключатели, кнопки, текстовые блоки, таблицы, линейки прокрутки.
При вводе с клавиатуры или манипулирования мышью в окне возбуждаются сообщения, вызывающие требуемые действия оконного интерфейса. При изменении состояния окна также возбуждаются соответствующие сообщения. Все сообщения могут быть обработаны в программных блоках обработки сообщений, в которых собственно и записывается оригинальная часть алгоритма приложения.
Генератор отчетов на основе внешних описаний позволяет создавать отчеты сложной структуры. Допускаются множество типов строк, виртуальные поля, многоуровневые заголовки и итоги (в том числе и дифференцированные по значениям определенных полей).
Сгенерированные отчеты могут быть просмотрены на дисплее и полностью или частично выведены на печать. Вывод осуществляется на локальные или сетевые принтеры или формируется файл. Поддерживаются все основные типы принтеров.
средства обмена с внешними файлами позволяют формировать на основе данных приложения файлы для передачи в другие системы. Поддерживаются файлы форматов DBF, SDF, с разделителями. Информация файлов этих же форматов может быть импортирована STAY-приложением.
Подпрограммы арифметических вычислений обеспечивают работу с числовыми полями с заданным положением места десятичной точки.
Интерпретатор выражений позволяет компилировать и выполнять сложные логико-арифметические выражения, задаваемые в текстовом виде. Возможны условные операторы, операторы цикла и функции доступа к базам данных.
Гипертекстовая HELP-система служит для организации справочной подсистемы приложения. HELP-система разрабатывается отдельно от приложения и затем подсоединяется к нему с помощью файла связи, указывающего для окон и их полей какие статьи должны быть выданы.
Пакет разработки ресурсов служит для подготовки описаний ресурсов, используемых приложением. К таким ресурсам относятся описания полей, описания баз данных, описания окон, описания отчетов, описания внешних файлов, файлы связи HELP-системы, описания несистемных функций интерпретатора.
Встроенные сервисные функции позволяют приложению использовать такие функции как календарь, калькулятор, блокнот, будильник, форматирование дискет, текстовый редактор и т.п.
утилита сервисного обслуживания баз данных служит для отображения и модификации баз данных, их реорганизации и восстановления. утилита инсталяции проводит установку STAY и его модернизацию. утилита конфигурации проверяет операционную среду функционирования STAY и настраивает его системные параметры.
Встроенная отладка позволяет вести отладку разрабатываемых приложений. Она включает просмотр основных управляющих структур STAY в любой момент выполнения приложения и трассирование выполнения функций STAY. Имеется возможность написания пользовательских отладочных модулей, облегчающих отладку конкретных приложений.
МИНИСТЕРСТВО ОБРАЗОВАНИЯ НАУКИ УКРАИНЫ
Государственный университет информатики и искусственного интеллекта
Д080403.1.01.06/074.ОП Кафедра программного обеспечения
интеллектуальных систем
отчет
о производственной практике
Тема: «Разработка модулей для БД «Автоматизированная система обработки пенсионной
документации на базе компьютерных технологий (АСОПД / КОМТЕХ)» с помощю системы STAY»
Руководители практики от института:
_____________ асс. Красик П. И.
(дата, подпись)
Руководитель практики от предприятия:
_____________ нач.отд. Бойко С. М.
(дата, подпись)
Разработал:
____________ ст.гр. ПО-06а Бойко А. В.
(дата, подпись)
2009
Содержание
Введение…………………………………………………………………………5
Постановка задачи …………………………………………………………9
Задача практики…………………………………………………………….9
Актуальность разработки………………..…………………………….9
Область применения……..…………………………………………….9
Календарный план……………………………….…………………….9
Описание предприятия……………………………………………………10
Описание программной реализации…………………………………….14
3.1 Описание основных функций и их параметров…………….………15
Результаты практики…………………………………………………………19
приложение А Листинг программных модулей……………………………20
приложение Б Руководство пользователя …………………………………..22
Разработал Фамилия Подпись Дата Д080403.1.01.06/074.КП
ст.гр. ПО-06а Бойко А. В.
4
РЕФЕРАТ
Пояснительная записка: 18 с., прил. 2
Целью прохождения производственной практики является разработка модуля конвертации «ConvertBD».
файл, РАСШИРЕНИЕ, БД, МОДУЛЬ
Д080403.1.01.06.074.ПП
Фамилия Подпись Дата Разработал Бойко А. В.
Разработка програмного модуля для ввода-вывода данных БД в форматах других систем Литера Лист Листов Рук.практики Красик П. И.
у
3
ГУИИИ,
группа ПО-06а
Кафедра ПОИС
Зав.каф. Шевченко А. И.
22
1 ПОСТАНОВКА задачи
1.1 Цель создания
Целью создания данного проекта является написание модуля для конвертации баз из одной структуры в другую по заданному PIC-файлу.
1.2 Актуальность разработки
В наше время существует очень много различных СУБД и каждая имеет «свои» файлы с присущей им структурой . Чтобы просмотреть их пользователю нужно будет устанавливать эту СУБД, что исключает и усложняет мобильность и транспортировку этих файлов на другие ПК.
1.3 Область применения
Данный продукт может быть использован просмотра файлов данной БД на любом ПК без наличия на нем СУБД STAY.
1.4 Календарный план
Этапы прохождения производственной практики приведены в Таблице 1.
Таблица 1 Календарный план
№п/п План работы Срок выполнения 1 Постановка задания.
1.06.09-
7.06.09
2 Разработка ТЗ 8.06.09-13.06.09 3 анализ структуры программы 13.06.09-17.06.09 4 Отладка программы и отчёта 18.06.09-21.06.09
ОПИСАНИЕ ПРЕДПРИЯТИЯ
Донецка областная универсальная научная библиотека им. Н.К. Крупской — один из наибольших культурных центров Донбасса. Она является региональным хранилищем произведений печати, межобластным депозитарием, научно-информационным учреждением, доступным для всех слоев население.
Основанная она в 1926 году как центральная городская библиотека. Преобразование в 1932 году города в областной центр вызвало реорганизацию библиотеки из городской на областную.
Строительство специального помещения для библиотеки начато за проектом Харьковского института «Гидроград» (архитектор Э.Л. Гомзе) в 1935 году. В годы войны здание библиотеки было повреждено, книжные фонды уничтожены и разграблены. Но уже в 1943 году, после освобождения Донбасса, библиотека начала обслуживание читателей, по крошкам восстанавливая и собирая свои фонды.
работы по восстановлению и реконструкции довоенного дома библиотеки закончились в 1955 году. Увенчанная куполом монументальное библиотечное сооружение площадью 12 тыс. кв. г. с 1983 года имеет статус памятки архитектуры.
Следующие годы стали для библиотеки годами действительного расцвета. В 1966-67 гг. состоялась реорганизация библиотеки из массовой в научную. библиотека стала центром для ученых, специалистов, представителей разных национальностей, вероисповеданий, профессий, что является гарантом дальнейшего развития культур всех наций и народностей, которые проживают в Донецкой области.
Библиотеку ежедневно посещают до 1000 человек. Ежегодно читателям выдается свыше 1 млн. произведений печати. Библиотечный фонд составляет 1 млн. 700 тыс. экземпляров документов.
Откликаясь на нужды создания государства, библиотека на начала 90- х лет начала целенаправленную работу по формированию фондов «Україніки» и литературы языками национальных меньшинств Донетчины. Пополнение фонда осуществляется не только за государственные средства, но и за счет грантов, благотворных взносов. Фонд украино-язычных изданий на 01.01.2007 г. насчитывает 181077 экземпляров.
С 1992 года начали компьютеризацию библиотечных процессов. Основу технического обеспечения автоматизированной системы библиотеки составляет сеть на базе 82 персональных компьютеров. Автоматизированы процессы комплектования, обработки фондов, регистрации читателей с использованием штрих — кодов и выдачи литературы. электронный каталог насчитывает сейчас возле 200000 библиографических записей. Удовлетворение информационных нужд читателей происходит с использованием глобальной международной компьютерной сети Интернет, к которой благодаря гранту фонда «Евразия» библиотека подключилась в 1996 году, одной из первых среди областных библиотек Украины. Создан Интернет-класс на 12 мест. Пользователи имеют возможность пользоваться полнотекстовыми базами данных информационно-поисковой системы «Закон» (300000 документов), 5000 отраслевых электронных журналов издательств Sprіnger-Vorlag, EBSCO, реферативными журналами на CD-дисках и т.п.. Как научно-методический центр библиотека прогнозирует развитие библиотечного дела в области, предоставляет практическую помощь библиотекам, повышает квалификацию библиотекарей.
Отдел автоматизации библиотечных процессов
обеспечивает компьютеризацию библиотеки, организует обслуживание читателей через глобальную компьютерную сеть Internet в режимах непосредственного и отдаленного доступа в компьютерном зале на 12 читательских рабочих мест. Открыто IATP центр по доступу и обучению Internet.
3 ОПИСАНИЕ ПРОГРАММНОЙ РЕАЛИЗАЦИИ
3.1 Описание основных функций и их параметров
Поддерживаемые форматы внешних файлов:
— SDF-формат sdf , совместимый с системой DBASE;
— DLM-формат dlm , совместимый с системой DBASE;
— DBF-формат dbf , совместимый с системой DBASE;
— DB-формат db , совместимый с системой PARADOX.
Допускается использование модифицированных SDF- и DLM-форматов для обработка иерархических структур данных.
sdf,cm,SDF-формат
Текстовый файл строк фиксированной длины, каждая из которых заканчивается символами «перевод строки» и «возврат каретки». Данные в строке имеют фиксированный размер. Символьные данные дополнены пробелами. Дата и время выводятся в соответствии суказанными для них форматами. Вывод файла на несколько дискет не поддерживается. При наличии идентифицирующих полей и/или заполнителей производится проверка их значений. При несоответствии фиксируется ошибка и запись не передается. Обработка ошибок определяется параметром ERROR описания файла:
ERROR IGNORE — ошибочные записи игнорируются;
ERROR DISPL — импорт приостанавливается и ошибочная запись выводится на дисплей. Можно продолжить ввод данных или прекратить импорт;
ERROR ABEND — обнаружение ошибочной записи прекращает импорт без
каких-либо предупреждений.
dlm,cm,DLM-формат
Текстовый файл строк переменной длины, каждая из которых заканчивается символами «перевод строки» и «возврат каретки». Данные в строке имеют переменный размер, разделяясь запятыми. Символьные данные заключены в двойные кавычки. Дата и время выводятся в соответствии с указанными для них форматами. Вывод файла на несколько дискет не поддерживается.
dbf,cm,DBF-формат
Файл строк фиксированной длины, каждая из которых начинается байтом
признаком удаленных записей (‘ ‘ — обычная запись, ‘ ‘ — удаленная запись). В начале файла выводится описание в соответствии с принятыми в DBASE-подобных системах. Данные в строке имеют фиксированный размер. Символьные данные дополнены пробелами. Дата выводится в форме ГГГГММЧЧ. Вывод файла на несколько дискет не поддерживается.
db,cm,DB-формат
Файл в формате, используемомо СУБД Paradox.
mod,cm,Модифицированные форматы
SDF- и DLM-формата имееют модифицированную форму для обмена записями нескольких типов. В этом случае каждая запись должна иметь идентифицирующие поля и/или заполнители, а описание включает описание полей для каждого типа записи. Описаниям полей каждого типа записи предшествует описатель группы:
GROUP s HEAD
В группе задается односимвольный тип записи, передаваемый в программу при импорте данных. Он же используется и для идентификации типов записей при экспорте. Параметр HEAD, если он указан, определяет, что данный тип записи является заголовочным и в программу при импорте не передается, а лишь подготавливает общие поля передаваемые с последующей группой детальных записей.
характеристики внешних файлов задаются специальным файлом описания. Описание внешнего файла состоит из строки заголовка и строк описания полей. Строка заголовка имеет вид:
EXTERNAL [FILE <имя файла>] FORMAT <формат> [ERROR <ош>] [QUERY]
[DM] [MD] [EDIT] [REM «<сим>»]
FILE <имя файла> — задает имя внешнего файла. Если параметр не указан, имя файла будет запрошено;
FORMAT <формат> — задает формат внешнего файла. Формат задается одним из ключевых слов SDF, DLM, DBF или DB;
ERROR <ош> — задает обработку ошибок импорта. Задается одним из ключевых слов IGNORE, DISPL или ABEND. Отсутствие параметра интерпретируется как
ERROR IGNORE;
DM — устанавливает формат даты в DBF-файлах день/месяц;
MD — устанавливает формат даты в DBF-файлах месяц/день;
EDIT — указание этого параметра разрешает изменение пользователем описания внешнего файла;
QUERY — наличие этого параметра требует запроса оператора;
REM «<сим>» — задает комментарий, выдаваемый в запросе.
Строки описания полей задают для каждого поля его имя, длину в файле и положение места точки. Описание поля имеет вид:
FIELD <имя> LEN nnn POINT nn FORMAT «nnnn» ID NAME <имя> TYPE s
<имя> — программное имя поля.
LEN nnn — длина поля во внешнем файле. Используется в файлах SDF- и
DBF-форматов. В DLM-формате поле имеет длину, соответствующую его значению.
При отсутствии этого параметра длина поля выбирается достаточной для размещения максимального значения донного в соответствии с его классом, наличием знака и десятичной точки.
место точки принимается равным месту точки в программном описании поля.
FORMAT nnnn — определяет формат выдачи данных типа «дата» и «время«. Для данных типа дата используются символы y, m, d для обозначения положения, соответственно, номеров года, месяца и дня. Для данных типа «время» -символы h, m для обозначения положения, соответственно, часов и минут. Кроме этого формат может содержать любые другие символы, которые при экспорте передаются без изменений. По умолчанию используются форматы «yyyymmdd» и «hhmm». Для DBF-файлов параметр не указывается, т.к. дата и время в них всегда представлено в формате по умолчанию.
ID — признак поля, идентифицирующего запись при импорте данных. Импортируемая запись должна иметь это поле непустым и соответствующим его описанию.
NAME <имя> — имя поля в DBF-файле.
TYPE s — тип поля в DBF-файле.
При необходимости вывода в экспортный файл заполнителя или пропуска в импортном файле некоторых полей используется заполнитель:
PLACE LEN nnn NAME <имя> TYPE s VAL «<сим>» ID
LEN nnn — длина поля во внешнем файле. Используется в файлах SDF- и
DBF-форматов. В DLM-формате поле имеет длину, соответствующую его значению.
Параметр не обязателен если задается
NAME <имя> — имя поля в DBF-файле.
TYPE s — тип поля в DBF-файле.
VAL «<сим>» —
ID — признак заполнителя, идентифицирующего запись при импорте данных. Указывается совместно с параметром VAL. Импортируемая запись должна иметь в соответствующем месте символы, в точности совпадающие со значением параметра VAL.
Обмен с внешними файлами осуществляется
ExOpen ExOpen Открытие импортного файла
ExCreate ExCreate Открытие экспортного файла
ExClose ExClose Закрытие внешнего файла
ExWrite ExWrite Запись в экспортный файл
ExRead ExRead Чтение записи импортного файла
ExType ExType Тип очередной записи
ExMake ExMake Создать описание внешнего файла
ExSave ExSave Экспортировать содержимое БД
ExLoad ExLoad Импортированть содержимое БД
ExCreate,fn,Функция ExCreate
int far ExCreate (nf)
fchar nf; адрес имени файла описания
Функция открывает экспортный файл согласно его описания, адрес имени
которого задается как параметр nf функции. При успешном открытии функция
возвращает 1. Если файл описания не найден или обнаружены ошибки в нем функция возвращает 0.
ExOpen,fn,Функция ExOpen
int far ExOpen (nf)
fchar nf; адрес имени файла описания
Функция открывает импортный файл согласно его описания, имя которого задается как параметр nf функции. При успешном открытии функция возвращает 1. Если файл описания не найден или обнаружены ошибки в нем функция возвращает 0.
ExClose,fn,Функция ExClose
int far ExClose ()
Функция закрывает ранее открытый внешний файл.
ExWrite,fn,Функция ExWrite
int far ExWrite (char s)
Функция выводит очередную запись в экспортный файл. Параметр s задает тип записи. Для записей одного типа в качестве параметра задается 0.
ExRead,fn,Функция ExRead
int far ExRead ()
Функция считывает очередную запись из импортного файла. Если достигнут конец файла, то функция возвращает 0. Если запись считана, то функция возвращает 1.
ExType,fn,Функция ExType
char far ExType ()
Функция возвращает тип записи введенной функцией ExRead при импортировании файлов модифицированных форматов.
ExMake,fn,Функция ExMake
int far ExMake (b, f, s)
BASE b; адрес описания БД
fchar f; адрес имени файла описания
fchar s; адрес имени внешнего файла
Функция создает EXT-файл описания внешнего файла для указанной БД. Этот файл может быть использован для автоматического экспортирования содержимого БД в файл SDF формата. Функция возвращает 1 в случае успешного завершения и 0 при невозможности создать EXT-файл.
ExSave,fn,Функция ExSave
int far ExSave (b, f)
BASE b; адрес описания БД
fchar f; адрес имени файла описания
Функция использует EXT-файл, созданный функцией ExMake, и экспортирует содержимое БД в файл SDF формата, включая содержимое всех подчиненных наборов. Функция возвращает 1 в случае успешного завершения и 0, если при при создании выходного файла произошла ошибка.
ExLoad,fn,Функция ExLoad
int far ExLoad (b, f)
BASE b; адрес описания БД
fchar f; адрес имени файла описания
Функция использует EXT-файл, созданный функцией ExMake, и загружает БД из файла SDF формата, включая содержимое всех подчиненных наборов. Функция возвращает 1 в случае успешного завершения и 0, если при при создании БД произошла ошибка.
Ниже приведен примеры описания внешнего файла и фрагменты программы для
экспорта и импорта внешних файлов.
Пример 1.
Внешний файл «База счетов» формата SDF. имя файла LS.SDF.
Логическое имя файла описания DEMO:LS.EXT
текст файла описания:
EXTERNAL FILE LS.SDF FORMAT SDF QUERY ERROR DISPL REM «база счетов»
FIELD Code LEN 6 — Номер счета
PLACE VAL » «
FIELD Name — Наименование
PLACE VAL » «
FIELD SumRec LEN 10 — Сумма
Экспорт файла из базы данных Base:
if (ExCreate («DEMO:LS.EXT»))
{for (SetBegin (Base); GetNext (Base);) ExWrite (0);
ExClose ();
}
Импорт файла в базу данных Base:
if (ExOpen («DEMO:LS.EXT»))
{for (; ExRead ();) Put (Base);
ExClose ();
}
Пример 2.
Внешний файл «База начислений» модифицированного формата SDF с двумя
типами записей. имя файла NC.SDF. Логическое имя файла описания
DEMO:NC.EXT.
текст файла описания:
EXTERNAL FILE NC.SDF FORMAT SDF QUERY ERROR DISPL REM «база начислений»
GROUP 1
PLACE «1 » ID — Идентификатор типа записи
FIELD Code LEN 6 — Номер лицевого счета
PLACE VAL » » — Разделитель
FIELD Name — Наименование
GROUP 2
PLACE VAL «2 » — Идентификатор типа записи
FIELD Vid LEN 3 — Код начисления
PLACE » » — Разделитель
FIELD Sum LEN 10 — Сумма
Базы данных иерархическая. Корневой набор Base, подчиненный — Nc:
Экспорт файла из базы данных:
if (ExCreate («DEMO:LS.EXT»))
{for (SetBegin (Base); GetNext (Base);)
{ExWrite (‘1’);
for (SetBegin (Nc); GetNext (Nc);) ExWrite (‘2’);
}
ExClose ();
}
Импорт файла в базу данных:
if (ExOpen («DEMO:LS.EXT»))
{for (; ExRead ();)
{if (ExType () == 1) Put (Base);
if (ExType () == 2) Put (Nc);
}
ExClose ();
}
Пример 3.
файл описания генерируется автоматически функцией ExMake. имя файла
LS.SDF. Имя файла описания LS.EXT.
Экспорт базы данных Base в файл:
if (ExMake (Base, «LS.EXT», «LS.SDF»)) ExSave (Base, «LS.EXT»);
загрузка базы данных Base из файла:
if (ExMake (Base, «LS.EXT», «LS.SDF»)) ExLoad (Base, «LS.EXT»);
Пример 4.
Внешний файл «База счетов» формата DBF. имя файла LS.DBF.
Логическое имя файла описания DEMO:LS.EXT
текст файла описания:
EXTERNAL FILE LS.DBF FORMAT DBF QUERY ERROR DISPL REM «база счетов»
FIELD Code LEN 2 NAME CODE TYPE N
FIELD Name LEN 50 NAME NAME TYPE C
FIELD SumRec LEN 7
Экспорт файла из базы данных Base:
if (ExCreate («DEMO:LS.EXT»))
{for (SetBegin (Base); GetNext (Base);) ExWrite (0);
ExClose ();
}
Импорт файла в базу данных Base:
if (ExOpen («DEMO:LS.EXT»))
{for (; ExRead ();) Put (Base);
ExClose ();
}
РЕЗУЛЬТАТЫ ПРАКТИКИ
В результате прохождения производственной практики я ознакомился с основами работы в СУБД STAY, которая использует язык програмирования ,для написания дополнительных модулей и описания файлов-шаблонов, похожий за синтаксисом на язык С .
В данном проекте был написан модуль для конвертации баз из одной структуры в другую по заданному PIC-файлу.
Тестирование проводилось на операционной системе Windows XP с установленной системой STAY и БД «АСОПД / КОМТЕХ».
Результатом работы над данным проектом является реализованный модуль «CONV_BAS».
приложение А
Руководство пользователя
После запуска программы на экране на некоторое время появится транспорант с указанием организации разработчика программного обеспечения. Через короткий период времени он исчезнет. После этого на экране появится видеограмма 1, представленная на рисунке А.1
┌─────────────────────────────────────────────────────────────┐
│ Укажите полный путь и наименование PIC-файла │
│┌───────────────────────────────────────────────────────────┐│
││ ││
│└───────────────────────────────────────────────────────────┘│
│┌───────────────┐ ┌────────────────┐ ┌────────────────┐│
││ F10 Выбрать │ │ Esc Выход │ │ Enter Обзор ││
│└───────────────┘ └────────────────┘ └────────────────┘│
└─────────────────────────────────────────────────────────────┘
Рисунок А.1 — видеограмма 1
Она состоит из заглавия окна, строки для ввода полного имени PIC-файла и трех функциональных кнопок. В поле для ввода имени файла необходимо указать полный путь к файлу и имя файла с расширением. Например c:workpickl.pic . Если не указать полный путь, файл может быть не найден. После того, как необходимый файл указан, необходимо нажать кнопку <F10> или выбрать соответствующую кнопку манипулятором «мышь«. В случае, когда оператор решил отказаться от конвертации или конвертация уже выполнена, необходимо нажать на клавишу <Esc>. После этого произойдет выход из программы.
Вполне реален случай, когда оператор хочет сделать конвертацию, но не помнит, где находится необходимый PIC-файл. Тогда необходимо нажать клавишу <Enter> для поиска нужного файла при помощи менеджера файлов, который показан на видеограмме 2.
╔═════════════════ C:STAY20 ════════════════════╗
║ имя │ Размер │ Дата │ время │ ║
║ .. │ SUB-DIR │ 13121992 │ 15:01 │ ║
║ ADD │ SUB-DIR │ 13121995 │ 15:02 │ ║
║ BAK │ SUB-DIR │ 13121995 │ 15:02 │ ║
║ DIST │ SUB-DIR │ 13121995 │ 15:02 │ ║
║ DOC │ SUB-DIR │ 13121995 │ 15:02 │ ║
║ HELP │ SUB-DIR │ 13121995 │ 15:02 │ ║
║ INI │ SUB-DIR │ 13121995 │ 15:02 │ ║
║ NET │ SUB-DIR │ 13121995 │ 15:02 │ ║
║ OVR │ SUB-DIR │ 13121995 │ 15:02 │ ║
║ REPCTLG│ SUB-DIR │ 13121995 │ 15:02 │ ║
║ TECH │ SUB-DIR │ 13121995 │ 15:02 │ ║
║ TEMP │ SUB-DIR │ 13121995 │ 15:02 │ ║
║ TEMP2 │ SUB-DIR │ 13121995 │ 15:02 │ ║
║ TOOLS │ SUB-DIR │ 13121995 │ 15:02 │ ║
║ AA │ SUB-DIR │ 05