PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WINDEV 2024 → wdplanning
wdplanning
Iniciado por atrioux, set., 02 2005 11:23 AM - 3 respostas
Publicado em setembro, 02 2005 - 11:23 AM
j'utilise dans mon appli l'exemple wdplanning que j'ai remodeler a ma facon
une chose me derange et je n'arrive pas a trouver la solution

la methode bconflit qui permet de signaler si on a un conflit dans le
planning prend trop de temps lorsque le planning est rempli
on peut afficher a l'ecran jusqu'a 3 mois et 42 personnes
plus le planning se remplit et plus les temps sont long, trop long

pour le moment j'ai desactivé cette methode mais j'aimerais la garder et
l'optimiser

Aves vous la solution?
Publicado em setembro, 02 2005 - 12:31 PM
salut,
je suis débutant dans le développement,et je veux réaliser une application de planning et je veux connaitre comment tu as remodulé l'exemple selon vos besoins,
mon émail est : yyyaaassmine@voila.fr
merci à votre aide et je m'excuse j'ai pas une réponse à ta question
Publicado em setembro, 02 2005 - 3:11 PM
Bonjour,
il y a un planning très rapide ici : http://www.wdforge.org/kpitn/
Publicado em setembro, 02 2005 - 5:44 PM
Bonjour,

J'ai aussi remodelé l'exemple pour mon usage, avec non pas une sélection AM, PM mais heure début et heure fin.

Un avis, à la structure stItem, tu peux ajouter une variable numérique permettant de savoir combien de stPlage elle contient.

A chaque fois que tu ajoute une plage, ( méthode ajouteplace ), tu incrémentes la variable de sItem de 1

Pour la méthode bconfit, il suffit de lire les Item et d'incrémenter un compteur.
Dès que le n° Item correspond au bon numméro, tu peux sortir de la 1er bouble et attaquer la boucle de bConfilt:
POUR i=1 A Dimension(:TPlage) à remplacer par

POUR i=compteur A Dimension(:TPlage)
SI :TPlage[i]:NUMEROIT=:TPlage[nPlage]:NUMEROIT ALORS
...
SINON
SORTIR ( pas la peine d'aller plus loin, les plages sont trié dans la méthode TRIEPLAGES par NUMEROIT )

ou alors

dans BConfilt
Trouve est un boleen = FAUX
POUR i=1 A Dimension(:TPlage)
SI :TPlage[i]:NUMEROIT=:TPlage[nPlage]:NUMEROIT ALORS
trouve = vrai
SINON
si trouve = VRAI alors sortir ( idem, les plage sont trié par NUMEROIT par TRIEPLAGE, dont pas la peine de voir la suite, surtout si ton BConflit cherche à partir du 3ème ITEM, par contre, si tu teste dans les deniers, tu aura la même lenteur)
FIN

CORDIALEMENT,

C.AUBRY
SI