Управление базой данных "Движение товара на базе"

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

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

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

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

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

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

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

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

ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

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

Курсовая работа

По дисциплине:

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

На тему: ” Движение” товара на базе.

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

СОДЕРЖАНИЕ

Введение

I . Глава. Теоретическая часть.

Описание проектирования метода БД.

II. Глава. Проектная часть.

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

Раздел 2. Датологическая модель.

III. Глава. Описание работы программы.

Заключение

Литература

Введение

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

Историческое понятие баз данных возникла как альтернатива файлов организации данных при хранении с помощью ЭВМ (на магнитных носителях). Такая организация данных была характерна для прикладного программного обеспечения на начальном этапе распространения вычислительной техники. Файловая организация предполагала хранение данных в виде совокупности файлов, ориентированных на использование какой - либо одной прикладной программы, предназначенной для решения некоторой специфической задачи. Такая не универсальность в организации информации привела к большой избыточности (дублированию) при хранении, противоречивости данных, хранящихся в различных системах.

Для файлов организации данных свойственна высокая зависимость от данных программ, так что информация о форме хранения данных скрыта в сочетании «файл - программа».

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

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

Одной из самых популярных СУБД является система “Fox Pro” созданной фирмой “Ashton - Tate”. (2.c.160-162)

Глава №1. Теоретическая часть

Рассмотрим вопрос о проектировании метода баз данных. К любой базе данных возможен подход на каждом из следующих трех уровней (рис.1):

ь на уровне представлений данных конечного пользователя или прикладного программиста (внешнего представления);

ь на уровне концептуального представления данных (представления администратора);

ь на уровне внутреннего представления данных (с позиции системного программиста) или представления реализации.

Под представлением данных понимают правила организации и кодировании данных.

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

Для конечного пользователя внешнее представление является совокупностью спецификаций и реальных форматов данных, отражающих конкретные информационные потребности при решении задачи (проблемы). Представление прикладного программиста отображает элементы данных и их взаимосвязи так, что из данных, хранящихся в базе, может извлекаться скрытая в них информация (например, возраст человека по дате рождения и текущей дате). (1.с.380)

Рис.1 Трехуровневое представление данных в концепции ANSI/SPARC.

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

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

Наибольший интерес для нас представляет концептуальное представление данных, связанное с развитой в 70 - 80 - е годы теории баз и банков данных и направленное на унификацию данных и уменьшение избыточности при интегрировании внешних представлений в концептуальное.

Концептуальное представление основано на определенной модели данных. Этот термин впервые введенный в 70 - х годах основоположником теории баз данных Дж.Коддом, в современной трактовке отображает совокупность правил порождения структур данных в базах данных, последовательности их изменения. Различают три основные типа модели данных: иерархический, сетевой и реляционный.

Модель данных предопределяет множество выводимых допустимых типов данных и отношений между ними и является основой для построения модели конкретной базы данных.(1.с.381)

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

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

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

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

Современная методология проектирования баз данных и построения концептуальных моделей основывается на одновременном учете преметной области и пользователей и прикладных программистов. Предметная область в этом случае используется для построения в этом случае используется для построения первоначальной информационной структуры данных, а пользователей и прикладных программистов для совершенствования последней с целью повышения эффективности обработки данных.(1.с.383)

Процесс построения концептуальной модели разделяется на следующие этапы:

1) сбор и содержательный анализ априорной информации о предметной области и прикладных задачах пользователей;

2) концептуальный анализ данных и синтез концептуальной модели.

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

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

Результатом данного этапа являются

1) список всех создаваемых и используемых элементов данных;

2) перечень прикладных задач, их характеристик и используемых в них данных;

3) список принимаемых решений в управлении организацией или процессами, а также условий и правил их принятия;

4) список возможных будущих изменений в деятельности и их влияний на принятие решений.

На этапе концептуализации собранной информации выявляются элементы предметной области, их свойства и взаимосвязи, затем синтезируется структура концептуальной модели базы данных. Наиболее известными подходами концептуализации являются анализ сущностей и представление знаний.(1.с.384)

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

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

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

Декомпозия должна

· быть направлена на выделение элементов предметной области, существенных с точки зрения прикладных задач баз данных;

· приводить к вычислению элементов, свойства которых могут быть описаны с помощью собранных на первом этапе элеменов данных;

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

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

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

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

