-
Traitement sur les dates
Bonjour,
je suis entrain de realiser une requete sql pour recuperer le temps de prise en charge des demandes client.
exemple: le client a créé une demande le 07/05/2021 à 10h30 et le technicien l'a pris en charge a 07/05/2021 à 12h00
donc le temps de prise en charge est 1h30min.
le probleme c 'est que lorsque le client créé la demande par exemple vendredi apres 18h et le technicien ne travaille pas le week end il le prend lundi matin, dans ce ca je me retrouve devant un temps de prise en charge qui depasse 48h chose qui n'es pas juste
comment je peux faire sur sql pour traiter ces cas.
j'ai le cas des week end et le cas du temps hors travail sachant que le technicien travail de 9h a 18h.
Bien cordialement
-
Il faut que vous ayez une table de cendrier avec TOUTES les dates de TOUTES les années (depuis l'origine du travail jusqu'à la fin des temps.... au moins 30 ans) avec le fait que c'est un jour férié et pour les jours non fériés les horaires d'ouvertures.
Lisez les article que j'ai écrit à ce sujet :
Pour un modèle de table de calendrier : https://sqlpro.developpez.com/cours/gestiontemps/
Pour le calcul des jours férié variables : https://blog.developpez.com/sqlpro/p...date_de_paques
A +
-
Bonjour,
Pour ma part je partirai d'une table calendrier avec tous les jours de l'année, et une table "présence" avec l'id du technicien et les heures de début/fin de présence.
Si les deux événements sont sur la même journée, une simple différence ente les deux fait l'affaire.
Sinon il faut prendre
Le nombre d'heures entre la création de la demande et la fin de la journée du technicien
Le nombre de jours entre la date de création de la demande et la date de prise en charge
Le nombre d'heures ente la prise de poste du technicien et la prise en charge de la demande.
En affinant un peu tu peux aussi gérer des plages de présence dans une même journée pour un même technicien. 3 heures de réunion ne doivent pas entrer dans le calcul ;)
Tatayo.
-
Calendrier
Bonjour merci pour les réponses.
donc j'ai commencé par lire ton article sql pro et j'ai essayé d'executer le code, le probleme c que sql server ne comprend pas 'domain'
lorsque j'execute la requete create domain D_PLIN_ANNEE... J'ai un msg qui dit que domain n'est pas connu
-
remplace par les types simples de SQL.
A +