Cómo empezar con ADS ?

Post Reply
User avatar
Armando
Posts: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Contact:

Cómo empezar con ADS ?

Post by Armando »

Amigos del foro:

Quiero iniciarme en ADS (Advantage Data Server) para conocer sus bondades y ofrecerlo a mis clientes, donde conseguir una "receta" de cómo iniciarme ?

1.- Donde instalarlo ?
2.- Cómo ligarlo con mi aplicación ?
3.- Cómo usar el drive nativo de ads ?

En fin todo lo necesario para migrar una aplicación a ADS

Saludos y gracias por la ayuda
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Ruben D. Fernandez
Posts: 189
Joined: Sun Jul 08, 2007 1:46 am
Location: Uruguay

Post by Ruben D. Fernandez »

Armando:

Deberías contactarte con R. Flores es el Master
de ADS según creo yo.

Saludos

Ruben Fernandez.
User avatar
Armando
Posts: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Contact:

Post by Armando »

Rubén:

Cierto, muy cierto, lo voy a hacer.

Sin embargo la experiencia de los usuarios tambien es importante, a ver si alguien se anima a tirar alguna líneas.

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Patricio Avalos Aguirre
Posts: 1028
Joined: Fri Oct 07, 2005 1:56 pm
Location: La Serena, Chile
Contact:

Post by Patricio Avalos Aguirre »

Saludos
Patricio

__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl
User avatar
Armando
Posts: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Contact:

Post by Armando »

Patricio:

Muchas gracias, ya tengo instalado ADS.

Necesito saber con que continuar despues de tener instalado el servidor.

A ver si alguien más se anima a orientarme.

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
jrestojeda
Posts: 543
Joined: Wed Jul 04, 2007 3:51 pm
Location: Buenos Aires - Argentina

Post by jrestojeda »

Armando:

No hay mucho para agregar, primero debes incluir las siguientes dlls al path donde se encuentra tu programa:

ACE32.DLL
ADSLOC32.DLL
AXCWS32.DLL

luego en todos tus .prg debes incluir en la cabecera lo siguiente:

#include "ADS.ch"

y también, pero solo en el .prg principal lo siguiente:

RddRegister("ADS",1)
RddSetDefault("ADS")
SET SERVER LOCAL
SET FILETYPE TO NTX o el que utilices

y luego el resto sale solo.

Hay que tener en cuenta que en algunas condiciones no funcionan los FOR o los WHILE, por ejemplo para crear un indice temporario.

Ejemplo:
INDEX ON BASE->FECHA TO MiIndice.ntx FOR (BASE->FECHA>=Fecha1 .AND. BASE->FECHA<=FECHA2)

Este tipo de sentencias probablemente no funcionen.
Saludos.
User avatar
Armando
Posts: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Contact:

Post by Armando »

Ojeda:

Parece más sencillo que pellizcar un vidrio :lol: (Saludos Willy), voy con mi hacha.

Muchas Gracias
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Patricio Avalos Aguirre
Posts: 1028
Joined: Fri Oct 07, 2005 1:56 pm
Location: La Serena, Chile
Contact:

Post by Patricio Avalos Aguirre »

Aqui te dejo como conectar a un server ADS

Code: Select all

Init Procedure Inicio()
	local hConnection := 0, lConecte := .f.

	SET MULTIPLE ON
	SET EPOCH TO 1950                            // Admite los años desde el 1990 en adelante
	SET CONFIRM ON
	SET CENTURY ON                               // 4 d¡gitos a¤o
	SET DATE FORMAT "DD/MM/YYYY"                 // formato dd-mm-yyyy
	SET DELETED ON                               // Impedir ver registros marcados borrar
	SetHandleCount( 150 )                        // M ximo n§ ficheros abiertos
	SET _3DLOOK ON

	oApp := MyApp():Load()

	rddregister( "ADS", 1 )
	rddSetDefault( "ADS" )

	AdsConnect( oApp:cPathDbf )
	AdsSetServerType( oApp:AdsConnect )

	MsgRun( "Espere un momento, Conectando con el Servidor", "Win-Invent",;
			 { || lConecte := AdsConnect60( oApp:AdsServer, oApp:AdsConnect, "adssys", "7654",, @hConnection ) } )

	if !lConecte //!AdsConnect60( oApp:AdsServer, oApp:AdsConnect, "adssys", "7688",, @hConnection )
		MsgInfo( "Hay problemas en el servidor"+CRLF+"intente mas tarde", "usuario" )
		MsgInfo( "Error:"+cValtochar( AdsGetLastError() )+CRLF +;
			"Servidor:"+oApp:AdsServer, "Usuario" )
		PostQuitMessage(0)
		QUIT
		return
	endif

	oApp:hConnection := hConnection
	hConnection := NIL

	AdsSetFileType( ADS_CDX )
	AdsLocking( .t. )
	AdsRightsCheck( .f. )

return
//---------------------------------------------------------------------------

nota: para poder trabajar con dbf temporales debes incluir la VIA

Code: Select all

dbCreate( cFileTemp, ;
						{ { "cod_prod", "c", 15,0},;
						  { "des_prod", "C", 40,0},;
						  { "fecha",    "d", 08,0},;
						  { "hora",     "C", 10,0},;
						  { "cant",     "n", 10,0},;
						  { "usuario",  "C", 30,0}}, "DBFCDX" )

SELE 0 ; USE (cFileTemp) NEW ALIAS TEMP VIA "DBFCDX"


Espero que te sirva

y suerte...
Saludos
Patricio

__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl
User avatar
Armando
Posts: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Contact:

Post by Armando »

Patricio:

Desde luego que me sirve.

Muchas gracias por el aporte.

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Francis
Posts: 112
Joined: Thu Aug 17, 2006 4:13 pm
Location: Peru

Cómo empezar con ADS ?

Post by Francis »

Hola a todos del foro

Y para el ADS Local que pasos se hace para la programacion en nuestros sistemas..., que se incluye en los prg, que se linkea ?

Salu2

Francis
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

En samples\buildh.bat ó buildx.bat hay dos líneas que tienes que descomentar. Estan indicadas en esos ficheros.

Tienes un ejemplo de uso en samples\TestAds.prg
regards, saludos

Antonio Linares
www.fivetechsoft.com
svenegas
Posts: 2
Joined: Fri Jun 09, 2006 9:30 pm
Contact:

Post by svenegas »

Existe alguna forma de conocer la existencia de un archivo determinado en la carpeta compartida donde se alojan las tablas, bajo un Remote Server y utilizando el Cliente CLIPPER/DOS ?

Para el caso especifico, no me sirve la funcion File(), por cuanto AX_RightsCheck(.F.).

Mi intencion es conocer si existe el .CDX asociado a una tabla, y si no existe automaticamente crearlo..

Alguien lo ha hecho ?

Desde ya gracias..


Sergio E. Venegas
Tucuman - Argentina
Post Reply