• Advertisement

[RESOLU]Table heure svp Mr Samifred

Tout ce qui concerne la version 8 de windev
**Windev est une marque déposée de Pcsoft**

[RESOLU]Table heure svp Mr Samifred

Messagepar ulmer » Sam Mar 01, 2008 9:58 pm

Bonsoir à tous,

Voila mon problème,j'ai pris le code de Samifred sur le total des "heures dans une colonne table"cela marche très bien mais lorsque je passe la table mémoire en fichier cela ne marche plus ?,car j'ai une fiche qui renseigne ma fenêtre table cela est peut-être le problème :oops: et le deuxième problème ... oui il y en a 2, si ma table est de 15 lignes il ne cumul plus les lignes cachées? sachant que le résultat est dans un champ saisie.

Merci encore pour les réponses.

stef
(Piètre débutant depuis 150 ans)
ulmer
Nouveau Membre
 
Messages: 17
Inscription: Sam Mar 01, 2008 9:39 pm

Advertisement

Messagepar Samifred » Dim Mar 02, 2008 8:10 am

Que la table soit fichier ou mémoire le code fonctionne la même chose....
Il faut simplement faire appel à la procédure après chaque modification dans la table.

TableAffiche(Table)
TotalHeures()


Code: Tout sélectionner
PROCEDURE TotalHeures()
LOCAL
   h,i,th,tm sont des entiers

POUR i=1 A TableOccurrence(Table)
   h=h+HeureVersEntier(Table[i][n])  // [n] étant le N° de la colonne à calculer
FIN
th=PartieEntière(h/360000)
tm=h modulo 360000/6000
SELON tm
   CAS <10 :
      Total_Heure=th+":0"+tm
   AUTRE CAS :
      Total_Heure=th+":"+tm     // <Total_Heure> étant le résultat
FIN
Cordialement, en espérant que ma collaboration soit profitable. Fred Image
PS: Il est important d'indiquer, dans la question, la version WD utilisée.
Note: Pas de question par MP, merci.
Avatar de l’utilisateur
Samifred
 
Messages: 3554
Inscription: Sam Nov 26, 2005 12:16 pm
Localisation: 128.0.0.0

Messagepar ulmer » Dim Mar 02, 2008 8:57 am

Merci Samifred,

Bon evidement cela ne fonctionne pas chez moi.

voila le code de ma fenêtre:

h,i,th,tm sont des entiers

POUR i =1 A TableOccurrence(Table)
h=h+HeureVersEntier(Table.COPILOTEH[i][9]) // Heure étant la colonne à calculer
FIN
th=PartieEntière(h/360000)
tm=h modulo 360000/6000

SELON tm
CAS <10 :
Total_Heure=th+":0"+tm
AUTRE CAS :
Total_Heure=th+":"+tm // <Total_Heure> étant le résultat
FIN

TableAffiche(Table)
TotalHeures()

je ne suis pas sur que le n° entre[] soit bon..sachant que le code est dans linitialisation de Table _Carnet et que dans la table j'ai 3 colonnes à calculer avec trois champs de saisies.


merci encore,j'espère ne pas vous souler avec ma question de débutant. :D

[/quote]
ulmer
Nouveau Membre
 
Messages: 17
Inscription: Sam Mar 01, 2008 9:39 pm

Messagepar Samifred » Dim Mar 02, 2008 10:48 am

Pourquoi mets-tu ce code dans ta fenêtre ? et où ? dans ta fenêtre...

C'est le code d'une procédure locale <TotalHeures()> que tu appels à chaque affichage de la table.
Sous la table tu as un champ texte nommé <Total_Heures> où le total calculé par la procédure est affiché.
Cordialement, en espérant que ma collaboration soit profitable. Fred Image
PS: Il est important d'indiquer, dans la question, la version WD utilisée.
Note: Pas de question par MP, merci.
Avatar de l’utilisateur
Samifred
 
Messages: 3554
Inscription: Sam Nov 26, 2005 12:16 pm
Localisation: 128.0.0.0

Messagepar ulmer » Dim Mar 02, 2008 10:59 am

