Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-10-2005
bataola bataola is offline
Miembro
 
Registrado: jun 2005
Posts: 22
Poder: 0
bataola Va por buen camino
Quick Report - Como obtener el valor de un QRExpr

Holas!!

Gente alguien sabe como obtener el valor de un QRExpr en un reporte con Quick Report.
El tema es que al hacer QRExpr.Caption me muestra el "Text" digamos o la expresión asociada al componente, ejemplo: 'SUM(CANTIDAD)'. Y si hago QrExpr.Value el valor devuelto es del tipo TQREvResult y no se como utilizarlo.
Desde ya muchas gracias.

Saludos.
Responder Con Cita
  #2  
Antiguo 15-10-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Cita:
Empezado por Ayuda QuickReports
type TQREvResultType = (resInt, resDouble, resString, resBool, resError)
type TQREvResult = record
case Kind : TQREvResultType of
resInt : (intResult : Longint);
resDouble : (dblResult : Double);
resString : (strResult : String[255]);
resBool : (booResult : Boolean);
end
property Value : TQREvResult

Description

Use the Value property to access the value of the Expression. It returns a variant record with the result of the calculation.
Por tanto: si sabes que el campo es un float:
Código Delphi [-]
 MiValorDouble := qrExpr.Value.resdouble;

Edito: Algo más general para utilizarlo en tiempo de ejecución sería:
Código Delphi [-]
var x:tqrevresult;
 valor:Variant;
begin
 case x.Kind of
  resInt    : valor := x.intResult;
  resDouble : valor := x.dblResult;
  resString : valor := x.strResult;
  resBool   : valor := x.booResult;
  else
      valor := Unassigned;
  end;
end;

saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.

Última edición por Lepe fecha: 15-10-2005 a las 16:18:30.
Responder Con Cita
  #3  
Antiguo 05-11-2005
Supermagayin Supermagayin is offline
Miembro
 
Registrado: nov 2003
Ubicación: Mexico
Posts: 54
Poder: 21
Supermagayin Va por buen camino
Hola, tengo el mismo problema, pero me sale un error al declarar la varibale

var x:tqrevresult;

[Error] Undeclared identifier: 'TQREvResult'
__________________
Saludos
Responder Con Cita
  #4  
Antiguo 05-11-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Clic en tu código fuente (ojo: no en la ventana de errores de compilación), sobre la palabra QREvResult y F1, te dirá en qué unidad está declarado, y lo añades a los uses.

saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #5  
Antiguo 05-11-2005
Supermagayin Supermagayin is offline
Miembro
 
Registrado: nov 2003
Ubicación: Mexico
Posts: 54
Poder: 21
Supermagayin Va por buen camino
Hola de nuevo.

La unidad correcta que en este caso es QRCTRLS si esta en el uses.
Podria ser que mi delphi 4 no trae esa tipo de variable?

Gracias por la ayuda.
__________________
Saludos
Responder Con Cita
  #6  
Antiguo 09-11-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Cita:
Empezado por QuickReport help
Filename

QRCTRLS.DCU

Description

This unit includes all standard printable components

Components

TQRDBImage
TQRDBRichText
TQRDBText
TQRExpr
TQRExprMemo
TQRImage
TQRLabel
TQRMemo
TQRSysData
TQRRichText
TQRShape
Efectivamente está definido el TQrExpr, pero no el tipo de datos, ya que TQRevResult, es el tipo de la propiedad Value de un QrExpr.

Resulta que ese tipo de datos está en otra unidad, no en qrCtrls.

uses qrexpr;

saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #7  
Antiguo 17-08-2006
telfaxh telfaxh is offline
Registrado
 
Registrado: ago 2006
Posts: 3
Poder: 0
telfaxh Va por buen camino
obtener el valor de un qrexpr

Hola amigos la verdad implemente su codigo del segundo ejemplo pero no me funciona . mi pregunta es como implementar u obtener ese valor con los ejemplos que dieros sean un poco mas claros por favor. estoy desesperado.
Responder Con Cita
  #8  
Antiguo 17-08-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Uniendo mis mensajes anteriores....
Código Delphi [-]

uses qrexpr,QRCTRLS;

var x:tqrevresult;
 valor:Variant;
begin
 case x.Kind of
  resInt    : valor := x.intResult;
  resDouble : valor := x.dblResult;
  resString : valor := x.strResult;
  resBool   : valor := x.booResult;
  else
      valor := Unassigned;
  end;
end;

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #9  
Antiguo 19-08-2006
telfaxh telfaxh is offline
Registrado
 
Registrado: ago 2006
Posts: 3
Poder: 0
telfaxh Va por buen camino
qrexpr

uses qrexpr,QRCTRLS;

var x:tqrevresult;
valor:Variant;
numero:Real
begin
x:=qrexpr1.value;

case x.Kind of
resInt : valor := x.intResult;
resDouble : valor := x.dblResult;
resString : valor := x.strResult;
resBool : valor := x.booResult;
else
valor := Unassigned;

numero:=qrexpr1.value.dblResult;
end;


como le asigno a numero el valor real de QRExpr1????
Responder Con Cita
  #10  
Antiguo 19-08-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Declara numero como Double o Extended (yo siempre uso Extended).

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #11  
Antiguo 23-08-2006
telfaxh telfaxh is offline
Registrado
 
Registrado: ago 2006
Posts: 3
Poder: 0
telfaxh Va por buen camino
QRExpr

Lamentabvlemente no tuve suerte con el codigo anterior siento que es imposible obtener el valor de un qrexp.

Gracias de todos modos!!
Responder Con Cita
  #12  
Antiguo 23-08-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Sería bueno indicar qué error dá y de qué tipo. Además de explicar las circunstancias de uso.

Puede ser que intentes consultar el valor antes de abrir la consulta (por un descuido).

Supongo que el mejor momento para capturar el valor sería en el evento BeforePrint del componente.


Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #13  
Antiguo 13-07-2007
Avatar de Alejandrina
Alejandrina Alejandrina is offline
Miembro
 
Registrado: mar 2007
Ubicación: Medellin
Posts: 46
Poder: 0
Alejandrina Va por buen camino
Question

Hola a todos,
Tengo una gran,gran pregunta
Estoy intentando comparar un TQRExpr y un TQRDBText para saber cual es mayor e imprimirlo. El valor del TQRExpr lo obtengo de la forma anteriormente expuesta pero no se como obtener el del TQRDBText y compararlo. Los valores que estan dentro de estos campos son tipo numeric.
Si alguien me puede colaborar estare infinitamente agradecida.

Mi idea es la siguiente...se k el codigo puede estar orroroso pero es k no tengo idea...

Código:
procedure TInfCertificado.QRExpr23Print(sender: TObject;
  var Value: String);
  var numero,numero2:double;
begin
 numero:=QRExpr23.Value.dblResult;
 numero2:=StrToFloat(QRDBText21.Caption);
 if (numero>numero2) then
    begin
      QRExpr23.Value:=QRDBText21.Caption;
    end
 ELSE
   BEGIN
   END;
end;

Gracias...
__________________
Alejandrina
Responder Con Cita
  #14  
Antiguo 15-12-2007
Avatar de laukri
laukri laukri is offline
Miembro
 
Registrado: dic 2007
Posts: 38
Poder: 0
laukri Va por buen camino
Cita:
Empezado por Lepe Ver Mensaje
Efectivamente está definido el TQrExpr, pero no el tipo de datos, ya que TQRevResult, es el tipo de la propiedad Value de un QrExpr.

Resulta que ese tipo de datos está en otra unidad, no en qrCtrls.

uses qrexpr;

saludos

hola a todos!!
yo tengo un problema con el QuickReport 4 y delphi 2007. Lo que me pasa es que al compilar no encuentra QRCtrls.dcu.
Donde lo puedo conseguir???
gracias!
Responder Con Cita
  #15  
Antiguo 16-12-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Si tienes instalado el QuickReports y te funciona bien, es muy posible le hayan cambiado el nombre al archivo. Yo siempre he usado la versión 3 y pico.

Mira la ayuda de QR, buscando sobre TQRExpr, debe decirte en qué unidad está.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 16:32:25.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi