Página 1 de 1

Vincular oSQLQuery1 a un Report

Publicado: Mié Jul 18, 2007 8:19 pm
por Jose Lopez Carrasco
Hola a todos
Estoy intentando hacer un report de una consulta oSQLQuery1 y no se como
vincular los datos pongo:
REPORT oRepDiario ;
PREVIEW ;
......
......
COLUMN OF oRepDiario ;
TITLE "Descripcion" ;
DATA ::oSQLQuery1:Descripcion1 ;
FONT 2 ;
CHARSIZE 20
oRepDiario:bSkip := {| | ::oSQLQuery1:Skip() }
........
........
RUN REPORT oRepDiario
Gracias Pepe.

Vincular oSQLQuery1 a un Report

Publicado: Mié Jul 18, 2007 8:39 pm
por Paco V
::oSqlQuery1:savestate(.t.)
oReport:bSkip := {|| ::oSqlQuery1:Skip()}
oReport:bWhile := {|| !::oSqlQuery:eof()}
::oDbfDataset1:Gotop()
COLUMN OF oReport ;
TITLE "Telefono" ;
DATA alltrim(::oSqlQuery1:telefono)
Pepe, yo lo hago asi y funciona OK.
No me hagas mucho caso pero pruebalo y me dices.
Paco V
"Jose Lopez Carrasco" <tritoncomputer@infonegocio.com> wrote:
>Hola a todos
>
>Estoy intentando hacer un report de una consulta oSQLQuery1 y no se como
>vincular los datos pongo:
>
>
>REPORT oRepDiario ;
> PREVIEW ;
> ......
> ......
>
>COLUMN OF oRepDiario ;
> TITLE "Descripcion" ;
> DATA ::oSQLQuery1:Descripcion1 ;
> FONT 2 ;
> CHARSIZE 20
>
> oRepDiario:bSkip := {| | ::oSQLQuery1:Skip() }
>.......
>.......
>
>RUN REPORT oRepDiario
>
>Gracias Pepe.
>
>
>

Vincular oSQLQuery1 a un Report

Publicado: Mié Jul 18, 2007 9:57 pm
por Jose Lopez Carrasco
Paco este es el Method para imprimir.
Gracias Pepe.
METHOD Button1Click( oSender ) CLASS TForm1
Local dFechaIni := CToD(::oMaskEdit1:Value)
Local dFechaFin := CToD(::oMaskEdit2:Value)
Local oRepDiario, oGroup, oFont1, oFont2
//If dFechaIni > dFechaFin .OR. EMPTY(dFechaIni)
// Application:MessageBox("Error de Fechas","ERROR",MB_OK+MB_ICONERROR)
// RETURN Nil
//EndIf
With Object oFont1 := TFont():New()
:cName := "Arial"
:nSize := 12
:lBold := .T.
END WITH
With Object oFont2 := TFont():New()
:cName := "Arial"
:nSize := 10
:lBold := .f.
END WITH
::oAdoDataSource1:cConnect('Provider=MSDASQL;Persist Security
Info=False;Extended Properties="DSN=Hotel;DBQ=M:FUENTE LA
HIGUERADATOS;DefaultDir=M:FUENTE LA
HIGUERADATOS;DriverId=538;FIL=Paradox
5.X;MaxBufferSize=2048;PageTimeout=600;"')
::oAdoDataSource1:lConnected := .T.
::oSQLQuery1:cSelect := "SELECT FacturasDte.Descripcion AS Descripcion1,
Sum(FacturasDte.Cantidad) AS SumaDeCantidad, Sum(FacturasDte.Precio) AS
SumaDePrecio "+;
"FROM FacturasDte INNER JOIN Factura ON
FacturasDte.Factura = Factura.Factura "+;
"WHERE (((Factura.Fecha)>=#01/01/2007# And
(Factura.Fecha)<=#12/31/2007#)) "+;
"GROUP BY FacturasDte.Descripcion;"
::oSQLQuery1:lOpen := .T.
//::oLabel1:cText := Str(::oSQLQuery1:RecCount())
* Creamos el reporte
REPORT oRepDiario ;
PREVIEW ;
HEADER "DIARIO DE CONSUMO","" ALIGN taCENTER;
TITLE "Desde fecha: " + DToC(dFechaIni) + " hata fecha:
"+DToC(dFechaFin)+" Página No."+str(oRepDiario:nPage,3)+" "+ DtoC( Date() )
+ " " + Time() ALIGN taCENTER;
JOBNAME "LISTADO DE FACTURACION";
FONT oFont1, oFont2
oRepDiario:bSkip := {|| ::oSQLQuery1:Skip()}
//oRepDiario:bWhile := {|| !::oSqlQuery1:eof()}
::oSQLQuery1:GoTop()
* Definimos las columnas
COLUMN OF oRepDiario ;
TITLE "Descripcion" ;
DATA ::oSQLQuery1:Descripcion1 ;
FONT 2 ;
CHARSIZE 20
COLUMN OF oRepDiario ;
DATA ::oSQLQuery1:SumaDeCantidad ;
PICTURE "999,999.99" ;
TITLE "Unidades";
ALIGN taRIGHT ;
FONT 2 ;
CHARSIZE 10 ;
TOTAL
COLUMN OF oRepDiario ;
DATA ::oSQLQuery1:SumaDePrecio ;
PICTURE "999,999.99" ;
TITLE "Importe";
ALIGN taRIGHT ;
FONT 2 ;
CHARSIZE 10 ;
TOTAL
* Ejecutamos el reporte
If ::oCheckbox1:lChecked()
oRepDiario:ToExcel()
Else
RUN REPORT oRepDiario
EndIf
oFont1:End()
oFont2:End()
RETURN Nil
//---------------------------------------------------------- --------------------
"Paco V" <ssi@ono.com> escribió en el mensaje
news:469e5e57$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>
>
> ::oSqlQuery1:savestate(.t.)
> oReport:bSkip := {|| ::oSqlQuery1:Skip()}
> oReport:bWhile := {|| !::oSqlQuery:eof()}
> ::oDbfDataset1:Gotop()
> COLUMN OF oReport ;
> TITLE "Telefono" ;
> DATA alltrim(::oSqlQuery1:telefono)
>
>
> Pepe, yo lo hago asi y funciona OK.
>
> No me hagas mucho caso pero pruebalo y me dices.
>
> Paco V
>
>
> "Jose Lopez Carrasco" <tritoncomputer@infonegocio.com> wrote:
>>Hola a todos
>>
>>Estoy intentando hacer un report de una consulta oSQLQuery1 y no se como
>
>>vincular los datos pongo:
>>
>>
>>REPORT oRepDiario ;
>> PREVIEW ;
>> ......
>> ......
>>
>>COLUMN OF oRepDiario ;
>> TITLE "Descripcion" ;
>> DATA ::oSQLQuery1:Descripcion1 ;
>> FONT 2 ;
>> CHARSIZE 20
>>
>> oRepDiario:bSkip := {| | ::oSQLQuery1:Skip() }
>>.......
>>.......
>>
>>RUN REPORT oRepDiario
>>
>>Gracias Pepe.
>>
>>
>>
>

Vincular oSQLQuery1 a un Report

Publicado: Jue Jul 19, 2007 6:01 pm
por ignacio
José,
Deberá modificar también el codeblock bWhile y/o bFor de TReport.
Saludos,
"Jose Lopez Carrasco" <tritoncomputer@infonegocio.com> escribió en el
mensaje news:469e59c1$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> Hola a todos
>
> Estoy intentando hacer un report de una consulta oSQLQuery1 y no se como
> vincular los datos pongo:
>
>
> REPORT oRepDiario ;
> PREVIEW ;
> ......
> ......
>
> COLUMN OF oRepDiario ;
> TITLE "Descripcion" ;
> DATA ::oSQLQuery1:Descripcion1 ;
> FONT 2 ;
> CHARSIZE 20
>
> oRepDiario:bSkip := {| | ::oSQLQuery1:Skip() }
> .......
> .......
>
> RUN REPORT oRepDiario
>
> Gracias Pepe.
>
>
>

Vincular oSQLQuery1 a un Report

Publicado: Jue Jul 19, 2007 6:54 pm
por Jose Lopez Carrasco
Ignacio,
Si pongo esta linea oRepDiario:bWhile := {|| !::oSQLQuery1:Eof()} este es el
error que se produce:
***************************** Registro de errores
*****************************
Fecha: 19-07-2007
Hora: 18:51:34
Memoria libre: 563292
Area actual: 1
------------------------- Información del
compilador --------------------------
Versión Xailer: Xailer 1.5.6 Version 1.5
Compilador: xHarbour build 0.99.61 Intl. (SimpLex) PCode Version: 7
Compilador C/C++: Borland C++ 5.5.1
Plataforma: Windows XP Professional 5.01.2600 Service Pack 2
----------------------- Información detallada del
error -----------------------
Subsistema: BASE
Código de error: 1122
Estado: .F.
Descripción: Error de argumento
Operación: TRANSFORM
Argumentos: [ 1] = Tipo: U Valor: NIL [ 2] = Tipo: C Valor:
Fichero:
Código error SO: 0
Pila de llamadas:
TRANSFORM (0)
TRPTCOLUMN:PRINTDATA (1512)
TREPORT:RUN (463)
TFORM1:BUTTON1CLICK (127)
TBUTTON:ONCLICK (0)
TBUTTON:CLICK (99)
(b)XCONTROL:XCONTROL (140)
TBUTTON:COMMAND (0)
TSCROLLINGWINCONTROL:WMCOMMAND (253)
TFORM1:WMCOMMAND (885)
RUNFORM (0)
TAPPLICATION:RUN (209)
MAIN (26)
Gracias por tu atencion
Un saludo Pepe.
"Ignacio Ortiz de Zúñiga" <NoName@xailer.com> escribió en el mensaje
news:[email=469f8acc@ozsrv2.ozlan.local...]469f8acc@ozsrv2.ozlan.local...[/email]
> José,
>
> Deberá modificar también el codeblock bWhile y/o bFor de TReport.
>
> Saludos,
>
> "Jose Lopez Carrasco" <tritoncomputer@infonegocio.com> escribió en el
> mensaje news:469e59c1$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>> Hola a todos
>>
>> Estoy intentando hacer un report de una consulta oSQLQuery1 y no se como
>> vincular los datos pongo:
>>
>>
>> REPORT oRepDiario ;
>> PREVIEW ;
>> ......
>> ......
>>
>> COLUMN OF oRepDiario ;
>> TITLE "Descripcion" ;
>> DATA ::oSQLQuery1:Descripcion1 ;
>> FONT 2 ;
>> CHARSIZE 20
>>
>> oRepDiario:bSkip := {| | ::oSQLQuery1:Skip() }
>> .......
>> .......
>>
>> RUN REPORT oRepDiario
>>
>> Gracias Pepe.
>>
>>
>>
>
>

Vincular oSQLQuery1 a un Report

Publicado: Jue Jul 19, 2007 7:49 pm
por Jose Lopez Carrasco
Ignacio,
El error se produce cuando la DATA ::oSQLQuery1:Descripcion; tiene un valor
nulo. Como le paso el valor para que no de error en el caso que sea nulo.
Gracias
Pepe.
"Jose Lopez Carrasco" <tritoncomputer@infonegocio.com> escribió en el
mensaje news:469f9725$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> Ignacio,
> Si pongo esta linea oRepDiario:bWhile := {|| !::oSQLQuery1:Eof()} este es
> el error que se produce:
>
> ***************************** Registro de errores
> *****************************
>
> Fecha: 19-07-2007
> Hora: 18:51:34
> Memoria libre: 563292
> Area actual: 1
>
> ------------------------- Información del
> compilador --------------------------
>
> Versión Xailer: Xailer 1.5.6 Version 1.5
> Compilador: xHarbour build 0.99.61 Intl. (SimpLex) PCode Version: 7
> Compilador C/C++: Borland C++ 5.5.1
> Plataforma: Windows XP Professional 5.01.2600 Service Pack 2
>
> ----------------------- Información detallada del
> error -----------------------
>
> Subsistema: BASE
> Código de error: 1122
> Estado: .F.
> Descripción: Error de argumento
> Operación: TRANSFORM
> Argumentos: [ 1] = Tipo: U Valor: NIL [ 2] = Tipo: C Valor:
> Fichero:
> Código error SO: 0
>
> Pila de llamadas:
> TRANSFORM (0)
> TRPTCOLUMN:PRINTDATA (1512)
> TREPORT:RUN (463)
> TFORM1:BUTTON1CLICK (127)
> TBUTTON:ONCLICK (0)
> TBUTTON:CLICK (99)
> (b)XCONTROL:XCONTROL (140)
> TBUTTON:COMMAND (0)
> TSCROLLINGWINCONTROL:WMCOMMAND (253)
> TFORM1:WMCOMMAND (885)
> RUNFORM (0)
> TAPPLICATION:RUN (209)
> MAIN (26)
>
>
> Gracias por tu atencion
> Un saludo Pepe.
>
>
>
> "Ignacio Ortiz de Zúñiga" <NoName@xailer.com> escribió en el mensaje
> news:[email=469f8acc@ozsrv2.ozlan.local...]469f8acc@ozsrv2.ozlan.local...[/email]
>> José,
>>
>> Deberá modificar también el codeblock bWhile y/o bFor de TReport.
>>
>> Saludos,
>>
>> "Jose Lopez Carrasco" <tritoncomputer@infonegocio.com> escribió en el
>> mensaje news:469e59c1$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>>> Hola a todos
>>>
>>> Estoy intentando hacer un report de una consulta oSQLQuery1 y no se como
>>> vincular los datos pongo:
>>>
>>>
>>> REPORT oRepDiario ;
>>> PREVIEW ;
>>> ......
>>> ......
>>>
>>> COLUMN OF oRepDiario ;
>>> TITLE "Descripcion" ;
>>> DATA ::oSQLQuery1:Descripcion1 ;
>>> FONT 2 ;
>>> CHARSIZE 20
>>>
>>> oRepDiario:bSkip := {| | ::oSQLQuery1:Skip() }
>>> .......
>>> .......
>>>
>>> RUN REPORT oRepDiario
>>>
>>> Gracias Pepe.
>>>
>>>
>>>
>>
>>
>
>

Vincular oSQLQuery1 a un Report

Publicado: Vie Jul 20, 2007 12:46 pm
por ignacio
José,
Utilice la función IFF() para controlar si es NIL odesarrollelo en una
función aparte.
Saludos,
"Jose Lopez Carrasco" <tritoncomputer@infonegocio.com> escribió en el
mensaje news:469fa44b$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> Ignacio,
> El error se produce cuando la DATA ::oSQLQuery1:Descripcion; tiene un
> valor
> nulo. Como le paso el valor para que no de error en el caso que sea nulo.
>
> Gracias
> Pepe.
>
>
> "Jose Lopez Carrasco" <tritoncomputer@infonegocio.com> escribió en el
> mensaje news:469f9725$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>> Ignacio,
>> Si pongo esta linea oRepDiario:bWhile := {|| !::oSQLQuery1:Eof()} este es
>> el error que se produce:
>>
>> ***************************** Registro de errores
>> *****************************
>>
>> Fecha: 19-07-2007
>> Hora: 18:51:34
>> Memoria libre: 563292
>> Area actual: 1
>>
>> ------------------------- Información del
>> compilador --------------------------
>>
>> Versión Xailer: Xailer 1.5.6 Version 1.5
>> Compilador: xHarbour build 0.99.61 Intl. (SimpLex) PCode Version: 7
>> Compilador C/C++: Borland C++ 5.5.1
>> Plataforma: Windows XP Professional 5.01.2600 Service Pack 2
>>
>> ----------------------- Información detallada del
>> error -----------------------
>>
>> Subsistema: BASE
>> Código de error: 1122
>> Estado: .F.
>> Descripción: Error de argumento
>> Operación: TRANSFORM
>> Argumentos: [ 1] = Tipo: U Valor: NIL [ 2] = Tipo: C Valor:
>> Fichero:
>> Código error SO: 0
>>
>> Pila de llamadas:
>> TRANSFORM (0)
>> TRPTCOLUMN:PRINTDATA (1512)
>> TREPORT:RUN (463)
>> TFORM1:BUTTON1CLICK (127)
>> TBUTTON:ONCLICK (0)
>> TBUTTON:CLICK (99)
>> (b)XCONTROL:XCONTROL (140)
>> TBUTTON:COMMAND (0)
>> TSCROLLINGWINCONTROL:WMCOMMAND (253)
>> TFORM1:WMCOMMAND (885)
>> RUNFORM (0)
>> TAPPLICATION:RUN (209)
>> MAIN (26)
>>
>>
>> Gracias por tu atencion
>> Un saludo Pepe.
>>
>>
>>
>> "Ignacio Ortiz de Zúñiga" <NoName@xailer.com> escribió en el mensaje
>> news:[email=469f8acc@ozsrv2.ozlan.local...]469f8acc@ozsrv2.ozlan.local...[/email]
>>> José,
>>>
>>> Deberá modificar también el codeblock bWhile y/o bFor de TReport.
>>>
>>> Saludos,
>>>
>>> "Jose Lopez Carrasco" <tritoncomputer@infonegocio.com> escribió en el
>>> mensaje news:469e59c1$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>>>> Hola a todos
>>>>
>>>> Estoy intentando hacer un report de una consulta oSQLQuery1 y no se
>>>> como vincular los datos pongo:
>>>>
>>>>
>>>> REPORT oRepDiario ;
>>>> PREVIEW ;
>>>> ......
>>>> ......
>>>>
>>>> COLUMN OF oRepDiario ;
>>>> TITLE "Descripcion" ;
>>>> DATA ::oSQLQuery1:Descripcion1 ;
>>>> FONT 2 ;
>>>> CHARSIZE 20
>>>>
>>>> oRepDiario:bSkip := {| | ::oSQLQuery1:Skip() }
>>>> .......
>>>> .......
>>>>
>>>> RUN REPORT oRepDiario
>>>>
>>>> Gracias Pepe.
>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>
>

Vincular oSQLQuery1 a un Report

Publicado: Vie Jul 20, 2007 4:36 pm
por Jose Lopez Carrasco
Lo he resuelto asi, pero no se si hay otra forma que sea mas rapida que
esta:
DATA
Iif(VALTYPE(::oSQLQuery1:Descripcion)=="U","",::oSQLQuery1:Descripcion) ;
Ya que tiene que hacer una evaluacion de todos los campos del registro, y de
toda la base de datos.
Muchas gracias
Pepe :-)
"Ignacio Ortiz de Zúñiga" <NoName@xailer.com> escribió en el mensaje
news:[email=46a09294@ozsrv2.ozlan.local...]46a09294@ozsrv2.ozlan.local...[/email]
> José,
>
> Utilice la función IFF() para controlar si es NIL odesarrollelo en una
> función aparte.
>
> Saludos,
>
> "Jose Lopez Carrasco" <tritoncomputer@infonegocio.com> escribió en el
> mensaje news:469fa44b$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>> Ignacio,
>> El error se produce cuando la DATA ::oSQLQuery1:Descripcion; tiene un
>> valor
>> nulo. Como le paso el valor para que no de error en el caso que sea nulo.
>>
>> Gracias
>> Pepe.
>>
>>
>> "Jose Lopez Carrasco" <tritoncomputer@infonegocio.com> escribió en el
>> mensaje news:469f9725$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>>> Ignacio,
>>> Si pongo esta linea oRepDiario:bWhile := {|| !::oSQLQuery1:Eof()} este
>>> es el error que se produce:
>>>
>>> ***************************** Registro de errores
>>> *****************************
>>>
>>> Fecha: 19-07-2007
>>> Hora: 18:51:34
>>> Memoria libre: 563292
>>> Area actual: 1
>>>
>>> ------------------------- Información del
>>> compilador --------------------------
>>>
>>> Versión Xailer: Xailer 1.5.6 Version 1.5
>>> Compilador: xHarbour build 0.99.61 Intl. (SimpLex) PCode Version: 7
>>> Compilador C/C++: Borland C++ 5.5.1
>>> Plataforma: Windows XP Professional 5.01.2600 Service Pack 2
>>>
>>> ----------------------- Información detallada del
>>> error -----------------------
>>>
>>> Subsistema: BASE
>>> Código de error: 1122
>>> Estado: .F.
>>> Descripción: Error de argumento
>>> Operación: TRANSFORM
>>> Argumentos: [ 1] = Tipo: U Valor: NIL [ 2] = Tipo: C Valor:
>>> Fichero:
>>> Código error SO: 0
>>>
>>> Pila de llamadas:
>>> TRANSFORM (0)
>>> TRPTCOLUMN:PRINTDATA (1512)
>>> TREPORT:RUN (463)
>>> TFORM1:BUTTON1CLICK (127)
>>> TBUTTON:ONCLICK (0)
>>> TBUTTON:CLICK (99)
>>> (b)XCONTROL:XCONTROL (140)
>>> TBUTTON:COMMAND (0)
>>> TSCROLLINGWINCONTROL:WMCOMMAND (253)
>>> TFORM1:WMCOMMAND (885)
>>> RUNFORM (0)
>>> TAPPLICATION:RUN (209)
>>> MAIN (26)
>>>
>>>
>>> Gracias por tu atencion
>>> Un saludo Pepe.
>>>
>>>
>>>
>>> "Ignacio Ortiz de Zúñiga" <NoName@xailer.com> escribió en el mensaje
>>> news:[email=469f8acc@ozsrv2.ozlan.local...]469f8acc@ozsrv2.ozlan.local...[/email]
>>>> José,
>>>>
>>>> Deberá modificar también el codeblock bWhile y/o bFor de TReport.
>>>>
>>>> Saludos,
>>>>
>>>> "Jose Lopez Carrasco" <tritoncomputer@infonegocio.com> escribió en el
>>>> mensaje news:469e59c1$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>>>>> Hola a todos
>>>>>
>>>>> Estoy intentando hacer un report de una consulta oSQLQuery1 y no se
>>>>> como vincular los datos pongo:
>>>>>
>>>>>
>>>>> REPORT oRepDiario ;
>>>>> PREVIEW ;
>>>>> ......
>>>>> ......
>>>>>
>>>>> COLUMN OF oRepDiario ;
>>>>> TITLE "Descripcion" ;
>>>>> DATA ::oSQLQuery1:Descripcion1 ;
>>>>> FONT 2 ;
>>>>> CHARSIZE 20
>>>>>
>>>>> oRepDiario:bSkip := {| | ::oSQLQuery1:Skip() }
>>>>> .......
>>>>> .......
>>>>>
>>>>> RUN REPORT oRepDiario
>>>>>
>>>>> Gracias Pepe.
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>
>

