In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

AdoDatasource:QueryArray( cSelect, @aHeaders) no devuelve el array con los nombres de las columnas

Foro público de Xailer en español
Responder
jose.luis
Mensajes: 1633
Registrado: Vie Oct 14, 2005 10:56 pm

AdoDatasource:QueryArray( cSelect, @aHeaders) no devuelve el array con los nombres de las columnas

Mensaje por jose.luis »

Ignacio,
Si el recordset viene vacío no me devuelves el nombre de las columnas.
Saludos,
José Luis Capel
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9441
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

AdoDatasource:QueryArray( cSelect, @aHeaders) no devuelve el array con los nombres de las columnas

Mensaje por ignacio »

José Luis,
Me temo que es Ado el que no lo devuelve.
Un saludo
--
Ignacio Ortiz de Zúñiga
Xailer support / Soporte de Xailer
http://www.xailer.com
http://www.xailer.info
"José Luis Capel - Aicom" <jose.luis@iaicom.com> escribió en el mensaje
news:4ab2668b$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Ignacio,
>
> Si el recordset viene vacío no me devuelves el nombre de las columnas.
>
> Saludos,
> José Luis Capel
>
>
>
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
jasm.quitaesto
Mensajes: 420
Registrado: Sab Ago 16, 2008 9:06 pm

AdoDatasource:QueryArray( cSelect, @aHeaders) no devuelve el array con los nombres de las columnas

Mensaje por jasm.quitaesto »

Jose Luis
Yo resuelvo eso haciendo una consulta de una sola fila.
Saludos
Alf+.
José Luis Capel - Aicom escribió:
> Ignacio,
>
> Si el recordset viene vací­o no me devuelves el nombre de las columnas.
>
> Saludos,
> José Luis Capel
>
>
jose.luis
Mensajes: 1633
Registrado: Vie Oct 14, 2005 10:56 pm

AdoDatasource:QueryArray( cSelect, @aHeaders) no devuelve el array con los nombres de las columnas

Mensaje por jose.luis »

Ignacio,
>
> Me temo que es Ado el que no lo devuelve.
>
Prueba este código:
METHOD QueryArray( cCommand, aHeaders ) CLASS XAdoDataSource
LOCAL oRS, oError
LOCAL aBuffer, aFields
LOCAL nFor, nFields
IF ! ::CheckConnection()
RETURN {}
ENDIF
aBuffer := {}
TRY
oRS := TOleAuto():New( "ADODB.RecordSet" )
CATCH oError
::NewError( oError:Description, oError:SubCode,, "ADODB:RecordSet" )
END
TRY
oRS:Open( cCommand, ::oConnection, adOpenForwardOnly, adLockReadOnly,
adCmdText )
CATCH oError
::NewADOError( "ADODB:RecordSet:Open( '" + cCommand+ "' )" )
oRS := NIL
RETURN aBuffer
END
WITH OBJECT oRS
IF :RecordCount > 0
aBuffer := :GetRows()
ENDIF
IF Pcount() > 1
nFields := :Fields:Count
aHeaders := Array( nFields )
FOR nFor := 1 TO nFields
aHeaders[ nFor ] := :Fields( nFor - 1 ):Name
NEXT
ENDIF
:Close()
END WITH
oRS := NIL
RETURN aBuffer
Saludos,
José lUis Capel
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9441
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

AdoDatasource:QueryArray( cSelect, @aHeaders) no devuelve el array con los nombres de las columnas

Mensaje por ignacio »

José Luis,
Supongo que a ti te funciona y ya lo he corregido con tu sugerencia.
Gracias.
Un saludo,
--
Ignacio Ortiz de Zúñiga
Xailer support / Soporte de Xailer
http://www.xailer.com
http://www.xailer.info
"José Luis Capel - Aicom" <jose.luis@iaicom.com> escribió en el mensaje
news:4ab2755b$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Ignacio,
>
>
>>
>> Me temo que es Ado el que no lo devuelve.
>>
>
> Prueba este código:
>
>
> METHOD QueryArray( cCommand, aHeaders ) CLASS XAdoDataSource
>
> LOCAL oRS, oError
> LOCAL aBuffer, aFields
> LOCAL nFor, nFields
>
> IF ! ::CheckConnection()
> RETURN {}
> ENDIF
>
> aBuffer := {}
>
> TRY
> oRS := TOleAuto():New( "ADODB.RecordSet" )
> CATCH oError
> ::NewError( oError:Description, oError:SubCode,, "ADODB:RecordSet" )
> END
>
> TRY
> oRS:Open( cCommand, ::oConnection, adOpenForwardOnly, adLockReadOnly,
> adCmdText )
> CATCH oError
> ::NewADOError( "ADODB:RecordSet:Open( '" + cCommand+ "' )" )
> oRS := NIL
> RETURN aBuffer
> END
>
> WITH OBJECT oRS
> IF :RecordCount > 0
> aBuffer := :GetRows()
> ENDIF
> IF Pcount() > 1
> nFields := :Fields:Count
> aHeaders := Array( nFields )
> FOR nFor := 1 TO nFields
> aHeaders[ nFor ] := :Fields( nFor - 1 ):Name
> NEXT
> ENDIF
> :Close()
> END WITH
>
> oRS := NIL
>
> RETURN aBuffer
>
>
> Saludos,
> José lUis Capel
>
>
>
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Toni Sales
Mensajes: 69
Registrado: Jue Abr 07, 2005 7:47 pm

AdoDatasource:QueryArray( cSelect, @aHeaders) no devuelve el array con los nombres de las columnas

Mensaje por Toni Sales »

Ignacio
Sugiero que este tipo de cambios los publiqueis en versiones anteriores a la
2.0. Nosotros estamos utilizando todavia la 1.98 y creo que tardaremos algun
tiempo todavía en hacer el cambio, sobretodo porque nos toca revisar
muuuuuchas lineas de código y no veo el momento.
Saludos
Toni Sales
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9441
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

AdoDatasource:QueryArray( cSelect, @aHeaders) no devuelve el array con los nombres de las columnas

Mensaje por ignacio »

Toni,
Me temo que no vamos a publicar más versiones de Xailer 1.9. Te sugiero que
incorpores tu mismo esas modificaciones a la biblioteca Xailer.lib de la
versión 1.9.
Un saludo,
--
Ignacio Ortiz de Zúñiga
Xailer support / Soporte de Xailer
http://www.xailer.com
http://www.xailer.info
"Toni Sales" <toni.sales@gmail.com> escribió en el mensaje
news:[email=4ab31d24@svctag-j7w3v3j....]4ab31d24@svctag-j7w3v3j....[/email]
> Ignacio
> Sugiero que este tipo de cambios los publiqueis en versiones anteriores a
> la 2.0. Nosotros estamos utilizando todavia la 1.98 y creo que tardaremos
> algun tiempo todavía en hacer el cambio, sobretodo porque nos toca revisar
> muuuuuchas lineas de código y no veo el momento.
>
> Saludos
> Toni Sales
>
>
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Responder