|
#1
|
|||
|
|||
код БД
На глаза попалась БД и оч заинтересовал ее код. Не могу назвать себя супер delphi программистом, но основные моменты понимаю, а здесь "что-то с чем-то". Пжс кто-нибудь проосвятите ремарками по поводу кода программы. Как она стрингрид с файлом связывает особенно интересно
Код:
var Form1: TForm1; save, fileSave: boolean; fileName: String; stDay : array[1..7] of string[11] = ('воскресенье','понедельник','вторн ик', 'среда','четверг','пятница','суббот а'); stMonth : array[1..12] of string[8] = ('января','февраля','марта', 'апреля','мая','июня','июля', 'августа','сентября','октября', 'ноября','декабря'); implementation {$R *.dfm} procedure TForm1.FormActivate(Sender: TObject); var Present: TDateTime; Year, Month, Day : Word; begin with Session do begin ConfigMode := cmSession; try AddStandardAlias( 'kollej', ExtractFilePath(ParamStr(0))+'DATA\ ', 'PARADOX'); Table2.Active:=True; finally ConfigMode := cmAll; end; end; end; procedure TForm1.ToolButton8Click(Sender: TObject); begin DataSource1.DataSet:=Table2; end; |
#2
|
||||
|
||||
Самого кода связи стринггрида с данными тут нет. Здесь только подключение к парадоксовской БД и открытие какой-то таблицы из нее.
Видимо вы что-то пропустили. Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#3
|
|||
|
|||
Здесь полностью содержание Unit1, Unit2 отвечает исключительно за поиск в стрингрид. Страдалецъ а добаление даты это особенность парадоксовой БД?
|
#4
|
||||
|
||||
Половина, то что описано нигде не задействована. Скажем в процедуре:
FormActivate описаны переменные Present,Year, Month, Day. Они в теле процедуры никак не обрабатываются и оптимизатор их вообще проигнорирует. Описание массива недели месяца тоже нигде в модуле не используются, и если этот модуль в программе более нигде не вызывается тоже будут проигнорированы оптимизатором. Вы пишете, что полностью дали unit1,unit2 - не похоже, наблюдается только какой-то один из юнитов, скорее всего unit1 Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#5
|
|||
|
|||
Страдалецъ вот Unit2, видемо здесь собака зарыта и тут нетолько поиск...
Код:
var Form2: TForm2; fam:string[30]; implementation uses Unit1; {$R *.dfm} procedure TForm2.BitBtn2Click(Sender: TObject); begin if RadioButton6.Checked then begin fam:=Edit1.Text; if fam <> '' // пользователь ввел фамилию then begin with form1.Query2 do begin Close; // закрыть файл-результат выполнения предыдущего запроса SQL.Clear; // удалить текст предыдущего запроса // записываем новый запрос в свойство SQL SQL.Add(' SELECT DISTINCT Yonalish,Kurs,Guruh,Ism,Fam,Otchestva,Data,Adres,Telefon,Infor,K_nom,K_avtor,Maul_xodim,K_kod,K_oldi,K_topshirdi,Rasm,Nomer'); SQL.Add('FROM ":kollej:kutubxona.DB"'); SQL.Add('WHERE'); SQL.Add('(Yonalish= "'+ fam + '")'); SQL.Add('ORDER BY Yonalish,Kurs,Guruh,Ism,Fam,Otchestva,Adres,Telefon,Infor,K_nom,K_avtor,Maul_xodim,K_kod,Rasm,Nomer'); Open; // активизируем выполнение запроса end; if form1.Query2.RecordCount <> 0 then form1.DataSource1.DataSet:=form1.Query2 // отобразить рез-т выполнения запроса else begin ShowMessage('Bunday Yo`nalish mavjud emas.'); form1.DataSource1.DataSet:=form1.Table2; end; end; end; if RadioButton4.Checked then begin fam:=Edit1.Text; if fam <> '' then begin with form1.Query2 do begin Close; SQL.Clear; // записываем новый запрос в свойство SQL SQL.Add(' SELECT DISTINCT Yonalish,Kurs,Guruh,Ism,Fam,Otchestva,Data,Adres,Telefon,Infor,K_nom,K_avtor,Maul_xodim,K_kod,K_oldi,K_topshirdi,Rasm,Nomer'); SQL.Add('FROM ":kollej:kutubxona.DB"'); SQL.Add('WHERE'); SQL.Add('(Kurs= "'+ fam + '")'); SQL.Add('ORDER BY Yonalish,Kurs,Guruh,Ism,Fam,Otchestva,Adres,Telefon,Infor,K_nom,K_avtor,Maul_xodim,K_kod,Rasm,Nomer'); Open; end; if form1.Query2.RecordCount <> 0 then form1.DataSource1.DataSet:=form1.Query2 else begin ShowMessage('Bunday Kurs mavjud emas.'); form1.DataSource1.DataSet:=form1.Table2; end; end; end; if RadioButton8.Checked then begin fam:=Edit1.Text; if fam <> '' then begin with form1.Query2 do begin Close; SQL.Clear; // записываем новый запрос в свойство SQL SQL.Add(' SELECT DISTINCT Yonalish,Kurs,Guruh,Ism,Fam,Otchestva,Data,Adres,Telefon,Infor,K_nom,K_avtor,Maul_xodim,K_kod,K_oldi,K_topshirdi,Rasm,Nomer'); SQL.Add('FROM ":kollej:kutubxona.DB"'); SQL.Add('WHERE'); SQL.Add('(Guruh= "'+ fam + '")'); SQL.Add('ORDER BY Yonalish,Kurs,Guruh,Ism,Fam,Otchestva,Adres,Telefon,Infor,K_nom,K_avtor,Maul_xodim,K_kod,Rasm,Nomer'); Open; end; if form1.Query2.RecordCount <> 0 then form1.DataSource1.DataSet:=form1.Query2 else begin ShowMessage('Bunday Guruh mavjud emas.'); form1.DataSource1.DataSet:=form1.Table2; end; end; end; if RadioButton1.Checked then begin fam:=Edit1.Text; if fam <> '' then begin with form1.Query2 do begin Close; SQL.Clear; // записываем новый запрос в свойство SQL SQL.Add(' SELECT DISTINCT Yonalish,Kurs,Guruh,Ism,Fam,Otchestva,Data,Adres,Telefon,Infor,K_nom,K_avtor,Maul_xodim,K_kod,K_oldi,K_topshirdi,Rasm,Nomer'); SQL.Add('FROM ":kollej:kutubxona.DB"'); SQL.Add('WHERE'); SQL.Add('(Ism= "'+ fam + '")'); SQL.Add('ORDER BY Yonalish,Kurs,Guruh,Ism,Fam,Otchestva,Adres,Telefon,Infor,K_nom,K_avtor,Maul_xodim,K_kod,Rasm,Nomer'); Open; end; if form1.Query2.RecordCount <> 0 then form1.DataSource1.DataSet:=form1.Query2 else begin ShowMessage('Bunday Ismli talaba mavjud emas.'); form1.DataSource1.DataSet:=form1.Table2; end; end; end; if RadioButton2.Checked then begin fam:=Edit1.Text; if fam <> '' then begin with form1.Query2 do begin Close; SQL.Clear; // записываем новый запрос в свойство SQL SQL.Add(' SELECT DISTINCT Yonalish,Kurs,Guruh,Ism,Fam,Otchestva,Data,Adres,Telefon,Infor,K_nom,K_avtor,Maul_xodim,K_kod,K_oldi,K_topshirdi,Rasm,Nomer'); SQL.Add('FROM ":kollej:kutubxona.DB"'); SQL.Add('WHERE'); SQL.Add('(Fam= "'+ fam + '")'); SQL.Add('ORDER BY Yonalish,Kurs,Guruh,Ism,Fam,Otchestva,Adres,Telefon,Infor,K_nom,K_avtor,Maul_xodim,K_kod,Rasm,Nomer'); Open; end; if form1.Query2.RecordCount <> 0 then form1.DataSource1.DataSet:=form1.Query2 else begin ShowMessage('Bunday Familyali talaba mavjud emas.'); form1.DataSource1.DataSet:=form1.Table2; end; end; end; if RadioButton5.Checked then begin fam:=Edit1.Text; if fam <> '' then begin with form1.Query2 do begin Close; SQL.Clear; // записываем новый запрос в свойство SQL SQL.Add(' SELECT DISTINCT Yonalish,Kurs,Guruh,Ism,Fam,Otchestva,Data,Adres,Telefon,Infor,K_nom,K_avtor,Maul_xodim,K_kod,K_oldi,K_topshirdi,Rasm,Nomer'); SQL.Add('FROM ":kollej:kutubxona.DB"'); SQL.Add('WHERE'); SQL.Add('(Adres= "'+ fam + '")'); SQL.Add('ORDER BY Yonalish,Kurs,Guruh,Ism,Fam,Otchestva,Adres,Telefon,Infor,K_nom,K_avtor,Maul_xodim,K_kod,Rasm,Nomer'); Open; end; if form1.Query2.RecordCount <> 0 then form1.DataSource1.DataSet:=form1.Query2 else begin ShowMessage('Bunday Adres mavjud emas.'); form1.DataSource1.DataSet:=form1.Table2; end; end; end; if RadioButton7.Checked then begin fam:=Edit1.Text; if fam <> '' then begin with form1.Query2 do begin Close; SQL.Clear; // записываем новый запрос в свойство SQL SQL.Add(' SELECT DISTINCT Yonalish,Kurs,Guruh,Ism,Fam,Otchestva,Data,Adres,Telefon,Infor,K_nom,K_avtor,Maul_xodim,K_kod,K_oldi,K_topshirdi,Rasm,Nomer'); SQL.Add('FROM ":kollej:kutubxona.DB"'); SQL.Add('WHERE'); SQL.Add('(K_nom= "'+ fam + '")'); SQL.Add('ORDER BY Yonalish,Kurs,Guruh,Ism,Fam,Otchestva,Adres,Telefon,Infor,K_nom,K_avtor,Maul_xodim,K_kod,Rasm,Nomer'); Open; end; if form1.Query2.RecordCount <> 0 then form1.DataSource1.DataSet:=form1.Query2 else begin ShowMessage('Bunday kitob mavjud emas.'); form1.DataSource1.DataSet:=form1.Table2; end; end; end; end; end. |
#6
|
||||
|
||||
Собственно StringGrid здесь тоже не наблюдается. Может вы путаете TStringGrid и TDbGrid ?
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |