Форум: "Базы";
Текущий архив: 2004.08.01;
Скачать: [xml.tar.bz2];
Внизоцените код , и оптемезуйте Найти похожие ветки
← →
Cranky (2004-07-07 15:20) [0]procedure TForm1.Button1Click(Sender: TObject);
var
id1,id2,id3:integer;
begin
if not printers.Locate("printer",Edit1.Text,[loCaseInsensitive])
then
begin
printers.Insert;
printers.FieldValues["printer"]:=Edit1.Text;
printers.Post;
id1:=printers.FieldValues["id"];
end else id1:=printers.FieldValues["id"];
if not host.Locate("host",Edit2.Text,[loCaseInsensitive])
then
begin
host.Insert;
host.FieldValues["host"]:=Edit2.Text;
host.Post;
id2:=host.FieldValues["id"];
end else id2:=host.FieldValues["id"];
if not users.Locate("user",Edit3.Text,[loCaseInsensitive])
then
begin
users.Insert;
users.FieldValues["user"]:=Edit3.Text;
users.Post;
id3:=users.FieldValues["id"];
end else id3:=users.FieldValues["id"];
Log.Insert;
log.FieldValues["printer"]:=id1;
log.FieldValues["host"]:=id2;
log.FieldValues["user"]:=id3;
log.FieldValues["tip"]:=Edit4.Text;
log.FieldValues["name"]:=Edit5.Text;
log.FieldValues["page"]:=strtoint(Edit6.Text);
log.Post;
end;
← →
Sandman25 © (2004-07-07 15:25) [1]Все неправильно :)
PrinterName := Trim(Edit2.Text);
...
printers.Insert;
try
printers.FieldByName("printer").AsString := PrinterName;
printers.Post;
except
printers.Cancel;
raise
end;
← →
Anatoly Podgoretsky © (2004-07-07 15:26) [2]Что мы должны сделать?
← →
Sandman25 © (2004-07-07 15:26) [3]Строка id1:=printers.FieldValues["id"] должна быть вынесена из if, чтобы не дублироваться.
← →
Sandman25 © (2004-07-07 15:27) [4][2] Anatoly Podgoretsky © (07.07.04 15:26)
Оптемезовать, там же написано :)
← →
Johnmen © (2004-07-07 15:28) [5]>оцените код ,
Цена близка к 0
>и оптемезуйте
Зачем ? Сколько платишь ?
:)
← →
bushmen © (2004-07-07 15:33) [6]> Cranky (07.07.04 15:20)
Не надо плодить топики, тем более под разными именами:
http://delphimaster.net/view/3-1089007411/
← →
Соловьев © (2004-07-07 15:34) [7]Во народ пошел. Наглый блин....
← →
Sandman25 © (2004-07-07 15:35) [8]вот блин, я попался...
← →
jack128 © (2004-07-07 15:36) [9]условия
> if not printers.Locate("printer",Edit1.Text,[loCaseInsensitive])
> then
> ...
> end
> if not host.Locate("host",Edit2.Text,[loCaseInsensitive])
> then
> ....
> end
> if not users.Locate("user",Edit3.Text,[loCaseInsensitive])
> then
> ...
> end;
лудше вынести в отдельную процедуру...
← →
Sandman25 © (2004-07-07 15:38) [10][9] jack128 © (07.07.04 15:36)
Там ИМХО можно вообще обойтись тремя вызовами одной процедуры. Только DataSet и имена полей/значения передавать.
← →
jack128 © (2004-07-07 15:45) [11]
> Там ИМХО можно вообще обойтись тремя вызовами одной процедуры.
> Только DataSet и имена полей/значения передавать
ну да. Это и имелось в виду. код же один к одному...
← →
Cranky (2004-07-07 16:42) [12]пример плизз вот етого
Там ИМХО можно вообще обойтись тремя вызовами одной процедуры. Только DataSet и имена полей/значения передавать.
← →
Cranky (2004-07-07 17:01) [13]але тогда при смене полей нужно Active:=false и Active:=true делать
← →
Sandman25 © (2004-07-07 17:03) [14]-Доктор, меня все игрнорируют.
-Следующий
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.08.01;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.035 c