• Paranoid - курс по анонимности и безопасности в сети от команды codeby. Защита персональных данных, анонимность в сети интернет, настройка виртуальных машин, безопасная передача данных, анти форензика и еще много всего полезного. Подробнее ...

Справочная служба аэропорта

  • Автор темы sds
  • Дата начала
S
#1
Система должна выдавать справки об авиарейсах из указанного пункта отправления, по требованию сообщать информацию о количестве свободных мест на заданное число, о проданных местах на весь месяц, выполнять операции покупки и сдачи билета.

Люди, может кто-нибудь делал такое или приблизительно похожее, может есть БД.
Если можете чем-то помочь пишите или присылайте на Kvas.off@mail.ru
Заранее большое спасибо.
 
B

Barmutik

#2
Забавно... готовую прогу? Вы бы спрашивали хоть совета что ль ...
 
S
#3
Да у меня вся проблема с БД , не совсем я шарю (учусь) .
Может сможете выложить БД, буду очень благодарен.
 

morpheus

скриптописец
07.08.2006
3 915
1
#4
<!--QuoteBegin-sds+3:12:2007, 13:40 -->
<span class="vbquote">(sds @ 3:12:2007, 13:40 )</span><!--QuoteEBegin-->Да у меня вся проблема с БД
[snapback]88082" rel="nofollow" target="_blank[/snapback]​
[/quote]
И какую БД Вы выбрали?
 
S
#5
Такой вопрос:
Использую бд парадокс, создаю таблицу рейсов и одним из пунктов является кол-во мест, целого типа
(long integer). А как реализовать покупку билетов и соответственно чтобы показывалось кол-во проднных и свободных мест?
 

morpheus

скриптописец
07.08.2006
3 915
1
#6
<!--QuoteBegin-sds+14:12:2007, 14:11 -->
<span class="vbquote">(sds @ 14:12:2007, 14:11 )</span><!--QuoteEBegin-->и одним из пунктов является кол-во мест
[snapback]89971" rel="nofollow" target="_blank[/snapback]​
[/quote]
добавить аналогичный, который будет отобрабжать кол-во проданных или свободных
 
S

SNike

#7
Базочку для этих целей нужно к примеру MS SQL Server, если денежный вопрос мучает - то Firebird тоже неплох. Даже если тебе выложить базу - это не поможет, потому что к ней нужно ещё и программирование чтоб написать программу для работы с ней. Не будет же оператор, диспетчер или еще кто открывать Database Desktop или IBExpert чтоб что-то посмотреть. Наверняка понадобятся печатные формы, отчетность и куча всего прочего.

Вот варианты решения проблемы которые известны всем ;)

а) покупать готовую программу
б) заказывать её разработку у тех кто с этим справится
б) самому осваивать базы, SQL и программирование
 
S
#8
Я сделал так:
1) таблица рейсов:
1 рейс
2 откуда
3 куда
4 тип самолета
5 кол-во мест всего

2) таблица вылетов
1 рейс
2 дата вылета
3 время отправления
4 время прибытия
5 продано билетов
6 свободно билетов

И такие вот возникли вопросы:
Создал эти две таблицы, но почемуто в таблиу вылетов не возможно добавлять новые записи или редактировать?
Я думаю проданных билетов и свободных будут вычисляемыми полями , зависящими от общего кол-ва мест , а как это реализовать в коде?
Заранее благодарю .
 
R

root

#9
Для: sds
Вы тех задания составьте + концептуальный проект, после разберите что хочет пользователь, затем выбирите тип реализации(БД,связку, платформу, ) так как не все Ёгурты одинаково полезны, а так как вы это себе представляете это не всегда правильно, после вам самим легче будет и мы здесь вас начнем более внятно понимать, а так визуально представлять проект как представляете его себе вы, лично мне не очень удобно.

P.S это реальный проект или так самообразование ?
 
S
#10
Подскажите пожалуста как мне показать все вылеты на определенную (вводимую) дату?
К примеру для показа рейсов из определенного места вылета я делаю так:
Код:
begin
DataSource1.DataSet:=Query2;
if okbottomdlg.ShowModal=mrok then  \\ в edit1.text ввожу нужный пункт отправления и ищу
with Query2 do
begin
close;
ParamByName('dnazv').Value:=okbottomdlg.edit1.text;
open;
end;
end;

А в sql пишу select * from aa where aa.otkuda=:dnazv
А вот с датой чето не получается, пишет вроде несоотетствие типов.
 
S

SNike

#11
Код:
SELECT * FROM TABLE WHERE DATE_FIELD=:pDate
ParamByName('pDate').AsDateTime := MyDate;
Open
 
B

Barmutik

#12
Немного офа!

Для: sds
За месяц такой прогресс(в прямом смысле) ;)
 
S
#13
Подскажите пожалуйста.
В одной таблице имеются рейсы , в другой даты вылета этого рейса (связь 1 к многим);
1) таблица рейсов: 2) таблица вылетов
1 рейс 1 рейс
2 откуда 2 дата вылета
3 куда 3 время отправления
4 тип самолета 4 время прибытия
5 кол-во мест всего 5 продано билетов
6 свободно билетов


В таблице рейсов имеется несколько рейсов с разным кол-вом билетов, и у каждого рейса по несколько вылетов.
В таблице рейсов я выбираю рейс(1) . Потом нажимаю кнопку и показываю все рейсы из заданного пункта отправления. Выбираю появившейся рейс и в другой таблице показываются все вылеты этого рейса. Выбираю нужный рейс(2) и нажимаю кнопку покупки билетов, ввожу нужное кол-во билетов. НО кол-во купленных и свободным мест рассчитывается на основании (кол-во мест всего) рейса который я выбрал первым(1) еще до выборки из заданного пункта отправления , а должно рассчитываться на основании рейса который я выбрал после выборки(2).
Надеюсь вы поняли.

Как это исправить?

Так я выбираю рейс из заданного пункта отправления

Код:
procedure TForm1.N5Click(Sender: TObject);
begin
DataSource2.DataSet:=Query1;
DataSource1.DataSet:=Query2;
if okbottomdlg.ShowModal=mrok then
with Query2 do
begin
close;
ParamByName('dnazv').Value:=okbottomdlg.edit1.text;
open;
end;
А в sql пишу select * from aa where aa.otkuda=:dnazv
Так я осуществляю покупку билетов
Код:
procedure TForm4.Button1Click(Sender: TObject);
var
b:integer;
begin
form1.Query1buy.ReadOnly:=False;
form1.Query1svob.ReadOnly:=False;
form1.Query1.Edit;
form1.Table1.Open;
b:=StrToInt(Edit1.Text);
form1.Query1svob.Value:=form1.Table1Mest.Value - form1.Query1buy.Value;
if b>form1.Query1svob.Value then ShowMessage('ошибка') else begin
form1.Query1.Edit;
form1.Table1.Open;
form1.Query1buy.Value:=b+ form1.Query1buy.Value;
form1.Query1svob.Value:=form1.Table1Mest.Value - form1.Query1buy.Value;
form1.Query1.Post;
end;
form1.Query1buy.ReadOnly:=True;
form1.Query1svob.ReadOnly:=true;
form4.Close;
end;
 
P

piterkoshka

#14
Мы примерно такое делали в ФоксПро в свое время...
Сделал хоть, нет?