В качестве основных принципов системного подхода при построении моделей используются:

рассмотрения объекта с различных точек зрения, выявления аспектов изучаемого с учетом их взаимосвязи;

расчленения объекта на более простые подсистемы (основанием для введения подсистем является то, что связи между подсистемами много слабее, чем между элементами внутри подсистемы, а каждая подсистема много проще, чем вся система в целом);

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

Системный анализ - это применение системного подхода при обработке конкретной информации и принятию решений. Рассмотренные принципы системного подхода являются и принципами системного анализа.

Их дополняют следующие спецефические принципы:

· анализ любого процесса принятия решения должен начинаться с выявления и четкой формулировки целей (желаемых результатов деятельности), которые часто определяются на основе рассмотрения системы более высокого уровня;

· необходимо рассматривать лишь те цели, вероятность достижения которых p>p0 за время t<t0, где p0 и t0 пороги осуществимости цели.

Данные специальные принципы предполагают некую системную стратегию анализа, требующую рассмотрения не только самой системы, но и внешней по отношению к ней среды (над системы или метасистемы), и определение границы между ними.

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

Прежде чем преступить к работе с “Fox Pro”, познакомимся с некоторыми понятиями и принципами организации баз данных (БД). БД системы ”Fox Pro” с определенной степенью строгости можно назвать реляционными. Не вдаваясь в тонкости точного определения реляционной модели организации данных, скажем лишь, что пользователем реляционная база данных воспринимается как таблица (или совокупность таблиц). Используя аналогии с двумерной таблицей, мы дадим определение таких понятий, как «запись», «поле», «файл данных». Строку в нашей таблице назовем «записью» (record), а столбец «полем» (Field). «Файл данных» объединяет собственно информацию, хранящуюся в таблице, и информацию о ее структуре. (1.с.386)

Запись характеризуется своим номером, а поле имеет «имя поля» (fieldname). Именно указание номера записи и имени поля позволяет осуществить доступ к конкретной единице информации - значению поля данной записи, хранящемуся в ячейке нашей таблицы. Сразу укажем, что в ”Fox Pro” имя поля может состоять наиболее, чем из десятки латинских букв или цифр, должно начинаться с буквы, из специальных знаков допустим лишь знак подчеркивания «__».

Помимо имени поле имеет еще две важные характеристики: ширину (width) и тип данных (field type). Ширина указывает, сколько позиций будет отводиться в базе данных для значений данного поля (данные большей длины будут усекаться).

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

”Fox Pro” поддерживает шесть различных типов данных

1. Символьные (Character) произвольная строка символов, как правило, заключаемая в двойные или одинарные кавычки.

Напомним, что пробел тоже является символом и влияет на длину символьной строки.

2. Числовые с фиксированной точкой (Numeric) тип числовых данных, используемых в том случае, когда необходимы вычисления.

3. Числовые с плавающей точкой (Float) как и тип Numeric, используются в полях, которые принимают участие в вычислениях. Тип Float занимает больше места в памяти и замедляет работу, но позволяет добиться более высокой точности при выполнении арифметических операций.

Для числовых полей типа Numeric и Float кроме ширины определяется число знаков после десятичной точки. В случае, когда содержимое поля является числом, но не участвует в вычислениях (например, почтовый индекс), следует определять тип поля как Character это ускорит и упростит манипулирование данными.

4. Логические (Logical) данные, которые могут принимать только два значения: «Да» (Yes), или «Правда» (True) и «Нет» (No), или «Ложь» (False). Примером такого типа данных может служить членство в профсоюзе: «Да» (член профсоюза) или «Нет» (не член профсоюза). (1.с.387)

5. Дата (Date) тип данных, говорящий сам за себя. Выделен потому, что даты подчиняются собственной арифметике (прибавление дней к определенной дате, определение числа дней между двумя датами и т.д.). Ширина полей этого типа данных автоматически устанавливается равной 8. Дата может выводиться в следующих форматах:

американском (american ММ ДД ГГ);

британском (british ДД / ММ / ГГ);

французском (frensh ДД.ММ.ГГ);

итальянском (italian ДД ММ ГГ);

В стандарте Американского национального института стандартов (ANSI ГГ.ММ.ДД).

