Tri sur requete : PAS [Champ d'une autre requete]

Résolu/Fermé
Lucasine Messages postés 154 Date d'inscription mercredi 9 mars 2016 Statut Membre Dernière intervention 15 octobre 2022 - 6 avril 2017 à 13:14
 Tessel75 - 7 avril 2017 à 15:17
Bonjour,

Cela fait plusieurs jours que je me prend la tête avec une requête et je vais avoir du mal a vous expliquer vu que je ne peu pas vous donné la base de donnée qui contient des informations confidentielles.

j'ai une table [Facture] et une autre [Commande] relier entre elle par le champ [Com].

Donc je n'ai pas eu de difficulté a faire une table de facture avec les informations des commande reçu, mais j'aimerai avoir la liste des factures en attente de commande.

Donc j'ai prit ma table factures et Commande sans les lier et dans critére je demande Pas[Commande]![ComC] mais cela double toutes les factures. logique il a deux tables. je regroupe le tout.
Sauf que là il me met :
Désolé... votre requête n'inclut pas l'expression "Not[Facture.CommeFacture=[Commande]![ComC]" spécifiée en tant que partie d'une fraction d'agrégation.

Je suis consciente qu'il faut enlevé "Regroupement" et mettre une autre fonction mais aucune des fonctions ne me donne le résultat souhaiter.

Est ce que quelqu'un aurai une idée pour mon souci ?
Merci d'avance

3 réponses

yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 1 476
6 avril 2017 à 20:21
bonjour, je suggère:
SELECT Facture.* FROM Facture 
    LEFT JOIN Commande 
    ON Facture.Com = Commande.Com
    WHERE Commande.Com IS NULL

Difficile d'être plus précis, comme tu ne nous explique pas la structure de tes tables.
0
"j'aimerai avoir la liste des factures en attente de commande. " ???
Moi, pas comprendre! Tu édites les factures avant de recevoir les commandes. C'est assez spécial comme type de gestion!
Cela dit, pour tout ce genre de tri sur des éléments qui n'existent pas encore, par exemple des commandes en attente de facturation, tu établis la jointure entre la table des commandes et celles des factures avec l'Identifiant de la commande répété dans la table des factures, (IdComm_Facture) et tu fais ta sélection avec une requête comportant les 2 tables jointes (IdComm = IdComm_Facture), et en posant comme critère de sélection :Id_Facture = Null
Ca devrait passer.
Bon courage.
0
Lucasine Messages postés 154 Date d'inscription mercredi 9 mars 2016 Statut Membre Dernière intervention 15 octobre 2022
6 avril 2017 à 22:21
Les commandes sont passer par un service, une fois les commandes reçu chez nous, la facture par en conta pour paiement.

ma tables factures sont les factures des commandes passer que l'on reçoit avant la commande (comme un devis si on veux), donc reste en attente le temps que tout la commande est arrivé. une fois la commande complète, la facture par en conta pour paiement. c'est pourquoi j'aimerai avoir une requête qui n'a que les facture en attente si je peu dire ainsi
0
Bonjour,
La réponse "technique" est la même, qq soit la façon dont les factures sont éditées. Dans le cas que tu expliques, il suffirait de prévoir un indicateur qcq pour dire la situation de la commande, en situation de devis ou de commande effective.
Mais dans tous les cas, et c'est la même réponse que celle de Yg_Be, tu sélectionnes les enregistrement pour les quels la commandes n'est pas encore passée, soit par l'intermédiaire d'un champ qui est vide, ou bien un N°Commande non-validé.
Bon courage.
0