<%@ Import Namespace="System.Data.Oledb" %>
<%@ Import Namespace="System.Data" %>
<HTML>
<script language="VB" runat="server">
Dim miSqlConexion As OleDbConnection
Public CodEstado As Hashtable
Sub Page_Load(s As Object, e As EventArgs)
miSqlConexion = New OleDbConnection("Provider=Microsoft.JET.OLEDB.4.0; Data Source=C:\Inetpub\wwwroot\BDS\aspgrid.mdb")
If Not (IsPostBack)
VisualizarDatos()
DataGrid1.DataBind()
End If
CodEstado = New Hashtable()
CodEstado("CA") = 0
CodEstado("IN") = 1
CodEstado("KS") = 2
CodEstado("MD") = 3
CodEstado("MI") = 4
CodEstado("OR") = 5
CodEstado("TN") = 6
CodEstado("UT") = 7
End Sub
Public Function BuscarCodEstado(NombreEstado As String) As Integer
If CodEstado(NombreEstado) <> Nothing
Return CInt(CodEstado(NombreEstado))
Else
Return 0
End If
End Function
Sub DataGridEdit(s As Object, e As DataGridCommandEventArgs)
DataGrid1.EditItemIndex = CInt(e.Item.ItemIndex)
VisualizarDatos()
DataGrid1.DataBind()
End Sub
Sub DataGridCancel(s As Object, e As DataGridCommandEventArgs)
DataGrid1.EditItemIndex = -1
VisualizarDatos()
DataGrid1.DataBind()
End Sub
Sub DataGridUpdate(s As Object, e As DataGridCommandEventArgs)
miSqlConexion = New OleDbConnection("Provider=Microsoft.JET.OLEDB.4.0; Data Source=C:\Inetpub\wwwroot\BDS\aspgrid.mdb")
Dim miDataSet As DataSet
Dim miSqlCommand As OleDbCommand
Dim miDAdapter As OleDbDataAdapter
'Dim SqlActualizar As String = "UPDATE Authors SET au_lname = @Apellidos, au_fname = @Nombre, phone = @Telefono, address = @Direccion, city = @Ciudad, state = @Estado, zip = @CodPostal where au_id = @Id"
'miDAdapter.UpdateCommand = new OleDbCommand("UPDATE Authors SET au_lname = Apellidos, au_fname = Nombre, phone = @Telefono, address = @Direccion, city = @Ciudad, state = @Estado, zip = @CodPostal where au_id = @Id" , miSqlConexion)
miSqlCommand = New OleDbCommand("UPDATE Authors SET au_lname = @Apellidos, au_fname = @Nombre, phone = @Telefono, city = @Ciudad where au_id = @Id", miSqlConexion)
miSqlCommand.Parameters.Add(New OleDbParameter("@Id", OleDbType.VarChar, 11))
miSqlCommand.Parameters.Add(New OleDbParameter("@Apellidos", OleDbType.VarWChar, 40))
miSqlCommand.Parameters.Add(New OleDbParameter("@Nombre", OleDbType.VarWChar, 20))
miSqlCommand.Parameters.Add(New OleDbParameter("@Telefono", OleDbType.VarWChar, 12))
miSqlCommand.Parameters.Add(New OleDbParameter("@Ciudad", OleDbType.VarWChar, 20))
miSqlCommand.Parameters[1].value=((TextBox1)e.Item.Cells.Controls[0].text
miSqlCommand.Parameters[2].value=((TextBox1)e.Item.Cells.Controls[0].text
miSqlCommand.Parameters[3].value=((TextBox1)e.Item.Cells.Controls[0].text
miSqlCommand.Parameters("@Id").Value = DataGrid1.DataKeys(CInt(e.Item.ItemIndex))
' TextBox2.Text= miSqlCommand.Parameters("@Id").value
' miSqlCommand = New OleDbCommand("UPDATE Authors SET au_lname = @Apellidos, au_fname = @Nombre, phone = @Telefono, city = @Ciudad where au_id = @Id", miSqlConexion)
'Dim Cols As String() = {"Apellidos","Nombre","Telefono","Ciudad"}
'Dim I As Integer
'For I = 0 To 3
'Dim TextBox1 As TextBox
'TextBox1 = e.Item.FindControl("edit_" & Cols(I))
'Dim ColValue As String = TextBox1.Text
'If I<3 And ColValue = ""
'Mensaje.Text = "ERROR: Valores incorrectos"
'Return
'End If
' miSqlCommand.Parameters("@" & Cols(I)).Value = Server.HtmlEncode(ColValue)
'Next
'Dim DropDownList1 As DropDownList'333333333
'DropDownList1 = e.Item.FindControl("edit_Estado")
'miSqlCommand.Parameters("@Estado").Value = DropDownList1.SelectedItem.ToString()'333333333333 333
Dim CheckBox1 As CheckBox
CheckBox1 = e.Item.FindControl("edit_Contrato")
'If CheckBox1.Checked = true'33333
' miSqlCommand.Parameters("@Contrato").Value = "1"
' Else
' miSqlCommand.Parameters("@Contrato").Value = "0"
'End If'33333
miSqlCommand.Connection.Open()
Try
miSqlConexion.open()
miSqlCommand.ExecuteNonQuery()
miSqlConexion.close()
' Mensaje.Text="<b>actualizado</b><br>" '& SqlActualizar
DataGrid1.EditItemIndex = -1
'Catch Exp As OleDbException
'If Exp.Number = 2627
' Response.Write("Descripción del error : " & exp.Message)
'Mensaje.Text = "ERROR: Registro existente"
'Else
'Mensaje.Text = "ERROR: No se puede actualizar el registro"
'End If
' Finally
' DataGrid1.DataBind()
End Try
miSqlCommand.Connection.Close()
' VisualizarDatos()
' DataGrid1.DataBind()
End Sub
Sub DataGridItem(s As Object, e As DataGridItemEventArgs)
If (e.Item.ItemType = ListItemType.EditItem) Then
Dim n As Integer
For n = 0 To e.Item.Controls.Count-1
Try
If (e.Item.Controls(n).Controls(1).GetType().ToString () = "System.Web.UI.WebControls.TextBox") Then
Dim tb As TextBox
tb = e.Item.Controls(n).Controls(1)
tb.Text = Server.HtmlDecode(tb.Text)
End If
Catch
End Try
Next
End If
End Sub
Sub VisualizarDatos()
Dim miDataSet As DataSet
Dim miSqlCommand As OleDbDataAdapter
miSqlCommand = new OleDbDataAdapter("select au_id,au_lname, au_fname, phone, city from Authors", miSqlConexion)
miDataSet = new DataSet()
miSqlCommand.Fill(miDataSet, "Authors")
DataGrid1.DataSource=miDataSet.Tables("Authors").D efaultView
if not IsPostBack then
DataGrid1.DataBind()
end if
miSqlConexion.close()
End Sub
</script>
<body>
<form runat="server" ID="Form1">
<h3><font face="Verdana">Actualizar Datos en una base de datos SQL</font></h3>
<ASP:DataGrid id="DataGrid1" runat="server" Width="800px" BackColor="White" BorderColor="#CC9966" CellPadding="4" Font-Name="Verdana" Font-Size="8pt" HeaderStyle-BackColor="#aaaadd" OnEditCommand="DataGridEdit" OnCancelCommand="DataGridCancel" OnUpdateCommand="DataGridUpdate" DataKeyField="au_id" AutoGenerateColumns="False" OnItemDataBound="DataGridItem" BorderStyle="None" BorderWidth="1px" Font-Names="Verdana">
<FooterStyle ForeColor="#330099" BackColor="#FFFFCC"></FooterStyle>
<HeaderStyle Font-Bold="True" ForeColor="#FFFFCC" BackColor="#990000"></HeaderStyle>
<PagerStyle HorizontalAlign="Center" ForeColor="#330099" BackColor="#FFFFCC"></PagerStyle>
<SelectedItemStyle Font-Bold="True" ForeColor="#663399" BackColor="#FFCC66"></SelectedItemStyle>
<ItemStyle ForeColor="#330099" BackColor="White"></ItemStyle>
<Columns>
<asp:EditCommandColumn ButtonType="LinkButton" UpdateText="Update" CancelText="Cancel" EditText="Edit">
<ItemStyle Wrap="False"></ItemStyle>
</asp:EditCommandColumn>
<asp:BoundColumn DataField="au_id" SortExpression="au_id" ReadOnly="True" HeaderText="au_id">
<ItemStyle Wrap="False"></ItemStyle>
</asp:BoundColumn>
<asp:TemplateColumn SortExpression="au_lname" HeaderText="au_lname">
<ItemTemplate>
<asp:Label runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "au_lname") %>' ID="Label1"/>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox runat="server" id="edit_Apellidos" Text='<%# DataBinder.Eval(Container.DataItem, "au_lname") %>'/>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn SortExpression="au_fname" HeaderText="au_fname">
<ItemTemplate>
<asp:Label runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "au_fname") %>' ID="Label2"/>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox runat="server" id="edit_Nombre" Text='<%# DataBinder.Eval(Container.DataItem, "au_fname") %>'/>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn SortExpression="phone" HeaderText="phone">
<ItemTemplate>
<asp:Label runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "phone") %>' ID="Label3"/>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox runat="server" id="edit_Telefono" Text='<%# DataBinder.Eval(Container.DataItem, "phone") %>'/>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn SortExpression="city" HeaderText="city">
<ItemTemplate>
<asp:Label runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "city") %>' ID="Label5"/>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox runat="server" id="edit_Ciudad" Text='<%# DataBinder.Eval(Container.DataItem, "city") %>'/>
</EditItemTemplate>
</asp:TemplateColumn>
</Columns>
</ASP:DataGrid>
<asp:Label id="Mensaje" runat="server">Label</asp:Label>
<asp:Label id="Label9" runat="server">Label</asp:Label>
<asp:TextBox id="TextBox1" runat="server"></asp:TextBox>
<asp:TextBox id="TextBox2" runat="server"></asp:TextBox>
</form>
</body>
</HTML> |