Символы ДД, ММ и ГГ обозначают соответственно день, месяц и год конкретной даты. Например, 23 сентября 1996 года в американском формате примет вид

09 2396.

6. Текстовые (Memo) символьные данные, длина которых не определена заранее. Преимущество типа Memo и Character состоит в том, что размер текста, занесенного в такое поле, может быть довольно большим (до 4096 символов) и на него выделяется столько места, сколько занимает текст (или вообще ничего, если поле пусто). В основном файле данных для полей типа Memo выделяется 10 позиций, а сама информация хранится в отдельном файле с расширением .dbt.

Совокупность всех записей каждой таблицы (за исключением значений полей типа Memo) помещается в отдельный файл данных с расширением .dbf. В этом же файле хранится служебная информация (имена, ширина и типы полей данных, количество записей и т.д.).

Как правило, конкретная информационная система не ограничивается одним файлом данных. Для удобной и качественной работы приходится создавать различные вспомогательные файлы: индексные файлы, файлы форматов, отчетов, наклеек и т.д.). Для этого чтобы объединить все файлы в единую систему, ведено понятие «Каталога» (Catalog). Каталог содержит все файлы данных и вспомогательные файлы, необходимые в конкретном приложении. Для каждого файла каталог может содержать краткое описание, позволяющее хранить поясняющую информацию. Использование управляющего центра предполагает работу именно с такими крупными структурными единицами, как и каталог. (1.с.388)

Еще до включения компьютера необходимо определить, в каких файлах данных и с какой структурой будут храниться связанные отношениями данные. Под структурой файла данных мы будем понимать число полей и их характеристики: имя, тип данных, ширина, число знаков после десятичной точки (для полей типа Numeric и Float).

О принципах организации БД можно говорить довольно долго, поэтому ограничимся лишь замечанием о том, что следует избегать дублирования или появления избыточной информации. Для этого часто бывает удобно разбивать отношения между данными, создавая несколько файлов, и использовать коды вместо самих показателей.(1.c.380-388)

Глава №2

Раздел 1.Общие сведения об инфологическом моделировании

В базе данных отображается какая - то часть реального мира. Естественно, что полнота ее описания будет зависеть от целей создаваемой информационной системы.(3.с.180)

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

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

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

Требования, предъявляемые к инфологической модели. Основным требованием к ИЛМ, вытекающим из ее назначения, является требование адекватного отображения предметной области. В связи с этим язык для представления ИЛМ должен обладать достаточными выразительными возможностями для отображения явлений, имеющих место в предметной области. ИЛМ должна бать непротиворечивой. Она является е6динным интегрированным описанием предметной области и отображает взгляды и потребности всех пользователей системы. Не должна допускаться неоднозначная трактовка модели.

Несмотря на то, что реальный мир, отображаемый в ИЛМ, является по своей природе бесконечным, инфологическая модель является конечной, что обеспечивается четким ограничением предметной области. Тем не менее, в ИЛМ по разным причинам часто приходится вводить новые объекты. ИЛМ должна в связи с этим обладать свойством легкой расширяемости, обеспечивающим ввод данных новых данных без изменения ранее определенных. То же самое можно сказать и об удалении данных. В связи с большой размерностью реальных инфологических моделей должна обеспечиваться возможность композиции и декомпозиции модели. (3.с.181)

Желательно, чтобы язык спецификации ИЛМ был одинаково применим как при ручном, так и при автоматизированном проектировании информационных систем. Последнее предъявляет дополнительные требования к нему, а именно он должен:

· быть вычисляемым, т.е. восприниматься и обрабатываться ЭВМ;

· использовать «дружелюбные» пользователю интерфейсы, в частности графические;

· быть не зависимым от оборудования и других ресурсов, которые подвержены частным изменениям;

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

При автоматизированном проектировании все изменения, внесенные в ИЛМ, должны быть автоматически отражены в связанных с модифицируемым элементом компонентах банка данных.

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

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

Компоненты инфологической модели. Инфологическая модель предметной области включает в себя ряд компонентов (рис.1). Центральной компонентной инфологической модели является описание объектов предметной области и связей между ними. (3.с.182)

Эти вопросы будут подробно будут рассмотрены ниже в п.1.2.

Рис.1 Компоненты инфологической модели.

