Форум: "Начинающим";
Текущий архив: 2007.12.23;
Скачать: [xml.tar.bz2];
ВнизParadox в меня не понимать =) Найти похожие ветки
← →
ImA © (2007-11-27 15:05) [0]Моё почтение!
Строгая курсовую наткнулась на непонятную... ошибку что ли, которую в одиночку врят ли когда смогу найти...
В базе имеется пока только 3 записи, но с одинаковыми критериями выборки, которые задаются на первой форме. Далее путем фильтрации при создании формы таварищ грид должен вывалить на обозрение все 3 записи, а он показывает только одну. Есть еще один табл и датасоурс, обращенные к этой базе (это для редактирования), потому што из-за мастер филдс редактирование почему-то работать не хочет.
← →
ImA © (2007-11-27 15:09) [1]
unit Unit1;
interface
uses
Db,
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, DBCtrls;
type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Ok: TBitBtn;
Cansel: TBitBtn;
god: TComboBox;
kaf: TComboBox;
semestr: TComboBox;
prep: TComboBox;
Label5: TLabel;
otd: TComboBox;
procedure OkClick(Sender: TObject);
procedure CanselClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure kafChange(Sender: TObject);
procedure godChange(Sender: TObject);
procedure semestrChange(Sender: TObject);
procedure prepChange(Sender: TObject);
procedure otdChange(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
BaseDir:String;
sm, gd, kf, pr, ot: string; //передаем id для выборки
implementation
uses unit2, unit3, DBTables;
{$R *.dfm}
procedure TForm1.OkClick(Sender: TObject);
begin
form2.Show;
form2.shapka1.Caption:="Кафедра ""+kaf.Text+""";
form2.shapka2.Caption:="Учебное поручение преподавателя на "+god.Text+" уч. год.";
form2.shapka3.Caption:="Преподаватель "+prep.Text;
form2.shapka4.Caption:="Семестр: "+semestr.Text+" "+otd.Text+" отделение";
end;
procedure TForm1.CanselClick(Sender: TObject);
begin
form1.Close;
form2.Close;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
BaseDir := ExtractFilePath(Application.ExeName);
Dm.ds5.DataSet.First;
while not dm.ds5.DataSet.Eof do begin
kaf.Items.Add(dm.ds5.DataSet.Fieldbyname("naz").AsString);
dm.ds5.DataSet.Next;
end;
dm.ds1.DataSet.First;
while not dm.ds1.DataSet.Eof do begin
semestr.Items.Add(dm.ds1.DataSet.Fieldbyname("naz").AsString);
dm.ds1.DataSet.Next;
end;
dm.ds3.DataSet.First;
while not dm.ds3.DataSet.Eof do begin
otd.Items.Add(dm.ds3.DataSet.Fieldbyname("naz").AsString);
dm.ds3.DataSet.Next;
end;
end;
procedure TForm1.kafChange(Sender: TObject);
begin
if Dm.TKaf.Locate("naz", kaf.Text, [loCaseInsensitive]) then begin
kf := DM.TkafId_kaf.AsString;
dm.ds8.DataSet.Filter:="Id_kaf="+kf;
dm.ds8.DataSet.Filtered:=true;
dm.ds8.DataSet.First;
prep.Items.Clear;
while not dm.ds8.DataSet.Eof do begin
dm.ds6.DataSet.First;
while not dm.ds6.DataSet.Eof do begin
if dm.ds6.DataSet.FieldByName("Id_prep").AsInteger=dm.ds8.DataSet.FieldByName("Id_p rep").AsInteger then
prep.Items.Add(dm.ds6.DataSet.Fieldbyname("fio").AsString);
dm.ds6.DataSet.Next;
end;
dm.ds8.DataSet.Next;
end;
dm.ds8.DataSet.Filtered:=false;
if kf<>"" then begin
dm.ds4.DataSet.Filter:="Id_kaf="+kf;
dm.ds4.DataSet.Filtered:=true;
end;
end;
end;
procedure TForm1.godChange(Sender: TObject);
begin
gd:=god.Text;
end;
procedure TForm1.semestrChange(Sender: TObject);
begin
sm := VarToStrDef(dm.Tsem.Lookup("naz", semestr.Text, "Id_sem"), "");
end;
procedure TForm1.prepChange(Sender: TObject);
begin
pr := VarToStrDef(dm.tprep.Lookup("fio", prep.Text, "id_prep"), "");
end;
procedure TForm1.otdChange(Sender: TObject);
begin
ot := VarToStrDef(dm.T_form.Lookup("naz", otd.text, "id_form"), "");
if ot <> "" then begin
dm.ds2.DataSet.Filter:="Id_form="+ot;
dm.ds2.DataSet.Filtered:=true;
end;
end;
end.
← →
ImA © (2007-11-27 15:11) [2]
procedure TForm2.FormShow(Sender: TObject);
begin
dm.ds7.DataSet.First;
if (sm<>"") and (gd<>"") and (pr<>"") then begin
dm.ds7.DataSet.Filter:="Id_sem="+sm+" AND "+"God="+gd+" AND "+"Id_prep="+pr;
dm.ds7.DataSet.Filtered:=true;
dm.ds7.DataSet.Last;
end
else showmessage("Не хватает данных. Вернитесь на первую форму");
end;
procedure TForm2.FormCreate(Sender: TObject);
begin
form1.Visible:=false;
grid.Columns.Clear;
grid.DataSource:=DM.ds7;
grid.Columns.RebuildColumns;
nav.DataSource:=DM.ds7;
grid.Columns[0].Visible:=false;
grid.Columns[2].Visible:=false;
grid.Columns[3].Visible:=false;
grid.Columns[4].Visible:=false;
end;
← →
ImA © (2007-11-27 15:11) [3]многовато получилось... мискузи =)
← →
Sergey13 © (2007-11-27 15:12) [4]> [0] ImA © (27.11.07 15:05)
1. Зачем мне холодильник если я не курю. Это про то как ты сформулировала вопрос.
2. Учиться надо весь семестр, а не 2 недели перед сессией.
← →
Виталий Панасенко(дом) (2007-11-27 20:05) [5]
> Sergey13 © (27.11.07 15:12) [4]
>
> > [0] ImA © (27.11.07 15:05)
>
> 1. Зачем мне холодильник если я не курю. Это про то как
> ты сформулировала вопрос.
>
> 2. Учиться надо весь семестр, а не 2 недели перед сессией.
>
>
Выделенный текст мне больше все понравился..Найди такого студента !..:-)
← →
Virgo_Style © (2007-11-27 21:54) [6]> ImA © (27.11.07 15:05) [0]
> Моё почтение!
И тебе привет. Лучше сделай запросами, а то страшно смотреть, и код отформатируй нормально. А то не сдашь же)
← →
ImA © (2007-11-28 03:10) [7]мне притит ваше чувство юмора, но если я захочу посмеятся, я пойду на баш орг... на счет того, что учится надо семестр... я учусь на заочно-ускоренном, если вам это о чем-то говорит.
по всей видимости, кроме язвительных приколов, ничего по существу и не скажут... и еще, я не прошу за меня стряпать работу, я прошу лишь помочь найти ошибку...
зря спросила
← →
Германн © (2007-11-28 03:34) [8]
> ImA © (27.11.07 15:11) [3]
>
> многовато получилось... мискузи =)
>
Маловато получилось. excusez-moi!
← →
ImA © (2007-11-28 06:47) [9]маловато? =0
← →
KilkennyCat © (2007-11-28 08:54) [10]что такое "притит"?
Эх, Мария... совсем не изменилась... опять к мужикам пристаешь!
← →
Dennis I. Komarov © (2007-11-28 09:36) [11]> [0] ImA © (27.11.07 15:05)
> В базе имеется пока только 3 записи,
Не верно! записи имеются в таблице.
> выборки, которые задаются на первой форме.
А это еще что такое?
> Далее путем фильтрации
> при создании формы таварищ грид должен вывалить на обозрение
> все 3 записи, а он показывает только одну.
Он вываливает, только то, что ему укажет программист.
> Есть еще один
> табл и датасоурс, обращенные к этой базе (это для редактирования)
> , потому што из-за мастер филдс редактирование почему-то
> работать не хочет.
Черт голову сломит :)
← →
ImA © (2007-11-28 09:38) [12]Костик!!!
а ты все предпринимательствуеш? ;)
да вот думала подсказать смогут, мужики... а им судачить больше нравицо =)
кстати, траблу решила... Женя подсказал как обойти
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.12.23;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.047 c