Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 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.034 c
4-1086822635
sashapont
2004-06-10 03:10
2004.08.01
Запуск ссылки


3-1089352878
Jiny
2004-07-09 10:01
2004.08.01
Как на SQL подрубиться с одной базы в другую


1-1090251416
Alex-21
2004-07-19 19:36
2004.08.01
TRegistry


4-1087415989
juiceman
2004-06-16 23:59
2004.08.01
экранная монополия


1-1090326375
ИМХО
2004-07-20 16:26
2004.08.01
Структурированное хранилище





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский