Gabo
08-10-2007, 13:38:31
Hola,
he comenzado un hilo sobre como se efectúan las consultas entre varias tablas con SUM aquí (http://www.clubdelphi.com/foros/showthread.php?p=236856#post236856). En realidad, y como comento en dicho hilo, la consulta es para un reporte, concretamente un QReport y, la consulta la hago mediante un TIBQuery.
He pensado en que otra solución para mi problema es recorrer el Dataset para efectuar la sumatoria, y luego, mostrar los campos en un QRStringsBand. El problema es que no tengo ni idea de como hacerlo :D.
He consultado el manual de QReport disponible en el sitio de Qusoft. Pero sólo te dicen para que sirve el QRStringsBand y nada más. En el foro, sólo hay un hilo (http://www.clubdelphi.com/foros/showthread.php?t=5214&highlight=qrstringsband)donde se comentó la posibilidad de usarlo pero sin entrar en mayores detalles. ¿Alguien me podría dar más detalles?
Hasta ahora llevo hecho esto:
IBQdetalle->Close();
IBQdetalle->ParamByName("codPago")->AsInteger=codigoPago;
IBQdetalle->Prepare();
IBQdetalle->Open();
DSdetalle->DataSet->First();
while(!DSdetalle->DataSet->Eof)
{
QRStringsBand1->Items->Add(DSdetalle->DataSet->FieldByName("NOMBRE")->AsString);
DSdetalle->DataSet->Next();
}
QuickRep1->PreviewModal();
y luego:
void __fastcall TfrmResumenPago::QRLabel8Print(TObject *sender,
AnsiString &Value)
{
Value = QRStringsBand1->Item;
}
Con esto, me imprime varias veces el nombre del personal, pese a que la consulta sólo devuelve 6 registros de 4 campos.
Lo dicho, ¿alguien me podría dar más detalles sobre como usar las QRStringsBand?
Nota 1: Como habrán notado programo en BuilderC++. Pero no tengo problemas en que me respondan con código de Delphi, ya que la idea me valdrá.
Nota 2: No quise continuar las preguntas en el hilo anterior y espero con eso, no estar infringiendo la regla de no duplicar mensajes. Pero me parece que esto es un caso distinto, ya que éste hilo aborda un tema que no tiene nada que ver con el otro.
he comenzado un hilo sobre como se efectúan las consultas entre varias tablas con SUM aquí (http://www.clubdelphi.com/foros/showthread.php?p=236856#post236856). En realidad, y como comento en dicho hilo, la consulta es para un reporte, concretamente un QReport y, la consulta la hago mediante un TIBQuery.
He pensado en que otra solución para mi problema es recorrer el Dataset para efectuar la sumatoria, y luego, mostrar los campos en un QRStringsBand. El problema es que no tengo ni idea de como hacerlo :D.
He consultado el manual de QReport disponible en el sitio de Qusoft. Pero sólo te dicen para que sirve el QRStringsBand y nada más. En el foro, sólo hay un hilo (http://www.clubdelphi.com/foros/showthread.php?t=5214&highlight=qrstringsband)donde se comentó la posibilidad de usarlo pero sin entrar en mayores detalles. ¿Alguien me podría dar más detalles?
Hasta ahora llevo hecho esto:
IBQdetalle->Close();
IBQdetalle->ParamByName("codPago")->AsInteger=codigoPago;
IBQdetalle->Prepare();
IBQdetalle->Open();
DSdetalle->DataSet->First();
while(!DSdetalle->DataSet->Eof)
{
QRStringsBand1->Items->Add(DSdetalle->DataSet->FieldByName("NOMBRE")->AsString);
DSdetalle->DataSet->Next();
}
QuickRep1->PreviewModal();
y luego:
void __fastcall TfrmResumenPago::QRLabel8Print(TObject *sender,
AnsiString &Value)
{
Value = QRStringsBand1->Item;
}
Con esto, me imprime varias veces el nombre del personal, pese a que la consulta sólo devuelve 6 registros de 4 campos.
Lo dicho, ¿alguien me podría dar más detalles sobre como usar las QRStringsBand?
Nota 1: Como habrán notado programo en BuilderC++. Pero no tengo problemas en que me respondan con código de Delphi, ya que la idea me valdrá.
Nota 2: No quise continuar las preguntas en el hilo anterior y espero con eso, no estar infringiendo la regla de no duplicar mensajes. Pero me parece que esto es un caso distinto, ya que éste hilo aborda un tema que no tiene nada que ver con el otro.