Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
методические указания к КП.doc
Скачиваний:
2
Добавлен:
05.05.2019
Размер:
2.44 Mб
Скачать

5.6. Реализация запросов пользователей в среде субд.

 

По каждому запросу должны быть представлены:

  1. Имя запроса.

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

  3. Распечатка программы.

  4. Распечатка выходной формы.

 

5.6.1. Пример оформления приведен ниже (СУБД FOXPRO):

 

Имя запроса: выдать сведения об организациях, реализующих уголок марки 100 на 23.04.96 года.

 

Текст программы.

 

  1. CLEAR

  2. SET TALK OFF

  3. SET DATE GERMAN

  4. SET SAFETY OFF

  5. MATNAME = SPACE (20)

  6. MATMARK = SPACE (10)

  7. @ 3,20 SAY ‘Поиск организаций, реализующих материал,’

  8. @ 4,23 SAY ‘по заданному наименованию и марке’

  9. @ 7,12 SAY ‘Используя клавишу ТАВ для перемещения между полями’

  10. @ 8,12 SAY ‘Введите данные для поиска и выберите <поиск> для начала’

  11. @ 9,12 SAY ‘поиска или <выход> для выхода из программы’

  12. @ 10,27 SAY ‘Нажмите клавишу ENTER.’

  13. @ 13,11 SAY ‘Наименование:’ GET MATNAME

  14. @ 13, 51 SAY ‘ Марка’ GET MATMARK

  15. X=1

  16. @ 15,26 GET X FUNCTION ‘*H \Поиск;\Выход’ SIZE 1,9,10

  17. READ CYCLE

  18. IF X=2

  19. QUIT

  20. ENDIF

  21. SELECT O.TYPE,O.NAME,D.ADDR,M.NAME,M.MARK,M.PRICE,M.DEPOTNUM,M.SHELFNUM,M.CELLNUM;

  22. FROM MAT M,DEPOT D,ORG O;

  23. WHERE M.REGN=D.REGN AND O.REGN=D.REGN AND D.DEPOTNUM=M.DEPOTNUM;

  24. AND M.NAME=MATNAME AND M.MARK=MATMARK;

  25. ORDER BY O.TYPE,O.NAME INTO DBF KATALOG

  26. SET ALTERNATE TO MAT.TXT

  27. SET ALTERNATE ON

  28. SET CONSOLE OFF

  29. ? ‘Список организаций,’ AT 27

  30. ? ‘реализующих’ AT 20, LTRIM(RTRIM(MATNAME)),’ марки’,MATMARK

  31. ? ‘на’ AT 31, DTOC(DATE()) AT 34

  32. ?

  33. GO TOP

  34. DO WHILE !EOF()

  35. T=TYPE

  36. N=NAME_A

  37. ? ‘ организация’ ,t,n

  38. ?

  39. ? ‘№ склада | Адрес | Цена | № полки | № ячейки ‘ AT 1

  40. SCAN WHILE T=TYPE AND NAME = NAME_A

  41. ? DEPOTNUM FUNCTION ‘V8’ AT 3 , ADDR FUNCTION ‘V30’ AT 10,;

  42. PRICE FUNCTION ‘V12’ AT 42, SHELFNUM FUNCTION ‘V7’ AT 57,;

  43. CELLNUM FUNCTION ‘V8’ AT 68

  44. ENDSCAN

  45. ?

  46. ENDDO

  47. SET CONSOLE ON

  48. SET ALTERNATE OFF

  49. CLOSE ALTERNATE

  50. .DEFINE WINDOW TEXTFILE FROM 0,0 TO 24,78 TITLE ‘Для выхода нажмите Contrl+W’

  51. SYSTEM

  52. MODI FILE MAT.TXT WINDOW TEXTFILE

  53. CLEAR

  54. X=1

  55. @ 15,26 GET X FUNCTION ‘*H \Поиск;\Выход’ SIZE 1,9,10

  56. READ CYCLE

  57. IF X=1

  58. SET HEADING OFF

  59. TYPE MAT.TXT TO PRINTER

  60. ENDIF

  61. CLEAR

  62. QUIT

Выходной документ.

 

Список организаций,

реализующих уголок марки Р-100

на 23.04.96

 

Организация: ИЧП “Форма”

№ склада | Адрес | Цена | № полки | № ячейки

3 ул. Мостовых, д.10 3200.00 9 7

Организация: ТОО “Внедрение”

№ склада | Адрес | Цена | № полки | № ячейки

1 ул.Вешняковская , д.35 (подвал) 3500.00 12 3

1 ул.Кастанаевская д.4 к1 1300.00 11 2

Пример запроса «Получение информации о расписаниях и тарифах»

Пусть пользователь ввел следующую информацию:

Фамилия: Котов

Имя: Василий

Отчество: Васильевич

Паспортные данные

Серия: 4597

Номер: 123853

Льгота

Льготная категория: студент

Номер документа: 669900

Выдан в организации: ГУУ

Информация о полете

Пункт отправления: Москва

Пункт назначения: Екатеринбург

Дата вылета: 30.05.02

Время вылета: любое

Класс: эконом

Количество мест: 1

Форма оплаты: наличные

Результат

Номер рейса

Авиакомпания

Дата вылета

Время вылета

Время в пути

Самолет

Отправление

Назначение

Тариф

Льготный

01232

Внуковские АВЛ

30.05.02

11:00

2:20

АН-240032

Внуково

Котлас

3500,00 р

2800,00р

01239

Шереметьевские АВЛ

30.05.02

18:00

2:10

Ж-400376

Шереметьево-1

Котлас

3400,00 р

2720,00р

01245

Домодедовские АВЛ

30.05.02

10:00

2:30

АН-240035

Домодедово

Котлас

3600,00 р

2880,00р

01248

Сибирь

30.05.02

13:00

2:10

АН-240526

Быково

Котлас

3400,00 р

2720,00р

01254

ТрансАэро

30.05.02

19:00

2:30

ТУ-1340153

Домодедово

Котлас

3600,00 р

2880,00р

06891

Аэрофлот

30.05.02

14:00

2:20

ЯК-405987

Внуково

Котлас

3500,00 р

2800,00р