Vincular oSQLQuery1 a un Report

Publicado: Vie Jul 20, 2007 6:39 pm
por ignacio
José,
Si la hay; evitando el uso de valores nulos en sus tablas, utilizando
valores por defecto para todos los campos.
Un saludo,
"Jose Lopez Carrasco" <tritoncomputer@infonegocio.com> escribió en el
mensaje news:46a0c86a$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> Lo he resuelto asi, pero no se si hay otra forma que sea mas rapida que
> esta:
>
> DATA
> Iif(VALTYPE(::oSQLQuery1:Descripcion)=="U","",::oSQLQuery1:Descripcion) ;
>
> Ya que tiene que hacer una evaluacion de todos los campos del registro, y
> de
> toda la base de datos.
>
>
> Muchas gracias
> Pepe :-)
>
>
> "Ignacio Ortiz de Zúñiga" <NoName@xailer.com> escribió en el mensaje
> news:[email=46a09294@ozsrv2.ozlan.local...]46a09294@ozsrv2.ozlan.local...[/email]
>> José,
>>
>> Utilice la función IFF() para controlar si es NIL odesarrollelo en una
>> función aparte.
>>
>> Saludos,
>>
>> "Jose Lopez Carrasco" <tritoncomputer@infonegocio.com> escribió en el
>> mensaje news:469fa44b$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>>> Ignacio,
>>> El error se produce cuando la DATA ::oSQLQuery1:Descripcion; tiene un
>>> valor
>>> nulo. Como le paso el valor para que no de error en el caso que sea
>>> nulo.
>>>
>>> Gracias
>>> Pepe.
>>>
>>>
>>> "Jose Lopez Carrasco" <tritoncomputer@infonegocio.com> escribió en el
>>> mensaje news:469f9725$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>>>> Ignacio,
>>>> Si pongo esta linea oRepDiario:bWhile := {|| !::oSQLQuery1:Eof()} este
>>>> es el error que se produce:
>>>>
>>>> ***************************** Registro de errores
>>>> *****************************
>>>>
>>>> Fecha: 19-07-2007
>>>> Hora: 18:51:34
>>>> Memoria libre: 563292
>>>> Area actual: 1
>>>>
>>>> ------------------------- Información del
>>>> compilador --------------------------
>>>>
>>>> Versión Xailer: Xailer 1.5.6 Version 1.5
>>>> Compilador: xHarbour build 0.99.61 Intl. (SimpLex) PCode Version:
>>>> 7
>>>> Compilador C/C++: Borland C++ 5.5.1
>>>> Plataforma: Windows XP Professional 5.01.2600 Service Pack 2
>>>>
>>>> ----------------------- Información detallada del
>>>> error -----------------------
>>>>
>>>> Subsistema: BASE
>>>> Código de error: 1122
>>>> Estado: .F.
>>>> Descripción: Error de argumento
>>>> Operación: TRANSFORM
>>>> Argumentos: [ 1] = Tipo: U Valor: NIL [ 2] = Tipo: C Valor:
>>>> Fichero:
>>>> Código error SO: 0
>>>>
>>>> Pila de llamadas:
>>>> TRANSFORM (0)
>>>> TRPTCOLUMN:PRINTDATA (1512)
>>>> TREPORT:RUN (463)
>>>> TFORM1:BUTTON1CLICK (127)
>>>> TBUTTON:ONCLICK (0)
>>>> TBUTTON:CLICK (99)
>>>> (b)XCONTROL:XCONTROL (140)
>>>> TBUTTON:COMMAND (0)
>>>> TSCROLLINGWINCONTROL:WMCOMMAND (253)
>>>> TFORM1:WMCOMMAND (885)
>>>> RUNFORM (0)
>>>> TAPPLICATION:RUN (209)
>>>> MAIN (26)
>>>>
>>>>
>>>> Gracias por tu atencion
>>>> Un saludo Pepe.
>>>>
>>>>
>>>>
>>>> "Ignacio Ortiz de Zúñiga" <NoName@xailer.com> escribió en el mensaje
>>>> news:[email=469f8acc@ozsrv2.ozlan.local...]469f8acc@ozsrv2.ozlan.local...[/email]
>>>>> José,
>>>>>
>>>>> Deberá modificar también el codeblock bWhile y/o bFor de TReport.
>>>>>
>>>>> Saludos,
>>>>>
>>>>> "Jose Lopez Carrasco" <tritoncomputer@infonegocio.com> escribió en el
>>>>> mensaje news:469e59c1$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>>>>>> Hola a todos
>>>>>>
>>>>>> Estoy intentando hacer un report de una consulta oSQLQuery1 y no se
>>>>>> como vincular los datos pongo:
>>>>>>
>>>>>>
>>>>>> REPORT oRepDiario ;
>>>>>> PREVIEW ;
>>>>>> ......
>>>>>> ......
>>>>>>
>>>>>> COLUMN OF oRepDiario ;
>>>>>> TITLE "Descripcion" ;
>>>>>> DATA ::oSQLQuery1:Descripcion1 ;
>>>>>> FONT 2 ;
>>>>>> CHARSIZE 20
>>>>>>
>>>>>> oRepDiario:bSkip := {| | ::oSQLQuery1:Skip() }
>>>>>> .......
>>>>>> .......
>>>>>>
>>>>>> RUN REPORT oRepDiario
>>>>>>
>>>>>> Gracias Pepe.
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>
>