Oui Samifred effectivement j'ai bien mis le code en procedure local et rien d'autre ailleur,seulement si ma table fait par exemple 10 lignes en visuel les autres lignes suivante ne seront pas prise en compte dans mon champ de saisie ?
voila mon code,enfin ton code :D

PROCEDURE TotalHeures()

h,i,th,tm sont des entiers

POUR i=1 A TableOccurrence(Table)
h=h+HeureVersEntier(Table.COPILOTEH[i]) // [n] étant le N° de la colonne à calculer
FIN
th=PartieEntière(h/360000)
tm=h modulo 360000/6000
SELON tm
CAS <10 :
Total_Heure=th+":0"+tm
AUTRE CAS :
Total_Heure=th+":"+tm // <Total_Heure> étant le résultat
FIN
TableAffiche(Table)
TotalHeures()

merci Samifred
ulmer
Nouveau Membre
 
Messages: 17
Inscription: Sam Mar 01, 2008 9:39 pm

Messagepar Samifred » Dim Mar 02, 2008 11:10 am

Tu n'as pas compris... tu relances un table affiche et la procédure en fin de procédure aie!! aie!!
Cordialement, en espérant que ma collaboration soit profitable. Fred Image
PS: Il est important d'indiquer, dans la question, la version WD utilisée.
Note: Pas de question par MP, merci.
Avatar de l’utilisateur
Samifred
 
Messages: 3554
Inscription: Sam Nov 26, 2005 12:16 pm
Localisation: 128.0.0.0

Messagepar ulmer » Dim Mar 02, 2008 1:06 pm

Effectivement je suis nul,donc j'ai replacé TableAffiche(Table) et
TotalHeures() dans initialisation Table_Carnet ma fenêtre donc jusque la je crois avoir bon ?

Par contre j'ai pas très bien compris [n]que dois-je mettre ?

et enfin toujour le même problème il additionne uniquement les lignes non cachées,pourquoi ?

merci,stef
ulmer
Nouveau Membre
 
Messages: 17
Inscription: Sam Mar 01, 2008 9:39 pm

Messagepar Samifred » Dim Mar 02, 2008 1:10 pm

Donne moi une adresse mail dans mon MP je t'envoie une fenêtre exemple en 7.5 que tu peux générer en 8.
Cordialement, en espérant que ma collaboration soit profitable. Fred Image
PS: Il est important d'indiquer, dans la question, la version WD utilisée.
Note: Pas de question par MP, merci.
Avatar de l’utilisateur
Samifred
 
Messages: 3554
Inscription: Sam Nov 26, 2005 12:16 pm
Localisation: 128.0.0.0

Messagepar ulmer » Dim Mar 02, 2008 2:40 pm

Samifred un grand merci,

je reprends à zéro je garde votre exemple,je crée un executable comment dois-je faire pour garder les heures déja enregistrées,car à chaque démarrage de l'application le fichier est vide?

merci encore pour votre disponibilité auprès des débutant comme moi :oops:
ulmer
Nouveau Membre
 
Messages: 17
Inscription: Sam Mar 01, 2008 9:39 pm

Messagepar Samifred » Dim Mar 02, 2008 3:29 pm

Ce n'est pas une application, c'est simplement une fenêtre exemple. Tu ne peux pas créer un exécutable avec cette fenêtre.
Il faut commencer par créer un projet et une base de données (Fichier) où tu pourras enregistrer les saisies effectuées dans la table ou dans une fiche (formulaire) associée.

Voir Ici : http://www.btsig.org/daigl/windev.php
Cordialement, en espérant que ma collaboration soit profitable. Fred Image
PS: Il est important d'indiquer, dans la question, la version WD utilisée.
Note: Pas de question par MP, merci.
Avatar de l’utilisateur
Samifred
 
Messages: 3554
Inscription: Sam Nov 26, 2005 12:16 pm
Localisation: 128.0.0.0

Messagepar ulmer » Dim Mar 02, 2008 9:43 pm

Oui samifred j'avais bien compris,je l'ai adapté à mon exe et ça marche très bien.
Vraiment merci encore pour ton aide précieuse :D

stephane
ulmer
Nouveau Membre
 
Messages: 17
Inscription: Sam Mar 01, 2008 9:39 pm



  • Advertisement

Retourner vers Forum Windev 8

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités