Visual Basic - ayuda para insertar una fila a una bd access

Life is soft - evento anual de software empresarial
 
Vista:

ayuda para insertar una fila a una bd access

Publicado por edwar (3 intervenciones) el 28/02/2008 18:11:27
Hola, tengo un problema al momento de insertar los campos a una tabla en access, cuando ejecuto la aplicacion, en un boton de comando llamo al procedimiento insertar() y me sale el error:" que los tipos no coinciden". he estado tratando de ver el error al momento de enviar los datos pero nada.... alguien me podría ayudar. Gracias de antemano.
Aqui dejo el codigo del procedimento:
Private Sub insertar()
On Error GoTo salid:
Dim rs As ADODB.Recordset
Dim sql As String, orden As Integer, codunidad As String, tipo As String
Dim total As Double, almacen As String, detalle As String, referencia As String
Dim fecha As Date, fap As String, codprov As String
est = 1
codprov = txtCodigoProveedor.text
fap = txtFap.text
referencia = txtReferencia.text
detalle = txtDetalle.text
almacen = txtAlmacen.text
tipo = cmbOrden.text
codunidad = txtCodigoUnidad.text
orden = Val(txtOrden.text)
fecha = dtFecha.Value 'dtFecha.Value
total = Val(lblTotal.Caption)
If est = 1 Then
sql = "insert into [orden_compra](cod_orden_compra,codigo_unidad,tipo_orden,fecha,almacen,detalle,referencia,facturar,cod_proveedor,total) values(" + _
" '" + orden + " ','" + txtCodigoUnidad.text + "' , '" + cmbOrden.text + "','" + fecha + "' , '" + txtAlmacen.text + "' , '" + txtDetalle.text + "' , '" + txtReferencia.text + "' , '" + txtFap.text + "' , '" + txtCodigoProveedor.text + "' , '" + total + "')"
Set rs = mdlFunciones.ejecutarConsulta(sql)
Call mdlFunciones.mensajeOk("Se registró Correctamente la Orden de Compra!")
'Call cancelar
'Call listar
Else
Err.Description = "Debe Ingresar Todos Los Campos"
Call mdlFunciones.mensajeError("Al Grabar")
End If
Exit Sub
salid:
Call mdlFunciones.mensajeError("Al Grabar")
End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:ayuda para insertar una fila a una bd access

Publicado por fede (189 intervenciones) el 29/02/2008 14:59:23
fijate que formato son los campos de esa tabla porque si por ej el campo cod_orden_compra es de formato numerico ya tenes un error,
fijate y avisame si no lo solucionaste
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ayuda para insertar una fila a una bd access

Publicado por edwar (3 intervenciones) el 01/03/2008 00:17:55
si pe, el campo cod_orden_compra y el campo total son numericos, el campo fecha es datetime .
Yo he realizado la insercion asi, e tratado de cambiarle, pero no me funca.... si puedes ayudarme gracias...
saludos.

Dim rs As ADODB.Recordset
Dim sql As String, , orden As Integer
dim total as double, fecha date
fecha = dtFecha.Value
total = Val(lblTotal.Caption)
sql = "insert into [orden_compra](cod_orden_compra,codigo_unidad,tipo_orden,fecha,almacen,detalle,referencia,facturar,cod_proveedor,total) values(" + _
" '" + orden + " ','" + txtCodigoUnidad.text + "' , '" + cmbOrden.text + "','" + fecha + "' , '" + txtAlmacen.text + "' , '" + txtDetalle.text + "' , '" + txtReferencia.text + "' , '" + txtFap.text + "' , '" + txtCodigoProveedor.text + "' , '" + total + "')"
Set rs = mdlFunciones.ejecutarConsulta(sql)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ayuda para insertar una fila a una bd access

Publicado por fede (189 intervenciones) el 01/03/2008 14:45:04
lo que pasa es q vos estas utilizando apostrofe y comillas para datos numericos osea vos pones ' '" + orden + " ' y los datos numericos se insertan asi " + orden + "
solo comillas , se entiende. si esos campos nada + son numericos cod_orden_compra y total proba asi entonces
sql = "insert into [orden_compra](cod_orden_compra,codigo_unidad,tipo_orden,fecha,almacen,detalle,referencia,facturar,cod_proveedor,total) values(" +" orden + ",'" + txtCodigoUnidad.text + "' , '" + cmbOrden.text + "','" + fecha + "' , '" + txtAlmacen.text + "' , '" + txtDetalle.text + "' , '" + txtReferencia.text + "' , '" + txtFap.text + "' , '" + txtCodigoProveedor.text + "' , " + total + ")"
Set rs = mdlFunciones.ejecutarConsulta(sql)
y si tenes problemas avisa que no hay problema,saludos fede
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar