Foros del Web » Programación para mayores de 30 ;) » .NET »

Insert a BD VFP 9.0 Desde VB.NET 2005

Estas en el tema de Insert a BD VFP 9.0 Desde VB.NET 2005 en el foro de .NET en Foros del Web. Compañeros Buenos Dias: Mi inquietud es la siguiente desde mi aplicación debo realizar algunos registros a una BD de FoxPro 9.0, las funciones de conexion ...
  #1 (permalink)  
Antiguo 14/10/2009, 10:10
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Insert a BD VFP 9.0 Desde VB.NET 2005

Compañeros Buenos Dias:
Mi inquietud es la siguiente desde mi aplicación debo realizar algunos registros a una BD de FoxPro 9.0, las funciones de conexion y registro que estoy utilizando son las siguientes:

Código VB:
Ver original
  1. Public Function ConexionFoxOledb() As Boolean
  2.         Dim sCFox As String
  3.         sCFox = "Provider=vfpoledb;Data Source=D:\Sipartmo\Contable\DATA\CONTABLE.DBC;Collating Sequence=machine;" & CnFox.State
  4.         Try
  5.             CnFox.CommandTimeout = 1000
  6.             CnFox.Open(sCFox)
  7.             Return True
  8.         Catch ex As Exception
  9.             MessageBox.Show("Se ha producido un error al realizar la Conexión con la Base De Datos de FOXPRO - OLEDB:" & vbCrLf & ex.Message)
  10.             Return False
  11.             Exit Function
  12.         End Try
  13.     End Function
  14.  
  15. 'Insert
  16.  Public Function ExecuteFox(ByVal Fconsulta As String) As String
  17.         Dim Estado As Integer
  18.         Try
  19.             CnFox.Execute(Fconsulta)
  20.             Estado = 1
  21.             Return True
  22.         Catch ex As Exception
  23.             MessageBox.Show("Se Ha Producido Un Error Al Ejecutar La Consulta:" & vbCrLf & ex.Message)
  24.             Estado = 0
  25.             Return False
  26.             Exit Function
  27.         End Try
  28.         Return Estado
  29.     End Function

y Lo ejecuto de esta forma:
Código VB:
Ver original
  1. rConsulta = "INSERT INTO salarti VALUES (" & CStr(MaximoSalida) & ",'" & Registro("Fecha_sal") & "'," & CStr(Registro("ValorTotal")) & ",'" & Me.sreferencia.Text & "'," & CStr(Me.scliente.Text) & ",'1','" & UserAct & "'," & CStr(Me.cmbtsalidas.SelectedIndex) & ",'','','')"
  2. If ExecuteFox(rConsulta) > 0 Then
  3.      MsgBox("INSERT OK")
  4. End If
Obviamente invoco la función de Conexion Con FoxPro. Para extraer los datos no hay ningún problema los puedo visualizar bien, pero a la hora de registrar datos no hace absolutamente nada, es mas no indica ningún mensaje de erro.

Les agradesco si me pueden colaborar al respecto, si estoy haciendo algo mal por favor me lo indican.


Saludos.
__________________
"SELECT * FROM Mujeres WHERE situacion NOT IN ('CASADAS','CON HIJOS','ATORMENTADAS','CUASI-ENNOVIADAS') AND personalidad <> 'INTENSA'"
  #2 (permalink)  
Antiguo 14/10/2009, 10:17
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Insert a BD VFP 9.0 Desde VB.NET 2005

has probado con executenonquery?
  #3 (permalink)  
Antiguo 14/10/2009, 10:22
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Respuesta: Insert a BD VFP 9.0 Desde VB.NET 2005

Pero el Objeto CnFox que utilizo no tiene esta propiedad.



Saludos y Gracias Por Tu respuesta.
__________________
"SELECT * FROM Mujeres WHERE situacion NOT IN ('CASADAS','CON HIJOS','ATORMENTADAS','CUASI-ENNOVIADAS') AND personalidad <> 'INTENSA'"
  #4 (permalink)  
Antiguo 15/10/2009, 14:36
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Respuesta: Insert a BD VFP 9.0 Desde VB.NET 2005

Buenas tardes compañeros al fin pude solucionarlo modificando las funciones de la siguiente manera:

Código VB:
Ver original
  1. 'Funcion De Conexion Con FOX - ODBC
  2.    Public Function ConexionFoxOdbc(ByRef FOXdbConnI As OdbcConnection) As Boolean
  3.         Dim FOXsConn As String
  4.         FOXsConn = "Driver={Microsoft Visual FoxPro Driver};SourceType=DBC;SourceDB=D:\Sipartmo\Contable\DATA\CONTABLE.DBC;Exclusive=No;NULL=NO;Collate=Machine;BACKGROUNDFETCH=NO;DELETED=YES"
  5.         Try
  6.             FOXdbConnI = New Odbc.OdbcConnection(FOXsConn)
  7.             FOXdbConnI.Open()
  8.             Return True
  9.         Catch ex As Exception
  10.             MessageBox.Show("Se ha producido un error al realizar la Conexión con la Base De Datos de FOXPRO - ODBC:" & vbCrLf & ex.Message)
  11.             Return False
  12.             Exit Function
  13.         End Try
  14.     End Function
  15.  
  16.  
  17.   'Función Para Realizar Insert En FoxPro
  18.    Public Function ExecuteFox(ByVal cSQL As String) As Boolean
  19.         Dim Estado As Boolean
  20.         If cSQL <> vbNullString Then
  21.             Comando = New Odbc.OdbcCommand(cSQL, FOXdbConn)
  22.             Try
  23.                 Comando.ExecuteNonQuery()
  24.                 Estado = True
  25.             Catch ex As Exception
  26.                 MessageBox.Show("Error Al Ejecutar La Consulta" & vbCrLf & ex.Message)
  27.                 Estado = False
  28.             End Try
  29.         End If
  30.         Return Estado
  31.     End Function

Saludos.
__________________
"SELECT * FROM Mujeres WHERE situacion NOT IN ('CASADAS','CON HIJOS','ATORMENTADAS','CUASI-ENNOVIADAS') AND personalidad <> 'INTENSA'"
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:28.