y tu tienes en el SELECT SUM(importe) con minusculas y creo que en vez de AS deberias poner INTO
creo que lo que buscas se parece a ESTO: (si no funciona con AS prueba con INTO)
Código:
procedure PasarSumaTotalAMyLabel;
begin
// Limpiar el SQL y añadir la consulta
MyQuery.SQL.Clear;
MyQuery.SQL.Add('SELECT SUM(Importe) AS Total FROM CuentasPorCobrar'); // Tu consulta SQL
MyQuery.Open; // Ejecuta la consulta
// Verificamos si hay resultados
if not MyQuery.Eof then
begin
// Extraer el valor de 'Total'
Label1.Caption := FloatToStr(MyQuery.FieldByName('Total').AsFloat);
end
else
begin
Label1.Caption := 'No hay resultados'; // En caso de no obtener resultados
end;
MyQuery.Close;
end;
date cuenta que en tu codigo cuando intentas recuperar el "Total" haces referencia a la Tabla CuentasPorCobrar->FieldByName("Total") y no deberias sacarlo de ahi porque en la tabla no esta el campo Total sino en el resultado del MyQuery.... es algo asi como si el propio MyQuery crease una especie de campo "fantasma" temporal para Total con el resultado que luego al cerrar la consulta desaparece