Utilisation de dataset hiérarchique avec deux Proc Stock, possible ?
1 réponse
Cédric Girard
Bonjour
Petit soucis d'utilisation concernant un Dataset hiérarchique avec deux
"tables" construites à partir de deux procédures stockées (2 paramètres
chacune) liées par un champs de données.
Le soucis se situe au niveau du code, pour initialiser ces PS avant
l'utilisation du Dataset hiérarchique avec deux composants grille (C1
TrueDBGrid for .Net, mais ceci n'est pas réellement en rapport avec mon
problème)
Je fais donc :
'Mise en oeuvre de la sélection
SqlDataAdapter1.SelectCommand.Parameters.Add("@IDCompteClient", New
SqlInt32(IDDossier))
SqlDataAdapter1.SelectCommand.Parameters.Add("@AnnéeDevis", New
SqlInt32(AnnéeDevis))
SqlDataAdapter2.SelectCommand.Parameters.Add("@IDCompteClient", New
SqlInt32(IDDossier))
SqlDataAdapter2.SelectCommand.Parameters.Add("@AnnéeDevis", New
SqlInt32(AnnéeDevis))
'Rafraichissement des grilles
SqlDataAdapter1.Fill(DsAvancement1)
SqlDataAdapter2.Fill(DsAvancement1)
Il me ressort une erreur sur le premier "Fill" :
Une exception non gérée du type 'System.Data.SqlClient.SqlException'
s'est produite dans system.data.dll
Informations supplémentaires : Erreur système
Qu'ai-je fais de mal ? Je pense que c'est au niveau du passage des
paramètres que ça déconne, mais je vois pas quoi (fatigué ?...)
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
Cédric Girard
Début de solution...
DsAvancement1.Clear() 'Pour "vider" les données contenues dans le dataset
'Mise en oeuvre de la sélection SqlDataAdapter1.SelectCommand.Parameters.Item("@IDCompteClient").Value = New SqlInt32(IDDossier) SqlDataAdapter1.SelectCommand.Parameters.Item("@AnnéeDevis").Value = New SqlInt32(AnnéeDevis) SqlDataAdapter2.SelectCommand.Parameters.Item("@IDCompteClient").Value = New SqlInt32(IDDossier) SqlDataAdapter2.SelectCommand.Parameters.Item("@AnnéeDevis").Value = New SqlInt32(AnnéeDevis)
'Rafraichissement des grilles SqlDataAdapter1.Fill(DsAvancement1) SqlDataAdapter2.Fill(DsAvancement1)
Le hic c'est que j'ai un soucis de contrainte lorsque j'opère une modification du paramètre AnnéeDevis deux fois de suite (ce qui n'est pas le cas de l'autre paramètre !) ; l'erreur se produit sur la seconde ligne "Fill" (sur mon SqlDataAdapter2)
Pas simple !
-- Cédric Girard OCERA CFGA (Aube) Mon site perso : http://www.mainecoon.fr "Cédric Girard" a écrit dans le message de news:
Bonjour
Petit soucis d'utilisation concernant un Dataset hiérarchique avec deux "tables" construites à partir de deux procédures stockées (2 paramètres chacune) liées par un champs de données.
Le soucis se situe au niveau du code, pour initialiser ces PS avant l'utilisation du Dataset hiérarchique avec deux composants grille (C1 TrueDBGrid for .Net, mais ceci n'est pas réellement en rapport avec mon problème)
Je fais donc : 'Mise en oeuvre de la sélection SqlDataAdapter1.SelectCommand.Parameters.Add("@IDCompteClient", New SqlInt32(IDDossier)) SqlDataAdapter1.SelectCommand.Parameters.Add("@AnnéeDevis", New SqlInt32(AnnéeDevis)) SqlDataAdapter2.SelectCommand.Parameters.Add("@IDCompteClient", New SqlInt32(IDDossier)) SqlDataAdapter2.SelectCommand.Parameters.Add("@AnnéeDevis", New SqlInt32(AnnéeDevis))
'Rafraichissement des grilles SqlDataAdapter1.Fill(DsAvancement1) SqlDataAdapter2.Fill(DsAvancement1)
Il me ressort une erreur sur le premier "Fill" : Une exception non gérée du type 'System.Data.SqlClient.SqlException' s'est produite dans system.data.dll Informations supplémentaires : Erreur système
Qu'ai-je fais de mal ? Je pense que c'est au niveau du passage des paramètres que ça déconne, mais je vois pas quoi (fatigué ?...)
DsAvancement1.Clear() 'Pour "vider" les données contenues dans le dataset
'Mise en oeuvre de la sélection
SqlDataAdapter1.SelectCommand.Parameters.Item("@IDCompteClient").Value = New
SqlInt32(IDDossier)
SqlDataAdapter1.SelectCommand.Parameters.Item("@AnnéeDevis").Value = New
SqlInt32(AnnéeDevis)
SqlDataAdapter2.SelectCommand.Parameters.Item("@IDCompteClient").Value = New
SqlInt32(IDDossier)
SqlDataAdapter2.SelectCommand.Parameters.Item("@AnnéeDevis").Value = New
SqlInt32(AnnéeDevis)
'Rafraichissement des grilles
SqlDataAdapter1.Fill(DsAvancement1)
SqlDataAdapter2.Fill(DsAvancement1)
Le hic c'est que j'ai un soucis de contrainte lorsque j'opère une
modification du paramètre AnnéeDevis deux fois de suite (ce qui n'est pas le
cas de l'autre paramètre !) ; l'erreur se produit sur la seconde ligne
"Fill" (sur mon SqlDataAdapter2)
Pas simple !
--
Cédric Girard
OCERA CFGA (Aube)
Mon site perso : http://www.mainecoon.fr
"Cédric Girard" <___cgirard@cer-ca.fr> a écrit dans le message de news:
uB2MhaawEHA.2876@TK2MSFTNGP12.phx.gbl...
Bonjour
Petit soucis d'utilisation concernant un Dataset hiérarchique avec deux
"tables" construites à partir de deux procédures stockées (2 paramètres
chacune) liées par un champs de données.
Le soucis se situe au niveau du code, pour initialiser ces PS avant
l'utilisation du Dataset hiérarchique avec deux composants grille (C1
TrueDBGrid for .Net, mais ceci n'est pas réellement en rapport avec mon
problème)
Je fais donc :
'Mise en oeuvre de la sélection
SqlDataAdapter1.SelectCommand.Parameters.Add("@IDCompteClient", New
SqlInt32(IDDossier))
SqlDataAdapter1.SelectCommand.Parameters.Add("@AnnéeDevis", New
SqlInt32(AnnéeDevis))
SqlDataAdapter2.SelectCommand.Parameters.Add("@IDCompteClient", New
SqlInt32(IDDossier))
SqlDataAdapter2.SelectCommand.Parameters.Add("@AnnéeDevis", New
SqlInt32(AnnéeDevis))
'Rafraichissement des grilles
SqlDataAdapter1.Fill(DsAvancement1)
SqlDataAdapter2.Fill(DsAvancement1)
Il me ressort une erreur sur le premier "Fill" :
Une exception non gérée du type
'System.Data.SqlClient.SqlException' s'est produite dans system.data.dll
Informations supplémentaires : Erreur système
Qu'ai-je fais de mal ? Je pense que c'est au niveau du passage des
paramètres que ça déconne, mais je vois pas quoi (fatigué ?...)
DsAvancement1.Clear() 'Pour "vider" les données contenues dans le dataset
'Mise en oeuvre de la sélection SqlDataAdapter1.SelectCommand.Parameters.Item("@IDCompteClient").Value = New SqlInt32(IDDossier) SqlDataAdapter1.SelectCommand.Parameters.Item("@AnnéeDevis").Value = New SqlInt32(AnnéeDevis) SqlDataAdapter2.SelectCommand.Parameters.Item("@IDCompteClient").Value = New SqlInt32(IDDossier) SqlDataAdapter2.SelectCommand.Parameters.Item("@AnnéeDevis").Value = New SqlInt32(AnnéeDevis)
'Rafraichissement des grilles SqlDataAdapter1.Fill(DsAvancement1) SqlDataAdapter2.Fill(DsAvancement1)
Le hic c'est que j'ai un soucis de contrainte lorsque j'opère une modification du paramètre AnnéeDevis deux fois de suite (ce qui n'est pas le cas de l'autre paramètre !) ; l'erreur se produit sur la seconde ligne "Fill" (sur mon SqlDataAdapter2)
Pas simple !
-- Cédric Girard OCERA CFGA (Aube) Mon site perso : http://www.mainecoon.fr "Cédric Girard" a écrit dans le message de news:
Bonjour
Petit soucis d'utilisation concernant un Dataset hiérarchique avec deux "tables" construites à partir de deux procédures stockées (2 paramètres chacune) liées par un champs de données.
Le soucis se situe au niveau du code, pour initialiser ces PS avant l'utilisation du Dataset hiérarchique avec deux composants grille (C1 TrueDBGrid for .Net, mais ceci n'est pas réellement en rapport avec mon problème)
Je fais donc : 'Mise en oeuvre de la sélection SqlDataAdapter1.SelectCommand.Parameters.Add("@IDCompteClient", New SqlInt32(IDDossier)) SqlDataAdapter1.SelectCommand.Parameters.Add("@AnnéeDevis", New SqlInt32(AnnéeDevis)) SqlDataAdapter2.SelectCommand.Parameters.Add("@IDCompteClient", New SqlInt32(IDDossier)) SqlDataAdapter2.SelectCommand.Parameters.Add("@AnnéeDevis", New SqlInt32(AnnéeDevis))
'Rafraichissement des grilles SqlDataAdapter1.Fill(DsAvancement1) SqlDataAdapter2.Fill(DsAvancement1)
Il me ressort une erreur sur le premier "Fill" : Une exception non gérée du type 'System.Data.SqlClient.SqlException' s'est produite dans system.data.dll Informations supplémentaires : Erreur système
Qu'ai-je fais de mal ? Je pense que c'est au niveau du passage des paramètres que ça déconne, mais je vois pas quoi (fatigué ?...)