Алгоритмизация и программирование процессов обработки данных в среде СУБД типа Fox

Автор работы: Пользователь скрыл имя, 19 Ноября 2013 в 10:59, курсовая работа

Описание работы

Данная работа использует язык команд СУБД семейства Fox. Используемые команды, в основном, применимы во всех СУБД этого типа, но работа производилась на русифицированной СУБД Microsoft FoxPro для Windows версии 2.5b.

Содержание работы

1. Введение 3
2. Задание на курсовой проект 4
3. Анализ и постановка задачи 4
4. Формализация задачи 5
5. Алгоритмы 6
5.1. Создание двухуровневого светового меню 6
5.2. Создание файла данных 7
5.3. Чтение файла данных 8
5.4. Добавление данных в файл данных 9
5.5. Выдача сведений о количестве работников каждого из пяти цехов заданного разряда. 10
5.6. Выдача сведений о количестве работников каждой профессии по заданному разряду заданного цеха. 12
5.7. Выдача упорядоченного по алфавиту списка работников каждой профессии. 12
6. Программы 13
6.1. Создание двухуровневого светового меню 13
6.2. Создание файла данных 15
6.3. Чтение файла данных 16
6.4. Добавление данных в файл данных 17
6.5. Печать сведений о количестве работников каждого из пяти цехов заданного разряда. 18
6.6. Печать сведений о количестве работников каждой профессии по заданному разряду заданного цеха. 19
6.7. Печать упорядоченного по алфавиту списка работников каждой профессии. 20
7. Результаты решений 21
8. Заключение 28
9. Список литературы 29

Файлы: 1 файл

kurs_foxpro.doc

— 873.50 Кб (Скачать файл)

- -

 


Министерство образования и науки Российской Федерации

ФЕДЕРАЛЬНОЕ АГЕНСТВО ПО ОБРАЗОВАНИЮ

 

Государственное образовательное  учреждение

высшего профессионального образования

 

ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ УПРАВЛЕНИЯ

 

              Кафедра компьютерных технологий

 

 

КУРСОВОЙ ПРОЕКТ

 

ПО ДИСЦИПЛИНЕ: КОМПЬЮТЕРНАЯ ПОДГОТОВКА

по теме: «Алгоритмизация  и программирование процессов

обработки данных в среде  СУБД типа Fox»

 

 

 

Выполнил

заочной формы обучения

специальности:

специализации:

 

                                      

          _____курса, группы 

 

№ студенческого билета

 

                                                  

Проверил преподаватель

Несмеянов И.А.

 

 

 

Москва - 2006

Содержание

 

 

  1. Введение

Реляционные системы  управления базами данных (СУБД), такие  как FoxBase, FoxBase plus, FoxPro, Visual FoxPro относятся к новому поколению СУБД реляционного типа из семейства dBase – подобных СУБД. Пакеты этого семейства получили широкое распространение, и многие из них были русифицированы.

СУБД типа Fox сохраняет преемственность по отношению к более ранним представителям dBase – подобных СУБД, в отношении структуры баз данных, команд создания и обработки данных, основных типов данных. В тоже время каждая последующая СУБД обладает большими возможностями по сравнению с предыдущими. Так, например, Visual FoxPro по сравнению с FoxPro обладает более значительными изобразительными возможностями.

Данная работа использует язык команд СУБД семейства Fox. Используемые команды, в основном, применимы во всех СУБД этого типа, но работа производилась на русифицированной СУБД Microsoft FoxPro для Windows версии 2.5b.

 

  1. Задание на курсовой проект

Структура ЗАПИСИ исходного  ДОКУМЕНТА:

 

Номер цеха

Табельный номер

Фамилия

Профессия

Разряд


 

НЕОБХОДИМО:

1. Дать  сведения о  количестве работников каждого  из пяти цехов заданного разряда.

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

3. Распечатать списки  работников каждой профессии, упорядочив их по алфавиту.

  1. Анализ и постановка задачи

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

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

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

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

Кроме того, для диалога  пользователя с системой необходимо создать так называемое «Меню».

 

  1. Формализация задачи

В среде СУБД типа Fox каждая подзадача может оформляться в виде отдельного командного файла с расширением .prg и заканчиваться оператором возврата в вызывающий командный файл.

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

 

CreateFd.prg

– создание файла данных;

ReadFd.prg

– чтение созданного файла данных;

AddFd.prg

– добавление данных в созданный файл данных;

Zad1.prg

– выдача сведений о количестве работников каждого из пяти цехов заданного разряда;

Zad2.prg

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

Zad3.prg

– выдача на печать упорядоченных по алфавиту списков работников каждой профессии.


 

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

 

 

  1. Алгоритмы

    1. Создание двухуровневого светового меню

 

 


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

    1. Создание  файла данных

 

 

 


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

    1. Чтение файла  данных

 

 

 


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

    1. Добавление  данных в файл данных

 

 

 


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

    1.  Выдача сведений о количестве работников каждого из пяти цехов заданного разряда.

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

 
5.7. Выдача упорядоченного по алфавиту списка работников каждой профессии.

  1. Программы

    1.  Создание двухуровневого светового меню

* Командный файл иерархического  меню MainMenu

set Talk off

set Color to n/W*

Clear

 

Declare GenMenu(3,2), menuFile(3), menuZad(3), menuExit(2)

 

GenMenu(1,1)="  Файл данных  "

GenMenu(1,2)="Работа с файлом данных"

GenMenu(2,1)="    Задание    "

GenMenu(2,2)="Задания на курсовой  проект"

GenMenu(3,1)="     Выход     "

GenMenu(3,2)="Выход из программы"

 

menuFile(1)="Создание"

menuFile(2)="Чтение"

menuFile(3)="Добавление"

 

menuZad(1)="Задание №1"

menuZad(2)="Задание №2"

menuZad(3)="Задание №3"

 

menuExit(1)="Выход в Fox"

menuExit(2)="Выход из Fox"

 

Do While .T.

set Color to gr+/g, gr+/b

Menu Bar GenMenu, 3

Read Menu Bar to L1, L2

Do While L1 > 0

 

set Color to gr+/g, gr+/b

Menu 1, menuFile, 3,3

Menu 2, menuZad, 3,3

Menu 3, menuExit, 2,2

Read Menu Bar to L1, L2

set Color to n/W*

 

  Do Case

   Case L1=0

    Exit

    Case L1=1

Do Case

Case L2=1

Do CreateFd

Case L2=2

Do ReadFd

Case L2=3

Do AddFd

EndCase

Case L1=2

Do Case

Case L2=1

Do Zad1

Case L2=2

Do Zad2

Case L2=3

Do Zad3

EndCase

Case L1=3

Do Case

       Case L2=1

Return

Case L2=2

Quit

EndCase

EndCase

EndDo

EndDo

 

    1. Создание файла данных

* Командный файл CreateFd - создание  нового файла данных

set Talk off

set Status off

set Escape off

Clear

Zag='Процесс создания нового файла  данных'

@ 4,22 to 4,58 Color u/w*

@ 3,22 Say Zag Color u/w*

@ 12,0

Accept ' Укажите имя создаваемого файла данных: ' to NameFd

If Len(NameFd) > 0

Zag=Zag + ': ' + NameFd + '.dbf'

LenZag=Int(Len(Zag))

@ 4,Int((80-lenZag)/2) to 4,Int((80-lenZag)/2)+LenZag Color u/w*

@ 3,Int((80-LenZag)/2) Say Zag Color u/w*

@ 14,0

Text

 Вы хотите автоматически создать пустую структуру

 с указанным именем, по заданию  курсового проекта (Д/Н)?

EndText

 

Do While .T.

@ 16,57

Wait '' to ABC

If ABC='н' Or ABC='д'

ABC=Chr(Asc(ABC)-32)

EndIf

If ABC='Н' Or ABC='Д'

Exit

EndIf

EndDo

 

If ABC='Д'

Create Table &NameFd ;

(NomCex N(1,0), TabNom N(4,0), Fam C(20), Prof C(20), Razr N(1,0))

@ 8,0

set Talk on

Display Structure

set Talk off

Else

Create &NameFd 

EndIf

EndIf

 

@ 24,0

Wait 'Для возврата  в меню нажмите любую клавишу  ...'

@ 24,0 Clear

Return

 

    1.  Чтение файла данных

* Командный файл ReadFd - чтение файла  данных

set Talk off

set Status off

set Escape off

Clear

@ 4,27 to 4,54 Color u/w*

@ 3,27 Say 'Процесс  чтения файла данных' Color u/w*

@ 12,0

Accept ' Введите  имя считываемого файла данных: ' to NameFd

If Len(NameFd) >0

 

@ 3,0 Clear to 5,79

Zag='Содержимое  файла данных: ' + NameFd + '.dbf' 

LenZag=Int(Len(Zag))

@ 4,Int((80-lenZag)/2) to 4,Int((80-lenZag)/2)+LenZag Color u/w*

@ 3,Int((80-LenZag)/2) Say Zag Color u/w*

 

Use &NameFd

Do While .Not.EOF()

@ 7,0

Display Next 15

If EOF()=.F.

Skip

@ 24,0

Wait 'Нажмите любую клавишу для  просмотра следующих 15 записей  ...'

EndIf

EndDo

Close DataBases

EndIf

 

@ 24,0

Wait 'Для возврата  в меню нажмите любую клавишу  ...'

@ 24,0 Clear

Return

 

    1.  Добавление данных в файл данных

* Командный файл AddFd - добавление  файла данных

set Talk off

set Status off

set Escape off

Clear

@ 4,25 to 4,56 Color u/w*

@ 3,25 Say 'Процесс добавления файла  данных' Color u/w*

@ 12,0

Accept ' Введите имя файла данных для добавления данных: ' to NameFd

 

If Len(NameFd) >0

@ 3,0 Clear

Zag='Добавление данных в файл  данных: ' + NameFd + '.dbf' 

LenZag=Int(Len(Zag))

@ 4,Int((80-lenZag)/2) to 4,Int((80-lenZag)/2)+LenZag Color u/w*

@ 3,Int((80-LenZag)/2) Say Zag Color u/w*

Use &NameFd

Append

Close DataBases

EndIf

 

@ 24,0

Wait 'Для возврата в меню нажмите  любую клавишу ...'

@ 24,0 Clear

Return

 

    1.  Печать сведений о количестве работников каждого из пяти цехов заданного разряда.

* командный файл печати сведений о работниках заданного разряда  Zad1

clear

set talk off

@ 5,25 say ' Командный файл печати  сведений о работниках заданного  разряда Zad1'

accept 'Введите имя файла данных: ' to NameFd

use &NameFd

input 'Введите номер разряда: ' to RazrNom

clear

@ 5,10 say 'Сведения о работниках цеха, имеющих разряд '+STR(RazrNom,1)

@ 6,5 say '------------------------------------------------------'

@ 7,15 say 'Цех'

@ 7,40 say 'Количество'

@ 8,5 say '------------------------------------------------------'

store 1 to Kk

store 5 to Nn

store 0 to Kol

store 9 to Ss

   do while (Kk<=Nn)

         Scan

               if Razr=RazrNom

                  if NomCex=Kk

                      store Kol+1 to Kol

                  endif

               endif

         EndScan

       @  Ss,7 say Kk

       @  Ss,35 say Kol

        store 0 to Kol

        store Kk+1 to Kk

        store Ss+1 to Ss

   enddo

   @ Ss+1,5 say'------------------------------------------------------'

wait 'Для возврата в меню нажмите  любую клавишу ...'

return

 

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

 

* командный файл печати сведений  о работниках заданного разряда  Zad2

clear

set talk off

@ 5,25 say ' Командный файл печати  сведений о работниках заданного  разряда Zad2'

Информация о работе Алгоритмизация и программирование процессов обработки данных в среде СУБД типа Fox