Пример программы

www.citforum.ru

Сервер содержит море(!) аналитической информации!

Поиск Рубрикатор Новости сервера Учебный центр Книжный магазин
Logo
Mistral.ru
Читать можно не только в онлайне :)
Приглашаем вас посетить
книжный магазин "Мистраль"!
 
mcse
Учебная программа
"Статус MCSE под ключ!"
Занятия начнутся 19 июня!

CITFORUM.RU >>> FTP INTERNET СЕТИ БАЗЫ ДАННЫХ ПРОГРАММИРОВАНИЕ ОПЕРАЦИОННЫЕ СИСТЕМЫ УПРАВЛЕНИЕ КОРПОРАТИВНЫМИ РЕСУРСАМИ HARDWARE ПОЛЬЗОВАТЕЛЯМ И ПРЕПОДАВАТЕЛЯМ РУБРИКАТОР МАТЕРИАЛЫ СЕМИНАРОВ И КОНФЕРЕНЦИЙ ЖЕЛТЫЕ СТРАНИЦЫ ListSoft & Citforum CD ИНТЕРНЕТ-МАРКЕТИНГ О СЕРТИФИКАЦИИ MICROSOFT УЧЕБНЫЕ КУРСЫ КОНФЕРЕНЦИЯ "ИНТЕРНЕТ-МАРКЕТИНГ'99" >>> >

 

Пример программы, выдающей отчет


DATABASE zawod

MAIN

DEFINE zapisx record like kadry.*

DEFINE  simw char (200), zapr char (300),fn  char (18)



OPEN form maxprim from "maxprim"

DISPLAY form maxprim            # вывести экранную форму



CONSTRUCT BY NAME simw ON kadry.* # Введение критериев выбора

                                  # с экрана

LET zapr="select * from kadry  where ",

simw clipped," order by tabnom "



MESSAGE simw

PREPARE selpr FROM zapr           # Изготовление запроса

DECLARE qquer CURSOR FOR selpr    # Объявление курсора для него



DISPLAY "Не забудьте нажать CTRL-O" AT 2,40

PROMPT "Файл, куда выводить отчет? или CR, если на экран: "

                         FOR fn



IF length(fn)=0 then START REPORT kadryrep       # на экран

else                 START REPORT kadryrep TO fn # в файл

END IF



   # выполнить запрос и сбросить выбранные строки в отчет

   FOREACH qquer  into zapisx.*   # Очередную строку из курсора

   OUTPUT TO REPORT kadryrep(zapisx.*)  # поместить в отчет

   END FOREACH

FINISH REPORT kadryrep          # Вывести результаты отчета

END MAIN



REPORT kadryrep(z)

DEFINE nameceh like ceh.nameceh

DEFINE z record like kadry.*

   # nomerceh  int,          # номер цеха

   # tabnom    serial,       # табельн. номер

   # fio       char(20),     # фамилия

   # dolvn     char(20),     # должность

   # zarplata  money(16,2),  # зарплата

   # datarovd  date          # дата рожд.

        OUTPUT

left  margin 0

right margin 80

top   margin 0

bottom margin 0

page  length 23

       ORDER BY z.nomerceh, z.tabnom   # Упорядочить



                    FORMAT

PAGE HEADER

print "-------------------------------------------------------"

print "цех|таб.ном|фио       |должность   |зарплата| дата рожд"

print "_______________________________________________________"



ON EVERY ROW

 print  z.nomerceh using "##", column 4,z.tabnom using "#####",

 column 13,z.fio clipped,

 column 28,z.dolvn clipped,

 column 43,z.zarplata using "$####.##",

 column 53,z.datarovd using "dd-mm-yyyy"



BEFORE GROUP OF z.nomerceh

select @nameceh into nameceh from ceh where nomerceh=z.nomerceh

 skip to top of page

 skip 1 line

 print "Цех   ",nameceh

 skip 1 line



AFTER GROUP OF  z.nomerceh

 need 2 lines

 print " В цехе ",nameceh clipped,2 spaces,

       group count(*) using "#####" ," человек, "

 print " Средняя зарплата ",

       group avg(z.zarplata) using "##### руб.## коп"



PAGE TRAILER

 print "заполнена страница номер", pageno

 pause "нажмите ВВОД"



END REPORT


Вот что увидит на пользователь во время работы программы:


+-------------------------------------------------------------+

|Укажите файл, куда выводить отчет, или CR, если на экран:    |

|                                 Не забудьте нажать CONTROL-О|

|                                                             |

|----------------------------------------------               |

|     цех   [1:4] [                     ]                     |

| таб.номер [           ]                                     |

| фамилия   [*ов                 ]                            |

| должность [                    ]                            |

| зарплата  [>500         ]                                   |

|дата рождения [          ]                                   |

|                                                             |

|                                                             |

nomerceh between 1 and 4 and fio matches "*о*" and zarplata>500

|                                                             |

+-------------------------------------------------------------+



---------------------------------------------------------------------------



цех|таб.ном|фио            |должность     |зарплата| дата рожд

_______________________________________________________________



Цех   дирекция



 1    34    иванов         директор       $ 4000.00

 1    35    кононов        зав. по снабжению$ 4000.00

 В цехе дирекция      2 человек,

 Средняя зарплата   4000 руб.00 коп



заполнена страница номер          1

нажмите ВВОД

---------------------------------------------------------------------------



цех|таб.ном|фио            |должность     |зарплата| дата рожд

_______________________________________________________________



Цех   литейный



 2    12    окунев         рабочий        $ 2000.00

 2    14    липко          лаборант       $ 2000.00

 2    18    пухов          мастер         $ 2000.00

 2    21    сухов          рабочий        $ 2000.00

 2    24    угольков       рабочий        $ 2000.00

 В цехе литейный      5 человек,

 Средняя зарплата   2000 руб.00 коп



заполнена страница номер          2

нажмите ВВОД

---------------------------------------------------------------------------



цех|таб.ном|фио            |должность     |зарплата| дата рожд

_______________________________________________________________



Цех   гараж



 4     9    потруев        слесарь        $ 1230.00

 4    12    гундосов       шофер          $ 2000.00

 В цехе гараж      2 человек,

 Средняя зарплата   1615 руб.00 коп



заполнена страница номер          3

нажмите ВВОД

Назад || Оглавление || Вперед

В начало Наверх Поиск Рубрикатор Новости сервера Учебный центр Книжный магазин
/cgi-bin/Click.cgi>
Быстрый переход >>>
Комментарии: info@citmgu.ru Техмаркет Компьютерс - техника высокого класса Сети и системы связи   Copyright ©
Design by Andre M. Erofeev