PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Graphique sous Webdev
Graphique sous Webdev
Débuté par karima, 22 fév. 2007 16:36 - 5 réponses
Posté le 22 février 2007 - 16:36
Bonjour,


J'essai de construire un graphique, un histogramme en fait mais en vain je n'y arrive.

J'aimerai juste qu'il m'affiche dans un graphe une statistique, du genre le nombre de fille, active, de moins de 25 ans mais je n'y arrive.

J'arrive pas a voir ou est mon erreur.

Voici mon code.

Merci d'avance pour vos réponses!


leSexe est une chaîne= Cmb_Sexe..ValeurAffichée
laSituation est une chaîne =Cmb_Situation..ValeurAffichée
lAge est une chaîne =Cmb_Age..ValeurAffichée
maDate est une Date=DateDuJour()

HExécuteRequête(REQ_SearchStat,hRequêteDéfaut,leSexe,laSituation,lAge,maDate)
HLitPremier(REQ_SearchStat)
Rslt est un entier =REQ_SearchStat.ComptageStat

grCrée("GRF_Stat", grHisto)
grAjouteDonnée("GRF_Stat", 1,1, Rslt)
grLibellé("GRF_Stat",grAfficheValeur,Vrai)
grDessine("GRF_Stat")


PS: J'ai crée un champs graphe auquel je lui affecte les lignes plus haut lors du traitement
Posté le 23 février 2007 - 10:10
Salut,

Une première idée serait de poster ton message dans le bon forum pour trouver plus d'aide.

@+, JF
Posté le 23 février 2007 - 11:25
réponse un peu brutale mais si tu as des questions, n'hésite pas


PROCEDURE
GraphConstruit(NomRequete="Q",NbAbscisses=0,Titre="",AfficherAbcisse=Vrai,
CaracteresAVirer="", Destination="", TypeGraphique=gr3DSHistoEmpilé,
DonneesATrier=Faux)
NumPolice est Police
TableauCategories est un tableau dynamique
ValeurCategorie est chaîne
IndiceCategorie est entier
DestinationTmp est une chaîne

TableauSeries est un tableau dynamique
ValeurSerie est chaîne
IndiceSerie est entier

ListeRubriques est chaîne
NbRubriquesRequete est entier

ListeRubriques=HListeRubrique(NomRequete)
NbRubriquesRequete=ChaîneOccurrence(ListeRubriques,RC)+1

b est entier
Char est chaîne

HLitPremier(NomRequete,hSansRafraîchir)
SI HEnDehors() ALORS
RETOUR
FIN

SI NbAbscisses=0 ALORS
SI PAS EstNum(HRécupèreRubrique(NomRequete,2)) OU
DateValide(HRécupèreRubrique(NomRequete,2)) OU
DateHeureValide(HRécupèreRubrique(NomRequete,2)) ALORS
NbAbscisses=2
FIN
FIN

grCrée("MonGraphe",TypeGraphique)
grType("MonGraphe",TypeGraphique)

SI Destination<>"" ALORS fSupprime(Destination)
//grDestinationchamp("MonGraphe","GRAPHE1")
SELON Minuscule(fExtraitChemin(Destination,fExtension))
CAS ".bmp"
grDestinationBMP("MonGraphe",Destination)
CAS ".jpg"
DestinationTmp=fExtraitChemin(Destination,fDisque+fRépertoire+fFichier)+".bmp"
grDestinationBMP("MonGraphe",DestinationTmp)
CAS ".emf"
grDestinationEMF("MonGraphe",Destination)
AUTRE CAS
grDestinationFen("MonGraphe",FenEnCours(),"")
FIN

// grMenu("MonGraphe",faux)
//grCouleurSérie("MonGraphe",1,RVB(128,0,0))
NumPolice=PoliceCrée("Arial" , 7, iNormal,iBleuFoncé)
grPoliceEtiquette("MonGraphe", NumPolice)
grTitre("MonGraphe",Titre)
grPoliceTitre("MonGraphe", NumPolice)
grLégende("MonGraphe",4)
grHistoEspacement("MonGraphe",10)

NumPolice=PoliceCrée("Arial" , 7, iNormal,iNoir)
grPoliceTitreAxe("MonGraphe", NumPolice)

//grtype(Graphe1,Grhisto)
TableauSeries = allouer un tableau dynamique de 0 chaînes
TableauCategories = allouer un tableau dynamique de 0 chaînes

POUR TOUT NomRequete
ValeurCategorie = HRécupèreRubrique(NomRequete,NbAbscisses)

// On vire certains caractères dans la catégorie pour gagner de la
place
SI CaracteresAVirer<>"" ALORS
b=0
BOUCLE
b++
Char=ExtraitChaîne(CaracteresAVirer,b)
SI Char=EOT ALORS SORTIR
ValeurCategorie=Remplace(ValeurCategorie,Char,"")
FIN
FIN

