Bonjour à tous
j'ai un datagrid complet (insert, update, delete) dans lequel je liste avec un dataset des produits qui ont chacun un prix normal et un prix promo.
lorsque je modifie ou créé un produit, j'oblige à saisir un prix normal mais le prix promo est facultatif.
dans ma base données Sql server, les champs prix et prix promo sont float.
cependant, je suis obligé de vérifier le champ prix promo afin d'insérer une valeur "Nothing" si le champ est vide car j'ai une erreur lorsque je tente d'insérer une valeur nulle.
"Nothing" insère un 0 dans le champ float.
avec un peu de code ça sera plus clair :
Dim
iCodePneu
As Integer =
CType(dgPneusFournisseurs.DataKeys(e.Item.ItemIndex),
Integer)
Dim iCodeFournisseur
As Integer =
CType(e.Item.Cells(0).Text,
Integer)
Dim iCodePneuFournisseur
As String =
CType(e.Item.FindControl("tbEditCodeFournisseur"), TextBox).Text
Dim fPrix
As Double =
CType(e.Item.FindControl("tbEditPrix"), TextBox).Text
Dim fPrixPromo
As Double
If CType(e.Item.FindControl("tbEditPrixPromo"), TextBox).Text <> Nothing Then
fPrixPromo = CType(e.Item.FindControl("tbEditPrixPromo"), TextBox).Text
Else
fPrixPromo = Nothing
End If
Dim fRemise As Double
If CType(e.Item.FindControl("tbEditRemise"), TextBox).Text <> Nothing Then
fRemise = CType(e.Item.FindControl("tbEditRemise"), TextBox).Text
Else
fRemise = Nothing
End If
Dim iStock As Integer = CType(e.Item.FindControl("tbEditStock"), TextBox).Text
Dim sCommentaire As String = CType(e.Item.FindControl("tbEditCommentaire"), TextBox).Text
Dim ModifRow As DataSet2.PNEU_FOURNISSEURRow
ModifRow = dsInsertPneusFournisseurs.PNEU_FOURNISSEUR.FindBycode_pneucode_fournisseur(iCodePneu, iCodeFournisseur)
With ModifRow
.code_pneu_fournisseur = iCodePneuFournisseur
.prix_pneu_fournisseur = fPrix
.prix_promo_pneu_fournisseur = fPrixPromo (si ici je met une valeur autre que Nothing ou une valeur float, j'obtiens une erreur)
.remise_pneu_fournisseur = fRemise
.stock_pneu_fournisseur = iStock
.comment_pneu_fournisseur = sCommentaire
End With
daInsertPneusFournisseurs.Update(dsInsertPneusFournisseurs)
dvPneusFournisseur.RowFilter = "code_pneu = " & iCodePneu
dvPneusFournisseur.Sort = "code_fournisseur"
daPneusFournisseur.Fill(dsInsertPneusFournisseurs)
dgPneusFournisseurs.EditItemIndex = -1
dgPneusFournisseurs.DataBind()
Voila, ce que je souhaiterai, c'est savoir comment insérer une valeur nulle ("NULL") dans un champ float de la base de données avec un datasetMerci à tous pour votre aide.