![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
Приветствую
В проге есть 2 кнопки: Рассчитать и Сохранить, это некий калькулятор затрат для заявки на услуги При нажатии "Рассчитать" берутся данные из БД для текущей выбранной заявки (назову их константами в данном контексте). Констант 10 штук, с помощью них осуществляется пересчет по формулам (константы для удобства пихаю в глобальные переменные), выводится сумма. Если пользователя все устраивает, он жмет сохранить - константы (т.е. глобальные переменные) сохраняются в БД. Как мне уйти от использования глобальных переменных? Есть мысль создать класс (в первый раз, не судите строго), например такой: Код:
...
TMyConst = Class
private
FDlina: double;
FShirina: double;
// и т.д.
public
function SetDlina(Value: string): double;
function SetShirina(Value: string): double;
property Dlina: double
read FDlina write SetDlina;
property Shirina: double
read FShirina write SetShirina;
//....
end;
...
implementation
function SetDlina(Value: string): double;
begin
ADOQuery.SQL.Text:='SELECT BDlina FROM const WHERE nomer = "' + value + '"';
ADOQuery.Open;
Result:=ADOQuery.FieldByName('BDlina').asfloat;
end;
// Аналогично с остальными константамиНО! Получается, что для каждой переменной-поля будет отдельный запрос! Как то неправильно выходит - 10 запросов вместо одного Нельзя ли как-то сделать так, чтобы установить все константы одним запросом ('SELECT BDlina, BShirina, ...... FROM const WHERE nomer = "' + value + '"' ![]() |