OCCURENCE D'UNE TABLE APRES EFFACEMENT
Stagiaire WDF
Inscrit:
04/11/2005 11:11
Post(s): 34
Voilà mon souci:
J'affiche une table sur une fenêtre à partir d'une requete. Dans la même fenêtre un bouton me permet de relancer cette requete (avec d'autre paramètres et de ré-afficher ma table).

Pour ce faire , j'ai (entre autre) le code suivant sur mon bouton :

TableSupprimeTout(Table)
HExécuteRequête(Requête_suivi_formation,hRequêteDéfaut,datdeb, datfin)
TableAffiche(Table)

Mon problème est que le nombre d'occurence reste le même avant qu'après alors que le nombre de lignes passe de 3 à 1 ce qui est vrai dans mon exemple.

Je pense que cela est dû à une mauvaise initialisation de ma table, mais quelle est la solution?

Si une âme charitable a une idée! Merci

Contribution le : 23/11/2005 17:40
Créer un fichier PDF de la contribution Imprimer


Re: OCCURENCE D'UNE TABLE APRES EFFACEMENT
Animateur WDF
Inscrit:
05/06/2003 14:23
De Québec
Post(s): 511
Salut,

D'apres le code que tu as ecris dans ton post je suppose que ta table parcours directement la requete car je vois pas de fichierverstablememoire.

Donc en l'occurrence je ferais plutot un tableaffiche(table,tadebut) ce qui a pour but de raffraichir la table.

et logiquement ton nombre d'occurrence devrait etre bon vu que tu as tout supprime avant.

Il y a un point IMPORTANT a ne pas oublier quand meme

Citation :
Libération des ressources de la requête
Pour libérer les ressources d'une requête, utilisez la fonction HAnnuleDéclaration. Si cette opération n'est pas effectuée, la requête est toujours présente dans le contexte Hyper File en cours, et est accessible depuis n'importe quel traitement.

Remarque : les ressources de la requête ne sont pas libérées automatiquement à la fermeture de la fenêtre qui a exécuté la requête (utilisation de la fonction HExécuteRequête).


Nous avons tendance à oublier ce point.

a++++

Contribution le : 23/11/2005 18:58

Edité par Oceans sur 23/11/2005 19:13:46
Edité par Oceans sur 23/11/2005 19:14:24
Créer un fichier PDF de la contribution Imprimer


Re: OCCURENCE D'UNE TABLE APRES EFFACEMENT
Stagiaire WDF
Inscrit:
04/11/2005 11:11
Post(s): 34
Merci de ta réponse. j'ai essayé. Donc le traitement se fait bien lorsque je clique sur le bouton avec ce code :

TableSupprimeTout(Table)
TableAffiche(Table,taDébut)
HExécuteRequête(Requête_suivi_formation,hRequêteDéfaut,datdeb, datfin)
TableAffiche(Table, taDébut)

Par contre une fois ce traitement effectué, je fais un traitement (Changement de couleur de fond de chaque ligne de table en fonction de la date). Pour cela j'utilise ce code dans la section 'Affichage d'une ligne de Table' :

i est un entier = 0
SI TableOccurrence(Table,toTotal) <> 0 ALORS

POUR i = 1 A TableOccurrence(Table,toTotal)
SI FIN_FORMATION[i] < DateDuJour() ALORS
Table[i]..CouleurFond = iRougeClair
FIN

Et c'est là qu'il me renvoie la mauvaise valeur d'occurence (3 à la place de 1 dans mon exemple) d'où plantage sur l'indice [i]

Contribution le : 24/11/2005 09:23
Créer un fichier PDF de la contribution Imprimer


Re: OCCURENCE D'UNE TABLE APRES EFFACEMENT
Developpeur WDF
Inscrit:
21/06/2005 18:17
Post(s): 115
Essaye en remplacent ca :

POUR i = 1 A TableOccurrence(Table,toTotal)
 SI FIN_FORMATION[i] < DateDuJour() ALORS
 Table[i]..CouleurFond = iRougeClair
FIN


PAR

POUR i = 1 A TableOccurrence(Table,toAffichée)
 SI FIN_FORMATION[i] < DateDuJour() ALORS
 Table[i]..CouleurFond = iRougeClair
FIN

Contribution le : 24/11/2005 14:42
Créer un fichier PDF de la contribution Imprimer


Re: OCCURENCE D'UNE TABLE APRES EFFACEMENT
DSI WDF
Inscrit:
03/12/2004 07:46
Post(s): 235
Je crois que Oceans à raison qu'il pourrait être judicieux de vider toutes les ressources occupées par la requête avant de la réexecuter
personnellement j'essaierais le code ci-dessous même si il est probable qu'il dégrade un peu les temps de réponse.

TableSupprimeTout(Table)
TableAffiche(Table,taDébut)
<B>HAnnuleDéclaration(Requête_suivi_formation)</B>
HExécuteRequête(Requête_suivi_formation,hRequêteDéfaut,datdeb, datfin)
TableAffiche(Table, taDébut)

Contribution le : 24/11/2005 15:39
Créer un fichier PDF de la contribution Imprimer


Re: OCCURENCE D'UNE TABLE APRES EFFACEMENT
Anonyme
Après moultes tentatives, je crois que le 'truc' est plus sournois que ça et qu'en fait dans la section 'affichage d'une ligne de la table' on ne peut gérer qu'une ligne à la fois, donc tout le code avec des indices est bon pour la poubelle. Mais je n'ai pas encore la solution définitive..

Contribution le : 24/11/2005 16:45
Créer un fichier PDF de la contribution Imprimer


Re: OCCURENCE D'UNE TABLE APRES EFFACEMENT
Animateur WDF
Inscrit:
05/06/2003 14:23
De Québec
Post(s): 511
Salut,

C'est pas si sournois que ca ce qu'il faut savoir c'est que pour les tables fichier on ne peut pas faire effectivement de la gestion de couleur pour les lignes car on a pas acces a toutes les lignes proprement dite.

Mais il t'est possible de transformer ta table en memoire, et de ce faire utiliser la fontion fichierverstablememoire et de la conserver ton code pour mettre la couleur de tes lignes.

a+++

Contribution le : 24/11/2005 18:16
Créer un fichier PDF de la contribution Imprimer


Re: OCCURENCE D'UNE TABLE APRES EFFACEMENT
Animateur WDF
Inscrit:
26/06/2002 16:24
De wdforge.org
Post(s): 2822
Hum...
Pour assurer le RAZ d'une table fichier, il suffit d'en débrancher le parcours.

sFichier est une chaine=Table..FichierParCouru
Table..FichierParcouru=""
// relance de la requete
Table..FicheirPacouru=sFichier


Là cela devrait aller mieux.

Contribution le : 25/11/2005 10:36
_________________
R&B
Contact, CV.
Créer un fichier PDF de la contribution Imprimer


Re: OCCURENCE D'UNE TABLE APRES EFFACEMENT
Stagiaire WDF
Inscrit:
04/11/2005 11:11
Post(s): 34
Effectivement, en remplaçant la table fichier par une table mémoire, ça marche!!
Merci beaucoup du tuyau!!

Michel

Contribution le : 25/11/2005 11:33
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