Bonjour à tous,
Voici ma problématique:
Mes données sont dans une table. Parmi les infos disponibles pour chaque enregistrement, on trouve un identifiant, une catégorie et une date.
Une analyse croisée me donne le nombre d'identifiant par catégorie (en tête de ligne) et par mois de l'année (en tête de colonne).
J'ai à transmettre mensuellement un fichier statistique pour ce critère, avec 2 lignes par mois: "prévision" et "historique".
Pour cela je mets d'abord à jour la table de données avant l'édition.
Les informations des mois futurs sont des prévisions et celles des mois passées de l'historique. (pour une édition le 2 avril, mars est considéré comme historique et avril comme prévision).
Jusque la tout va bien.
La ou ça se corse, c'est que je souhaite/dois indiquer pour chaque mois passé, la dernière valeur de prévision calculée.
Pour illustrer:
édition le 02 avril,
- avril/historique: néant
- avril/prévision: extrait de ma requête analyse croisée
- mars/historique: extrait de ma requête analyse croisée
- mars/prévision: dernières valeurs de prévisions calculées = ?
Je pense utiliser une table dans laquelle enregistrer la dernière prévision, chaque mois: le 02 avril, les valeurs de la requete analyse croisée y sont enregistrée. Ainsi, le 02 mai (le 1er est férié donc je ne travaille pas ...), avril/historique sera disponible de la requete analyse croisée (issue des données mises à jour) et avril/prévision sera disponible de ma table d'enregistrement des dernières prévisions.
J'en viens donc à la problématique:
pour alimenter cette table, je passe par une requete ajout, mais je n'arrive par à récupérer la bonne valeur dans la requete sélection, en effet, la colonne (mois) à renvoyer change tous les mois, et je ne parviens pas à l'asservir à la date.
Voila ce que j'aurai voulu faire:
(ex: avril est noté "2010-04"):
last_forecasts est la table d'enregistrement des dernières prévisions dont les champ sont domaine, mois, pays, last_forecast;
day_attendees_FR est la requete analyse croisée
1 2 3 4
| INSERT INTO last_forecasts ( domaine, mois, pays, last_forecast )
SELECT day_attendees_FR.domaine, Format(Now(),"yyyy-mm") AS mois, "FR" AS pays, day_attendees_FR.[("2010-"&format(now();"mm"))]
FROM day_attendees_FR
WHERE (((day_attendees_FR.domaine)="A")); |
mon problème vient donc de
("2010-"&format(now();"mm"))
qui n'est pas reconnu comme un nom de champ.
Si quelqu'un a une idée, je suis preneur !
Merci d'avance,
Vigg.
Partager