Consultas SQL con ADS "LOCAL" DUDA

Consultas SQL con ADS "LOCAL" DUDA

Postby Hernan Diego Ceccarelli » Tue Oct 25, 2005 5:49 am

Hola,
Siempre me quedo una duda existencial. Se pueden hacer consultas SQL de
tablas DBF del ADS Local server desde funciones propias del ADS local ??
Como ? Que funciones ?? Como se usan ? Algun mini ejemplo :-) :?

Hernan :D
User avatar
Hernan Diego Ceccarelli
 
Posts: 84
Joined: Fri Oct 07, 2005 4:51 pm
Location: Rosario - Santa Fe - Argentina

Postby R.F. » Tue Oct 25, 2005 3:57 pm

Con ADS se puede hacer DE TODO.

Se puede hacer con las funciones propias del RDDADS, pero no te lo recomiendo, el barrido de los cursores es bastante complicado

Yo lo hago via ADO de esta manera: (OJO, requiere diccionario de datos y tener instalado el cliente ADO para ADS)

Code: Select all  Expand view  RUN

LOCAL oConexionAdo := TOLEAUTO():New("adodb.connection")
LOCAL oComando := TOLEAUTO():New("adodb.command")
LOCAL oRecordset
LOCAL aDatos := {}

/* comenzamos la conexion */
oConexionAdo:Open("Provider=Advantage.OLEDB.1;User ID=adssys;Data Source=c:\fwapps\klm\agentperformance.add;Persist Security Info=False;ServerType=ADS_LOCAL_SERVER")

/*paso 2, crear un objeto comando y relacionarlo con el objeto conexion previamente creado */
oComando:ActiveConnection(oConexionAdo)

// indicamos el comando a ejecutar como cadena de caracteres
oComando:CommandText := "Select * from agents order by iatacode"

//ejecutamos el comando y el resultado regresa en un objeto de tipo RecordSet
oRecordSet := oComando:Execute()
? oRecordSet:RecordCount()
? oRecordSet:Fields:Count()
DO WHILE .NOT. oRecordSet:Eof()
      AADD(aDatos,oRecordset:Fields(0):value)
      oRecordSet:MoveNext()
ENDDO
MsgList(aDatos)
Saludos
R.F.
R.F.
 
Posts: 840
Joined: Thu Oct 13, 2005 7:05 pm

Postby Hernan Diego Ceccarelli » Wed Oct 26, 2005 5:41 am

Rene,
A que te refieres con "barrido de cursores" ?
Estuve usando las funciones de ADS, realmente las consultas son INSTANTANEAS, las creo en un area y la lee como un dbf obteniendo e recno original y todo :) Despues cierro el area, no necesito mucha complejidad, que problema me traeria eso ? No uso ni diccionarios ni nada, algo bien simple me conformo :wink:

AdsConnect
ADSCreateSQLStatement("SQLarea",2)
ADSExecuteSQLDirect( <cConsulta> )
y despues cierro el area SQLarea
AdsDisconnect

A proposito, donde ha quedado la funcion AdsGetConnectionHandle() en la nueva version de xHarbour ??? Sabes algo al respecto ?


Hernan
User avatar
Hernan Diego Ceccarelli
 
Posts: 84
Joined: Fri Oct 07, 2005 4:51 pm
Location: Rosario - Santa Fe - Argentina

Postby Marcelo Via Giglio » Wed Oct 26, 2005 9:55 pm

Hernan,

no consigo enviarte un emial a cesotech.com.ar

Marcelo
Marcelo Via Giglio
 
Posts: 1065
Joined: Fri Oct 07, 2005 3:33 pm
Location: Cochabamba - Bolivia

Postby Hernan Diego Ceccarelli » Wed Oct 26, 2005 11:01 pm

Marcelo,
hceccarelli@cesotech.com.ar
checanet@gmail.com

Es mas el correo hceccarelli@cesotech.com.ar lo uso siempre, no tiene problemas, salvo que tengas algun problema de DNS, que te hace rebota ? Lo estoy usando y bajo mails de todos correctamente :(
Bueno prueba enviarme a la casilla de gmail que te puse.
RECUERDA NO ENVIAR .ZIP al correo de gmail que gmail los filtra (pensando que es warez :roll: ) Recuerda, si quieres mandar un archivo comprimido zipeado con ejemplos y documentacion, cambiarle la extension y avisa.

Salu2
Hernan :D
User avatar
Hernan Diego Ceccarelli
 
Posts: 84
Joined: Fri Oct 07, 2005 4:51 pm
Location: Rosario - Santa Fe - Argentina


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 76 guests