Página 1 de 1
Report y Browse
Publicado: Sab May 13, 2006 11:42 am
por zeasoftware
Alguien sabe y me podria orientar o decir como puedo imprimir lo que este
presentando un TDBBrowse?
Me explico, quiero aplicar filtros a la vista de un Browse, y luego imprimir
el resultado de la vista, pero no le he dado como, aun sigo analizando.
Gracias.
--
Ramón Zea
ramonzea@yahoo.com
http://www.paginasprodigy.com/zeasoft/
Report y Browse
Publicado: Dom May 14, 2006 2:56 am
por zeasoftware
por que si uso esto:
Column Of oReport ;
Title "Clave"
Data ::oDataSet:Clave
Me marca error "No existe variable SELF",
esto lo hago por que quiero imprimir el valor de campo calculado y pues este
tampoco existe en la base de datos.
--
Ramón Zea
ramonzea@yahoo.com
http://www.paginasprodigy.com/zeasoft/
Report y Browse
Publicado: Lun May 15, 2006 9:51 am
por jfgimenez
Ramón,
> por que si uso esto:
>
> Column Of oReport ;
> Title "Clave"
> Data ::oDataSet:Clave
>
> Me marca error "No existe variable SELF",
> esto lo hago por que quiero imprimir el valor de campo calculado y pues
> este tampoco existe en la base de datos.
Por favor, muestra el código completo del report para revisarlo.
--
Un saludo,
José F. Giménez
http://www.xailer.com
Report y Browse
Publicado: Lun May 15, 2006 12:03 pm
por jlalin
Ramón,
¿ no será que te falta un punto y coma entre la cláusula TITLE y DATA ?
> Column Of oReport ;
> Title "Clave"
Title "Clave" ;
> Data ::oDataSet:Clave
Saludos,
José Lalín
Report y Browse
Publicado: Lun May 15, 2006 2:50 pm
por zeasoftware
Me he metido al report.ch y lo he cambiado hasta llegar a esto:
REPORT oReport ;
TITLE "Reporte" ;
HEADER DtoStr( Date() ) + " " + Time() ;
FOOTER "Pag.: " + lTrim( Str( oReport:nPage ) ) ALIGN taCENTER ;
PREVIEW MODAL
For nCol := 1 To Len(::oDBBrowse1:aCols)
oCol := ::oDBBrowse1:aCols[nCol]
WITH OBJECT oReport:AddColumn()
:aTitle := { &("{|| '" + cCol:cHeader + "' }") }
//la siguiente seria: {|| ( cAlias )->Campo }
:aData := { &("{|| '( " + ::oDataSet:Alias() + " )->" +
cCol:oDataField:cName + "' }") }
//o uso esta para dejar: { || ::oDataSet:Campo }
//:aData := { &("{|| ::oDataSet:" + cCol:oDataField:cName
" }") }
// en este me marca que no esxiste SELF
If ( !Empty(oCol:cPicture) )
:aPicture := { oCol:cPicture }
:cTotalPict := :aPicture[ 1 ]
End
:nAlignment := oCol:nAlignment
:Create()
END WITH
Next
RUN REPORT oReport ;
While !::oDataSet:EoF()
ahora:
Que datos recibe la columna al ser evaluada?
oSender = report o la clase que la contenga?
Gracias.
Report y Browse
Publicado: Lun May 15, 2006 3:08 pm
por zeasoftware
Gracias, solo lo puse como representacion, ya que no lo copie y pegue del
proyecto.
:o)
--
Ramón Zea
ramonzea@yahoo.com
http://www.paginasprodigy.com/zeasoft/
Report y Browse
Publicado: Lun May 15, 2006 3:53 pm
por zeasoftware
Al parecer el erro lo genera en la Madroi:
uso esta para dejar: &("{ || ::oDataSet:Campo }")
:aData := { &("{|| ::oDataSet:" + cCol:oDataField:cName " }") }
ya que si pongo
:aData := &("{|| ::oDataSet:" + cCol:oDataField:cName " }")
esto debe pasar digamos:
:aData := &("::oDataSet:" + "Descrip")
y aqui me dice que no existe SELF, debido al objeto ::oDataSet
Saludos.
--
Ramón Zea
ramonzea@yahoo.com
http://www.paginasprodigy.com/zeasoft/
Report y Browse
Publicado: Lun May 15, 2006 4:46 pm
por ignacio
Ramón,
El problema es que la expresión realmente se bloquifica y el valor de Self
puede se muy distinto cuando se requiera su ejecución, por ello lo mejor es
que sencillamente utilices una variable local para guardar el dataset. De
esta forma te aseguras de que se usa la variable exacta.
oMiDataSet := ::oDataSet
DATA oMiDataSet:Clave
No obstante te sugiero que quizas utilices directemante el alias para hacer
impresiones con el objeto Report. En tu caso el campo calculado podrías ser
algo así:
DATA Trim( Alias->Campo1 ) + " " + Trim( Alias->Campo2)
Precisamente los valores suministrados a la cláusula DATA se bloquifican
para poder introducir cualquier expresión.
Saludos,
"Ramón Zea" <
zeasoftware@hotmail.com> wrote in message
news:[email=
4466561a@ozsrvnegro.ozlan.local...]
4466561a@ozsrvnegro.ozlan.local...[/email]
> por que si uso esto:
>
> Column Of oReport ;
> Title "Clave"
> Data ::oDataSet:Clave
>
> Me marca error "No existe variable SELF",
> esto lo hago por que quiero imprimir el valor de campo calculado y pues
> este tampoco existe en la base de datos.
>
>
>
> --
> Ramón Zea
>
ramonzea@yahoo.com
>
>
http://www.paginasprodigy.com/zeasoft/
>
Report y Browse
Publicado: Lun May 15, 2006 11:54 pm
por zeasoftware
Al compilar los archivos con harbour y revisando el .PPO he notado que SELF
esta declarada como local, por ello la macro no tiene alcance con esta.
El problma con (alias)->campo es que no puedo acceder a los campos
calculados.
Gracias
--
Ramón Zea
ramonzea@yahoo.com
http://www.paginasprodigy.com/zeasoft/
Report y Browse
Publicado: Mar May 16, 2006 9:30 am
por ignacio
Ramón,
Hagame caso, y declare la variable como le digo. En el PPO esta declarada
como local porque lo hace automáticamente así el motor de objetos, pero en
ese momento apunta a un objeto TReport. Es más complicado de lo que parece a
simple vista.
En cuanto a los campos calculados creo que fui bastante claro en mi anterior
email, por favor tomese el tiempo de releerlo.
Gracias y un saludo,
"Ramón Zea" <
zeasoftware@hotmail.com> escribió en el mensaje
news:[email=
4468ce7b@ozsrvnegro.ozlan.local...]
4468ce7b@ozsrvnegro.ozlan.local...[/email]
> Al compilar los archivos con harbour y revisando el .PPO he notado que
> SELF esta declarada como local, por ello la macro no tiene alcance con
> esta.
>
> El problma con (alias)->campo es que no puedo acceder a los campos
> calculados.
>
> Gracias
>
> --
> Ramón Zea
>
ramonzea@yahoo.com
>
>
http://www.paginasprodigy.com/zeasoft/
>
Report y Browse
Publicado: Mar May 16, 2006 5:54 pm
por zeasoftware
si, ya desde el mensaje anterior lo resolvi, solo declare una variable
privada y le pase el valor de self y le hice referencia en la llamada dentro
de la macro y listo.
Hey muchos caminos para llegar a roma, jejejej

)
Saludos.
--
Ramón Zea
ramonzea@yahoo.com
http://www.paginasprodigy.com/zeasoft/