Retour sommaire : Direct Planning - Formules - Voir aussi : ‣
Un opérateur peut il commencer à travailler sur une tâche ?
Ce code génère une couleur
Dim w_Tache as Interfaces.Tache
' Récupère la tâche précédente dans la gamme
w_Tache = Tache.Gamme_Tache_Precedente()
' S’il y a bien une tâche précédente
If w_Tache isNot Nothing andalso w_Tache.estValide then
if w_Tache.Tache_Terminee Then
' Tâche précédente terminée --> vert ; on peut commencer a travailler sur cette tâche
couleur = Color.FromArgb(89,255,89)
else
if w_Tache.Tache_Commencee then
' Tâche précédente terminée --> bleu ; on va sans doute bientot pouvoir commencer a travailler sur cette tâche
couleur = Color.FromArgb(117,255,255)
else
' Aucune tache amont de l'OF n'est commencée --> rouge ; on ne peut pas travailler sur cette tâche
couleur = Color.FromArgb(255,117,117)
' On parcours les tâches en amont à la recherche d'au moins une tâche commencée
Dim Encore as Boolean = true
while Encore
w_Tache = w_Tache.Gamme_Tache_Precedente()
If not(w_Tache isNot Nothing andalso w_Tache.estValide) then
exit while
end if
if w_Tache.tache_Commencee then
' Au moins une tâche mont de l'OF qui est commencée --> rose ; on ne peut pas travailler de suite sur cette tâche mais l'OF est commencé
couleur = Color.FromArgb(255,117,255)
exit while
end if
end while
end if
end if
else
' première tâche de l'OF : on peut commencer à travailler sur cette tâche
couleur = Color.FromArgb(89,255,89)
End if