Page 1 of 1

LETODB - ABRIR o CONSULTAR BASES REMOTAS SHARED

PostPosted: Thu Dec 28, 2023 4:00 pm
by mterraz
Estimados Colegas,
En esta oportunidad me encuentro trabajando con la implementación de LETODB para realizar consultas entre distintas sucursales.
Estoy con el problema que no puedo abrir un archivo de base de datos .dbf en forma remota y creo es por que esta siendo utilizado, porque haciendo la misma consulta sobre otras bases de datos que están en el mismo directorio remoto funciona sin inconvenientes.

EJEMPLO DE APERTURA DE BASES
Dbusearea(.t.,"LETO",cServer+'/wflabor','ProduNew',.T.,.F.) FUNCIONA
xbrowse()
USE ( '//190.108.228.106:2812/wflabor' ) New FUNCIONA
xbrowse()

Dbusearea(.t.,"LETO",cServer+'/wfprodu','ProduNew',.T.,.F.) NO FUNCIONA 'No se pudo abrir un archivo...','Error de apertura'
xbrowse()
USE ( '//190.108.228.106:2812/wfprodu' ) New NO FUNCIONA ... SIN DATOS
xbrowse()

Se pueden consultar bases con LETODB si están abiertas o siendo utilizadas por otra aplicación?, por ahora consigo abrir todas las bases menos la que necesito... :D
La base wfprodu esta siendo utilizada constantemente por las terminales, incluye procesos que bloquean y desbloquean registros, mientras que la base wflabor solo se utiliza a demanda.

Les agradezco cualquier ayuda o comentario.

//............................................
FUNCTION Consultar()

local cServer:= '//190.108.228.106:2812'
local aInfo :={},aDir:={}

dbcloseall()

RDDSETDEFAULT("LETO")

if LETO_CONNECT(cServer,'Invitado','invitado') == -1
MsgInfo("No se puede conectar con la Sucursal Remota","Reintente más tarde!","Aviso")
RDDSETDEFAULT( "DBFCDX" )
RETU .F.
else
MsgWait('CONECTADO, Aguarde...','AVISO', 1 )
endif

TRY
/// Dbusearea(.t.,"LETO",cServer+'/wfprodu','ProduNew',.T.,.F.) NO FUNCIONA
Dbusearea(.t.,"LETO",cServer+'/wflabor','ProduNew',.T.,.F.) /// FUNCIONA BIEN


CATCH
MsgInfo('No se pudo abrir un archivo...','Error de apertura')
RDDSETDEFAULT( "DBFCDX" )
RETU .F.
END

xbrowse()

CLOSE ProduNew

RDDSetDefault('DBFCDX')

RETU .T.

Re: LETODB - ABRIR o CONSULTAR BASES REMOTAS SHARED

PostPosted: Tue Jan 02, 2024 1:47 pm
by mterraz
Buenos dias,
Estudiando la informacion que esta disponible en el foro encuentro este comentario que se aplica perfectamente a este tema que tengo pendiente.

En el server.prg del LETO:

Funcion: hs_opentable()

"Està puesto en modo fijo el parametro para abrir en modo exlusivo las bases de datos, creo que ahi esta la cosa para abrirlos en modo compartido.
cambiando esta linea, las abre en modo compartido (no se que otras consecuencias puede tener...)"

dbUseArea( .F.,Iif(nDriver==1,"DBFNTX",Nil),oApp:DataPath+cName,cRealAlias,.T.,.F.,Iif(!Empty(cdp),cdp,Nil) )


Alguien ha realizado este cambio ? Voy a intentar compilarlo con esa modificacion.
Ayuda y comentarios son bienvenidos.

Saludos Mariano

Re: LETODB - ABRIR o CONSULTAR BASES REMOTAS SHARED

PostPosted: Tue Jan 02, 2024 2:12 pm
by karinha

Re: LETODB - ABRIR o CONSULTAR BASES REMOTAS SHARED

PostPosted: Wed Jan 03, 2024 1:29 pm
by mterraz
Hola Karinha, colegas,
Espectacular!!! la información que me compartís funciona a la perfección, estoy consultando sin problemas.
Tenia mal la configuración en el archivo letodb.ini, en una de las sucursales estaba en = 0

SOLUCION
Share_Tables=1
REINICAR EL SERVICIO DE LETO


Un abrazo grande, muchísimas gracias por la ayuda!!! Feliz año!!