ASP.NET - Update con SQLDataSource

 
Vista:

Update con SQLDataSource

Publicado por Daniel (62 intervenciones) el 31/07/2007 19:34:42
Hola a todos,

tengo un sqldatasource conectado a un gridview. En el sqldatasource tengo configurada una sentencia sql UPDATE para actualizar mi tabla de ventas.
todo esta ok, el edit esta habilitado en el gridview, el datakeyname esta configurado en el gridview (dataskeyname = idVenta), pero el problema es que luego de realizado los cambios en el modo de edicion de la fila, al presionar el boton de Update no realiza ningun cambio y vuelve a su estado normal.

alguien me ayude con esto q estoy desesperado

aqui algunos datos

mi sentencia update:
UPDATE TVenta SET nrItemsVendidos = @cantidad, fechaContrato=@fechaVenta, idOperacion = @operacionId, ventaActiva = @estado WHERE idVenta = @ventaid

mi pagina (controles gridview y sql datasource)

<asp:GridView ID="GridView1" runat="server" DataSourceID="VentasDataSource" AutoGenerateColumns="False" Font-Names="Tahoma" Font-Size="Small" DataKeyNames="idVenta">
<Columns>
<asp:CommandField EditText="Modificar" ShowEditButton="True" />
<asp:BoundField DataField="idVenta" HeaderText="Código de Venta" InsertVisible="False" ReadOnly="True" SortExpression="idVenta" >
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:BoundField DataField="Nombre" HeaderText="Nombre" ReadOnly="True" SortExpression="Nombre" >
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:TemplateField HeaderText="Fecha de Venta" SortExpression="FechaVenta">
<EditItemTemplate>
<asp:TextBox ID="TextBox3" runat="server" Font-Names="Tahoma" Text='<%# Bind("FechaVenta") %>'
Width="111px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TextBox3"
ErrorMessage="Debe indicar una fecha">*</asp:RequiredFieldValidator>
<asp:CompareValidator ID="CompareValidator3" runat="server" ControlToValidate="TextBox3"
ErrorMessage="Fecha inválida" Operator="DataTypeCheck" Type="Date">*</asp:CompareValidator>
</EditItemTemplate>
<ItemStyle HorizontalAlign="Center" />
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Bind("FechaVenta") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="nomEmpresa" HeaderText="Cliente" SortExpression="nomEmpresa" ReadOnly="True" >
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:BoundField DataField="nomPaquete" HeaderText="Paquete" SortExpression="nomPaquete" ReadOnly="True" >
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:BoundField DataField="prodDescripcion" HeaderText="Producto" SortExpression="prodDescripcion" ReadOnly="True" >
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:BoundField DataField="descModalidad" HeaderText="Modalidad" SortExpression="descModalidad" ReadOnly="True" >
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:BoundField DataField="formaAdquisicion" HeaderText="Adquisicion" SortExpression="formaAdquisicion" ReadOnly="True" >
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:BoundField DataField="tiempoContrato" HeaderText="Tiempo" SortExpression="tiempoContrato" ReadOnly="True" >
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:TemplateField HeaderText="Operacion" SortExpression="tipoTransaccion">
<EditItemTemplate>
<asp:DropDownList ID="DropDownList1" runat="server" DataSourceID="OperacionDataSource"
DataTextField="tipoTransaccion" DataValueField="idOperacion" Font-Names="Tahoma"
SelectedValue='<%# Bind("idOperacion") %>'>
</asp:DropDownList><asp:SqlDataSource ID="OperacionDataSource" runat="server" ConnectionString="<%$ ConnectionStrings:GESNEGPRODConnectionString10 %>"
SelectCommand="Select idOperacion, tipoTransaccion From TOperacionComercial"></asp:SqlDataSource>
</EditItemTemplate>
<ItemStyle HorizontalAlign="Center" />
<ItemTemplate>
<asp:Label ID="Label2" runat="server" Text='<%# Bind("tipoTransaccion") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Cantidad" SortExpression="nrItemsVendidos">
<EditItemTemplate>
<asp:TextBox ID="TextBox2" runat="server" Font-Names="Tahoma" Text='<%# Bind("nrItemsVendidos") %>'
Width="34px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="TextBox2"
ErrorMessage="Debe ingresar una cantidad">*</asp:RequiredFieldValidator>
<asp:CompareValidator ID="CompareValidator4" runat="server" ControlToValidate="TextBox2"
ErrorMessage="Fecha inválida" Operator="DataTypeCheck" Type="Integer">*</asp:CompareValidator>
</EditItemTemplate>
<ItemStyle HorizontalAlign="Center" />
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# Bind("nrItemsVendidos") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estado" SortExpression="ventaActiva">
<EditItemTemplate>
<asp:DropDownList ID="DropDownList2" runat="server" Font-Names="Tahoma" SelectedValue='<%# Bind("ventaActiva") %>'>
<asp:ListItem Value="True">ACTIVA</asp:ListItem>
<asp:ListItem Value="False">CANCELADA</asp:ListItem>
</asp:DropDownList>
</EditItemTemplate>
<ItemStyle HorizontalAlign="Center" />
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" Checked='<%# Bind("ventaActiva") %>'
Enabled="false" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<AlternatingRowStyle BackColor="#E0E0E0" />
</asp:GridView>
   
<asp:SqlDataSource ID="VentasDataSource" runat="server" ConnectionString="<%$ ConnectionStrings:GESNEGPRODConnectionString10 %>"
SelectCommand="sp_consultaVentasEjecutivo" SelectCommandType="StoredProcedure" UpdateCommand="UPDATE TVenta SET nrItemsVendidos = @cantidad, fechaContrato=@fechaVenta, idOperacion = @operacionId, ventaActiva = @estado WHERE idVenta = @ventaid">
<SelectParameters>
<asp:ControlParameter ControlID="TextBox1" DefaultValue="" Name="fechaIni" PropertyName="Text"
Type="DateTime" />
<asp:ControlParameter ControlID="TextBox2" Name="fechaFin" PropertyName="Text" Type="DateTime" />
<asp:ControlParameter ControlID="Label1" DefaultValue="52" Name="idEjecutivo" PropertyName="Text"
Type="Int32" />
</SelectParameters>
<UpdateParameters>
<asp:Parameter Name="cantidad" />
<asp:Parameter Name="fechaVenta" />
<asp:Parameter Name="operacionId" />
<asp:Parameter Name="estado" />
<asp:Parameter Name="ventaid" />
</UpdateParameters>
</asp:SqlDataSource>
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