Главная страница
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.014 c
1-48547
Sam Stone
2003-09-01 18:42
2003.09.15
функции в dll ках


14-48751
Kost
2003-08-28 12:58
2003.09.15
Помогите с проблемой...


14-48757
vasia
2003-08-26 09:19
2003.09.15
PDF


1-48527
mfender
2003-09-02 13:01
2003.09.15
Время по Гринвичу


14-48773
Knight
2003-08-26 19:49
2003.09.15
Снова о страховании...