Ver Mensaje Individual
  #1  
Antiguo 23-05-2019
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Reputación: 19
Angel.Matilla Va por buen camino
Usar constantes en QuickReport

Buenas. En un formulario que se imprime con QuickReport 3.6.2 tengo un QRExpr en el que necesito emplear un valor constante calculado previamente a la generación del mismo. Hago esto:
1. Calculo ese valor que va a ser constante.
Código:
int nValor = 0;
Query->First();
for (; !Query->Eof; Query->Next())
     nValor += Query->FieldByName("Valor")->AsInteger;
2. Defino el valor de Expression en un TQRExpr.
Código:
Expr1->Expression = "100 * Query->FieldByName("Valor")->AsInteger / " + FormatFloat("0, nValor);
Supongamos que la suma da un total de 225 y que el primer valro del query fuera 47; si ejecuto corriendo con el depurador al llegar a esa línea veo que queda así:
Código:
Expr1->Expression = "100 * Query->FieldByName("Valor")->AsInteger / 225";
Pero al imprimir en vez de mostrar 20,89 me deja un espacio en blanco.

Ya sé que me vais a decir: si es la suma de un campo de un query ¿por qué no poner en el query un SUM(Valor)?
He estado probando. El query que estoy usando está basado en el que me sugirió bucanero en Cambiar formato de salida en un query, pero cuando trato de introducir en el mismo que me haga SUM(Votos) o me da el mismo valor que el propio campo o me da error de ejecución el query, dependiendo de donde ponga ese SUM(Votos).
Responder Con Cita