Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.15;
Скачать: CL | DM;

Вниз

Повторное использование кода..   Найти похожие ветки 

 
jack128 ©   (2003-09-03 16:39) [0]

Есть вот такой код

procedure TdmDeviceDataModule.SetDeviceId(const Value: Integer);
var
f : boolean;
begin
if Value <> GetDeviceType then
begin
qryArhive.DisableControls;
try
f := qryArhive.Active;
if f then CloseArhive;
qryArhive.ParamByName("DEVICE_ID").AsInteger := Value;
if f then OpenArhive;
finally
qryArhive.EnableControls;
end;
end;
end;
в методах SetArhiveType, SetFirstDate, SetLastDate будет такой же код, за исключением выделенной строки.
Как бы так извернуться, чтобы небыло повторения кода? Проблема в том FirstDate, DeviceId, ArhiveType - свойства разного типа..


 
Skier ©   (2003-09-03 16:44) [1]


> Проблема в том FirstDate, DeviceId, ArhiveType - свойства
> разного типа..

А именно ?


 
clickmaker ©   (2003-09-03 16:45) [2]

примерно так

procedure TdmDeviceDataModule.SetFieldValue(const FieldName: string; Value: Variant);
var
f : boolean;
begin
if Value <> GetFieldValue(FieldName) then
begin
qryArhive.DisableControls;
try
f := qryArhive.Active;
if f then CloseArhive;
qryArhive.ParamByName(FieldName).Value := Value;
if f then OpenArhive;
finally
qryArhive.EnableControls;
end;
end;
end;


 
jack128 ©   (2003-09-03 16:58) [3]


> Skier © (03.09.03 16:44) [1]

TdateTime, Integer и перечисляемый соответсвенно


> clickmaker © (03.09.03 16:45) [2]
Спасибо, наверное это то.



Страницы: 1 вся ветка

Текущий архив: 2003.09.15;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.015 c
3-48401
Anna
2003-08-26 11:36
2003.09.15
Фильтры и диапазоны


14-48743
DimaK
2003-08-27 14:19
2003.09.15
Очень надо!


6-48677
Gigabyte
2003-07-13 17:51
2003.09.15
Веб сервер и PHP


1-48567
Man
2003-09-03 13:02
2003.09.15
Как в своё приложение встроить чужую программу


1-48642
AK
2003-09-02 20:47
2003.09.15
Как скопировать внутреннюю и внешнюю часть формы чужой программы?