Приложение Б Текст программы




*Закрытие всех работающих программ и приложений

CLOSE ALL

*Выход по нажатию клавиши Escape

SET ESCAPE ON

*Установка типа даты

SET DATE GERMAN

*Установка текущего каталога

SET DEFAULT TO "c:\FOXPRO\VFP98\PODPISKA"

*Очистка экрана

CLEAR

*Создание горизонтального меню

DEFINE MENU Nat

DEFINE PAD ФОРМЫOF NAT PROMPT 'ФОРМЫ'

DEFINE PAD ЗАПРОСЫOF NAT PROMPT 'ЗАПРОСЫ'

DEFINE PAD ОТЧЁТЫOF NAT PROMPT 'ОТЧЁТЫ'

DEFINE PAD ВЫХОД OF NAT PROMPT 'ВЫХОД'

ON SELECTION PAD ФОРМЫOF NAT DO PRO2

ON SELECTION PAD ЗАПРОСЫOF NAT DO PRO3

ON SELECTION PAD ОТЧЁТЫOF NAT DO PRO4

ON SELECTION PAD ВЫХОД OF NAT DO PRO1

ACTIVATE MENU NAT

 

 

*Процедура выхода из программы

PROCEDURE PRO1

CLEAR

if messagebox('ВЫХОТИТЕ ВЫЙТИ ИЗ ПРОГРАММЫ?',4+32+256,'выход')=6

deactivate menus

_screen.release()

else

_screen.refresh()

RETURN

CANCEL

 

*Создание вертикального меню «Формы»

PROCEDURE PRO2

DEFINE POPUP NATA FROM 1,0

DEFINE BAR 1 OF NATA PROMPT 'КАТАЛОГ ГАЗЕТ И ЖУРНАЛОВ'

DEFINE BAR 2 OF NATA PROMPT 'БАЗА ДАННЫХ АБОНЕНТОВ'

DEFINE BAR 3 OF NATA PROMPT 'ПОДПИСЧИКИ НА ИЗДАНИЯ'

ON SELECTION BAR 1 OF NATA DO PRO5

ON SELECTION BAR 2 OF NATA DO PRO6

ON SELECTION BAR 3 OF NATA DO PRO7

ACTIVATE POPUP NATA

 

*Создание вертикального меню «Запросы»

PROCEDURE PRO3

DEFINE POPUP NATA FROM 1,11

DEFINE BAR 1 OF NATA PROMPT 'ЗАПРОС ПО ГОРОДУ'

DEFINE BAR 2 OF NATA PROMPT 'ЗАПРОС ПО УЛИЦЕ'

DEFINE BAR 3 OF NATA PROMPT 'ЗАПРОС ПО КОДУ ИЗДАНИЯ'

DEFINE BAR 4 OF NATA PROMPT 'ЗАПРОС ПО НАИМЕНОВАНИЮ ИЗДАНИЯ'

DEFINE BAR 5 OF NATA PROMPT 'ЗАПРОС ПО ВИДУ ИЗДАНИЯ'

DEFINE BAR 6 OF NATA PROMPT 'ЗАПРОС ПО СРОКАМ ПОДПИСКИ'

ON SELECTION BAR 1 OF NATA DO PRO10

ON SELECTION BAR 2 OF NATA DO PRO11

ON SELECTION BAR 3 OF NATA DO PRO12

ON SELECTION BAR 4 OF NATA DO PRO13

ON SELECTION BAR 5 OF NATA DO PRO14

ON SELECTION BAR 6 OF NATA DO PRO16

ACTIVATE POPUP NATA

 

 

*Создание вертикального меню «Отчёты»

PROCEDURE PRO4

DEFINE POPUP NATA FROM 1,23

DEFINE BAR 1 OF NATA PROMPT 'ОБЗОР КАТАЛОГА ГАЗЕТ И ЖУРНАЛОВ'

DEFINE BAR 2 OF NATA PROMPT 'АБОНЕНТЫ(ГРУППИРОВКА ПО ГОРОДУ)'

