|
#1
|
|||
|
|||
БД в делфи (лаба)
Здравствуйте. Нужна помощь: дана программа базы данных, в нее нужно интегрировать кнопку поиска и вывода студентов-однофамильцев на отдельную форму. пробовал писать процедуры, видимо, где-то ошибка...
вот функция поиска однофамильцев и процедура обработки, помогите пожалуйста, очень надо Код:
function IsOdnofam(S: TStud): boolean; var c : array of string; compare : string; b,r : char; i,j,jc : integer; begin Result := true; SetLength(c,StringGrid1.RowCount - 2); i := 0; jc := 0; for j := 1 to StringGrid1.RowCount - 1 do begin b := cells[5,j]; while b[i] <> ' ' do begin r := r + b[i]; Inc(i); end; c[j-1] := r; end; while jc <> StringGrid1.RowCount do for j := jc to StringGrid1.ColCount - 1 do begin compare := c[jc]; i := j; if (compared = c[j]) and (i <> j) then result:=false; end; if j = StringGrid1.ColCount - 1 then inc(jc); end; end. end; procedure SetFindOdnofam(StringGrid: TStringGrid); var i: word; j: integer; begin FindStr:=AnsiUpperCase(FindStr); ResetStud; i:=0; adr:=-1; with StringGrid do while not EOF(fStud) do begin Read(fStud,Stud); adr:=adr+1; // AnsiUpperCase(const S: string): string; if (Stud.y<>0) and (IsOdnofam(Stud)) then begin Inc(i); Cells[0,i]:=IntToStr(adr); Cells[1,i]:=IntToStr(i); Cells[2,i]:=IntToStr(Stud.IdGroup); Cells[3,i]:=IntToStr(Stud.IdStud); Cells[4,i]:=Stud.FIO; end; end; StringGrid.RowCount:=i+1; if i>0 then StringGrid.FixedRows:=1; CloseFile(fStud); end; если что, сам проект выложил здесь http://dump.ru/file/4080317 |
#2
|
||||
|
||||
У меня есть программе Телефонный справочник написанный на StringGrid единственное что он сохраняет все данные в текстовый файл но думаю перебить на любую др. БД не будет проблема.
[ iNewStar.Ru ] - Продам! Вопросы в ПМ |