База данных для учета оплаты за междугородние разговоры
Государственный комитет Российской
Федерации по
связи и информатизации
УрКСИ-СибГАТИ
Утверждаю:
Декан
факультета
Комарова Т.И.
____________
Проектирование базы данных
для предприятия связи
Курсовая работа
Альбом
612.004КР
1998г.
УрКСИ-СибГАТИ
Задание для курсового проектирования
по предмету:
___________________________________________________________________
студента____________________курса____________________________________группы
________________________________________________________________________________
(фамилия, имя, отчество)
ТЕМА
ЗАДАНИЯ:________________________________________________________________
ИСХОДНЫЕ ДАННЫЕ:
ВАРИАНТ______
__________________________________________________________________________________
__________________________________________________________________________________
__________________________________________________________________________________
__________________________________________________________________________________
__________________________________________________________________________________
при выполнении
курсового проекта на указанную тему должны быть представлены:
1.
Пояснительная записка:
__________________________________________________________________________________
__________________________________________________________________________________
__________________________________________________________________________________
2.
Графическая часть проекта:
__________________________________________________________________________________
__________________________________________________________________________________
Дата выдачи_________________ Срок
окончания______________
Преподаватель
руководитель____________________________________________
Председатель цикловой
комиссии________________________________________
ОТЗЫВ КОНСУЛЬТАНТА
СОДЕРЖАНИЕ
1. Задание. Лист
1.1. Описание предметной области.
1.2. Запросы.
2. Таблица
атрибутов.
4. Спроектированные
отношения.
5. Структура
меню.
6. Листинг
меню.
7. Листинг
программ.
1.ЗАДАНИЕ.
1.1.Описание предметной области.
База данных для учета
оплаты за междугородние разговоры.
На междугородней станции ведется учет оплаты
за предоставляемые ею услуги. МТС регистрирует номер телефона, с которого
осуществляется междугородняя связь,
продолжительность разговора в минутах,
время и дату разговора, город куда звонил абонент.
Для тех, кто звонит с 18:00 по 8:00 в рабочие
дни, по выходным и праздничным дням действует льготный тариф.
Все города поделены по дальности на 7 зон.
Плата за разговор P вычисляется
следующим образом:
P=K*t,
где
- K- тариф зоны
- P-
продолжительность разговора
1. Если не был внесен аванс, то берется процент
за кредит P.
2. Если был внесен аванс, но сумма P
превысила его, то оплата за кредит начисляется на сумму превышения.
3. Если оплата не внесена в течении двух
месяцев, то телефон отключается.
1.2.Запросы к заданию 4.
1. Выведите фамилии абонентов, у которых долг
превышает
100000 рублей.
2. Отберите
абонентов, звонивших в зону № и имеющих аванс меньше тарифа данной зоны.№ зоны
должен вводиться пользователем.
3. Введите
№ зоны и название месяца и получите доход по этой зоне за данный месяц.
2.ТАБЛИЦА АТРИБУТОВ.
Таблица 1.
имя
|
тип
|
длина
|
примечание
|
av
|
N
|
7
|
аванс
|
dolg
|
N
|
7
|
долг
|
data_v
|
Date
|
8
|
дата
|
n_t
|
C
|
8
|
№ телефона
|
n_z
|
N
|
1
|
№ зоны
|
fio
|
C
|
20
|
Ф.И.О.
|
tar
|
N
|
7
|
тариф
|
t
|
N
|
3
|
время разговора
|
data_raz
|
Date
|
8
|
дата разговора
|
br
|
C
|
5
|
3. ER-ДИАГРАММА.
4. СПРОЕКТИРОВАННЫЕ ОТНОШЕНИЯ
Abon Таблица
2
FIO
|
N_t
|
|
|
ZONA Таблица 3.
N_Z
|
Tar
|
|
|
Plata
Таблица 4.
AV
|
DOLG
|
DATA_V
|
N_T
|
N_Z
|
|
|
|
|
|
Razg Таблица 5.
t
|
Br
|
Data-razg
|
N_z
|
N_t
|
|
|
|
|
|
5. СТРУКТУРА МЕНЮ
6. ЛИСТИНГ МЕНЮ
Z 4.PRG
clear
set safe
off
set talk
off
close
database
define menu
ats bar at line 3
define pad
x1 of ats prompt "запросы 1-3"
define pad
x2 of ats prompt "данные"
define pad
x3 of ats prompt "выход"
on pad x1
of ats activ popup xx1
on pad x2
of ats activ popup xx2
on pad x3
of ats quit
define popup xx1 from 4,1 to 11,11
define bar 1 of xx1 prompt "запрос 1"
define bar 3 of xx1 prompt "запрос 3"
on sele bar 1 of xx1 do zapros1
on sele bar 2 of xx1 do zapros2
on sele bar 3 of xx1 do zapros3
define
popup xx2 from 4,12 to 12,20
define bar
1 of xx2 prompt "абонент"
define bar
2 of xx2 prompt "плата"
define bar
3 of xx2 prompt "разговор"
define bar
4 of xx2 prompt "зона"
on sele
popup xx2 do basa with bar()
activ menu
ats
deactiv
menu ats
procedure basa
parameters k
close database
do case
case k=1
use abon
browse
use
case k=2
use mts
browse
use
case k=3
use plata
browse
use
case k=4
use razg
browse
use
case k=5
use zona
browse
use
endcase
7. ЛИСТИНГ ПРОГРАММ.
zapros1.prg
close
database
use
abon
use
plata in 2
index
on n_t to abon
sele
2
index
on n_t to plata
sele
1
set
rela to n_t into 2
set
filter to b.dolg>100000
brow
fields a.fio,b.dolg
set
rela to
set
filter to
zapros2.prg
clear
set safe
off
close
database
set talk
off
sele 1
use razg
index on
n_z to k1
sele 2
use zona
index on
n_z to k2
sele 1
set rela to
n_z into 2
set skip to
2
c=date()
read
v=0
@ 4,10 say
"Введите номер зоны" get v
read
set filter
to a.data_razg=c.and. b.n_z=v
browse
fields a.data_razg,b.n_z,a.t,b.tar
X1=a.T
X2=b.Tar
h=a.T*b.tar
?h,a.n_t
set filter
to
close
database
zapros3.prg
clear
set safe
off
close
database
set talk
off
sele 1
use razg
index on
n_z to k1
sele 2
use zona
index on
n_z to k2
sele 1
set rela to
n_z into 2
set skip to
2
c=date()
@ 2,10 say
"Введите дату" get c
read
v=0
@ 4,10 say
"Введите номер зоны" get v
read
set filter
to a.data_razg=c.and. b.n_z=v
browse
fields a.data_razg,b.n_z,a.t,b.tar
X1=a.T
X2=b.Tar
h=a.T*b.tar
?h,a.n_t
set filter
to
close
database