DEFINE BAR 3 OF NATA PROMPT 'ОБЗОР ПОДПИСЧИКОВ НА ИЗДАНИЯ'

ON SELECTION BAR 1 OF NATA DO PRO17

ON SELECTION BAR 2 OF NATA DO PRO18

ON SELECTION BAR 3 OF NATA DO PRO19

ACTIVATE POPUP NATA

 

 

Вывод на экран формы «Каталог газет и журналов»

PROCEDURE PRO5

DO FORM "C:\FOXPRO\VFP98\PODPISKA\KAT.SCX"

CLOSE ALL

 

*Вывод на экран формы «Абоненты»

PROCEDURE PRO6

DO FORM "C:\FOXPRO\VFP98\PODPISKA\АБОНЕНТЫ.SCX"

CLOSE ALL

 

*Вывод на экран формы «Подписчики на издания2

PROCEDURE PRO7

DO FORM "C:\FOXPRO\VFP98\PODPISKA\PODPISCHIKI.SCX"

CLOSE ALL

 

*Запрос по городу

PROCEDURE PRO10

CLEAR

store space(20) to R

@10,10 SAY "ВВЕДИТЕ НАЗВАНИЕ ГОРОДА" GET R

READ

SELECT KAT.КОДИЗДАНИЯ,НАИМЕНОВАН,ПЕРИОДИЧН,АБОНЕНТЫ.ФАМИЛИЯ,ИМЯ,ОТЧЕСТВО,НАС_ПУНКТ,УЛИЦА,ДОМ,КВАРТИРА,СРОКНАЧАЛА,СРОКОКОНЧ from KAT,АБОНЕНТЫwhere АБОНЕНТЫ.НАС_ПУНКТ=R.AND.KAT.КОДИЗДАНИЯ=АБОНЕНТЫ.КОДИЗДАНИЯ ORDER BY KAT.КОДИЗДАНИЯ

 

 

*Запрос по улице

PROCEDURE PRO11

CLEAR

store space(20) to Y

store space(20)to R

@10,10 SAY "ВВЕДИТЕ НАЗВАНИЕ НАСЕЛЁННОГО ПУНКТА" GET Y

READ

CLEAR

@10,10 SAY 'ВЕДИТЕ НАЗВАНИЕ УЛИЦИ' GET R

READ

SELECT KAT.КОДИЗДАНИЯ,НАИМЕНОВАН,ПЕРИОДИЧН,АБОНЕНТЫ.ФАМИЛИЯ,ИМЯ,ОТЧЕСТВО,НАС_ПУНКТ,УЛИЦА,ДОМ,КВАРТИРА,СРОКНАЧАЛА,СРОКОКОНЧ from KAT,АБОНЕНТЫwhere АБОНЕНТЫ.НАС_ПУНКТ=Y.and.АБОНЕНТЫ.УЛИЦА=R.AND.KAT.КОДИЗДАНИЯ=АБОНЕНТЫ.КОДИЗДАНИЯ ORDER BY KAT.КОДИЗДАНИЯ

clear

 

*Запрос по коду издания

PROCEDURE PRO12

CLEAR

R=0

@10,10 SAY 'ВВЕДИТЕ КОД ИЗДАНИЯ' GET R

READ

SELECT KAT.КОДИЗДАНИЯ as 'Код_издания',НАИМЕНОВАН as 'Наименование',ВИД,АБОНЕНТЫ.ФАМИЛИЯ,НАС_ПУНКТ,УЛИЦА,ДОМ,КВАРТИРА,KAT.ПЕРИОДИЧН*KAT.ЦЕНА1ЭКЗ as 'Цена_за_мес',KAT.ПЕРИОДИЧН*KAT.ЦЕНА1ЭКЗ*(АБОНЕНТЫ.СРОКОКОНЧ-АБОНЕНТЫ.СРОКНАЧАЛА) as 'Итого_за_подписку' FROM KAT,АБОНЕНТЫWHERE KAT.КОДИЗДАНИЯ=R.AND.KAT.КОДИЗДАНИЯ=АБОНЕНТЫ.КОДИЗДАНИЯ ORDER BY KAT.КОДИЗДАНИЯ

