Bonjour nico84,
J'ai essayé la solution que tu as mise sur ton 1er post, j'ai même créé 2 tables pour faire le test, mais rien à faire cela me donne une erreur !
sur la ligne :
CurrentDb.Execute "insert into Table2 (N° BTP,Semaine interv,Annee interv) select N° BTP,Semaine interv,2021 from Table1 where annee=2020", dbFailOnError
Mais de toute façon, je suis quand même dépendant de la requête "report_preventif", car elle fusionne les données qui se trouvent sur la table "préventif" et "planning preventif".
Ci-dessous le contenu de chaque table et de la requête report_preventif :
Champs de la table "préventif"
Date Création, Date en cours, Semaine Calculée, Travaux à effectuer, Code machine, Temps théorique, Activé, unitée, Sous organe, Libellé, N° BTP, périodicité, Type d'intervention, Organisation
Champs de la table "Planning preventif"
N° BTP, Semaine interv, Année interv, soldée interv, date de fin du BTP
Champs de la requête "report_preventif"
N° BTP, Semaine interv, Année interv (table planning preventif)
Code machine, périodicité, Activé (table préventif)
Requête "report_preventif"
1 2 3 4
| SELECT [Planning preventif].[N° BTP], préventif.[Code machine], [Planning preventif].[Semaine interv], [Planning preventif].[Année interv], préventif.périodicité
FROM préventif INNER JOIN [Planning preventif] ON préventif.[N° BTP] = [Planning preventif].[N° BTP]
WHERE (((préventif.Activé)=Yes))
ORDER BY [Planning preventif].[N° BTP], [Planning preventif].[Semaine interv] DESC , [Planning preventif].[Année interv] DESC; |
Donc mon select dois aller chercher les infos de la table "Planning preventif" et "préventif" pour la périodicité (1, 2, 3, 4, 5 ans, ...)
et lors de l'insertion dans la table "Planning preventif" prendre en compte la périodicité et l'additionner à l'année 2020.
Ex:
Planning Preventif initial
N° BTP |
Semaine interv |
Année interv |
soldée interv |
date de fin du BTP |
7 |
31 |
2020 |
-1 |
28/07/2020 (périodicité 1ans) |
8 |
31 |
2020 |
-1 |
29/07/2020 (périodicité 2ans) |
Planning Preventif après report
N° BTP |
Semaine interv |
Année interv |
soldée interv |
date de fin du BTP |
7 |
31 |
2020 |
-1 |
28/07/2020 (périodicité 1ans) |
7 |
31 |
2020 |
-1 |
28/07/2021 |
8 |
31 |
2020 |
-1 |
29/07/2020 (périodicité 2ans) |
8 |
31 |
2020 |
-1 |
29/07/2022 |
Exemple de résultat de la requête "report_preventif"
Code machine |
Année interv |
Semaine interv |
N° BTP |
périodicité |
ACCOMP07 |
2020 |
4 |
798 |
1 |
ACCOMP07 |
2020 |
15 |
1242 |
1 |
Voila! j'espère m'être fait comprendre, ce n'est pas évident à expliquer... en théorie c'est simple! mais pas à mettre en oeuvre...
En tout cas, merci pour ton aide nico84
Partager