Bonjour ou bonsoir selon votre fuseau horaire
J'ai monté une nouvelle BD Access pour un suivi précis des actions possibles lors d'un projet de numérisation d'archives.
Je suis rendu à l'étape des états pour le suivi.
Chaque étape a sa table qui permet d'inscrire exactement chaque action, avec le no de l'employé, date et heure de l'action, la durée de l'action et les secondes que j'ai rajouté au cas ou pour des calculs plus tard pour les états. Peut être que le champs "seconde" disparaîtra dans les tables... Je verrai !
Je vous mets la structure des tables Saisie, Preparation, Numerisation, CQ et Remise_Forme.
Pour les actions possibles :
1. D pour Débuter
2. P pour Pause
3. R pour recommencer
4. T pour Terminer.
Ce qui fait que pour chaque table j'ai deux requêtes. La première c'est pour sortir les enregistrements dont Action_1 est D "débuter" et ensuite Action_2 est P "Pause" ou T "Terminer". La deuxième requête pour Action_1 est R "Reprise" et Action_2 est P "Pause" ou T "Terminer".
Je vous mets les deux requêtes pour la table Saisie.
Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 SELECT Saisie.[No], Saisie.ID_Boite, Saisie.Responsable_saisie_1, Saisie.Date_Saisie_1, Saisie.Heure_Saisie_1, Saisie.Action_1, Saisie.Responsable_saisie_2, Saisie.Date_Saisie_2, Saisie.Heure_Saisie_2, Saisie.Action_2, Saisie.Duree_Saisie, Saisie.Duree_Secondes FROM Saisie WHERE (((Saisie.Action_1)="D") AND ((Saisie.Action_2)='P' Or (Saisie.Action_2)='T')) ORDER BY Saisie.[No];
Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 SELECT Saisie.[No], Saisie.ID_Boite, Saisie.Responsable_saisie_1, Saisie.Date_Saisie_1, Saisie.Heure_Saisie_1, Saisie.Action_1, Saisie.Responsable_saisie_2, Saisie.Date_Saisie_2, Saisie.Heure_Saisie_2, Saisie.Action_2, Saisie.Duree_Saisie, Saisie.Duree_Secondes FROM Saisie WHERE (((Saisie.Action_1)='R') AND ((Saisie.Action_2)='P' Or (Saisie.Action_2)='T')) ORDER BY Saisie.[No];
Si je fusionne ces deux requêtes SQL avec un UNION et un ORDER BY voici ce que cela donne...
Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 SELECT Saisie.[No], Saisie.ID_Boite, Saisie.Responsable_saisie_1, Saisie.Date_Saisie_1, Saisie.Heure_Saisie_1, Saisie.Action_1, Saisie.Responsable_saisie_2, Saisie.Date_Saisie_2, Saisie.Heure_Saisie_2, Saisie.Action_2, Saisie.Duree_Saisie, Saisie.Duree_Secondes FROM Saisie WHERE (((Saisie.Action_1)="D") AND ((Saisie.Action_2)="P" Or (Saisie.Action_2)="T")) UNION SELECT Saisie.[No], Saisie.ID_Boite, Saisie.Responsable_saisie_1, Saisie.Date_Saisie_1, Saisie.Heure_Saisie_1, Saisie.Action_1, Saisie.Responsable_saisie_2, Saisie.Date_Saisie_2, Saisie.Heure_Saisie_2, Saisie.Action_2, Saisie.Duree_Saisie, Saisie.Duree_Secondes FROM Saisie WHERE (((Saisie.Action_1)="R") AND ((Saisie.Action_2)="P" Or (Saisie.Action_2)="T")) ORDER BY [No];
Comme vous voyez cela fonctionne en plus avec ORDER BY cela affiche correctement l'ordre des actions.
Le problème arrive lorsque j'ajoute une requête pour une autre table... exemple Preparation. Le message est ceci...
Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 SELECT Saisie.[No], Saisie.ID_Boite, Saisie.Responsable_saisie_1, Saisie.Date_Saisie_1, Saisie.Heure_Saisie_1, Saisie.Action_1, Saisie.Responsable_saisie_2, Saisie.Date_Saisie_2, Saisie.Heure_Saisie_2, Saisie.Action_2, Saisie.Duree_Saisie, Saisie.Duree_Secondes FROM Saisie WHERE (((Saisie.Action_1)="D") AND ((Saisie.Action_2)="P" Or (Saisie.Action_2)="T")) UNION SELECT Saisie.[No], Saisie.ID_Boite, Saisie.Responsable_saisie_1, Saisie.Date_Saisie_1, Saisie.Heure_Saisie_1, Saisie.Action_1, Saisie.Responsable_saisie_2, Saisie.Date_Saisie_2, Saisie.Heure_Saisie_2, Saisie.Action_2, Saisie.Duree_Saisie, Saisie.Duree_Secondes FROM Saisie WHERE (((Saisie.Action_1)="R") AND ((Saisie.Action_2)="P" Or (Saisie.Action_2)="T")) UNION SELECT Preparation.[No], Preparation.ID_Boite, Preparation.Responsable_Preparation_1, Preparation.Date_Preparation_1, Preparation.Heure_Preparation_1, Preparation.Action_1, Preparation.Responsable_Preparation_2, Preparation.Date_Preparation_2, Preparation.Heure_Preparation_2, Preparation.Action_2, Preparation.Duree_Secondes FROM Preparation WHERE (((Preparation.Action_1)="D") AND ((Preparation.Action_2)="P" Or (Preparation.Action_2)="T")) ORDER BY [No];
Avec ou sans le ORDER BY j'ai toujours le même message d'erreur....
Personnellement je comprends pas... Dans mes requêtes SQL pour la table Preparation comme pour tous les autres tables (Numerisation, CQ et Remise_Forme) c'est la même quantité de champs, de type et formatage. Par contre juste les noms changent.
Pouvez-vous m'aider s.v.p. ????
Merci
Partager