1 (edited by Vickus 2025-02-10 12:04:04)

Topic: Формат в Caption

Добрый день!
Подскажите, пожалуйста, как решить вопрос.
На форме есть панель с Caption, в которой показана сумма в рублях.

var
    g : string;
begin
g := SQLExecute ('SELECT SUM(income_operation) FROM main');
    if g < '0' then Frm_main.sum_panel.Caption := 'Нет данных' else Frm_main.sum_panel.Caption := 'Итого за налоговый период: ' + g + ' ' + '₽';
end;

Помогите, чтобы сумма выходила с запятой и двумя знаками после нее.
Спасибо!

Re: Формат в Caption

Используйте в запросе

printf('%.2f', значение)

Я вам приводил решение с printf


И вот это

if g < '0' - некорректно и непредсказуемо

Re: Формат в Caption

procedure IncomeSum;
var
  tmpTotal: double;
  tmpResult: string;
begin
  tmpTotal := SQLExecute ('SELECT COALESCE(SUM(income_operation),-1) FROM main');
  if tmpTotal = -1 then
    tmpResult := 'Нет данных'
  else
    tmpResult := 'Итого за налоговый период: ' + FormatFloat('##0.00',tmpTotal) + ' ' + '₽';
  Frm_main.sum_panel.Caption := tmpResult
end;

При условии, что income_operation имеют положительные значения, или записи в таблице main могут отсутствовать (отобразится "Нет данных").

Визуальное программирование: блог и телеграм-канал.