Buenas, paso a contar mi problema, estoy haciendo un proyecto con visual studio 2010 en asp.net y vb. Bueno tengo y gridview y un formview que depende de la seleccion del gridview. Todo funciona barbaro, pero al momento de actualizar con el formview, la base de datos responde como que se actualizo corresctamente pero no se reflejan los cambios en el formview. Luego de hacer varias puebas con el procedimiento almacenado, pude notar que al queres actualizar mas de 2 tablas a la vez en cuando me sucede esto, en cambio al hacerlo con una tabla a la vez los cambios se realizan instantaneamente. Lo extraño del asunto es que si pruebo el sp desde el sql server 2005 funciona de lujo, pero cuando lo llamo desde el visual funciona como deberia. alguna sugerencia?
paso el sp
create procedure sp_ActualizarPersona
@Pers_Trato nvarchar(50),
@Pers_Apellido nvarchar(50),
@Pers_Nombre nvarchar(50),
@Pers_TelCelular nvarchar(50),
@Pers_TelParticular nvarchar(50),
@IdDireccionPostal int,
@Pers_MailPersonal nvarchar(75),
@Pers_Observacion nvarchar(255),
@Pers_FechaDeNacimiento datetime,
@Pers_Ip nvarchar(50),
@Pers_TieneAccess nvarchar(50),
@Pers_Sexo varchar(1),
@Pers_Foto varchar(max),
@IdPersona int,
@IdCargo int,
@IdJefe int,
@IdOrganismo int,
@PersHisto_FechaComienzo datetime,
@PersHisto_FechaFin datetime,
@PersHisto_TelOficina nvarchar(50),
@PersHisto_TelFax nvarchar(50),
@PersHisto_Piso nvarchar(25),
@PersHisto_Oficina nvarchar(25),
@PersHisto_MailLaboral nvarchar(75),
@PersHisto_MailLaboral2 nvarchar(75),
@IdPersonaHisto int
as
Update Personas
Set Pers_Trato=@Pers_Trato, Pers_Apellido=@Pers_Apellido, Pers_Nombre=@Pers_Nombre,
Pers_TelCelular=@Pers_TelCelular, Pers_TelParticular=@Pers_TelParticular,
IdDireccionPostal=@IdDireccionPostal, Pers_MailPersonal=@Pers_MailPersonal,
Pers_Observacion=@Pers_Observacion, Pers_FechaDeNacimiento=@Pers_FechaDeNacimiento,
Pers_Ip=@Pers_Ip, Pers_TieneAccess=@Pers_TieneAccess, Pers_Sexo=@Pers_Sexo, Pers_Foto=@Pers_Foto
Where IdPersona=@IdPersona
Update PersonasHisto
Set IdCargo=@IdCargo, IdJefe=@IdJefe, IdOrganismo=@IdOrganismo, PersHisto_FechaComienzo=@PersHisto_FechaComienzo,
PersHisto_FechaFin=@PersHisto_FechaFin, PersHisto_TelOficina=@PersHisto_TelOficina, PersHisto_TelFax=@PersHisto_TelFax,
PersHisto_Piso=@PersHisto_Piso, PersHisto_Oficina=@PersHisto_Oficina, PersHisto_MailLaboral=@PersHisto_MailLaboral,
PersHisto_MailLaboral2=@PersHisto_MailLaboral2
Where IdPersonaHisto=@IdPersonaHisto
Return
y parte del codigo por si les sirve de algo
<asp:SqlDataSource ID="SqlDataSourceDetalle" runat="server" ConnectionString="<%$ ConnectionStrings:DNPOIC_dbConnectionString %>"
SelectCommand="sp_SeleccionarPersonasDatosCompletos"
SelectCommandType="StoredProcedure" UpdateCommand="sp_ActualizarPersona" UpdateCommandType="StoredProcedure">
<SelectParameters>
<asp:ControlParameter ControlID="GridView1" Name="IdPersona" PropertyName="SelectedValue"
Type="Int32" />
</SelectParameters>
<UpdateParameters>
<asp:Parameter Name="Pers_Trato" Type="String" />
<asp:Parameter Name="Pers_Apellido" Type="String" />
<asp:Parameter Name="Pers_Nombre" Type="String" />
<asp:Parameter Name="Pers_TelCelular" Type="String" ConvertEmptyStringToNull="true" />
<asp:Parameter Name="Pers_TelParticular" Type="String" ConvertEmptyStringToNull="true" />
<asp:Parameter Name="IdDireccionPostal" Type="Int32" />
<asp:Parameter Name="Pers_MailPersonal" Type="String" ConvertEmptyStringToNull="true" />
<asp:Parameter Name="Pers_Observacion" Type="String" ConvertEmptyStringToNull="true" />
<asp:Parameter Name="Pers_FechaDeNacimiento" Type="DateTime" ConvertEmptyStringToNull="true" />
<asp:Parameter Name="Pers_Ip" Type="String" ConvertEmptyStringToNull="true" />
<asp:Parameter Name="Pers_TieneAccess" Type="String" ConvertEmptyStringToNull="true" />
<asp:Parameter Name="Pers_Sexo" Type="String" ConvertEmptyStringToNull="true" />
<asp:Parameter Name="Pers_Foto" Type="String" ConvertEmptyStringToNull="true" />
<asp:Parameter Name="IdPersona" Type="Int32" />
<asp:Parameter Name="IdCargo" Type="Int32" />
<asp:Parameter Name="IdJefe" Type="Int32" />
<asp:Parameter Name="IdOrganismo" Type="Int32" />
<asp:Parameter Name="PersHisto_FechaComienzo" Type="DateTime" ConvertEmptyStringToNull="true" />
<asp:Parameter Name="PersHisto_FechaFin" Type="DateTime" ConvertEmptyStringToNull="true" />
<asp:Parameter Name="PersHisto_TelOficina" Type="String" ConvertEmptyStringToNull="true" />
<asp:Parameter Name="PersHisto_TelFax" Type="String" ConvertEmptyStringToNull="true" />
<asp:Parameter Name="PersHisto_Piso" Type="String" ConvertEmptyStringToNull="true" />
<asp:Parameter Name="PersHisto_Oficina" Type="String" ConvertEmptyStringToNull="true" />
<asp:Parameter Name="PersHisto_MailLaboral" Type="String" ConvertEmptyStringToNull="true" />
<asp:Parameter Name="PersHisto_MailLaboral2" Type="String" ConvertEmptyStringToNull="true" />
<asp:Parameter Name="IdPersonaHisto" Type="Int32" />
</UpdateParameters>
</asp:SqlDataSource>
Espero puedan ayudarme, ya qu estoy trabado con esto hace tiempo y no encuentro solucion en google.
Saludos
Leer las respuestas