Bonjour,
je débute en Visual studio 2005, langage VB Net et travaille avec une BDD Access 2002
J'ai cherché partout et je ne m'en sors tjrs pas
Voici une partie du code :
Sub Proprio(ByVal Choix)
If Choix = "Ajout"Then
strSql = "SELECT count(*) as Resul FROM ASLProprio WHERE ProprioDatDep IS NULL AND ProprioNumLot = '" & TxtPNLot.Text & "'"
ObjetCommand = New OleDbCommand(strSql)
ObjetDataAdapter = New OleDbDataAdapter(ObjetCommand)
ObjetCommand.Connection() = ObjetConnection
ObjetDataSet.Clear()
ObjetDataAdapter.Fill(ObjetDataSet, "ASLProprio")
==>Aucune valeur donnée pour un ou plusieurs des paramètres requis.
ObjetDataTable = ObjetDataSet.Tables("ASLProprio")
'Existe dans la base et tjrs présent ==> ne pas ajouter
If
ObjetDataTable.Rows.Count > 0 Then
MsgBox("Proprio non parti")
Exit
Sub
End
If
'else ajouter : OK n'existe pas dans la base
ObjetDataRow = ObjetDataSet.Tables("ASLProprio").NewRow()
ChargerChamps()
ObjetDataSet.Tables("ASLProprio").Rows.Add(ObjetDataRow)
'Pour modifier les valeurs changées dans le DataAdapter
ObjetCommandBuilder = New OleDbCommandBuilder(ObjetDataAdapter)
'MAJ
ObjetDataAdapter.Update(ObjetDataSet, "ASLProprio")
'On vide le DataSet et on le 'recharge' de nouveau.
ObjetDataSet.Clear()
ObjetDataAdapter.Fill(ObjetDataSet, "ASLProprio")
ObjetDataTable = ObjetDataSet.Tables("ASLProprio")
Else
'Modifier
' Extraire l'enregistrement courant
ObjetDataRow = ObjetDataSet.Tables("ASLProprio").Rows(0)
'Modifier les valeurs des champs en récupérant le contenu des TextBox
ChargerChamps()
'Pour modifier les valeurs changées dans le DataAdapter
ObjetCommandBuilder = New OleDbCommandBuilder(ObjetDataAdapter)
'MAJ
ObjetDataAdapter.Update(ObjetDataSet, "ASLProprio")
'On vide le DataSet et on le 'recharge' de nouveau.
ObjetDataSet.Clear()
ObjetDataAdapter.Fill(ObjetDataSet, "ASLProprio")
ObjetDataTable = ObjetDataSet.Tables("ASLProprio")
Dim Rang AsInteger
Rang = LBProprio.SelectedIndex
LBProprio.Items.RemoveAt(LBProprio.SelectedIndex)
LBProprio.Items.Insert(Rang, TxtPNom.Text)
ASLMain.Choix = ""
LBProprio.Refresh()
End
If
Sub
ChargerChamps()
ObjetDataRow(
"ProprioNumLot"
) = TxtPNLot.Text
ObjetDataRow(
"ProprioNom"
) = TxtPNom.Text
ObjetDataRow(
"ProprioPrenom"
) = TxtPPrenom.Text
ObjetDataRow(
"ProprioDatArrive"
) = MtbDatArriv.Text
ObjetDataRow(
"ProprioTelAsl"
) = TxtPTelAsl.Text
ObjetDataRow(
"ProprioTelMobile1"
) = TxtPTelMobile1.Text
ObjetDataRow(
"ProprioTelMobile2"
) = TxtPTelMobile2.Text
ObjetDataRow(
"ProprioTelAutre"
) = TxtPTelAutre.Text
ObjetDataRow(
"ProprioAutreAdrRue"
) = TxtPAutreAdrRue.Text
ObjetDataRow(
"ProprioAutreAdrCP"
) = TxtPAutreAdrCP.Text
ObjetDataRow(
"ProprioAutreAdrVille"
) = TxtPAutreAdrVille.Text
End
Sub
End
Sub
*********************
L'erreur ci-dessus apparaît. Je crois que j'avais réussi à la faire disparaître (mais je ne sais plus comment),
Pourtant j'ai vu des exemples et j'ai l'impression que mon code est identique ??? !!!
En fait, j'ai aussi un autre formulaire avec un ajout d'enregistrement, mais sur une table vide, je galère aussi (le champ n'existe pas ds la table ) : c'est clair , mais il EXISTE!!
Merci d'avance aux courageux qui me sortiront de là!!
patdan
