Message de rapport:
 

Re: Aide sur notre procedure d'affichage

Sujet: Re: Aide sur notre procedure d'affichage
par drcharly93 sur 26/9/2005 10:50:14

Bonjour,

Citation :
afficher le nombre de garçons et filles par etablissement ayant réussi à l'essai d'examen scolaire


Rien que cette phrase indique qu'il vous faut créer une requête avec regroupement sur l'établissement puisque vous désirez avoir les nombres réussis par établissement.

de plus vous cherchez deux résultats différents un compteur pour les garcons et un pour les filles.

Je vous conseille donc de créer 2 requêtes

Création de la requête pour compter le nombre de garçons qui ont été admis par établissement.
Ce résultat contient une valeur a Zéro pour le nombre de fille, celui ci sera calculer via une seconde requête.
etabSql est une chaîne
Rs1 est une Source de Données
Rs2 est une source de données

etabSql = "SELECT DISTINCT Etablissement AS Etablissement, "...
+ "Count(<Identifiant unique du fichier  EssaiDepartementalentreesixieme>) AS NbGarcon, "...
+ "'0' AS NbFille "...
+ "FROM EssaiDepartementalentreesixieme "...
+ "WHERE Anneescolaire = '" + pannee + "' "...
+ "AND Etablissement ='"+petab+ "' "...
+ "AND Admis='"+padmis+ "' "...
+ "AND Sexe = "M"

//Exécution de la requête
SI PAS HExécuteRequêteSQL(Rs1,hRequêteDéfaut,etabSql) ALORS
Erreur(HErreurInfo())
RENVOYER Faux
FIN

Création de la requête pour compter le nombre de filles qui ont été admis par établissement.
etabSql = "SELECT DISTINCT Etablissement AS Etablissement, "...
+ "Count(<Identifiant unique du fichier  EssaiDepartementalentreesixieme>) AS NbFille "...
+ "FROM EssaiDepartementalentreesixieme "...
+ "WHERE Anneescolaire = '" + pannee + "' "...
+ "AND Etablissement ='"+petab+ "' "...
+ "AND Admis='"+padmis+ "' "...
+ "AND Sexe = "F"


SI PAS HExécuteRequêteSQL(Rs2,hRequêteDéfaut,etabSql) ALORS
Erreur(HErreurInfo())
RENVOYER Faux
FIN

Maintenant on créer une fusion entre les 2 sources de données
POUR Tous Rs2
 SI HLitRecherche(Rs1,"Etablissement",Rs2.Etablissement) Alors
  Rs1.NbFille++
  HModifie(Rs1)
 SINON
  Rs1.Etablissement = Rs2.Etablissement
  Rs1.NbGarcon = 0
  Rs1.NbFille = 1
  HAjoute(Rs1)
FIN

On peut remplir la table
POUR TOUS Rs1
  TableAjoute(tblreusetab,Rs1.Etablissement + TAB...
                        + Rs1.NbGarcon + TAB...
                        + Rs1.NbFille) 
FIN


Tout ceci est saisie est la volée, n'a pas été testée et peut comporter des erreurs.
Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2