[RESOLU] Filtre sur un fichier
Stagiaire WDF
Inscrit:
25/02/2004 15:46
De La grande bleue
Post(s): 36
Bonjour a tout le monde

voila j'explique mon probleme j'essai cette formule et ca ne fonctionne pas:

Procedure Filtrage(ValMini,ValMaxi,ValPointage,ValdateDebut,valDateFin)

HFiltre(Fichier_Vetuste,CLEFILTRAGE,HConstruitValClé(Fichier_Vetuste,CLEFILTRAGE,...
HFiltre(Fichier_Vetuste,JOURNAL,ValMini,ValMaxi),HFiltre(Fichier_Vetuste,REPARATION,valPointage),...
HFiltre(Fichier_Vetuste,D_APPEL,valdatedebut,valdateFin)))

TableAffiche(Main.Table_Vetuste)

en clair je dois filtrer selon la cle journal ( A ou B ou C)
et selon Reparation ( oui ou non) et enfin selon une date (Exemple en janvier 2004 -01/01/2004 a 31/01/2004)

et quand je click j'ai une table vide) alors que j'ai 1000 enregistrement sur les 2 ans.

si je fait un filtre a la fois ca fonctionne au vu du filtre mais tout ensemble , je perd mon latin.

merci d'avance pour un debut de soluce.

Contribution le : 03/07/2004 00:10
_________________
A+ Michel34
Créer un fichier PDF de la contribution Imprimer


Re: Filtre sur un fichier
Stagiaire WDF
Inscrit:
25/02/2004 15:46
De La grande bleue
Post(s): 36
voila avec l'editeur de requete j'ai creer ma requette et j'ai un message
d'erreur:

je donne les procedures

*****************************************************************

// Syntaxe :
//Calcul_filtre (, , ,
, )
//
// Paramètres :
// JF1 :
// JF2 :
// RF1 :
// DD :
// DF :
// Valeur de retour :
// Aucune

PROCEDURE Calcul_filtre(JF1,JF2,RF1,DD,DF)
Sablier(Vrai)
Main.MonFiltre="SELECT Fichier_Vetuste.JOURNAL AS
JOURNAL,Fichier_Vetuste.REPARATION AS REPARATION,"+...
"Fichier_Vetuste.D_APPEL AS D_APPEL FROM Fichier_Vetuste WHERE
Fichier_Vetuste.JOURNAL BETWEEN '"+JF1+...
"' AND '"+JF2+"' AND Fichier_Vetuste.REPARATION = '"+RF1+"' AND
Fichier_Vetuste.D_APPEL BETWEEN '"+DD+"' AND '"+DF+"'"

Affiche_Ma_Table()

Sablier(Faux)

***************************************************************************

// Syntaxe :
//Affiche_Ma_Table ()
//
// Paramètres :
// Aucun
// Valeur de retour :
// Aucune

PROCEDURE Affiche_Ma_Table()
SI HExécuteRequêteSQL(Main.MonFiltre) ALORS
TableSupprimeTout(Main.T_Seeg)
HLitPremier(Main.MonFiltre)

TANTQUE PAS HEnDehors(Main.MonFiltre)

TableAjouteLigne(Main.T_Seeg,Fichier_Vetuste.JOURNAL+TAB+Fichier_Vetuste.D_A
PPEL+...

TAB+Fichier_Vetuste.REFERENCE+TAB+Fichier_Vetuste.MATERIEL+TAB+Fichier_Vetus
te.EURO+...
TAB+Fichier_Vetuste.REPARATION)

HLitSuivant(Main.MonFiltre)
FIN
SINON
Erreur("Erreur d'initialisation de la
requête"+RC+HErreur()+RC+HErreurInfo())

FIN
HAnnuleDéclaration(Main.MonFiltre)
// TableAffiche(Main.T_Seeg)



Contribution le : 03/07/2004 02:12
_________________
A+ Michel34
Créer un fichier PDF de la contribution Imprimer


Re: Filtre sur un fichier
Animateur WDF
Inscrit:
02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
Bonjour Michel,

Je te conseille la syntaxe suivante :

PROCEDURE Calcul_filtre(JF1,JF2,RF1,DD,DF)

Rs est une Source de donnees
Sql est une chaine

Sablier(Vrai)
Sql = "SELECT Fichier_Vetuste.JOURNAL AS JOURNAL, "?
      + "Fichier_Vetuste.REPARATION AS REPARATION, "...
      + "Fichier_Vetuste.D_APPEL AS D_APPEL "...
      + "FROM Fichier_Vetuste "...
      + "WHERE Fichier_Vetuste.JOURNAL BETWEEN '"+JF1+"' AND '"+JF2+"' "...
      + "AND Fichier_Vetuste.REPARATION = '"+RF1+"' "...
      + "AND Fichier_Vetuste.D_APPEL BETWEEN '"+DD+"' AND '"+DF+"'"

SI PAS HExécuteRequêteSQL(Rs, HrequeteDefaut,Sql) ALORS
 Erreur(HerreurInfo())
 RETOUR
FIN

TableSupprimeTout(Main.T_Seeg)
HLitPremier(Rs)

TANTQUE PAS HEnDehors(Rs)

 TableAjouteLigne(Main.T_Seeg,Rs.JOURNAL+TAB+Rs.D_A
PPEL+...
 TAB+Rs.REFERENCE+TAB+Rs.MATERIEL+TAB+Rs.EURO+...
 TAB+Rs.REPARATION)

 HLitSuivant(Rs)
FIN
HAnnuleDéclaration(Rs)



Contribution le : 04/07/2004 13:50
_________________
@A+
Contact (privé)......
email : drcharly@wdforge.org
[DrCharly93]
Créer un fichier PDF de la contribution Imprimer


Re: Filtre sur un fichier
Stagiaire WDF
Inscrit:
25/02/2004 15:46
De La grande bleue
Post(s): 36
Salut et merci pour le morceau de code,en faite j'ai resolu le pb en reprenant point par point le code et les composants,et je me suis apercu quand j'ai supprimé la table memoire construite par mes soins ,et remplacer par une table construit avec l'assistant on pouvait la remplir avec la requete que j'avais creer , et maintenant ca fonctionne .
j'ai teste ton code avec mon ancienne configuration et ca fonctionne aussi.
j'en deduit que j'ai crié "Au secour" un peu trop vite et je tient a vous remercier pour votre patience.

Contribution le : 05/07/2004 17:42
_________________
A+ Michel34
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant




Enregistrer votre réponse
CompteNom   Mot de passe   Authentification
Message:


Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


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