J'ai un soucis avec un gridview.
La source de ce gridview est un SQLDatasource dans lequel je définit le
Select, l'update et le delete.
Dans le select j'appel une vue qui me permet de faire les jointures avec les
tables de libéllé (pour les codes produits etc ..) je filtre avec un
parametre.
C'est OK
Dans le delete je précise non pas la vue, mais directement le table dans
laquelle je veux supprimer. Je précise dans le gridview le DATAKEYNAMES.
C'est OK (au passage, est-il possible de mettre un message de confirmation
avant la suppression ?)
Par contre pour l'update, quand je clique Sur Edit, il passe bien en mode
edition afin que je saisisse de nouvelles valeures, puis quand je clique sur
Update, il me remet les anciennes valeures dans la table. Pour etre sur
qu'il à bien fait un Update, j'ai mis un trigger sur ma table qui m'indique
la dernière date de mise à jour de la ligne. Il y à bien un update qui est
fait.
Avez vous une idée ? Ou mettre un point d'arrêt pour intercepté les
variables afin de voir leur valeur pendant l'execution ?
<asp:SqlDataSource ID="ds_lecture_resume" runat="server"
ConnectionString="<%$ ConnectionStrings:cs_LECTURE %>"
SelectCommand="SELECT TOP 10 * FROM [v_LECTURE_RESUME] WHERE
([ID_USER] = @ID_USER) ORDER BY [ID] DESC"
DeleteCommand="DELETE FROM [LECTURE] WHERE [ID] = @ID"
UpdateCommand="UPDATE [LECTURE] SET [NB_C] = @NB_C, [NB_P] =
@NB_P, [NB_S] = @NB_S WHERE [ID] = @ID" >
<SelectParameters>
<asp:SessionParameter Name="ID_USER" SessionField="user_id"
Type="Int32" />
</SelectParameters>
<DeleteParameters>
<asp:Parameter Name="ID" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="NB_C" Type="Int32" />
<asp:Parameter Name="NB_P" Type="Int32" />
<asp:Parameter Name="NB_S" Type="Int32" />
<asp:Parameter Name="ID" Type="Int32" />
</UpdateParameters>
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Daniel TIZON
C'est curieux, c'est comme si le Databind n'était pas fait au bon moment (trop tôt) ou si le cache était activé... or le DatatBind() est appelé automatiquement et le cache n'est pas activé par défaut... Pour voir ce qu'il se passe, tu peux commnencer par t'abonner aux événement Selecting et Updating du SqlDataSource qui te permettront via le 2ième argument de la procédure événementielle de lire la valeur des arguments passés dans l'objet command (avec e.Command.Parameters)
En espérant que çà t'aidera -- Daniel TIZON MCP - MCSD.NET - MCT
"" a écrit dans le message de news: %
Bonjour,
J'ai un soucis avec un gridview. La source de ce gridview est un SQLDatasource dans lequel je définit le Select, l'update et le delete.
Dans le select j'appel une vue qui me permet de faire les jointures avec les tables de libéllé (pour les codes produits etc ..) je filtre avec un parametre. C'est OK
Dans le delete je précise non pas la vue, mais directement le table dans laquelle je veux supprimer. Je précise dans le gridview le DATAKEYNAMES. C'est OK (au passage, est-il possible de mettre un message de confirmation avant la suppression ?)
Par contre pour l'update, quand je clique Sur Edit, il passe bien en mode edition afin que je saisisse de nouvelles valeures, puis quand je clique sur Update, il me remet les anciennes valeures dans la table. Pour etre sur qu'il à bien fait un Update, j'ai mis un trigger sur ma table qui m'indique la dernière date de mise à jour de la ligne. Il y à bien un update qui est fait.
Avez vous une idée ? Ou mettre un point d'arrêt pour intercepté les variables afin de voir leur valeur pendant l'execution ?
<asp:SqlDataSource ID="ds_lecture_resume" runat="server" ConnectionString="<%$ ConnectionStrings:cs_LECTURE %>" SelectCommand="SELECT TOP 10 * FROM [v_LECTURE_RESUME] WHERE ([ID_USER] = @ID_USER) ORDER BY [ID] DESC" DeleteCommand="DELETE FROM [LECTURE] WHERE [ID] = @ID" UpdateCommand="UPDATE [LECTURE] SET [NB_C] = @NB_C, [NB_P] = @NB_P, [NB_S] = @NB_S WHERE [ID] = @ID" > <SelectParameters> <asp:SessionParameter Name="ID_USER" SessionField="user_id" Type="Int32" /> </SelectParameters> <DeleteParameters> <asp:Parameter Name="ID" Type="Int32" /> </DeleteParameters> <UpdateParameters> <asp:Parameter Name="NB_C" Type="Int32" /> <asp:Parameter Name="NB_P" Type="Int32" /> <asp:Parameter Name="NB_S" Type="Int32" /> <asp:Parameter Name="ID" Type="Int32" /> </UpdateParameters>
</asp:SqlDataSource>
C'est curieux, c'est comme si le Databind n'était pas fait au bon moment
(trop tôt) ou si le cache était activé...
or le DatatBind() est appelé automatiquement et le cache n'est pas activé
par défaut...
Pour voir ce qu'il se passe, tu peux commnencer par t'abonner aux événement
Selecting et Updating du SqlDataSource qui te permettront via le 2ième
argument de la procédure événementielle de lire la valeur des arguments
passés dans l'objet command (avec e.Command.Parameters)
En espérant que çà t'aidera
--
Daniel TIZON
MCP - MCSD.NET - MCT
"Fr@ncky" <nobody@nobody.com> a écrit dans le message de news:
%23IBE4ziAGHA.356@TK2MSFTNGP12.phx.gbl...
Bonjour,
J'ai un soucis avec un gridview.
La source de ce gridview est un SQLDatasource dans lequel je définit le
Select, l'update et le delete.
Dans le select j'appel une vue qui me permet de faire les jointures avec
les tables de libéllé (pour les codes produits etc ..) je filtre avec un
parametre.
C'est OK
Dans le delete je précise non pas la vue, mais directement le table dans
laquelle je veux supprimer. Je précise dans le gridview le DATAKEYNAMES.
C'est OK (au passage, est-il possible de mettre un message de confirmation
avant la suppression ?)
Par contre pour l'update, quand je clique Sur Edit, il passe bien en mode
edition afin que je saisisse de nouvelles valeures, puis quand je clique
sur Update, il me remet les anciennes valeures dans la table. Pour etre
sur qu'il à bien fait un Update, j'ai mis un trigger sur ma table qui
m'indique la dernière date de mise à jour de la ligne. Il y à bien un
update qui est fait.
Avez vous une idée ? Ou mettre un point d'arrêt pour intercepté les
variables afin de voir leur valeur pendant l'execution ?
<asp:SqlDataSource ID="ds_lecture_resume" runat="server"
ConnectionString="<%$ ConnectionStrings:cs_LECTURE %>"
SelectCommand="SELECT TOP 10 * FROM [v_LECTURE_RESUME] WHERE
([ID_USER] = @ID_USER) ORDER BY [ID] DESC"
DeleteCommand="DELETE FROM [LECTURE] WHERE [ID] = @ID"
UpdateCommand="UPDATE [LECTURE] SET [NB_C] = @NB_C, [NB_P] =
@NB_P, [NB_S] = @NB_S WHERE [ID] = @ID" >
<SelectParameters>
<asp:SessionParameter Name="ID_USER" SessionField="user_id"
Type="Int32" />
</SelectParameters>
<DeleteParameters>
<asp:Parameter Name="ID" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="NB_C" Type="Int32" />
<asp:Parameter Name="NB_P" Type="Int32" />
<asp:Parameter Name="NB_S" Type="Int32" />
<asp:Parameter Name="ID" Type="Int32" />
</UpdateParameters>
C'est curieux, c'est comme si le Databind n'était pas fait au bon moment (trop tôt) ou si le cache était activé... or le DatatBind() est appelé automatiquement et le cache n'est pas activé par défaut... Pour voir ce qu'il se passe, tu peux commnencer par t'abonner aux événement Selecting et Updating du SqlDataSource qui te permettront via le 2ième argument de la procédure événementielle de lire la valeur des arguments passés dans l'objet command (avec e.Command.Parameters)
En espérant que çà t'aidera -- Daniel TIZON MCP - MCSD.NET - MCT
"" a écrit dans le message de news: %
Bonjour,
J'ai un soucis avec un gridview. La source de ce gridview est un SQLDatasource dans lequel je définit le Select, l'update et le delete.
Dans le select j'appel une vue qui me permet de faire les jointures avec les tables de libéllé (pour les codes produits etc ..) je filtre avec un parametre. C'est OK
Dans le delete je précise non pas la vue, mais directement le table dans laquelle je veux supprimer. Je précise dans le gridview le DATAKEYNAMES. C'est OK (au passage, est-il possible de mettre un message de confirmation avant la suppression ?)
Par contre pour l'update, quand je clique Sur Edit, il passe bien en mode edition afin que je saisisse de nouvelles valeures, puis quand je clique sur Update, il me remet les anciennes valeures dans la table. Pour etre sur qu'il à bien fait un Update, j'ai mis un trigger sur ma table qui m'indique la dernière date de mise à jour de la ligne. Il y à bien un update qui est fait.
Avez vous une idée ? Ou mettre un point d'arrêt pour intercepté les variables afin de voir leur valeur pendant l'execution ?
<asp:SqlDataSource ID="ds_lecture_resume" runat="server" ConnectionString="<%$ ConnectionStrings:cs_LECTURE %>" SelectCommand="SELECT TOP 10 * FROM [v_LECTURE_RESUME] WHERE ([ID_USER] = @ID_USER) ORDER BY [ID] DESC" DeleteCommand="DELETE FROM [LECTURE] WHERE [ID] = @ID" UpdateCommand="UPDATE [LECTURE] SET [NB_C] = @NB_C, [NB_P] = @NB_P, [NB_S] = @NB_S WHERE [ID] = @ID" > <SelectParameters> <asp:SessionParameter Name="ID_USER" SessionField="user_id" Type="Int32" /> </SelectParameters> <DeleteParameters> <asp:Parameter Name="ID" Type="Int32" /> </DeleteParameters> <UpdateParameters> <asp:Parameter Name="NB_C" Type="Int32" /> <asp:Parameter Name="NB_P" Type="Int32" /> <asp:Parameter Name="NB_S" Type="Int32" /> <asp:Parameter Name="ID" Type="Int32" /> </UpdateParameters>
</asp:SqlDataSource>
Fr
merci,
j'ai essayé.
J'ai surveiller les argument passé dans l'objet command à l'aide de la sub suivante en mettant un point d'arret sur le Dim. Les valeur qui sont passé sont toutes à Zero sauf pour le parametre @id de la clause where qui lui est bien passé.
Là, je ne sais plus ou cherché ! Protected Sub ds_lecture_resume_Updating(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.SqlDataSourceCommandEventArgs) Handles ds_lecture_resume.Updating
Dim val As Integer
For Each r As System.Data.Common.DbParameter In e.Command.Parameters
val = r.Value
Next
End Sub
"Daniel TIZON" a écrit dans le message de news:
C'est curieux, c'est comme si le Databind n'était pas fait au bon moment (trop tôt) ou si le cache était activé... or le DatatBind() est appelé automatiquement et le cache n'est pas activé par défaut... Pour voir ce qu'il se passe, tu peux commnencer par t'abonner aux événement Selecting et Updating du SqlDataSource qui te permettront via le 2ième argument de la procédure événementielle de lire la valeur des arguments passés dans l'objet command (avec e.Command.Parameters)
En espérant que çà t'aidera -- Daniel TIZON MCP - MCSD.NET - MCT
"" a écrit dans le message de news: %
Bonjour,
J'ai un soucis avec un gridview. La source de ce gridview est un SQLDatasource dans lequel je définit le Select, l'update et le delete.
Dans le select j'appel une vue qui me permet de faire les jointures avec les tables de libéllé (pour les codes produits etc ..) je filtre avec un parametre. C'est OK
Dans le delete je précise non pas la vue, mais directement le table dans laquelle je veux supprimer. Je précise dans le gridview le DATAKEYNAMES. C'est OK (au passage, est-il possible de mettre un message de confirmation avant la suppression ?)
Par contre pour l'update, quand je clique Sur Edit, il passe bien en mode edition afin que je saisisse de nouvelles valeures, puis quand je clique sur Update, il me remet les anciennes valeures dans la table. Pour etre sur qu'il à bien fait un Update, j'ai mis un trigger sur ma table qui m'indique la dernière date de mise à jour de la ligne. Il y à bien un update qui est fait.
Avez vous une idée ? Ou mettre un point d'arrêt pour intercepté les variables afin de voir leur valeur pendant l'execution ?
<asp:SqlDataSource ID="ds_lecture_resume" runat="server" ConnectionString="<%$ ConnectionStrings:cs_LECTURE %>" SelectCommand="SELECT TOP 10 * FROM [v_LECTURE_RESUME] WHERE ([ID_USER] = @ID_USER) ORDER BY [ID] DESC" DeleteCommand="DELETE FROM [LECTURE] WHERE [ID] = @ID" UpdateCommand="UPDATE [LECTURE] SET [NB_C] = @NB_C, [NB_P] = @NB_P, [NB_S] = @NB_S WHERE [ID] = @ID" > <SelectParameters> <asp:SessionParameter Name="ID_USER" SessionField="user_id" Type="Int32" /> </SelectParameters> <DeleteParameters> <asp:Parameter Name="ID" Type="Int32" /> </DeleteParameters> <UpdateParameters> <asp:Parameter Name="NB_C" Type="Int32" /> <asp:Parameter Name="NB_P" Type="Int32" /> <asp:Parameter Name="NB_S" Type="Int32" /> <asp:Parameter Name="ID" Type="Int32" /> </UpdateParameters>
</asp:SqlDataSource>
merci,
j'ai essayé.
J'ai surveiller les argument passé dans l'objet command à l'aide de la sub
suivante en mettant un point d'arret sur le Dim.
Les valeur qui sont passé sont toutes à Zero sauf pour le parametre @id de
la clause where qui lui est bien passé.
Là, je ne sais plus ou cherché !
Protected Sub ds_lecture_resume_Updating(ByVal sender As Object, ByVal e As
System.Web.UI.WebControls.SqlDataSourceCommandEventArgs) Handles
ds_lecture_resume.Updating
Dim val As Integer
For Each r As System.Data.Common.DbParameter In e.Command.Parameters
val = r.Value
Next
End Sub
"Daniel TIZON" <daniel_tizon_pasdespan@hotmail.com> a écrit dans le message
de news: eWYZdwlAGHA.204@TK2MSFTNGP15.phx.gbl...
C'est curieux, c'est comme si le Databind n'était pas fait au bon moment
(trop tôt) ou si le cache était activé...
or le DatatBind() est appelé automatiquement et le cache n'est pas activé
par défaut...
Pour voir ce qu'il se passe, tu peux commnencer par t'abonner aux
événement Selecting et Updating du SqlDataSource qui te permettront via le
2ième argument de la procédure événementielle de lire la valeur des
arguments passés dans l'objet command (avec e.Command.Parameters)
En espérant que çà t'aidera
--
Daniel TIZON
MCP - MCSD.NET - MCT
"Fr@ncky" <nobody@nobody.com> a écrit dans le message de news:
%23IBE4ziAGHA.356@TK2MSFTNGP12.phx.gbl...
Bonjour,
J'ai un soucis avec un gridview.
La source de ce gridview est un SQLDatasource dans lequel je définit le
Select, l'update et le delete.
Dans le select j'appel une vue qui me permet de faire les jointures avec
les tables de libéllé (pour les codes produits etc ..) je filtre avec un
parametre.
C'est OK
Dans le delete je précise non pas la vue, mais directement le table dans
laquelle je veux supprimer. Je précise dans le gridview le DATAKEYNAMES.
C'est OK (au passage, est-il possible de mettre un message de
confirmation avant la suppression ?)
Par contre pour l'update, quand je clique Sur Edit, il passe bien en mode
edition afin que je saisisse de nouvelles valeures, puis quand je clique
sur Update, il me remet les anciennes valeures dans la table. Pour etre
sur qu'il à bien fait un Update, j'ai mis un trigger sur ma table qui
m'indique la dernière date de mise à jour de la ligne. Il y à bien un
update qui est fait.
Avez vous une idée ? Ou mettre un point d'arrêt pour intercepté les
variables afin de voir leur valeur pendant l'execution ?
<asp:SqlDataSource ID="ds_lecture_resume" runat="server"
ConnectionString="<%$ ConnectionStrings:cs_LECTURE %>"
SelectCommand="SELECT TOP 10 * FROM [v_LECTURE_RESUME] WHERE
([ID_USER] = @ID_USER) ORDER BY [ID] DESC"
DeleteCommand="DELETE FROM [LECTURE] WHERE [ID] = @ID"
UpdateCommand="UPDATE [LECTURE] SET [NB_C] = @NB_C, [NB_P] =
@NB_P, [NB_S] = @NB_S WHERE [ID] = @ID" >
<SelectParameters>
<asp:SessionParameter Name="ID_USER"
SessionField="user_id" Type="Int32" />
</SelectParameters>
<DeleteParameters>
<asp:Parameter Name="ID" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="NB_C" Type="Int32" />
<asp:Parameter Name="NB_P" Type="Int32" />
<asp:Parameter Name="NB_S" Type="Int32" />
<asp:Parameter Name="ID" Type="Int32" />
</UpdateParameters>
J'ai surveiller les argument passé dans l'objet command à l'aide de la sub suivante en mettant un point d'arret sur le Dim. Les valeur qui sont passé sont toutes à Zero sauf pour le parametre @id de la clause where qui lui est bien passé.
Là, je ne sais plus ou cherché ! Protected Sub ds_lecture_resume_Updating(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.SqlDataSourceCommandEventArgs) Handles ds_lecture_resume.Updating
Dim val As Integer
For Each r As System.Data.Common.DbParameter In e.Command.Parameters
val = r.Value
Next
End Sub
"Daniel TIZON" a écrit dans le message de news:
C'est curieux, c'est comme si le Databind n'était pas fait au bon moment (trop tôt) ou si le cache était activé... or le DatatBind() est appelé automatiquement et le cache n'est pas activé par défaut... Pour voir ce qu'il se passe, tu peux commnencer par t'abonner aux événement Selecting et Updating du SqlDataSource qui te permettront via le 2ième argument de la procédure événementielle de lire la valeur des arguments passés dans l'objet command (avec e.Command.Parameters)
En espérant que çà t'aidera -- Daniel TIZON MCP - MCSD.NET - MCT
"" a écrit dans le message de news: %
Bonjour,
J'ai un soucis avec un gridview. La source de ce gridview est un SQLDatasource dans lequel je définit le Select, l'update et le delete.
Dans le select j'appel une vue qui me permet de faire les jointures avec les tables de libéllé (pour les codes produits etc ..) je filtre avec un parametre. C'est OK
Dans le delete je précise non pas la vue, mais directement le table dans laquelle je veux supprimer. Je précise dans le gridview le DATAKEYNAMES. C'est OK (au passage, est-il possible de mettre un message de confirmation avant la suppression ?)
Par contre pour l'update, quand je clique Sur Edit, il passe bien en mode edition afin que je saisisse de nouvelles valeures, puis quand je clique sur Update, il me remet les anciennes valeures dans la table. Pour etre sur qu'il à bien fait un Update, j'ai mis un trigger sur ma table qui m'indique la dernière date de mise à jour de la ligne. Il y à bien un update qui est fait.
Avez vous une idée ? Ou mettre un point d'arrêt pour intercepté les variables afin de voir leur valeur pendant l'execution ?
<asp:SqlDataSource ID="ds_lecture_resume" runat="server" ConnectionString="<%$ ConnectionStrings:cs_LECTURE %>" SelectCommand="SELECT TOP 10 * FROM [v_LECTURE_RESUME] WHERE ([ID_USER] = @ID_USER) ORDER BY [ID] DESC" DeleteCommand="DELETE FROM [LECTURE] WHERE [ID] = @ID" UpdateCommand="UPDATE [LECTURE] SET [NB_C] = @NB_C, [NB_P] = @NB_P, [NB_S] = @NB_S WHERE [ID] = @ID" > <SelectParameters> <asp:SessionParameter Name="ID_USER" SessionField="user_id" Type="Int32" /> </SelectParameters> <DeleteParameters> <asp:Parameter Name="ID" Type="Int32" /> </DeleteParameters> <UpdateParameters> <asp:Parameter Name="NB_C" Type="Int32" /> <asp:Parameter Name="NB_P" Type="Int32" /> <asp:Parameter Name="NB_S" Type="Int32" /> <asp:Parameter Name="ID" Type="Int32" /> </UpdateParameters>