
22/09/2010, 15:18
|
| | Fecha de Ingreso: septiembre-2010
Mensajes: 4
Antigüedad: 14 años, 6 meses Puntos: 0 | |
Error al actualizar la fecha Hola a todos,
les comento, estoy haciendo un programa en vb. net 2008 el cual me graba los decretos en una base de datos sql, hasta ahi todo bien. Tengo un boton para actualizar una maskedtextbox mi problema es cuando quiero actualizar la fecha del maskedtextbox me arroja el siguiente error: la conversión del tipo de datos char a datetime produjo un valor datetime fuera de intervalo. Se terminó la instruccion.
el formato del maskedtextbox lo tengo en dd/MM/yyyy de las opciones del maskedtextbox que trae.
he aqui mi codigo
Código:
Imports System.Data
Imports System.Data.SqlClient
Public Class Decreto
Inherits System.Windows.Forms.Form
Private ooConexion As SqlConnection
Private oConexion As SqlConnection
Private oDataSet As DataSet
Private oDataRead As SqlDataReader
Private odrd As SqlDataReader
Private oDataAdapter As SqlDataAdapter
Function LimpiarDatos()
Me.TextBox1.Text = ""
Me.TextBox2.Text = ""
Me.TextBox3.Text = ""
Me.TextBox4.Text = ""
Me.TextBox5.Text = ""
Me.Fecha.Text = ""
Me.MaskedTextBox2.Text = ""
Me.MaskedTextBox1.Text = ""
Me.TextBox6.Text = ""
Me.TextBox7.Text = ""
End Function
Private Sub Decreto_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
oConexion = New SqlConnection
oConexion.ConnectionString = _
"Data Source=SISTEMAS; database=DOP; user id=administrador;password=napoleon"
oDataAdapter = New SqlDataAdapter
ooConexion = New SqlConnection
ooConexion.ConnectionString = _
"Data Source=SISTEMAS; database=DOP; user id=administrador;password=napoleon"
oDataAdapter = New SqlDataAdapter
Dim ocmdUpdate As New SqlCommand("update decreto set fecha_llegada = '" & MaskedTextBox1.Text & "'" & _
"where Decreto_OP= '" & TextBox3.Text & "'", ooConexion)
Dim ocmdInsercion As New SqlCommand("insert into Decreto" & _
"(UG,Des_Direccion,N_Doc_UG,Decreto_OP,Fecha_Decreto,Año,Materia,Fecha_Salida,Cod_DptoSalida,Dpto_Salida) values(@UG,@Des_Direccion,@N_Doc_UG,@Decreto_OP,@Fecha_Decreto,@Año,@Materia,@Fecha_Salida,@Cod_DptoSalida,@Dpto_Salida)", oConexion)
oDataAdapter = New SqlDataAdapter("select * from decreto", ooConexion)
Dim cb As SqlCommandBuilder = New SqlCommandBuilder(oDataAdapter)
oDataSet = New DataSet
oDataAdapter.Fill(oDataSet, "decreto")
Dim bn As Binding
bn = New Binding("text", oDataSet, "decreto.Fecha_Llegada")
Me.MaskedTextBox1.DataBindings.Add(bn)
bn = Nothing
Me.bmb = Me.BindingContext(oDataSet, "decreto")
oDataAdapter.InsertCommand = ocmdInsercion
oDataAdapter.InsertCommand.Parameters.Add _
(New SqlParameter("@UG", SqlDbType.Int))
oDataAdapter.InsertCommand.Parameters.Add _
(New SqlParameter("@Des_Direccion", SqlDbType.VarChar))
oDataAdapter.InsertCommand.Parameters.Add _
(New SqlParameter("@N_Doc_UG", SqlDbType.Int))
oDataAdapter.InsertCommand.Parameters.Add _
(New SqlParameter("@Decreto_OP", SqlDbType.Int))
oDataAdapter.InsertCommand.Parameters.Add _
(New SqlParameter("@Fecha_Decreto", SqlDbType.DateTime))
oDataAdapter.InsertCommand.Parameters.Add _
(New SqlParameter("@Año", SqlDbType.VarChar))
oDataAdapter.InsertCommand.Parameters.Add _
(New SqlParameter("@Materia", SqlDbType.VarChar))
oDataAdapter.InsertCommand.Parameters.Add _
(New SqlParameter("@Fecha_Salida", SqlDbType.DateTime))
oDataAdapter.InsertCommand.Parameters.Add _
(New SqlParameter("@Cod_DptoSalida", SqlDbType.Int))
oDataAdapter.InsertCommand.Parameters.Add _
(New SqlParameter("@Dpto_Salida", SqlDbType.VarChar))
oDataAdapter.UpdateCommand = ocmdUpdate
oDataAdapter.UpdateCommand.Parameters.Add _
(New SqlParameter("@Fecha_Llegada", SqlDbType.DateTime))
Dim oCmdConsulta As New SqlCommand("select * from Decreto", oConexion)
oDataAdapter.SelectCommand = oCmdConsulta
oDataSet = New DataSet
oConexion.Close()
ooConexion.Close()
End Sub
End Sub
Private Sub Grabar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Grabar.Click
Dim iResultado As Integer
oDataAdapter.InsertCommand.Parameters _
("@UG").Value = Me.TextBox1.Text
oDataAdapter.InsertCommand.Parameters _
("@Des_Direccion").Value = Me.TextBox4.Text
oDataAdapter.InsertCommand.Parameters _
("@N_Doc_UG").Value = Me.TextBox2.Text
oDataAdapter.InsertCommand.Parameters _
("@Decreto_OP").Value = Me.TextBox3.Text
oDataAdapter.InsertCommand.Parameters _
("@Fecha_Decreto").Value = Me.Fecha.Text
oDataAdapter.InsertCommand.Parameters _
("@Año").Value = SelecAño.Año
oDataAdapter.InsertCommand.Parameters _
("@Materia").Value = Me.TextBox5.Text
oDataAdapter.InsertCommand.Parameters _
("@Fecha_Salida").Value = Me.MaskedTextBox2.Text
oDataAdapter.InsertCommand.Parameters _
("@Cod_DptoSalida").Value = Me.TextBox6.Text
oDataAdapter.InsertCommand.Parameters _
("@Dpto_Salida").Value = Me.TextBox7.Text
oConexion.Open()
iResultado = oDataAdapter.InsertCommand.ExecuteNonQuery()
LimpiarDatos()
oConexion.Close()
MessageBox.Show("Datos Ingresados Correctamente:" & iResultado)
End Sub
Private Sub Limpiar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Limpiar.Click
LimpiarDatos()
End Sub
Private Sub Actualizar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Actualizar.Click
Dim iResultado As Integer
oDataAdapter.UpdateCommand.Parameters _
("@Fecha_Llegada").Value = Me.MaskedTextBox1.Text
ooConexion.Open()
iResultado = oDataAdapter.UpdateCommand.ExecuteNonQuery()
LimpiarDatos()
ooConexion.Close()
MessageBox.Show("Dato Actualizado Correctamente:" & iResultado)
End Sub
End Class
ojala me pudiesen ayudar que he buscado por internet y no encuentro la forma de hacerlo.
De antemano muchas gracias
Saludos
Jorge |