Bonjour à tous,
je développe un intranet en ASP.NET 2.0 VB
je possède un gridview avec une SQLDataSource
Lorsque je passe en mode Edit, je voudrais mettre en place des DDL. En effet ma requête SELECT du DataSource est constituée de deux jointures et pour respecter mes contraintes d'intégrité je veux forcer l'utilisateur à choisir les valeurs dans des DDL.
J'arrive bien à initialiser mes DDL avec les valeurs en BD mais mon Update ne marche pas.
Voici ma requête SQL :
SELECT tbl_Employe.Idf_Employe as Idf_Employe, tbl_Employe.Nom,tbl_Employe.Prenom,
tbl_Employe.Tel_Fixe,tbl_Employe.Tel_Poste,tbl_Employe.Tel_Portable,tbl_Employe.Email,
tbl_Site.Site, tbl_Site.Idf_Site,tbl_Entite.Idf_Entite,tbl_Entite.Libelle
FROM tbl_Employe
LEFT JOIN tbl_Entite ON tbl_Employe.Entite = tbl_Entite.Idf_Entite
LEFT JOIN tbl_Site ON tbl_Employe.Site = tbl_Site.Idf_Site
WHERE(tbl_Employe.Actif = 1)
Voici ma page ASPX :
<
asp:GridView
ID="gv_employe"
runat="server"
AllowPaging="True"
AllowSorting="True"
AutoGenerateColumns="False"
CellPadding="3"
DataSourceID="datas_recherche"
Font-Bold="False"
Font-Size="X-Small"
ForeColor="#333333"
GridLines="Horizontal"
HorizontalAlign="Center"
PageSize="12"
style="display:block;overflow:auto;border:0"
ShowFooter="True"
DataKeyNames="Idf_Employe">
<FooterStyle
BackColor="#5D7B9D"
Font-Bold="True"
ForeColor="White"
Font-Names="Verdana"
/>
<Columns>
<asp:CommandField
ButtonType="Image"
CancelImageUrl="~/App_Images/Boutons/btn_icoAnnuler.gif"
DeleteImageUrl="~/App_Images/Boutons/btn_icoSupprimer.gif"
EditImageUrl="~/App_Images/Boutons/Btn_icoModifier.gif"
InsertImageUrl="~/App_Images/Boutons/btn_icoAjouter.gif"
ShowEditButton="True"
UpdateImageUrl="~/App_Images/Boutons/btn_icoValider.gif"
/>
<asp:CommandField
ButtonType="Image"
DeleteImageUrl="~/App_Images/Boutons/btn_icoSupprimer.gif"
ShowDeleteButton="True"
/>
<asp:BoundField
DataField="Idf_Employe"
HeaderText="Numéro Employe"
ReadOnly="True"
SortExpression="Idf_Employe"
>
<ItemStyle
HorizontalAlign="Left"
Wrap="False"
/>
</asp:BoundField>
<asp:BoundField
DataField="Nom"
HeaderText="Nom"
SortExpression="Nom"
>
<ItemStyle
HorizontalAlign="Left"
Wrap="False"
/>
</asp:BoundField>
<asp:BoundField
DataField="Prenom"
HeaderText="Prenom"
SortExpression="Prenom"
>
<ItemStyle
HorizontalAlign="Left"
Wrap="False"
/>
</asp:BoundField>
<asp:TemplateField
HeaderText="Site"
SortExpression="Site"
>
<ItemTemplate>
<asp:Label
ID="lb_site"
runat="server"
Text='<%#Eval("Site")%>
'
style="text-align: left">
</asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:SQLDataSource
ID="datas_sites"
runat="server"
ConnectionString="<%$ ConnectionStrings:db_BDD_Editique_ConnectionString %>
"
SelectCommand="SELECT [Idf_Site], [Site] FROM [tbl_Site] ORDER BY [Site]"
>
</asp:SQLDataSource>
<asp:DropDownList
DataSourceID="datas_sites"
ID="ddl_modif_site"
runat="server"
DataTextField="Site"
DataValueField="Idf_Site"
SelectedValue='<%#Bind("Idf_Site")%>
'>
</asp:DropDownList>
</EditItemTemplate>
<ItemStyle
Wrap="False"
HorizontalAlign="Left"/>
</asp:TemplateField>
<asp:TemplateField
HeaderText="Entite"
SortExpression="Libelle">
<ItemTemplate>
<asp:Label
ID="lb_entite"
runat="server"
Text='<%#Eval("Libelle")%>
'>
</asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:SQLDataSource
ID="datas_entites"
runat="server"
ConnectionString="<%$ ConnectionStrings:db_BDD_Editique_ConnectionString %>
"
SelectCommand="SELECT [Idf_Entite], [Libelle] FROM [tbl_Entite] ORDER BY [Libelle]"
>
</asp:SQLDataSource>
<asp:DropDownList
DataSourceID="datas_entites"
ID="ddl_modif_entite"
runat="server"
DataTextField="Libelle"
DataValueField="Idf_Entite"
SelectedValue='<%#Bind("Idf_Entite")%>
'>
</asp:DropDownList>
</EditItemTemplate>
<ItemStyle
Wrap="False"
HorizontalAlign="Left"/>
</asp:TemplateField>
<asp:BoundField
DataField="Tel_Fixe"
HeaderText="Tel_Fixe"
SortExpression="Tel_Fixe"
>
<ItemStyle
HorizontalAlign="Left"
Wrap="False"
/>
</asp:BoundField>
<asp:BoundField
DataField="Tel_Poste"
HeaderText="Tel_Poste"
SortExpression="Tel_Poste"
>
<ItemStyle
HorizontalAlign="Left"
Wrap="False"
/>
</asp:BoundField>
<asp:BoundField
DataField="Tel_Portable"
HeaderText="Tel_Portable"
SortExpression="Tel_Portable"
>
<ItemStyle
HorizontalAlign="Left"
Wrap="False"
/>
</asp:BoundField>
<asp:BoundField
DataField="Email"
HeaderText="Email"
SortExpression="Email"
>
<ItemStyle
HorizontalAlign="Left"
Wrap="False"
/>
</asp:BoundField>
</Columns>
<RowStyle
BackColor="#F7F6F3"
ForeColor="RoyalBlue"
Font-Names="Verdana"
height="30px"
Wrap="False"/>
<EditRowStyle
BackColor="White"
Font-Names="Verdana"
/>
<SelectedRowStyle
BackColor="White"
Font-Bold="True"
ForeColor="#333333"
Font-Names="Verdana"
/>
<PagerStyle
BackColor="#284775"
ForeColor="White"
HorizontalAlign="Center"
Font-Names="Verdana"
/>
<HeaderStyle
BackColor="#5D7B9D"
Font-Bold="True"
ForeColor="White"
Font-Names="Verdana"
HorizontalAlign="Left"
Width="100%"/>
<AlternatingRowStyle
BackColor="White"
ForeColor="#284775"
Font-Names="Verdana"
/>
<EmptyDataRowStyle
Font-Names="Verdana"
/>
</asp:GridView>
<asp:SqlDataSource
ID="datas_recherche"
runat="server"
ConnectionString="<%$ ConnectionStrings:db_BDD_Editique_ConnectionString %>
"
UpdateCommand="UPDATE tbl_EmployeSET Nom=@Nom, Prenom=@Prenom,Tel_Fixe=@Tel_Fixe,
Tel_Poste=@Tel_poste,Tel_Portable=@Tel_Portable,Email=@Email
,Site=@site,Entite=@entite
WHERE Idf_Employe=@Idf_Employe">
<UpdateParameters
>
<asp:Parameter
Name="Site"
Type="String"
/>
<asp:Parameter
Name="Entite"
Type="String"/>
</UpdateParameters>
</asp:SqlDataSource>
Merci à tous pour votre aide
Afficher la suite