Описание предметной области всегда представлено в какой - то знаковой системе. Поэтому кроме отношений, присущих предметной области, возникают еще и отношения, обусловленные особенностями предметной области в языковой среде. Поэтому при построении ИЛМ должны учитываться такие лигвинстичесие категории, как синонимия, омонимия, изоморфизм и др. (3.с.183)

Кроме того, в инфологической модели должны быть отражены и алгоритмические зависимости между показателями. Обычно для этих используются графы взаимосвязи показателей, отражающие, какие показатели служат исходными для вычисления других (рис.1.2).Расчетные формулы, а также алгоритмы вычислений также в каком - то виде должны быть представлены в ИЛМ

Следующим компонентом инфологической модели является описание потребностей пользователей. Для этих целей используются специальные языковые средства. Они должны отражать тип запроса, объемно - частные характеристики, режим использования данных и т.п.(3.c.180-183)

Инфологическая модель: «Движения товара на базе».

Раздел 2. Общие сведения о даталогическом проектировании

база данное модель пользователь

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

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

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

В базах данных со структурированными моделями следует различать внутризаписную и межзаписную структуры. Внутризаписная структура может быть либо линейной, либо иерархической. При линейной структуре запись состоит из простых элементов (часто называемых полями), которые следуют записи один за другим, т.е. структура записи является нормализованной.

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

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

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

Другой характеристикой записи является тип ее длины. Поэтому признаку различают записи с фиксированной (постоянной), переменной и неопределенной длиной. Запись может иметь переменную длину в результате того, что переменную длину имеют ее поля либо возможно отсутствие каких - либо полей, либо допускается разное число экземпляров для повторяющихся компонентов. Основными характеристиками поля являются его типа и длина. (3.c.220-221)

Даталогическая модель по «Движению товара на базе»

название поля

тип

размер

1

Шифр товара

Numeric

10

2

Наименование товара

Character

15

3

Сумма сделки

Numeric

10

4

Количество единиц

Numeric

5

5

Цена единицы

Numeric

10

6

Поставщик

Character

15

7

Потребитель

Character

15

название поля

тип

размер

1

Поставщик

Character

15

2

Наименование товара

Character

15

3

Сумма сделки

Numeric

10

4

Количество единиц

Numeric

5

5

Цена единицы

Numeric

10

название поля

тип

размер

1

Шифр товара

Numeric

10

2

Наименование товара

Character

15

3

Цена единицы

Numeric

10

4

Время выпуска

Database

10

Глава №3

Задача на курсовую работу

«Движение» товаров на базе.

Структура файлов БД: шифр товара, наименование, кол - во единиц, цена единицы товара, сумма сделки, поставщик, покупатель.

Формы документов:

1) список предлагаемых сделок в порядке возрастания (убывания) общей суммы сделки: шифр товара, наименование, кол - во единиц, цена единицы товара, сумма сделки, поставщик, покупатель.

2) подтверждение приема сообщения о совершении сделки.

3) списки предлагаемых сделок, откорректированные сообщениями о совершении сделок.

·

······

···

··

·

·

В основном окне появляется основное меню (Bar-меню) с пунктами Данные, Поиск, Фильтрация и Выход .

Пункт Данные (файл DAN.PRG) вызывает POPUP-меню с пунктами Просмотр (процедура prosm) и Редактирование (процедура redak).

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

В пункте Поиск (файлы POISK.PRG и PRINT.PRG ) предусмотрен поиск по покупателю, если необходимо, вывод на печать (файл CHOICE.PRG) документа с занесением в него найденной информации.

Пункт Фильтрация (файл FILTR.PRG) вызывает POPUP-меню с пунктами по возрастанию (убыванию) общей суммы сделки, по шифру, наименованию товара и цене единиц товара. Ко второму и третьему пунктам также объявляется POPUP-меню. В общем, пункт Фильтрация делает доступными только те записи, которые отвечают условиям команды

SET FILTER TO <условие>.

Пункт Выход (файл WIHOD.PRG) предусматривает выход из программы в среду FoxPro или Dos.

*---------------------------ZASTAV.PRG-------------------------*

CLEAR

DEFINE WINDOW ZAS FROM 2,7 TO 22,67 SHADOW COLOR w+/g

ACTIVATE WINDOW ZAS

@1,10 SAY ' ДГТУ '

@3,10 SAY ' Кафедра информационных систем в экономике'

@5,10 SAY ' `Курсовой проект по дисциплине '

@7,10 SAY ' `Базы данных и знаний '

@9,10 SAY ' `Движение товара на базе '

@12,15 SAY ' Разработала программу'

@13,15 SAY ' студентка 3 курса группы'

@14,15 SAY ' `Урдиханова Д.У. '

@15,15 SAY ' `Проверил '

@16,15 SAY ' `Мурадов М.М.'

WAIT `Для продолжения нажмите любую клавишу '

RELEASE WINDOWS

*-----------------------------DAN.PRG-------------------------------------*

SET MESSAGE WINDOW MESS

DEFINE WINDOW okno FROM 0,0 TO 19,75;

PANEL ZOOM FLOAT CLOSE IN WINDOW gm && описание окна

&&для отображения информации

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

DEFINE POPUP d1 FROM 3,2 TO 6,17 SHADOW COLOR gr+/b

DEFINE BAR 1 OF d1 PROMPT '\<Просмотр' MESSAGE;

'Возможен просмотр данных'

DEFINE BAR 2 OF d1 PROMPT '\<Редактирование' MESSAGE;

'Возможно редактирование данных'

ON SELECTION BAR 1 OF d1 DO prosm

ON SELECTION BAR 2 OF d1 DO redak

ACTIVATE POPUP d1

DEACTIVATE POPUP d1

PROCEDURE prosm &&--------процедура просмотра

ACTIVATE WINDOW okno

BROWSE TITLE 'ESC/^Q-Выход';

FIELDS a.shifr :H='Шифр товара ',;

a.naim :H='Наименование ',;

a.col :H='Количество единиц товара',;

a.cena :H='Цена единиц товара.',;

a.summa :H='Сумма сделки.',;

a.post :H='Поставщик',;

a.pocup :H='Покупатель',;

NOAPPEND NOMODIFY NODELETE color g+/n

DEACTIVATE WINDOW okno

PROCEDURE redak &&----------процедура редактирования

ACTIVATE WINDOW okno

BROWSE TITLE '^N-дополнение ^T-удаление ESC/^Q-Выход';

FIELDS a.shifr :H='шифр товара'

a.naim :H='Наименование ',;

a.col :H='Количество единиц товара',;

a.cena :H='Цена единиц товара.',;

a.summa :H='Сумма сделки.',;

a.post :H='Поставщик',;

a.pocup :H='Покупатель',;

color g+/n

PACK

DEACTIVATE WINDOW okno

*------------------------------FILTR.PRG----------------------------------*

SET MESSAGE WINDOW MESS

*--------------------------Описание меню f1----------------------------*

DEFINE POPUP f1 FROM 3,36 TO 7,60 IN WINDOW gm

DEFINE BAR 1 OF f1 PROMPT '\<По общей сумме сделки' MESSAGE;

'По возрастанию'

DEFINE BAR 2 OF f1 PROMPT '\<По шифру товара'

DEFINE BAR 3 OF f1 PROMPT '\<По цене единиц товара'

ON SELECTION BAR 1 OF f1 DO filter1

ON SELECTION BAR 2 OF f1 ACTIVATE POPUP f2

ON SELECTION BAR 3 OF f1 ACTIVATE POPUP f3

*--------------------------Описание меню f2 ----------------------------*

DEFINE POPUP f2 FROM 6.60 TO 15.20

DEFINE BAR 1 OF f2 PROMPT `\<Иванов' MESSAGE;

`Поставщик, с соответствующим шифром'

DEFINE BAR 2 OF f2 PROMPT `\<Сидоров' MESSAGE;

`Поставщик, с соответствующим шифром'

DEFINE BAR 3 OF f2 PROMPT `\<Магомедов' MESSAGE;

`Поставщик с соответствующим шифром'

DEFINE BAR 4 OF f2 PROMPT `\<Абдулаев' MESSAGE;

`Поставщик, с соответствующим шифром'

DEFINE BAR 5 OF f2 PROMPT `\<Куннуев' MESSAGE;

`Поставщик, с соответствующим шифром'

DEFINE BAR 6 OF f2 PROMPT `\<Джабраилов' MESSAGE;

`Поставщик, с соответствующим шифром'

DEFINE BAR 7 OF f2 PROMPT `\<Курбанов' MESSAGE;

