Topic: Сумма вычисляемых полей
Добрый день!
У меня в таблице есть два вычисляемых поля:
total_s: (некая сумма денег)
(
select printf("%.2f",sum(cost)) from s_history where (s_history.id_numbers = t_history.id_numbers) and (date(s_history.sd) >= date(t_history.sd)) and (date(s_history.ed) <= date(t_history.ed))
)
и total_p: (еще сумма денег)
(
select printf("%.2f",sum(cost)) from p_history where (p_history.id_t_history = t_history.id)
)
Я хочу еще одно, total = total_s + total_p
Но если просто так и написать в новом вычесляемом поле то вылетает ошибка что "total_s" не найдено.
Решил сделать "проще" и посчитать это дело прямо при выводе в таблицу,
добавил ненужный столбец и пытаюсь его заполнить:
procedure numStat_TableGrid1_OnChange (Sender: string);
var
i,c: integer;
begin
c := numStat.TableGrid1.RowCount - 1;
for i := 0 to c do
begin
numStat.TableGrid1.Cells[7,i] := FloatToStr(strtofloat(numStat.TableGrid1.Cells[5,i]) + strtofloat(numStat.TableGrid1.Cells[6,i]));
end;
end;
Что тоже не работает, заявляя, например: " '189.08' is not a valid floating point value." Я вот хоть убей не понимаю, почему оно нот вэлид
Подскажите пожалуйста, куда крутить?