bouv
Messages postés1411Date d'inscriptionmercredi 6 août 2003StatutMembreDernière intervention 3 mars 2019
-
18 avril 2010 à 23:11
mertronic
Messages postés28Date d'inscriptionmardi 18 janvier 2005StatutMembreDernière intervention 9 août 2015
-
9 août 2015 à 06:57
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
mertronic
Messages postés28Date d'inscriptionmardi 18 janvier 2005StatutMembreDernière intervention 9 août 2015 2 août 2015 à 09:02
@PCPC et @ ARCEF
Si vous connaissez un tuto pour approfondir / changer / améliorer ce type de code, merci de me donner le lien car j'ai cherché 2 heures sur google mais sans grand succès.. c'est soit hors de ma portée (trop technique) soit cela ne répond pas vraiment à ma recherche (VB.net POO, gestion BDD avec relations entre tables)
@ cs_Patrice99. Je pense commander ce bouquin, a moins que, depuis, tu n'ai eu connaissance de quelque chose de plus intéressant (en 5 ans, il s'en passe des choses..
Merci a tous.
Whismeril
Messages postés18991Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention27 mars 2024654
>
mertronic
Messages postés28Date d'inscriptionmardi 18 janvier 2005StatutMembreDernière intervention 9 août 2015 2 août 2015 à 09:42
Bonjour je me suis permis d'éditer ton 2eme message pour préciser le langage dans la coloration syntaxique.
Concernant Link, ça ne marche pas avec Acces.
mertronic
Messages postés28Date d'inscriptionmardi 18 janvier 2005StatutMembreDernière intervention 9 août 2015
>
Whismeril
Messages postés18991Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention27 mars 2024 9 août 2015 à 06:57
Salut Whismeril, Merci pour la correction de coloration, c'est beaucoup mieux comme ça, je ferai attention la prochaine fois.
Concernant LINK, effectivement j'ai lu ça quelque part, par contre, je code également en My-Sql pour un autre projet et là, cela doit pouvoir fonctionner, je n'ai pour l'instant, pas encore essayé. connais tu un tuto bien fait sur Link//My-sql ? (platform WampServer)
Salut Bouv.
bon, dès fois, faut juste essayer... et ca marche.
Je n'ai pas eu à refaire une classe de liaison car les liaisons fonctionnent avec 2 lignes de code :-)
j'ai procédé comme suit:
Private Sub FillLV()
With LV
'On efface tous les éléments de la LV'
.Items.Clear()
'On créé l objet TAB_Products'
Dim MyProducts As New OLEDB.Table.TAB_PRODUCTS
'Michel : j ajoute ici l objet TAB_UNIT.'
Dim myUnit As New OLEDB.Table.TAB_UNIT
'On liste tout les enregistrements de la table'
Dim iproducts As List(Of Integer) = MyProducts.EnumRecords
'On remplit la LV'
For Each i As Integer In iproducts
'On récupère les infos complètes de l enregistrement'
MyProducts.Index = i
MyProducts.Read()
'On ajoute l enregistrement'
With .Items.Add(MyProducts.Index)
myUnit.Index = MyProducts.ProdIdUnit
myUnit.Read()
'Ce programme est en deux langues (Thai et Anglais, c est pour un'
'pote cuisto qui a du mal avec l anglais mais qui essaye :-)'
If Main.Lang = 0 Then ' EN THAI'
.SubItems.Add(MyProducts.THProductName)
.SubItems.Add(MyProducts.ProdIdUnit)
.SubItems.Add(myUnit.THNameUnit)
.SubItems.Add(MyProducts.ProdPrice)
.SubItems.Add(MyProducts.ProdDate)
.SubItems.Add(MyProducts.ENProductName)
Else 'EN ANGLAIS'
.SubItems.Add(MyProducts.ENProductName)
.SubItems.Add(MyProducts.ProdIdUnit)
.SubItems.Add(myUnit.ENNameUnit)
.SubItems.Add(MyProducts.ProdDate)
.SubItems.Add(MyProducts.ProdPrice)
.SubItems.Add(MyProducts.THProductName)
End If
'les colones 2, 5 et 6 du LV sont cachées, elles ne servent que '
'pour la modification du produit afin de ne pas avoir a refaire une requette'
End With
Next i
End With
End Sub
Marche nickel... je ne le dirai jamais assez : MERCIIIIIII
Bien entendu, si il y a une meilleure méthode, je suis preneur...
mertronic
Messages postés28Date d'inscriptionmardi 18 janvier 2005StatutMembreDernière intervention 9 août 2015 2 août 2015 à 06:30
Salut Bouv,
Je sais que ce post date d'il y a 5 ans, mais qu'importe, pour moi il est d'actualité.
Avant tout, un grand merci, programmeur débutant, ce code m'a permis de comprendre bien des choses... Ce n'est peut être pas écrit a la perfectionn il n'y a peut être pas de LINK mais c'est clair, facile à comprendre et donc exactement ce qu'il me fallait pour comprendre.
toutefois, une petite question. J'ai créé une BDD avec 5 tables. il y a bien entendu des relations entre ces tables. Elles ont été définie dans Access.
Y as t-il un moyen simple (poo) pour gérer ces relations???
J'avoue ne pas avoir encore beaucoup cherché sur ce sujet mais le pas de géant qu'il m'a été permis de faire grâce a ton code me dis que, peut être, si tu as dans un tiroir une version plus évoluée de ce code, je pourrai peut être faire un autre pas de géant dans ce monde d'objets..
Merci encore. Amicalement.
aserf
Messages postés114Date d'inscriptionlundi 15 avril 2002StatutMembreDernière intervention 1 juillet 2011 20 avril 2010 à 14:03
Une nouvelle version est en ligne, tu genere le code en V2 (beta) il est beaucoup plus light, de plus il gere beaucoup de chose,
property en enum, mise a jour de structure, ... mais bon effectivement en 2 ans il a evoluer, et je n'es jamais mis la doc a jour (elle date d'au moins 4 à 5 ans) donc enormement de fonction/options ne sont pas documenté ...
De plus le code V2 permet de changé de base de donnée a la voler (passer de access a sql server et mysql ) sans changé une seul ligne de code.
ce qui permet de faire des applications multibase de donnée facilement.
a+
seb
bouv
Messages postés1411Date d'inscriptionmercredi 6 août 2003StatutMembreDernière intervention 3 mars 20191 20 avril 2010 à 13:38
Merci pour vos commentaires.
PCPT>>La partie requête est gérée. Voir procédure EnumRecords dans la région Enum.
Mais pas (encore) avec les jointures et en mode très léger je te l'accorde.
En revanche pas de généricité c'est clair.
Aserf>>Je connais ton logiciel. Je l'ai essayé il y à 1 ou 2 ans. Il m'a permis de comprendre pas mal de chose sur ADO.Net en lisant le code qu'il produit.
Seulement, si mes souvenirs sont exacts, il ne tire pas profit de l'heritage et produit donc un code un peu plus lourd.
Je ne connais pas LINK mais je vais me renseigner. Merci du tuyaux.
cs_Patrice99
Messages postés1221Date d'inscriptionjeudi 23 août 2001StatutMembreDernière intervention 9 septembre 2018 19 avril 2010 à 15:52
Au-dessus (et à coté) de Linq, voici aussi un exellent bouquin sur le mapping objet-relationnel pour la programmation :
Programming Entity Framework
Building Data Centric Apps with the ADO.NET Entity Framework
http://oreilly.com/catalog/9780596520298
aserf
Messages postés114Date d'inscriptionlundi 15 avril 2002StatutMembreDernière intervention 1 juillet 2011 19 avril 2010 à 14:11
Salut,
J'ai ne pas vue ou tu a ecrit le code qui genere la class, autrement effectivement LINQ, ainsi que les dataset Type permette deja de faire ce genre de chose, autrement j'ai developper un logiciel qui fait a peu pres la meme chose, www.database2code.com, il genere des class pour chaque table, mais en ce basant sur le DataSet, de plus fonctionne pour SqlServer, Access, et MySql.
Autrement bon debut,
Séb
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 19 avril 2010 à 06:14
bouv
Messages postés1411Date d'inscriptionmercredi 6 août 2003StatutMembreDernière intervention 3 mars 20191 18 avril 2010 à 23:11
J'oubliais de préciser. J'utilise les DataRow pour affecter les valeurs aux champs en mode Add et Edit.
Cela évite les problèmes suivants :
Date : pas besoin de faire la conversion au format mm/jj/aaaa
Texte : inutile de doubler les caractères du type ' et "
Champs OLE : ils sont gérés. Passer simplement un tableau de Byte en valeur
Etc,...
2 août 2015 à 09:02
Si vous connaissez un tuto pour approfondir / changer / améliorer ce type de code, merci de me donner le lien car j'ai cherché 2 heures sur google mais sans grand succès.. c'est soit hors de ma portée (trop technique) soit cela ne répond pas vraiment à ma recherche (VB.net POO, gestion BDD avec relations entre tables)
@ cs_Patrice99. Je pense commander ce bouquin, a moins que, depuis, tu n'ai eu connaissance de quelque chose de plus intéressant (en 5 ans, il s'en passe des choses..
Merci a tous.
2 août 2015 à 09:42
Concernant Link, ça ne marche pas avec Acces.
9 août 2015 à 06:57
Concernant LINK, effectivement j'ai lu ça quelque part, par contre, je code également en My-Sql pour un autre projet et là, cela doit pouvoir fonctionner, je n'ai pour l'instant, pas encore essayé. connais tu un tuto bien fait sur Link//My-sql ? (platform WampServer)
Amicalement,
Modifié par Whismeril le 2/08/2015 à 09:41
bon, dès fois, faut juste essayer... et ca marche.
Je n'ai pas eu à refaire une classe de liaison car les liaisons fonctionnent avec 2 lignes de code :-)
j'ai procédé comme suit:
Marche nickel... je ne le dirai jamais assez : MERCIIIIIII
Bien entendu, si il y a une meilleure méthode, je suis preneur...
2 août 2015 à 06:30
Je sais que ce post date d'il y a 5 ans, mais qu'importe, pour moi il est d'actualité.
Avant tout, un grand merci, programmeur débutant, ce code m'a permis de comprendre bien des choses... Ce n'est peut être pas écrit a la perfectionn il n'y a peut être pas de LINK mais c'est clair, facile à comprendre et donc exactement ce qu'il me fallait pour comprendre.
toutefois, une petite question. J'ai créé une BDD avec 5 tables. il y a bien entendu des relations entre ces tables. Elles ont été définie dans Access.
Y as t-il un moyen simple (poo) pour gérer ces relations???
J'avoue ne pas avoir encore beaucoup cherché sur ce sujet mais le pas de géant qu'il m'a été permis de faire grâce a ton code me dis que, peut être, si tu as dans un tiroir une version plus évoluée de ce code, je pourrai peut être faire un autre pas de géant dans ce monde d'objets..
Merci encore. Amicalement.
20 avril 2010 à 14:03
property en enum, mise a jour de structure, ... mais bon effectivement en 2 ans il a evoluer, et je n'es jamais mis la doc a jour (elle date d'au moins 4 à 5 ans) donc enormement de fonction/options ne sont pas documenté ...
De plus le code V2 permet de changé de base de donnée a la voler (passer de access a sql server et mysql ) sans changé une seul ligne de code.
ce qui permet de faire des applications multibase de donnée facilement.
a+
seb
20 avril 2010 à 13:38
PCPT>>La partie requête est gérée. Voir procédure EnumRecords dans la région Enum.
Mais pas (encore) avec les jointures et en mode très léger je te l'accorde.
En revanche pas de généricité c'est clair.
Aserf>>Je connais ton logiciel. Je l'ai essayé il y à 1 ou 2 ans. Il m'a permis de comprendre pas mal de chose sur ADO.Net en lisant le code qu'il produit.
Seulement, si mes souvenirs sont exacts, il ne tire pas profit de l'heritage et produit donc un code un peu plus lourd.
Je ne connais pas LINK mais je vais me renseigner. Merci du tuyaux.
19 avril 2010 à 15:52
Programming Entity Framework
Building Data Centric Apps with the ADO.NET Entity Framework
http://oreilly.com/catalog/9780596520298
19 avril 2010 à 14:11
J'ai ne pas vue ou tu a ecrit le code qui genere la class, autrement effectivement LINQ, ainsi que les dataset Type permette deja de faire ce genre de chose, autrement j'ai developper un logiciel qui fait a peu pres la meme chose, www.database2code.com, il genere des class pour chaque table, mais en ce basant sur le DataSet, de plus fonctionne pour SqlServer, Access, et MySql.
Autrement bon debut,
Séb
19 avril 2010 à 06:14
au final tu refais LINQ mais sans la partie requête et sans la généricité... ?
http://msdn.microsoft.com/fr-fr/library/bb397926.aspx
++
18 avril 2010 à 23:11
Cela évite les problèmes suivants :
Date : pas besoin de faire la conversion au format mm/jj/aaaa
Texte : inutile de doubler les caractères du type ' et "
Champs OLE : ils sont gérés. Passer simplement un tableau de Byte en valeur
Etc,...