Bonjour,
Mon titre n'est pas spécialement explicite, mais j'ai du mal à en trouver un qui convient...
Mon problème est le suivant :
J'ai deux tables : une table fournisseur, avec une liste de fournisseurs.
Une table tarif, permettant de suivre le prix d'un produit en particulier au cours du temps. La clef primaire est (code_fournisseur, date_tarif). Il y a donc aussi un champ "tarif", qui correspond donc au tarif d'un fournisseur à une date donnée.
J'ai besoin (et réussi) à récupérer le dernier prix de chaque fournisseur, grace à une requête. Pour cela, j'ai utilisé une requête avec un regroupement sur les fournisseurs, et l'opération Max sur le prix.
Mon problème aujourd'hui et que cette requête n'affiche que les fournisseurs ou au moins un tarif a été entré dans la table tarif.
Les fournisseurs n'ayant actuellement aucun tarif rentré n'apparaissent pas.
Pour certains besoins (exporter l'adresse des fournisseurs sur une carte mapppoint), j'ai besoin qu'apparaissent tous les fournisseurs, ceux dont aucun tarif n'a été entré inclus. Pour les autres, toujours, récupérer le dernier tarif.
Avez-vous une idée de la démarche à suivre pour faire cela ?
J'ai essayé d'utiliser une expression conditionnelle sous cette forme : Expr1: VraiFaux(EstNull([date_prix]);"Prix non encore défini";[date_prix])
mais mes tests ne sont pas concluants. Je pense qu'il faudrait que je test la jointure (si un fournisseur n'apparaît pas dans la table "tarif", alors afficher "Prix non encore défini", sinon [date_prix]).
Mais je ne sais pas comment procéder :s
Merci d'avance pour vos conseils et votre aide !
Partager