Error de acceso a Datos

Error de acceso a Datos

Postby JoseLuis » Wed Mar 12, 2008 7:30 am

Hola amigos

Tego un grupo de trabajo que comparte unas DBF'S que se encuentran en un servidor, cada miembro de este grupo tiene una copia del programa, con un fichero .INI que le indica la ruta de los datos. Hasta ahí todo funciona perfectamente sin problemas, ya que las bases de datos son en modo compartido.

El problema surge, cuando quiero funcionar desde el propio servidor, estando trabajando algún mimbro de éste grupo de trabajo. En éste caso no puede usar las bases de datos que éste usuario tenga pilladas. En el momento que no hay ningún usuario utilizando las bases de datos, puedo trabajar en el servidor sin problemas.

Es decir que todo funciona perfectamente desde fuera del servidor, haya los usuarios que sean, pero desde el propio servidor, que es el que tiene los datos, no puedo, siempre que las utilice alquien.

A que puede ser debido?

Saludos

Jose Luis
JoseLuis
 
Posts: 427
Joined: Thu Oct 19, 2006 12:28 pm
Location: Toledo

Postby karinha » Wed Mar 12, 2008 12:38 pm

Code: Select all  Expand view  RUN
ANNOUNCE RDDSYS
REQUEST OrdKeyNo, OrdKeyCount, OrdKeyGoto
REQUEST DBFCDX, DBFFPT

STATIC oWnd

FUNCTION Main()

    FIELD...
    LOCAL...
    MEMVAR...
    PUBLIC...

    RDDSETDEFAULT( "DBFCDX" )
    SET CENTURY ON
    SET DATE BRITISH
    SET EPOCH TO 1950
    SET SOFTSEEK OFF
    SET WRAP ON
    SETCANCEL( .F. )
    SET CONFIRM OFF
    SET DELETED ON
    SET ESCAPE ON
    SET EXCLUSIVE OFF
    SET MULTIPLE OFF

    IF ISEXERUNNING( CFILENAME( HB_ARGV( 0 ) ) )
        __Quit()
    ENDIF


Saludos
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7859
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Postby JoseLuis » Wed Mar 12, 2008 1:21 pm

Gracias por responder

He probado lo que me dices, y ahora si utilizo el programa en el servidor lo que hace es que me echa fuera, no me deja entrar si hay alguien utilizando las bases de datos.

Yo lo que quiero es utilizar todos los puestos, y cuando estén todos ocupados, trabajar también en el servidor.

No entiendo porqué puedo en todos menos en el servidor que precisamente es el que tiene los datos

Saludos

Jose Luis
JoseLuis
 
Posts: 427
Joined: Thu Oct 19, 2006 12:28 pm
Location: Toledo

Postby karinha » Wed Mar 12, 2008 5:35 pm

TIENE QUE ABRIR TUS BASES DE DATOS, COMPARTILHADAS.

EJEMPLO:

SHARED NIL = Compartida.

EXCLUSIVE NIL = Exclusivo.

//-> Todos los usuarios pueden usar.
USE MIBANCO INDEX MIBANCO ALIAS MIBANCO SHARED NIL

//-> Solo un usuario puede usar.
USE MIBANCO INDEX MIBANCO ALIAS MIBANCO EXCLUSIVE NIL

Best regards, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7859
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Postby karinha » Wed Mar 12, 2008 5:41 pm

MIRA TANBIEN, SE ÉS WINDOWS XP Ó WINDOWS SERVER, MIRA SE LAS PERMICIONES ESTAN PARA USAR LOS BANCOS DE DATOS.

Saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7859
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Postby JoseLuis » Wed Mar 12, 2008 7:03 pm

Hola

Está todo compartido, y como he dicho, el programa es el mismo para todos, y todos los puestos pueden compartir excepto el servidor.

El servidor tiene windows server 2003.

Otra cosa que se me había olvidado dedir, es que si accedo desde terminal server, también puedo funcionar perfectamente, aunque haya otros usuarios conectados. El problema surge exclusivamente cuando ejecuto el programa desde el propio servidor.

He leido en el foro que sería más interesante que todos los usuarios ejecuten el mismo exe con un acceso directo al servidor, en lugar de lo que estoy haciendo, (cada uno con su exe, y con un ini que le indica la ruta)

Sería ésto más rapido?

Gracias

Jose Luis
JoseLuis
 
Posts: 427
Joined: Thu Oct 19, 2006 12:28 pm
Location: Toledo

