Gurus de ADS - Problema de conexion por internet AIS

Post Reply
User avatar
carlos vargas
Posts: 1421
Joined: Tue Oct 11, 2005 5:01 pm
Location: Nicaragua

Gurus de ADS - Problema de conexion por internet AIS

Post by carlos vargas »

Compañeros,

He realizado la conexion por remoto del sevidor ADS, pero me ha fallado a travez de Internet.

he creado un diccionario de datos, para las tablas, he creado un usuario llamado "carlos", con su clave "carlos01".

he probado que exista comunicacion a travez de UDP con el puerto que he asignado 2003 a la conexion por internet. (con una utilidad que encontre en el sitio de Advantage que permite enviar paquetes a travez de una IP en un puerto especifico).

Code: Select all

PROCEDURE Main_Inicio()
    LOCAL cType,cPath

    /*sobre escribe y agrega metodos a clases nativas de fwh*/
    OverrideAndExtend()

    /*fix*/
    nXFix:=0
    nYFix:=0

    /*define pagina de codigo y lenguaje por defecto*/
    hb_langselect("ES")
    hb_setcodepage("ES")

    /*define RDD*/
    rddsetdefault("ADS")

    /*define parametros del servidor*/
    AdsRightsCheck(FALSE)
    AdsSetFileType(ADS_ADT)
    AdsLocking(FALSE)
    AdsSetServerType(7)

    /*define configuracion de entorno*/
    SET CENTURY  ON
    SET DATE     BRIT
    SET EPOCH    TO 1964
    SET OPTIMIZE ON
    SET CONFIRM  ON
    SET DELETED  ON
    SET SOFTSEEK OFF
    SET DECIMAL  TO 4

    Set(_SET_FILECASE,1)
    Set(_SET_DIRCASE,1)

    /*Abre tablas*/
    IF !Main_AbrirTablas(cPath)
        RETURN FALSE
    ENDIF

RETURN TRUE

/*----------------------------------------------------------------------------------*/

FUNCTION Main_AbrirTablas(cPath)
    LOCAL oErr, cErr
    LOCAL lOk:=FALSE

    /*intenta conexion con servidor de datos*/
    IF !AdsConnect60("\\jardines\jrdatos\jardines.add",4,"carlos","carlos01",,@hConn)

        /*obtiene error*/
        adsGetLastError(@cErr)

        /*muestra mensaje de error de conexion*/
        MsgStop(cErr,"Error de conexion a servidor de datos ADS!")
        RETURN lOk

    ENDIF

    /*abre tablas de datos*/
    USE mcole.adt NEW SHARED ALIAS cole
    USE mvend.adt NEW SHARED ALIAS vend
    USE mjard.adt NEW SHARED ALIAS jard
    USE mlote.adt NEW SHARED ALIAS lote
    USE mcont.adt NEW SHARED ALIAS cont
    USE mdesl.adt NEW SHARED ALIAS tasa

    /*flag de operacion*/
    lOk:=TRUE

RETURN lOk

/*----------------------------------------------------------------------------------*/

El error que muestra es:

Error 6610, The anvantage databases server did no respond to a database request in a timely manner.


salud2
carlos vargas
Salu2
Carlos Vargas
Desde Managua, Nicaragua (CA)
R.F.
Posts: 840
Joined: Thu Oct 13, 2005 7:05 pm

Post by R.F. »

Carlos:

Revisa:

1) Que el usuario que creaste en el diccionario tenga marcado el checkbox INTERNET ACCESS

2) Revisa tu ADS.INI que tiene que tener algo como esto:

[jardines]
internet_ip = <direccion IP publica del router>
internet_port = 2003

3) ¿ Abriste el puerto 2003 del router para UDP Lectura / escritura, y lo redireccionaste al equipo que tiene instalado el ADS ?
Saludos
R.F.
User avatar
carlos vargas
Posts: 1421
Joined: Tue Oct 11, 2005 5:01 pm
Location: Nicaragua

Post by carlos vargas »

Maestro Rene

este es mi ADS.INI

Code: Select all

[jardines]
LAN_IP=192.168.1.200
LAN_PORT=2002
INTERNET_IP=165.98.223.30
INTERNET_PORT=2003
El Router tiene direccionado las peticiones del puerto 2003 a la ip del server que es 192.198.1.200

he probado con la herramienta udp_test que el puerto 2003 funcione

1. En el server puse a escuchar udp_test en el puerto 2003.
2. En la pc cliente, indico que envie una cadena de datos al ip 165.98.223.30 en el puerto 2003, y si efectivamente se recibe el texto en el server.

El dicionario de datos tiene la marca de acceso a internet activa.

Adicional a superusuario AdsSys existen dos usuarios _ y yerala, cada uno de ellos con la marca de acceso a internet.
ahora, a estos usuarios no le he modificado nada mas, no les he indicado tablas, ni nada por el estilo, si le marco tablas, aparece una lista de las tablas del diccionario con una marca en Inherit. Hay algo mas que hacer despues de esto? hay que crear un grupo obligatoriamente?

como comente, por la via remotoa esta funcionando de pelos.

gracias por la ayuda y la paciencia.

Todo lo que voy haciendo lo voy documentando para elaborar un pequeno manual lo mas detallado posible para que sirva de guia, tengo la mayoria de los post de rene y minimanuales que nos ha obsequiado una y otra vez :-)


salu2
carlos vargas
Salu2
Carlos Vargas
Desde Managua, Nicaragua (CA)
R.F.
Posts: 840
Joined: Thu Oct 13, 2005 7:05 pm

Post by R.F. »

Se me ocurre:

El servidor o el router tienen activo algun Firewall, desactivalo.

Si dentro de la red puedes ver el servidor remoto, luego entonces tendrias que poder ver el servidor AIS desde internet.

El problema esta casi seguro en la configuracion del router.
Saludos
R.F.
User avatar
carlos vargas
Posts: 1421
Joined: Tue Oct 11, 2005 5:01 pm
Location: Nicaragua

Post by carlos vargas »

Mil gracias rene, el problema era una ace32.lib creada de una version diferente de la ace32.dll que usaba.
(tomando nota de fallas de capullos) :-)


funciona de maravilla.
Remote y AIS


salu2
carlos vargas
Salu2
Carlos Vargas
Desde Managua, Nicaragua (CA)
R.F.
Posts: 840
Joined: Thu Oct 13, 2005 7:05 pm

Post by R.F. »

Perfecto, a veces el bosque no nos deja ver los arboles.

Te recomiendo que pruebes la conexion AIS via modem, eso te puede dar un buen parametro en caso de que haya alguna rutina que se pueda optimizar.

Yo suelo utilizar mucho el ADSCacheRecords, para el tema de los browses, me da muy buena velocidad sobre internet.
Saludos
R.F.
Post Reply