Rechercher si référence manquante

Le
accessetmoi
Bonjour

j'ai une table avec un champ iddossier avec un masque de saisie
0000-00-0999;0;

ce qui donne
2008-76-01
2008-76-02
2008-76-04

les quatre premiers chiffres correspondent à l'année, les deux autres
chiffres au département et les quatres derniers chiffres au numéro de
dossier sachant que cela commence
toujours par 01 puis 02 puis 03 .et ainsi de suite

J'aimerai créer une requête pour vérifier s'il n'y a pas un dossier
non pris en charge comme ici
le 2008-76-03

mais je ne vois pas comment faire

Merci d'avance
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Dragan
Le #19223281
Bonsoir,

essaie cette requête qui renvoie entre deux iddossiers le nombre de dossiers
manquants
Pour l'exemple j'appelle ta table Dossiers

SELECT B.iddossier & " - " A.iddossier As [Position],
Val(Mid(A.iddossier,9))-Val(Mid(B.iddossier,9))-1 As [Nb dossiers manquants]
FROM Dossiers As A, Dossiers As B
WHERE Val(Mid(A.iddossier,9))-Val(Mid(B.iddossier,9))-1>0
AND B.iddossier BETWEEN (SELECT Max(iddossier) FROM Dossiers WHERE
iddossier<A.iddossier) AND A.iddossier


"" a écrit :

Bonjour

j'ai une table avec un champ iddossier avec un masque de saisie
0000-00-0999;0;

ce qui donne
2008-76-01
2008-76-02
2008-76-04

les quatre premiers chiffres correspondent à l'année, les deux autres
chiffres au département et les quatres derniers chiffres au numéro de
dossier sachant que cela commence
toujours par 01 puis 02 puis 03 ....et ainsi de suite

J'aimerai créer une requête pour vérifier s'il n'y a pas un dossier
non pris en charge comme ici
le 2008-76-03

mais je ne vois pas comment faire

Merci d'avance




accessetmoi
Le #19228081
Bonjour et merci

je ne comprends pas tout le code alors j'ai fait un copier coller en
remplaçant les noms du champ et table
mais j'ai une erreur
A noter mon champ s'appelle numerodossier et ma table tble_dossier

Erreur de syntaxe(opérateur absent) dans l'expression

B.numerodossier & " - " A.numerodossier


merci
CErnst
Le #19231861
B.numerodossier & " - " & A.numerodossier



Bonjour et merci

je ne comprends pas tout le code alors j'ai fait un copier coller en
remplaçant les noms du champ et table
mais j'ai une erreur
A noter mon champ s'appelle numerodossier et ma table tble_dossier

Erreur de syntaxe(opérateur absent) dans l'expression

B.numerodossier & " - " A.numerodossier


merci
Dragan
Le #19239691
Bonjour,
j'ai effectivement oublié le & précédant A.numerodossier

j'ai un peu modifié la requête :

SELECT B.numerodossier As [Entre le dossier], A.numerodossier As [et le
dossier],
Val(Mid(A.numerodossier,9))-Val(Mid(B.numerodossier,9))-1 As [Nb dossiers
manquants]
FROM tble_Dossier As A, tble_Dossier As B
WHERE Val(Mid(A.numerodossier,9))-Val(Mid(B.numerodossier,9))-1>0
AND B.numerodossier = (SELECT Max(numerodossier) FROM tble_Dossier WHERE
numerodossier<A.numerodossier AND numerodossier LIKE Left(A.numerodossier,8)
& "*")

L'idée de la requête est calculer l'écart entre deux dossiers consécutifs.

Val(Mid(numerodossier,9) => renvoie le nombre à droite du numéro de dossier
soit pour un numérodossier = 2008-76-02 => 2

B.numerodossier =(....) => récupère le numerodossier qui précède
A.numerodossier

soit
A.numerodossier B.numerodossier Ecart
2008-76-01 Null Null
2008-76-02 2008-76-01 (02-01-1)=0
2008-76-04 2008-76-02 (04-02-1)=1
2008-76-05 2008-76-04 (05-04-1)=0

la requête ne renvoie que les enregistrements pour lesquels l'écart est
supérieur à 0
Publicité
Poster une réponse
Anonyme