Postby karinha » Wed Mar 12, 2008 8:28 pm

José, solo és indicado usar un .EXE en cada TERMINAL, para trabajos OFF LINE.

Entonces, é mui interesante que tenga el .EXE solo en el SERVIDOR, con todas los permissos del windows server activos.

Se los otros usuarios abren el banco de datos, el servidor tanbien tiene que abrir.

En contrario és porque las permissos no estan activas.

Entra en contacto con tu administrador de red.

Desculpe mi portunhol.

Saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7859
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Postby Lautaro » Wed Mar 12, 2008 10:34 pm

Jose Luis,

Marca el ejecutable como de solo lectura, creo que es eso.


Atte.,

Lautaro Moreira
User avatar
Lautaro
 
Posts: 322
Joined: Fri Oct 07, 2005 2:44 pm
Location: Osorno, Chile

Postby JoseLuis » Thu Mar 13, 2008 1:01 pm

He probado lo que me dices y nada, sigue igual

Acabo de reconfigurar toda la aplicación, para que utilicen todos los usarios el mismo exe del servidor, y obtengo el mismo resultado que si los usuarios lo ejecutan en su pc, osea que todos pueden trabajar sin problemas compartiendo datos, pero si intento ponerme en el servidor, no me deja, tengo que esperar a que salgan todos de la aplicacion.

Saludos

Jose Luis
JoseLuis
 
Posts: 427
Joined: Thu Oct 19, 2006 12:28 pm
Location: Toledo

Postby karinha » Thu Mar 13, 2008 2:43 pm

José, cual és la mensageria de errores?
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7859
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Postby JoseLuis » Fri Mar 14, 2008 7:27 am

Puede haber dos tipos de errores, y no localizo el momento de uno u otro.

1.- Simplemente se cierra la aplicación.

2.- Error description: Error BASE/1002 Alias does not exist: PROVE

El alias evidentemente existe, y esta abierto en modo shared (compartido)

dbUseArea(.T.,,"PROVE","PROVE",.T.)

Saludos

Jose Luis
JoseLuis
 
Posts: 427
Joined: Thu Oct 19, 2006 12:28 pm
Location: Toledo

Postby Carles » Fri Mar 14, 2008 7:56 am

JoseLuis,

Por partes.

1.- Hay un simple exe q:

Code: Select all  Expand view  RUN
FUNCTION Main()

   dbUseArea(.T.,,"PROVE","PROVE",.T.)

   MsgInfo( Alias() )

RETU NIL


y ejecutalo desde el server

Si funciona, q es lo q tendria de ser, pon el msginfo dentro del programa detras de donde abres la tabla, a ver, y continuamos...

2.- La aplicacion es siempre mejor q este en el cliente
Salutacions, saludos, regards

"...programar es fácil, hacer programas es difícil..."

UT Page -> https://carles9000.github.io/
Forum UT -> https://discord.gg/bq8a9yGMWh
Skype -> https://join.skype.com/cnzQg3Kr1dnk
User avatar
Carles
 
Posts: 1141
Joined: Fri Feb 10, 2006 2:34 pm
Location: Barcelona

Postby mmercado » Fri Mar 14, 2008 8:37 am

Hola José Luis:

Revisa la línea FILES=nnn en el archivo CONFIG.NT y aumenta el valor nnn

Saludos

Manuel Mercado
User avatar
mmercado
 
Posts: 782
Joined: Wed Dec 19, 2007 7:50 am
Location: Salamanca, Gto., México

Postby JoseLuis » Fri Mar 14, 2008 11:34 am

Manuel, he subido los files al doble, y nada sigue igual
Carles, en el msginfo no me muestra nada, me aparece en blanco.

Me sale el mismo mensaje que no encuentra el alias. Si vuelvo a ejecutar el exe, quizá a la 5ª o 6ª vez entra, lo raro para mi, es que en los demás ordenadores, la actividad es totalmente normal.

Saludos

Jose Luis
JoseLuis
 
Posts: 427
Joined: Thu Oct 19, 2006 12:28 pm
Location: Toledo

Postby JoseLuis » Fri Mar 14, 2008 11:36 am

Creo que me voy a rendir

Si están todos los puestos ocupados, en lugar de que utilice alguien el servidor, les diré que se esperen a que se quede alguno libre, y el servidor intocable.

Saludos

Jose Luis
JoseLuis
 
Posts: 427
Joined: Thu Oct 19, 2006 12:28 pm
Location: Toledo

Next

Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Antonio Linares and 51 guests