2009-10-23 8 views
2

Je construis un système de planification. Le système actuel utilise simplement Excel, et ils tapent dans les temps comme 9: 3-5 (ce qui signifie 9:30 am-5pm). Je n'ai pas encore défini le format de stockage de ces heures, je pense que je devrais utiliser le temps militaire pour pouvoir calculer les heures, mais je voudrais éviter cela si possible. Mais fondamentalement, je dois être en mesure de comprendre comment calculer les heures. par exemple 9: 3-5 serait (7,5 heures). Je suis ouvert à différentes façons de stocker les temps aussi. Je dois juste être capable de l'afficher facilement pour que l'utilisateur comprenne et soit capable de calculer combien d'heures il est.Flex: Calculer des heures entre 2 fois?

Des idées?

Merci!

Répondre

3

solution laide sale rapide

public static const millisecondsPerHour:int = 1000 * 60 * 60; 

private function getHoursDifference(minDate:Date, maxDate:Date):uint { 
    return Math.ceil((maxDate.getTime() - minDate.getTime())/millisecondsPerHour); 
} 
+1

Pas si moche ... Obtient le travail avec le moins de code possible et n'a pas beaucoup d'impact sur les performances. –

+0

Merci, j'ai enlevé le Math.ceil() dans ma version comme je ne voulais pas faire l'arrondi, mais pour montrer l'heure sous forme décimale. –

0

Ok on dirait que vous parlez d'un changement de calendrier ou d'un plan qui est actuellement mis au point par une personne utilisant une feuille de calcul Excel et que vous voulez « informatiser » le processus. 1er avertissement: "La planification n'est pas triviale." La manière dont vous stockez l'heure n'est pas très importante, mais il est courant d'établir un certain niveau de granularité et de convertir le temps de la tâche en multiples entiers de cet intervalle afin de simplifier la tâche d'ordonnancement.

Si vous voulez automatiser le processus ou simplement effectuer une vérification d'erreur, vous voudrez peut-être un peu simplifier les choses. Un calendrier hebdomadaire de base avec des heures de début et de fin, et peut-être des informations sur les équipes seront nécessaires. Un calendrier d'exception serait une bonne idée à planifier dès le départ. Le calendrier des exceptions permet les congés et d'autres exceptions. Un tableau contenant des informations sur les ressources et la capacité sera nécessaire. Un tableau contenant toutes les tâches à programmer et toutes les dépendances entre les tâches sera nécessaire. Voulez-vous envisager des exigences concurrentes? (J'ai besoin d'un camion et d'un chauffeur ...) Voulez-vous envisager une planification intermittente des ressources? Devriez-vous prendre en charge la planification avant ou arrière? Prévoyez-vous soutenir quoi si des scénarios? (Ensuite, vous aurez besoin d'un calendrier maître qui est indépendant du calendrier de planification) Voulez-vous hiérarchiser la façon dont les tâches sont placées sur le calendrier? (Beaucoup de choses sont nécessaires ici en fonction du travail à faire.) Vous pouvez très bien vouloir identifier un sous-ensemble des tâches à programmer. Ensuite, fournissez simplement un mécanisme de rapport pour montrer si le travail restant peut tenir dans l'espace blanc de l'horaire. (Si vous ne pouvez pas obtenir les 10% les plus exigeants dans le temps disponible qui se soucie des 90% restants)

2nd Attention: "Si Dieu a écrit l'horaire, la plupart des compagnies ne pourraient pas le suivre."

Questions connexes