Vincular oSQLQuery1 a un Report

Publicado: Dom Jul 22, 2007 10:02 pm
por Jose Lopez Carrasco
Ignacio,
Gracias por tu atencion
Saludos.
Pepe
"Ignacio Ortiz de Zúñiga" <NoName@xailer.com> escribió en el mensaje
news:[email=46a0e54c@ozsrv2.ozlan.local...]46a0e54c@ozsrv2.ozlan.local...[/email]
> José,
>
> Si la hay; evitando el uso de valores nulos en sus tablas, utilizando
> valores por defecto para todos los campos.
>
> Un saludo,
>
> "Jose Lopez Carrasco" <tritoncomputer@infonegocio.com> escribió en el
> mensaje news:46a0c86a$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>> Lo he resuelto asi, pero no se si hay otra forma que sea mas rapida que
>> esta:
>>
>> DATA
>> Iif(VALTYPE(::oSQLQuery1:Descripcion)=="U","",::oSQLQuery1:Descripcion) ;
>>
>> Ya que tiene que hacer una evaluacion de todos los campos del registro, y
>> de
>> toda la base de datos.
>>
>>
>> Muchas gracias
>> Pepe :-)
>>
>>
>> "Ignacio Ortiz de Zúñiga" <NoName@xailer.com> escribió en el mensaje
>> news:[email=46a09294@ozsrv2.ozlan.local...]46a09294@ozsrv2.ozlan.local...[/email]
>>> José,
>>>
>>> Utilice la función IFF() para controlar si es NIL odesarrollelo en una
>>> función aparte.
>>>
>>> Saludos,
>>>
>>> "Jose Lopez Carrasco" <tritoncomputer@infonegocio.com> escribió en el
>>> mensaje news:469fa44b$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>>>> Ignacio,
>>>> El error se produce cuando la DATA ::oSQLQuery1:Descripcion; tiene un
>>>> valor
>>>> nulo. Como le paso el valor para que no de error en el caso que sea
>>>> nulo.
>>>>
>>>> Gracias
>>>> Pepe.
>>>>
>>>>
>>>> "Jose Lopez Carrasco" <tritoncomputer@infonegocio.com> escribió en el
>>>> mensaje news:469f9725$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>>>>> Ignacio,
>>>>> Si pongo esta linea oRepDiario:bWhile := {|| !::oSQLQuery1:Eof()} este
>>>>> es el error que se produce:
>>>>>
>>>>> ***************************** Registro de errores
>>>>> *****************************
>>>>>
>>>>> Fecha: 19-07-2007
>>>>> Hora: 18:51:34
>>>>> Memoria libre: 563292
>>>>> Area actual: 1
>>>>>
>>>>> ------------------------- Información del
>>>>> compilador --------------------------
>>>>>
>>>>> Versión Xailer: Xailer 1.5.6 Version 1.5
>>>>> Compilador: xHarbour build 0.99.61 Intl. (SimpLex) PCode Version:
>>>>> 7
>>>>> Compilador C/C++: Borland C++ 5.5.1
>>>>> Plataforma: Windows XP Professional 5.01.2600 Service Pack 2
>>>>>
>>>>> ----------------------- Información detallada del
>>>>> error -----------------------
>>>>>
>>>>> Subsistema: BASE
>>>>> Código de error: 1122
>>>>> Estado: .F.
>>>>> Descripción: Error de argumento
>>>>> Operación: TRANSFORM
>>>>> Argumentos: [ 1] = Tipo: U Valor: NIL [ 2] = Tipo: C Valor:
>>>>> Fichero:
>>>>> Código error SO: 0
>>>>>
>>>>> Pila de llamadas:
>>>>> TRANSFORM (0)
>>>>> TRPTCOLUMN:PRINTDATA (1512)
>>>>> TREPORT:RUN (463)
>>>>> TFORM1:BUTTON1CLICK (127)
>>>>> TBUTTON:ONCLICK (0)
>>>>> TBUTTON:CLICK (99)
>>>>> (b)XCONTROL:XCONTROL (140)
>>>>> TBUTTON:COMMAND (0)
>>>>> TSCROLLINGWINCONTROL:WMCOMMAND (253)
>>>>> TFORM1:WMCOMMAND (885)
>>>>> RUNFORM (0)
>>>>> TAPPLICATION:RUN (209)
>>>>> MAIN (26)
>>>>>
>>>>>
>>>>> Gracias por tu atencion
>>>>> Un saludo Pepe.
>>>>>
>>>>>
>>>>>
>>>>> "Ignacio Ortiz de Zúñiga" <NoName@xailer.com> escribió en el mensaje
>>>>> news:[email=469f8acc@ozsrv2.ozlan.local...]469f8acc@ozsrv2.ozlan.local...[/email]
>>>>>> José,
>>>>>>
>>>>>> Deberá modificar también el codeblock bWhile y/o bFor de TReport.
>>>>>>
>>>>>> Saludos,
>>>>>>
>>>>>> "Jose Lopez Carrasco" <tritoncomputer@infonegocio.com> escribió en el
>>>>>> mensaje news:469e59c1$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>>>>>>> Hola a todos
>>>>>>>
>>>>>>> Estoy intentando hacer un report de una consulta oSQLQuery1 y no se
>>>>>>> como vincular los datos pongo:
>>>>>>>
>>>>>>>
>>>>>>> REPORT oRepDiario ;
>>>>>>> PREVIEW ;
>>>>>>> ......
>>>>>>> ......
>>>>>>>
>>>>>>> COLUMN OF oRepDiario ;
>>>>>>> TITLE "Descripcion" ;
>>>>>>> DATA ::oSQLQuery1:Descripcion1 ;
>>>>>>> FONT 2 ;
>>>>>>> CHARSIZE 20
>>>>>>>
>>>>>>> oRepDiario:bSkip := {| | ::oSQLQuery1:Skip() }
>>>>>>> .......
>>>>>>> .......
>>>>>>>
>>>>>>> RUN REPORT oRepDiario
>>>>>>>
>>>>>>> Gracias Pepe.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>
>