`Поставщик, с соответствующим шифром'

DEFINE BAR 8 OF f2 PROMPT `\<Исабекова' MESSAGE;

`Поставщик, с соответствующим шифром'

DEFINE BAR 9 OF f2 PROMPT `\<Ильясов' MESSAGE;

`Поставщик, с соответствующим шифром'

DEFINE BAR 10 OF f2 PROMPT `\<Оруджев' MESSAGE;

`Поставщик, с соответствующим шифром'

ON SELECTION POPUP f2 DO filter2 WITH BAR( )

*--------------------------Описание меню f3 ----------------------------*

DEFINE POPUP f3 FROM 7.60 TO 16.21

DEFINE BAR 1 OF f3 PROMPT `\<мебель' MESSAGE;

`Цена с соответствующим наименованием товара'

DEFINE BAR 2 OF f3 PROMPT `\<посуда' MESSAGE;

`Цена с соответствующим наименованием товара'

DEFINE BAR 3 OF f3 PROMPT `\<обувь' MESSAGE;

`Цена с соответствующим наименованием товара'

DEFINE BAR 4 OF f3 PROMPT `\<оргтехника' MESSAGE;

`Цена с соответствующим наименованием товара'

DEFINE BAR 5 OF f3 PROMPT `\<канцтовары' MESSAGE;

`Цена с соответствующим наименованием товара'

DEFINE BAR 6 OF f3 PROMPT `\<одежда' MESSAGE;

`Цена с соответствующим наименованием товара'

DEFINE BAR 7 OF f3 PROMPT `\<консервы' MESSAGE;

`Цена с соответствующим наименованием товара'

DEFINE BAR 8 OF f3 PROMPT `\<игрушки' MESSAGE;

`Цена с соответствующим наименованием товара'

DEFINE BAR 9 OF f3 PROMPT `\<стройматериалы' MESSAGE;

`Цена с соответствующим наименованием товара'

DEFINE BAR 10 OF f3 PROMPT `\<ткани' MESSAGE;

`Цена с соответствующим наименованием товара'

ON SELECTION POPUP f3 DO filter3 WITH BAR( )

PROCEDURE filter1 &&--------процедура фильтрации по общей сумме сделки.

DEFINE WINDOW okno FROM 0,0 TO 10,77;

PANEL ZOOM FLOAT CLOSE IN WINDOW gm

ACTIVATE WINDOW okno

SET FILTER TO lgot#'нет'

BROWSE TITLE 'Фильтрация по общей сумме сделки ';

FIELDS a.shifr :H='Шифр товара ',;

a.naim :H='Наименование ',;

a.col :H='Количество единиц товара',;

a.cena :H='Цена единиц товара.',;

a.summa :H='Сумма сделки.',;

a.post :H='Поставщик',;

a.pocup :H='Покупатель',;

color g+/n

DEACTIVATE WINDOW okno

PROCEDURE filter2 &&-------процедура фильтрации по шифру товара

PARAMETER p

DO CASE

CASE p=1001

SET FILTER TO post='Иванов'

CASE p=1002

SET FILTER TO post='Сидоров'

CASE p=1003

SET FILTER TO post='Магомедов'

CASE p=1004

SET FILTER TO post='Абдулаева'

CASE p=1005

SET FILTER TO post='Куннуев'

CASE p=1006

SET FILTER TO post='Джабраилов'

CASE p=1007

SET FILTER TO post='Курбанов'

CASE p=1008

SET FILTER TO post='Исабекова'

CASE p=1009

SET FILTER TO post='Ильясов'

CASE p=1010

SET FILTER T0 post='Оруджев'

ENDCASE

BROWSE TITLE 'Фильтрация по шифру товара';

FIELDS a.shifr :H='Шифр товара ',;

a.naim :H='Наименование ',;

a.col :H='Количество единиц товара',;

a.cena :H='Цена единиц товара.',;

a.summa :H='Сумма сделки.',;

a.post :H='Поставщик',;

a.pocup :H='Покупатель',;

color g+/n

DEACTIVATE POPUP f2

PROCEDURE filter3 &&-------процедура фильтрации по цене единиц товара

PARAMETER p

DO CASE

CASE p=1

SET FILTER TO naim='мебель'

CASE p=2

SET FILTER TO naim='посуда'

CASE p=3

SET FILTER TO naim='обувь'

CASE p=4

SET FILTER TO naim='оргтехника'

CASE p=5

SET FILTER TO naim='канцтовары'

CASE p=6

SET FILTER TO naim='одежда'

CASE p=7

SET FILTER TO naim='консервы'

CASE p=8

SET FILTER TO naim='игрушки'

CASE p=9

SET FILTER TO naim='стройматериалы'

CASE p=10

SET FILTER T0 naim='ткани'

ENDCASE

BROWSE TITLE 'Фильтрация по цене единиц товара';

FIELDS a.shifr :H='Шифр товара ',;

a.naim :H='Наименование ',;

a.col :H='Количество единиц товара',;

a.cena :H='Цена единиц товара.',;

a.summa :H='Сумма сделки.',;

a.post :H='Поставщик',;

a.pocup :H='Покупатель',;

color g+/n

DEACTIVATE POPUP f3

*--------------------------MAIN.PRG - файл главного меню------------------*

CLOSE DATABASE

DELETE FILE shifr.idx

USE kurs && использование kurs и индексирование по полю SHIFR

INDEX ON SHIFR TO shifr COMPACT

USE kurs 2 in b && открытие kurs 2 в области b

USE kurs INDEX shifr IN a

SELECT a

SET RELATION TO SHIFR INTO b && связывание баз данных

&& по полю SHIFR в области b

SET MESSAGE WINDOW MESS && закрепление окна MESS

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

DEFINE WINDOW gm FROM 0,0 TO 21,78;

TITLE 'Программа "Движения" товара на базе ';

DOUBLE FILL '-' color rb+/n && основное окно

DEFINE WINDOW MESS FROM 22,0 TO 24,78;

TITLE '***СООБЩЕНИЕ***' DOUBLE color rb+/n && окно для выдачи сообщений о совершении сделки

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

DEFINE MENU gmenu IN WINDOW gm SHADOW

DEFINE PAD a1 OF gmenu PROMPT '\<Данные' AT 2,5;

MESSAGE 'Возможен просмотр, редактирование данных'

DEFINE PAD a2 OF gmenu PROMPT '\<Поиск ' AT 2,22;

MESSAGE 'Вы можете найти данные и вывести на печать'

DEFINE PAD a3 OF gmenu PROMPT '\<Фильтрация ' AT 2,40;

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

DEFINE PAD a4 OF gmenu PROMPT '\<Выход' AT 2,62;

MESSAGE 'Осуществляется выход из системы'

ON SELECTION PAD a1 OF gmenu DO DAN

ON SELECTION PAD a2 OF gmenu DO POISK

ON SELECTION PAD a3 OF gmenu DO FILTR

ON SELECTION PAD a4 OF gmenu DO WIHOD

ACTIVATE WINDOW MESS && активация окна сообщений

ACTIVATE WINDOW gm && активация основного окна

ACTIVATE MENU gmenu && активация главного меню

CLEAR MENUS && удаление всех меню

CLEAR WINDOWS && удаление всех окон

CANCEL &&----------конец головной программы

*-----------------------------POISK.PRG---------------------------------*

SET MESSAGE WINDOW MESS

DEFINE WINDOW poisk FROM 4,10 TO 6,25;

TITLE 'Поиск ';

WINDOW gm SHADOW COLOR B/B+ && описание окна поиска

DEFINE POPUP p1 FROM 3,14 TO 6,38 SHADOW

DEFINE BAR 1 OF p1 PROMPT '\<Поиск по покупателю';

MESSAGE 'Вы можете найти покупателя по шифру товара'

DEFINE BAR 2 OF p1 PROMPT '\<Поиск по покупателя';

MESSAGE 'Вы можете найти покупателя по наименованию товара'

ON SELECTION POPUP p1 DO PSK

ACTIVATE POPUP p1

PROCEDURE PSK

y=BAR()

ACTIVATE WINDOW poisk && активация окна поиска

DO CASE

CASE y=1

@0,2 GET a PICTURE '###' DEFAULT 0 && задание шифра товара

READ

LOCATE FOR SHIFR =a

CASE y=2

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

READ

LOCATE FOR AB SHIFR =a

ENDCASE

IF !EMPTY(a) AND !FOUND()

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

ELSE

DO PRINT

ENDIF

DEACTIVATE WINDOW poisk

DEACTIVATE POPUP p1

*----------------------------PRINT.PRG--------------------------------*

SET CURSOR OFF && отключение курсора

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

DEFINE POPUP choice FROM 2,17 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 3,8 TO 17,67 TITLE 'Информация об покупателе';

DOUBLE SHADOW COLOR W+/B

ACTIVATE WINDOW prin && активация окна

?' Шифр товара :',a.shifr

?' Наименование товара :',a.naim

?'Количество единиц товара :',a.colt

?' Цена единиц товара :',a.cena

?' Сумма сделки :',a.summa

?' Поставщик :',a.post

?' Покупатель :',a.pocup

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

IF LASTKEY ( ) #27 && если на ОТКАЗ,

ACTIVATE POPUP shoice && то активируем окно shoice

ENDIF

RELEASE WINDOW prin

*-----------------------------START.PRG-----------------------------*

SET path to C:\fox2\kurs_pbd

SET TALK OFF && установление операционной среды

SET STATUS OFF

SET DATE GERMAN

SET ESCAPE OFF && подавление прерывания от клавиши Escape

CLEAR

WAIT 'Нажмите любую клавишу' WINDOW && вызов паузы в работе системы до

&& нажатия любой клавиши

DO ZASTAV && запуск программы заставки экрана

DO MAIN && запуск командного файла

QUIT

*---------------------------WIHOD.PRG----------------------------*

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

DEFINE POPUP w1 FROM 3,60 TO 6,75

DEFINE BAR 1 OF w1 PROMPT '\<Выход в FoxPro'

DEFINE BAR 2 OF w1 PROMPT '\<Выход в Dos'

ON SELECTION POPUP w1 DO vyb WITH BAR( )

ACTIVATE POPUP w1

DEACTIVATE POPUP w1

PROCEDURE vyb && процедура выбора

parameters c

DO CASE

CASE c=1

CLEAR WINDOWS

CANCEL

CASE c=2

QUIT

ENDCASE

Заключение

В данном курсовом проекте я ознакомилась с возможностями FoxPro, как система управления баз данных Разработаная мною программа “Движение” товара на базе.

ЛИТЕРАТУРА

1. Хеннер Е.К., Могилев А.В., Пак Н.И. «Информатика». М.: «Учеб. пособие для студ. пед. вузов», 1999 - 816с.

2. Наумов А.Н «Системы управления базами данных и знаний». М.: «Финансы и статистика», 1991 - 352с.

3. Диго С..М. «Проектирование и использование БД». М.: «Финансы и статистика», 1991 - 358с.

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


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

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

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

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

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

  • Базы данных - важнейшая составная часть информационных систем. Проектирование базы данных на примере предметной области "Оргтехника". Сбор информации о предметной области. Построение информационно-логической модели данных. Разработка логической структуры.

    курсовая работа [318,6 K], добавлен 24.12.2014

  • Разновидности систем управления базами данных. Анализ предметной области. Разработка структуры и ведение базы данных. Структурированный язык запросов SQL. Организация выбора информации из базы данных. Общие принципы проектирования экранных форм, макросов.

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

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

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

  • Анализ предметной области, концептуальных требований и информационных потребностей к разрабатываемой базе данных студентов. Выбор информационных объектов и проектирование информационной структуры. Создание таблиц, отчетов, запросов на выборку и форм.

    курсовая работа [69,4 K], добавлен 18.11.2010

  • Анализ предметной области с использованием моделей методологии ARIS и разработка ER-диаграммы. Описание входной и выходной информации для проектирования реляционной базы данных. Разработка управляющих запросов и связей между ними с помощью языка SQL.

    курсовая работа [975,2 K], добавлен 30.01.2014

  • Создание структуры базы данных на примере "Школьного журнала" с использованием метода и принципа нормализации. Понятия базы данных, архитектуры БД и проектирования. Описание предметной области; приложения для работы с базой данных TTable и TQuery.

    дипломная работа [996,4 K], добавлен 01.04.2012

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

    курсовая работа [92,5 K], добавлен 13.12.2014

  • Автоматизация учета закупки лекарственных препаратов в аптеке. Разработка базы данных и прикладных программ для работы с ней. Анализ предметной области и формирование требований пользователей. Выбор архитектуры программно-технологической реализации.

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

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