Se pierde Conexión

Mis problema son los siguientes:
Se pierde la Conexión de una Estación de trabajo al grabar datos al Servidor de Base de Datos, me sales este Error “Connectivity error: (Microsoft)(ODBC SQL Server Driver) Error en el vínculo de comunicación”
Hay ocasiones que algunos datos graba y otros no en otras ocasiones sale el mensaje que si a grabado pero cuando nos fijamos en el Servidor no está lo que supuestamente sea grabado.
Mi servidor es una Pc normal una Core I7 con Windows Xp y SQL2000 Server.
Y las estaciones se conectan mediante ODBC de cada Pc (Panel de Control, Orígenes de datos, Etc).
Mi código de Grabación de VFP al Sql2000 es:
Xsql2 ="Insert Into Carga_Hor(Gen_Car, Fec_Car, Cic_Mat, Tip_Mat, Per_Aca, Pln_Est, Sem_Aca, Aul_Ast, Min_Adi, Tot_Sem, Nom_Asg, Cod_Asg, Dat_Doc,;
Cod_Doc, Hrs_Adi, Tot_Car, Hor_Lun, Hor_Mar, Hor_Mie, Hor_Jue, Hor_Vie, Hor_Sab, His_Car, Esc_Asg) Values ('"+Carga_Hor.Gen_Car+"','"+Carga_Hor.Fec_Car+"','"+Carga_Hor.Cic_Mat+"',;
'"+Carga_Hor.Tip_Mat+"','"+Carga_Hor.Per_Aca+"','"+Carga_Hor.Pln_Est+"','"+Carga_Hor.Sem_Aca+"','"+Carga_Hor.Aul_Ast+"','"+STR(Carga_Hor.Min_Adi)+"',;
'"+STR(Carga_Hor.Tot_Sem)+"','"+Carga_Hor.Nom_Asg+"','"+Carga_Hor.Cod_Asg+"','"+Carga_Hor.Dat_Doc+"',;
'"+Carga_Hor.Cod_Doc+"','"+STR(Carga_Hor.Hrs_Adi)+"','"+STR(Carga_Hor.Tot_Car)+"','"+Xlun+"','"+Xmar+"','"+Xmie+"','"+Xjue+"','"+Xvie+"','"+Xsab+"',;
'"+Xhistorial+"','"+Carga_Hor.Esc_Asg+"')"
IF Sqlexec(CnxAst,Xsql2)>0
Else
a=Aerror(Mat)
Messagebox(Mat(2), 55,'Error al Grabar')
ENDIF
Lo que también he notado que si el FireWall de Windows de mi Servidor esta desactivado recién se pueden conectar a este las estaciones de trabajo por que si esta activado no deja que se conecten.
Lo mismo tengo que hacer con el Firewall de mi Antivirus NOD32 5.0
Dime por que crees que tenga estos problemas y como puedo evitar tener lo FireWall desactivado por que se que es peligro para este servidor de Base de Datos que tengo.

1 Respuesta

Respuesta
1

Mi amigo es obviamente un problema de tu configuracion de servidor sobre todo con el tema del firewall (de lo cual no tengo mucho que decirte) y pues el codigo esta bien pero todo esta en la conexion, no te podria ayudar mas ya que como programador generalmente ya encontramos una red armada y totalmente funcional.

Una consulta mas estuve leyendo en internet y veo que utilizan Commind al final de una transacción y otros usan Begin Transacc.

El uso del commit es a nivel de la base de datos lo que hace es confirmar un insert o un update y tiene una transacción que deshace un insert o update que es el rollback, lo del begin transaction no tiene mayor relevancia lo único que te marca es el inicio de un bloque de comandos dentro de un store procedure

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas