Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

REQUÊTES SHAPE AVEC MSHFLEXGRID


Information sur la source

Catégorie :Base de Donnees Classé sous : shape, ado, mshflexgrid, hierarchique Niveau : Débutant Date de création : 10/05/2007 Date de mise à jour : 10/05/2007 16:33:53 Vu / téléchargé: 4 835 / 1 380

Note :
Aucune note

Commentaire sur cette source (5)
Ajouter un commentaire et/ou une note


Description

Cliquez pour voir la capture en taille normale
Bonjour,

Cette source propose de montrer l'aspect hierarchique du contrôle MSHFLEXGRID. D'après son nom, je me doutais bien qu'on pouvait afficher des données de manière hierarchique sans vraiment savoir comment. Et pour une fois VBFrance ne me l'a pas appris (à moins que j'ai mal cherché ...).

La solution est d'utiliser un RecordSet Hierarchique obtenu via ADO par l'exécution d'un requête SHAPE.

Cette requête a pour syntaxe :

   SHAPE {parent-statement}
   APPEND Aggregate
        | ({child-statement} [As Alias]
          RELATE parent-field TO child-field | parameter-marker
                 [, parent-field TO child-field | parameter-marker ...])
          [, Aggregate | ({child statement})...]

   SHAPE {non-normalized-statement} [AS Alias]
   COMPUTE Aggregate
         | Alias
         | ({child-statement} [As Alias] RELATE parent-field TO
                                        child-field | parameter-marker)
           [, Aggregate | Alias | ({child-statement}...)]
   [BY grouping-field [, grouping-field]]

   SHAPE {non-normalized-statement} [AS Alias]
   BY grouping-field [, grouping-field]

Pour l'exemple, j'ai choisi de lister les différents niveaux d'une région en France. Etant limité pour le ZIP, je n'en ai gardé qu'une (PACA)

Nous allons avoir comme hierarchie :
Région
---Départements
-----Arrondissements      
---------Cantons
------------Communes

Pour chaque commune, nous avons le nombre d'habitants. Nous allons utiliser les fonctions d'agrégation de ADO SHAPE pour avoir le nombre d'habitant à chaque niveau.

 

Conclusion

Cette source n'a pas la prétention de couvrir l'ensemble des nombreuses et assez compliquées fonctions de ADO SHAPE. Je vous suggère l'article MSDN pour appronfondir : http://support.microsoft.com/kb/189657/fr (manifique traduction automatique ^^)

N'hésitez pas à commenter et enrichir cette brève présentation de ADO SHAPE.

++
Moustachu

 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

10 mai 2007 16:33:53 :
Compactage de la base

Commentaires et avis

signaler à un administrateur
Commentaire de tbbuim1 le 14/05/2007 08:58:24

Pas mal le moustachu, sympa d'avoir pensé à nous. M'enfin, pour faire de la hiérarchie je préfère nettement les treeview, pas besoin de Shape et c'est quand même plus joli. Là c'est un peu moche (faut l'avouer :p), l'avantage cela dit c'est qu'on peut faire apparaitre plusieurs lignes d'un coup dans une branche par Word wrap = true, en plus tu as choisi ma région ^^
De plus, il me semble qu'on peut faire ça sans Shape, j'avais déjà vu un exemple ya longtemps sur un autre site de développeurs VB...

signaler à un administrateur
Commentaire de moustachu le 14/05/2007 16:00:21

Bonjour,

Tu as effectivement différentes manière d'afficher. La source était l'occasion de présenter les requêtes Shape et l'aspect hierarchique du MsHFlexGrid.

Si j'ai pris cette région, c'est p'tet que c'est la mienne aussi ^^

Merci pour ton commentaire.

++
Moustachu

signaler à un administrateur
Commentaire de waluigii le 18/05/2007 01:55:32


Salut,

Je sais pas si ta phrase est mal construite ou pas mais j'ai du mal à comprendre le but de ton programme. Du à cet effet, point de vu du code je ne peux pas mettre de commentaire à ce momemnt. À la prochaine Le Moustachu!

@+

signaler à un administrateur
Commentaire de moustachu le 18/05/2007 08:35:28

waluigii>Le but du code est d'utiliser l'aspect hierarchique du controle MSHFLEXGRID. Pour cela, on a besoin d'un recordset hierarchique qui se construit, ici, a l'aide des commandes ADO SHAPE. Comme exemple de hierarchie j'ai choisi les différents niveau d'une région française.

++
Moustachu

signaler à un administrateur
Commentaire de waluigii le 18/05/2007 15:11:14


Merci moustachu, j'ai une idée maintenant.


@+ Bon progrès

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

comment utiliser Shape en MSHFlexGrid [ par biari ] Je voudrais bien si qlq 1 à un exemple ou un article sur l'utilisation du Shape dans une MSHFlexGrid me facilitant ainsi et finalement comprendre so Ado Shape Append [ par kLuxiWare ] J'ai créé une base de données avec deux tables liées.Je crée un recordset par ADO avec la méthode Shape Append.J'ai récupéré la table parent à travers SOS recordset hierarchique (SHAPE) [ par treniti ] Bonjour,j'utilise un recordset hierarchique (SHAPE) à la place d'un data environment pour remplir un datareport:Cn.Provider = "MSDataShape"le problème MSHFlexgrid shape [ par PunkDude424 ] Salut, jai un MSHFlexgrid que je voudrais hiérarchisé.....en faite jajoute moi meme les ligne et je voudrais pouvoir avoir un petit plus pou API perdue [ par Thie0806 ] ThierryJ'ai créé une appli => tout OK avec un OCX qui se trouve dans c:\windows\system32\MSHFlexgrid.ocxJ'au débuggé => tout IMPRESSION FLOUE avec mshflexgrid [ par darkstation666 ] Bonjour voila je suis en plein developpement d'un programme de facturation le resultat est affiché dans un MSHFLEXGRID. une fois imprimée le result Bd ADO Modification [ par papounez ] BonjourDebutant VB6j'ai une base je peut naviguer un a un (tb.MoveNext)  et modifier( tb![nom] = txtnom.Text )la pas de Probleme mais c'est pour modif Aider moi ADO ou DAO [ par ahmedarous312 ] Ocean[size=3]j'ai une connection vb access 2003et cette application va etre tourner sur un réseau localquelle 'est le type de connection que vous me c Comment Rendre un MSHFlexGrid "Updatable"???? [ par aouane ] Bonjour,J'utilise un FlexGrid hiérarchical, pour afficher des informations issues d'une base de données à l'aide d'un DataEnvironement.Dans l'applicat listview et ado.net [ par joflo ] bonjour tousdebutant en .net je voudrais savoir commen on rempli un listview avec une base accessen .netje suis arrivé a faire fonctionner un datagrid


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 0,437 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.