SI DonneesATrier ALORS
IndiceCategorie=TableauCherche(TableauCategories,tcDichotomique,ValeurCategorie)
SINON
IndiceCategorie=TableauCherche(TableauCategories,tcLinéaire,ValeurCategorie)
FIN
SI IndiceCategorie<1 ALORS
IndiceCategorie=TableauAjoute(TableauCategories,ValeurCategorie)
SI DonneesATrier ALORS TableauTrie(TableauCategories)
FIN
SI AfficherAbcisse ALORS
grEtiquetteCatégorie("MonGraphe",IndiceCategorie,ValeurCategorie)

SI NbAbscisses>1 ALORS
// 2 rubriques d'affichage
ValeurSerie = HRécupèreRubrique(NomRequete,1)

SI DonneesATrier ALORS
IndiceSerie=TableauCherche(TableauSeries,tcDichotomique,ValeurSerie)
SINON
IndiceSerie=TableauCherche(TableauSeries,tcLinéaire,ValeurSerie)
FIN
SI IndiceSerie<1 ALORS
IndiceSerie=TableauAjoute(TableauSeries,ValeurSerie)
SI DonneesATrier ALORS TableauTrie(TableauSeries)
FIN
grEtiquetteSérie("MonGraphe",IndiceSerie,ValeurSerie)
// grAjouteDonnée("MonGraphe",IndiceSerie,IndiceCategorie,HRécupèreRubrique(NomRequete,3))
grIncrémenteDonnée("MonGraphe",IndiceSerie,IndiceCategorie,HRécupèreRubrique(NomRequete,3))
SINON
POUR IndiceSerie=2 A NbRubriquesRequete
ValeurSerie = HRécupèreRubrique(NomRequete,IndiceSerie)
grEtiquetteSérie("MonGraphe",IndiceSerie-1,ExtraitChaîne(ListeRubriques,IndiceSerie,RC))
// grAjouteDonnée("MonGraphe",IndiceSerie-1,IndiceCategorie,HRécupèreRubrique(NomRequete,IndiceSerie))
grIncrémenteDonnée("MonGraphe",IndiceSerie-1,IndiceCategorie,HRécupèreRubrique(NomRequete,IndiceSerie))
FIN
FIN
FIN
grLibellé("MonGraphe",grAfficheValeur,Vrai)
grQuadrillage("MonGraphe",Vrai, grAbscisse)
grQuadrillage("MonGraphe",AfficherAbcisse, grOrdonnée)

grDessine("MonGraphe")

SI DestinationTmp<>"" ALORS
SI ImageConversion(DestinationTmp,Destination) ALORS
fSupprime(DestinationTmp)
SINON
Destination=DestinationTmp
FIN
FIN

libérer TableauSeries
libérer TableauCategories





karima a formulé la demande :
Bonjour,


J'essai de construire un graphique, un histogramme en fait mais en vain je
n'y arrive.

J'aimerai juste qu'il m'affiche dans un graphe une statistique, du genre le
nombre de fille, active, de moins de 25 ans mais je n'y arrive.

J'arrive pas a voir ou est mon erreur.

Voici mon code.

Merci d'avance pour vos réponses!


leSexe est une chaîne= Cmb_Sexe..ValeurAffichée
laSituation est une chaîne =Cmb_Situation..ValeurAffichée
lAge est une chaîne =Cmb_Age..ValeurAffichée
maDate est une Date=DateDuJour()

HExécuteRequête(REQ_SearchStat,hRequêteDéfaut,leSexe,laSituation,lAge,maDate)
HLitPremier(REQ_SearchStat)
Rslt est un entier =REQ_SearchStat.ComptageStat

grCrée("GRF_Stat", grHisto)
grAjouteDonnée("GRF_Stat", 1,1, Rslt)
grLibellé("GRF_Stat",grAfficheValeur,Vrai)
grDessine("GRF_Stat")


PS: J'ai crée un champs graphe auquel je lui affecte les lignes plus haut
lors du traitement


--
Pierre BOUSQUET

" Ne me dites pas que ce problème est difficile.
S'il n'était pas difficile, ce ne serait pas un problème. "
Posté le 23 février 2007 - 14:27
Oui, un peu brutale mais merci.

Tu ne vois pas ce qui cloche dans mon code, apparement t'as l'air de faire des choses plus complexes que moi, Moi tt ce que je veux c'est un graphique avec un seul résultat.

En espèrant que je trouverai de l'aide!


Merci
Posté le 23 février 2007 - 14:56
grDestinationFen() peut-être en Windev (ca marche)
par contre en WebDev je vois pas

karima avait soumis l'idée :
Oui, un peu brutale mais merci.

Tu ne vois pas ce qui cloche dans mon code, apparement t'as l'air de faire
des choses plus complexes que moi, Moi tt ce que je veux c'est un graphique
avec un seul résultat.

En espèrant que je trouverai de l'aide!


Merci


--
Pierre BOUSQUET

" Ne me dites pas que ce problème est difficile.
S'il n'était pas difficile, ce ne serait pas un problème. "
Posté le 23 février 2007 - 15:33
C'est bon j'y suis arrivé, il fallait bizarrement que je mette mon graphe dans une image en ajoutant le grDestinationChamps en Webdev.

Merci pour tout!