CLEAR

 

*Запрос по наименованию издания

PROCEDURE PRO13

CLEAR

STORE SPACE(30) TO R

@10,10 SAY 'ВВЕДИТЕ НАИМЕНОВАНИЕ ИЗДАНИЯ' GET R

READ

SELECT KAT.КОДИЗДАНИЯ,НАИМЕНОВАН,ВИД,АБОНЕНТЫ.ФАМИЛИЯ,НАС_ПУНКТ,УЛИЦА,ДОМ,КВАРТИРА,KAT.ПЕРИОДИЧН*KAT.ЦЕНА1ЭКЗ AS 'Цена_за_мес',KAT.ПЕРИОДИЧН*KAT.ЦЕНА1ЭКЗ*(АБОНЕНТЫ.СРОКОКОНЧ-АБОНЕНТЫ.СРОКНАЧАЛА)as 'Итого_за_подписку' FROM KAT,АБОНЕНТЫWHERE KAT.НАИМЕНОВАН=R.AND.KAT.КОДИЗДАНИЯ=АБОНЕНТЫ.КОДИЗДАНИЯ ORDER BY KAT.КОДИЗДАНИЯ

CLEAR

 

*Запрос по виду издания

PROCEDURE PRO14

CLEAR

store space(20) to R

@10,10 SAY "ВВЕДИТЕ ВИД ИЗДАНИЯ" GET R

READ

SELECT KAT.КОДИЗДАНИЯ,НАИМЕНОВАН,ПЕРИОДИЧН,ЦЕНА1ЭКЗ,KAT.ПЕРИОДИЧН*KAT.ЦЕНА1ЭКЗ as 'Цена_за_мес' FROM KAT WHERE KAT.ВИД=R

CLEAR

 

*Запрос по срокам подписки

PROCEDURE PRO16

CLEAR

NDAT=' '

KDAT=' '

@10,10 SAY "ВВЕДИТЕ ДАТУ НАЧАЛА ПОДПИСКИ АБОНЕНТА" GET NDAT

READ

CLEAR

@10,10 SAY "ВВЕДИТЕ ДАТУ ОКОНЧАНИЯ ПОДПИСКИ АБОНЕНТА" GET KDAT

READ

SELECT АБОНЕНТЫ.КОД_АБОНЕН,ФАМИЛИЯ,ИМЯ,ОТЧЕСТВО,СРОКНАЧАЛА,СРОКОКОНЧ,KAT.КОДИЗДАНИЯ,НАИМЕНОВАН FROM KAT, АБОНЕНТЫWHERE СРОКНАЧАЛА>CTOD(NDAT).AND.СРОКОКОНЧ<CTOD(KDAT).AND.KAT.КОДИЗДАНИЯ=АБОНЕНТЫ.КОДИЗДАНИЯ ORDER BY АБОНЕНТЫ.КОД_АБОНЕН

CLEAR

 

*Предварительный просмотр отчёта «Обзор каталога газет и журналов»

PROCEDURE PRO17

CLEAR

CLOSE ALL

REPORT FORM "C:\FOXPRO\VFP98\PODPISKA\K.frx" PREVIEW

RETURN

 

*Предварительный просмотр отчёта «Абоненты(группировка по городу)»

PROCEDURE PRO18

CLEAR

CLOSE ALL

REPORT FORM "C:\FOXPRO\VFP98\PODPISKA\АБОНЕНТЫ.frx" PREVIEW

RETURN

 

*Предварительный просмотр отчёта «Обзор подписчиков на издания»»

PROCEDURE PRO19

CLEAR

CLOSE ALL

REPORT FORM "C:\FOXPRO\VFP98\PODPISKA\KAT.frx" PREVIEW

RETURN

 

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-12-28 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: