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

Реферат - Компьютеры, программирование

Другие рефераты по предмету Компьютеры, программирование

/p>

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

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

Use &NameFd

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

input Введите номер цеха: to CexNom

clear

@ 5,10 say Количество работников цеха № +STR(CexNom,1)+, имеющих +STR(RazrNom,1)+ разряд

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

@ 7,15 say Профессия

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

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

 

store 9 to Row

store 0 to Kol

store 1 to N,Nm

count to col

dimension PR(col)

 

scan

if ASCAN(PR,PROF)=0

store PROF to PR(N)

store N+1 to N

endif

endscan

 

do while Nm<N

scan for RAZR=RazrNom and NOMCEX=CexNom and PROF=PR(Nm)

store Kol+1 to Kol

endscan

@ Row,10 say PR(Nm)

@ Row,35 say Kol

store 0 to Kol

store Row+1 to Row

store Nm+1 to Nm

enddo

 

@ Row+1,5 say ------------------------------------------------------

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

return

 

 

 

 

 

 

 

 

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

* командный файл печати упорядоченного списка работников каждой про-фессии Zad3

clear

set talk off

@ 5,5 say Командный файл печати упорядоченно списка работников каждой профессии Zad3

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

clear

use &NameFd

index On PROF+FAM to &NameFd

use &NameFd Index &NameFd

 

store 1 to Row

store 0 to Kol

store 1 to N,Nm

count to col

dimension PR(col)

 

scan

if ASCAN(PR,PROF)=0

store PROF to PR(N)

store N+1 to N

endif

endscan

 

do while Nm<N

@ Row,12 say Список работников професcии + PR(Nm)

@ Row+1,5 say -----------------------------------------------------------

@ Row+2,7 say Номер цеха Таб.номер Фамилия Разряд

@ Row+3,5 say -----------------------------------------------------------

scan for PROF=PR(Nm)

@ Row+4,11 say NOMCEX

@ Row+4,25 say TABNOM

@ Row+4,40 say FAM

@ Row+4,58 say RAZR

store Row+1 to Row

endscan

@ Row+4,5 say -----------------------------------------------------------

store Nm+1 to Nm

store Row+6 to Row

if Row>=40

Row=1

wait Нажмите любую клавишу для вывода ннформации о работниках следующих профессий

clear

endif

enddo

 

Close DataBases

Delete File NameFd + .idx

 

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

return

  1. Результаты решений

Выбор создания файла данных

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Номер цехаТабельный номерФамилияПрофессияРазряд11001БеловМеханик411002МасловШумоизоляторщик511003СитниковПерегонщик311004ЧерновПомощник механика221005СорокинАвтослесарь421006ХохловСигнализаторщик521007СиротинШиномонтажник421008СмирновСлесарь431009КолосовМеханик по тюнингу531010БобровМеханик431011НикулинШумоизоляторщик531012МалышевМеханик441013БрусковПомощник механика241014ВоробьевАвтослесарь441015ЛеоновСигнализаторщик541016СидневМеханик451017ИльинАвтослесарь351018ФадеевШиномонтажник451019АстаховСлесарь451020РублевМеханик по тюнингу5

 

Выбор чтения файла данных

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Выбор добавления данных

в файл данных

 

 

 

 

 

 

 

 

 

 

 

 

Номер цехаТабельный номерФамилияПрофессияРазр