Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bonjour,
J'ai un problème pour réaliser un besoin, je ne sais pas trop comment m'y prendre. Voici le besoin :
Lors de l'importation d'une facture dans notre base de données nous regardons d'abord si à ce moment là le client aurait un dossier déjà ouvert. si un dossier est déjà ouvert alors nous ajoutons la facture dans ce dossier. Si pas de dossier ouvert alors nous créons un nouveau dossier.
Le changement que nous avons opéré c'est de créer systématiquement un nouveau dossier sans vérifier la présence d'un dossier existant et je dois analyser l'efficacité de ce changement.
Pour analyser l'impact j'ai besoin d'isoler les factures qui, au moment de leur importation, auraient dû être ajoutées dans un dossier existant mais qui ont été ajoutées dans un nouveau dossier.
je dois donc pour chaque facture comparer la date d'importation par rapport à la date de créaion du dossier et identifier les factures concernées.
Pour mieux comprendre le besoin voici ce tableau simplifié :
dte_crea = Date création du dossier
dte_clot = date clôture du dossier
dte_import = date d'importation de la facture
Le but est de vérifier pour chaque facture, s'il existe un dossier ouvert (dte clot > dte_import ou dte clot = null) lié au même client au moment de l'importation de la facture.
Je ne sais pas comment y parvenir, via une fonction ? via des tables temporaires ? des qvd ?
Un tout grand merci pour vos idées !
cle_clt | cle_doss | cle_fact | dte_clot | dte_crea | dte_import | Résultat attendu |
d1 | 1 | 1 | 06/05/2020 | 01/01/2020 | 01/01/2020 | OK |
d1 | 1 | 3 | 06/05/2020 | 01/01/2020 | 01/01/2020 | OK |
d1 | 1 | 5 | 06/05/2020 | 01/01/2020 | 01/01/2020 | OK |
d1 | 1 | 6 | 06/05/2020 | 01/01/2020 | 01/01/2020 | OK |
d1 | 1 | 10 | 06/05/2020 | 01/01/2020 | 01/01/2020 | OK |
d1 | 1 | 11 | 06/05/2020 | 01/01/2020 | 01/01/2020 | OK |
d1 | 2 | 2 | 24/05/2020 | 01/02/2020 | 01/02/2020 | aurait dû être ajouté dans un nouveau dossier |
d1 | 2 | 4 | 24/05/2020 | 01/02/2020 | 01/02/2020 | aurait dû être ajouté dans un nouveau dossier |
d1 | 2 | 14 | 24/05/2020 | 01/02/2020 | 01/02/2020 | aurait dû être ajouté dans un nouveau dossier |
d1 | 2 | 15 | 24/05/2020 | 01/02/2020 | 01/02/2020 | aurait dû être ajouté dans un nouveau dossier |
d1 | 8 | 19 | null | 01/06/2020 | 01/06/2020 | OK |
d1 | 9 | 20 | null | 01/07/2020 | 01/07/2020 | OK |
Dans le script, vous pouvez obtenir le résultat souhaité avec une fonction simple. Pour cela, toutes les données doivent déjà être dans le tableau.
IF ( dte clot > dte_import OR dte clot = null, 'OK', 'aurait dû être ajouté dans un nouveau dossier') AS Resultat_attendu