begin process at 2012 02 14 14:43:19
  Trouver un code source :
 
dans
 
Accueil > Forum > 

VB.NET et VB 2005

 > 

Base de données

 > 

ADO.NET

 > 

Databinding - double liaison - important


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Databinding - double liaison - important

jeudi 27 novembre 2008 à 18:41:23 | Databinding - double liaison - important

aitoz

Bonjour à tous,

Voila : J'ai un formulaire décomposé en 2 parties. La partie d'en haut j'ai des textbox liées en Databinding sur une procédure stockée. Et la seconde partie j'ai un datagrid.

Je voudrais que mon datagrid m'informe plus en détail une liste d'information liée à la partie du dessus.
exemple : En haut j'ai un code article et en bas, je veux voir tous les clients qui me l'ont acheté.

Voici le code que j'ai utilisé pour lier la partie en haut (il me manque le code pour la partie d'en bas):

'Je cr,, une string pour recevoir le nom de la proc,dure stock,e
Dim sproc3 AsString = "ps_articzon3"

'Je cr,, une variable command pour recevoir les donn,es r,sultant de 'sproc' avec la connexion 'Conn'
Dim ObjetCommand1 AsNew SqlCommand(sproc3, Conn)

'Je d,clare ici qu'il s'agit d'une proc,dure stock,e
ObjetCommand1.CommandType = CommandType.StoredProcedure

'Je d,clare le(s) param¦tre(s) de la ps
Dim param1 AsNew SqlParameter("@codcli", SqlDbType.BigInt)
param1.Value = MainForm1.UltraStatusBar1.Panels(4).Text
ObjetCommand1.Parameters.Add(param1)

'j'essai d'ouvrir la connexion et de lancer la commande au server sql
Try
'Je test d'abord si la connexion est bien ouverte
If Conn.State <> System.Data.ConnectionState.Open Then
Conn.Open()
EndIf
'Je cr,, d'abord les deux datatables pour recevoir les deux groupes de donn,es
ObjetDataSet3.Tables.Add("dt_article_emplacements")
'Instancier un objet Adapter
ObjetDataAdapter1 = New SqlDataAdapter(ObjetCommand1)
'Avec l'aide de la propri,t, Fill du DataAdapter charger le DataSet
ObjetDataAdapter1.Fill(ObjetDataSet3, "dt_article_emplacements")
Dim objetdatatable AsNew DataView
objetdatatable.Table = ObjetDataSet3.Tables(
"dt_article_emplacements")
BindingSource1.DataSource = objetdatatable
BindingNavigator1.BindingSource = BindingSource1
Me.AS_COARTI.DataBindings.Add("Text", BindingSource1, "AS_COARTI")
Me.AS_DESART.DataBindings.Add("Text", BindingSource1, "AS_DESART")

Merci de votre aide.

Laurent
vendredi 28 novembre 2008 à 12:43:07 | Re : Databinding - double liaison - Je m'arrache les cheveux !!!!

aitoz

Hi,

Ok, voici mon code. Maintenant, j'arrive à afficher les données mais j'ai encore 2 soucis :
1- La navigation ne fonctionne plus. Je reste bloqué sur le premier article.
2- Dans mon datagrid dans la partie du bas, j'affiche toute ma procédure stockée, alors que je ne voudrais que les ligne concernant l'article en-cours. Sachant que l'article en-cours, c'est celui lié dans la partie du haut.

Merci de votre aide

'Je cr,, une string pour recevoir le nom de la proc,dure stock,e
Dim sproc3 As String = "ps_articzon3"
Dim sproc4 As String = "ps_articzon4"

'Je cr,, une variable command pour recevoir les donn,es r,sultant de 'sproc' avec la connexion 'Conn'
Dim ObjetCommand1 As New SqlCommand(sproc3, Conn)
Dim ObjetCommand2 As New SqlCommand(sproc4, Conn)

'Je d,clare ici qu'il s'agit d'une proc,dure stock,e
ObjetCommand1.CommandType = CommandType.StoredProcedure
ObjetCommand2.CommandType = CommandType.StoredProcedure

'Je d,clare le(s) param¦tre(s) de la ps
Dim param1 As New SqlParameter( "@codcli" , SqlDbType.BigInt)
Dim param2 As New SqlParameter( "@codcli" , SqlDbType.BigInt)
param1.Value = MainForm1.UltraStatusBar1.Panels(4).Text
param2.Value = MainForm1.UltraStatusBar1.Panels(4).Text
ObjetCommand1.Parameters.Add(param1)
ObjetCommand2.Parameters.Add(param2)

'j'essai d'ouvrir la connexion et de lancer la commande au server sql
Try
'Je test d'abord si la connexion est bien ouverte
If Conn.State <> System.Data.ConnectionState.Open Then
Conn.Open()
End If
'Je cr,, d'abord les deux datatables pour recevoir les deux groupes de donn,es
ObjetDataSet3.Tables.Add( "dt_article_emplacements" )
ObjetDataSet3.Tables.Add(
"dt_article_emplacements2" )
'Instancier un objet Adapter
ObjetDataAdapter1 = New SqlDataAdapter(ObjetCommand1)
ObjetDataAdapter3 =
New SqlDataAdapter(ObjetCommand2)
'Avec l'aide de la propri,t, Fill du DataAdapter charger le DataSet
ObjetDataAdapter1.Fill(ObjetDataSet3, "dt_article_emplacements" )
ObjetDataAdapter3.Fill(ObjetDataSet3,
"dt_article_emplacements2" )

Dim
objetdatatable As New DataView
objetdatatable.Table = ObjetDataSet3.Tables(
"dt_article_emplacements" )
objetdatatable.Table = ObjetDataSet3.Tables(
"dt_article_emplacements2" )

'Je cr,, la relation entre les deux tables add to DataSet
Dim Relation1 As New DataRelation( "Relation1" , ObjetDataSet3.Tables( "dt_article_emplacements" ).Columns(0), ObjetDataSet3.Tables( "dt_article_emplacements2" ).Columns(1))
ObjetDataSet3.Relations.Add(Relation1)
ObjetDataSet3.EnforceConstraints =
True

'Je cr,, mon binding
BindingSource1.DataSource = ObjetDataSet3
BindingNavigator1.BindingSource = BindingSource1

Me .AS_COARTI.DataBindings.Add( "Text" , BindingSource1, "dt_article_emplacements.AS_COARTI" )

'Je positionne les objets dataset dans la UltraGrid
Me .UltraGrid4.SetDataBinding(ObjetDataSet3, "dt_article_emplacements2" )
Finally
End Try


Cette discussion est classée dans : add, article, partie, haut, databinding


Répondre à ce message

Sujets en rapport avec ce message

enlever le X en haut à gauche [ par Lethal ] quel est le code qui permet d'enlever la croix (X : qui se trouve en haut à droite de tous les logiciels) qui sert à fermer le programme ? Création d'ADD-IN [ par Virgil ] Dans VB, lorsque l'on dble-clique sur un contrôle, le code associé à celui-ci se place dans l'ordre l'alphabêtique dans le code. Or, pour un souci de comment faire pour virer le boutton fermer en haut a droite des feuilles [ par darkyoda ] car quand on clique dessus ca ferme toute l'appli.comment faire pour virer ce boutton,le rendre invisibleou alors le faire fermer une seule feuille?me Petit Pb ListView [ par Cyril ] Bonjour a tous,il semblerait que listview soit un control vraiement super. Par contre ,je n'ai que l'aide de MSDN pour apprendre, et franchement j'ai Comment récuperer la selection d'une partie d'un texte pour la mettre en gras ? [ par gégé ] Bonjour,Je suis entrain de faire un petit post-it en VB en j'aimerai savoir comment faire pour mettre en gras une partie d'un texte. En selectionnant Comment faire apparaitre un icone ? en haut a droite a coté de redimensionner et fermer ??? [ par Esteb@n ] Je voudrais dans mon appli VB donner acces a l'aide via un icone situé en haut a droite comme dans les fenetres de word par exemple.est-ce-que c possi Sauvegarde d'une partie de l ecran dans un fichier JPEG [ par asfilou ] Comment sauvegarder une partie de l'écran dans un fichier type JPEGMerci


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,373 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales