Prélèvement automatique

Résolu/Fermé
Oholabi12345 Messages postés 498 Date d'inscription vendredi 21 août 2020 Statut Membre Dernière intervention 29 octobre 2022 - Modifié le 22 sept. 2021 à 10:34
Oholabi12345 Messages postés 498 Date d'inscription vendredi 21 août 2020 Statut Membre Dernière intervention 29 octobre 2022 - 23 sept. 2021 à 18:59
Bonjour, voici une instruction sql ; qui permet de faire le salaire des employés et quiet qui bénéficient des prêts ; mais je souhaite faire un prélèvement de ces prêts à une date donnée et arrêter les prélèvements selon une date définie.
Comment le faire
SELECT REQ_PAIE.NUMERO_BULLETIN, REQ_PAIE.Date, REQ_PAIE.NOMBRE_JOUR, REQ_PAIE.CODE_EMPLOYE, REQ_PAIE.NOM_EMPLOYE, REQ_PAIE.GRATIFICATION, REQ_PAIE.TAUX_CATEGORIEL, REQ_PAIE.PRENOM_EMPLOYE, REQ_PAIE.[SALAIRE CATEGORIEL], REQ_PAIE.[SALAIRE BRUT], REQ_PAIE.TRANSPORT, REQ_PAIE.CONGES, REQ_PAIE.ITS, ([SALAIRE BRUT]-[ITS]) AS [SALAIRE NET], Round(Nz(Sum([MENSUALITE RETENUE PRET]),0),0) AS [RETENUE PRET], Round([SALAIRE BRUT]-[ITS]+[TRANSPORT]-Nz(Sum([MENSUALITE RETENUE PRET]),0),0) AS [NET A PAYER]
FROM REQ_PRET RIGHT JOIN REQ_PAIE ON REQ_PRET.CODE_EMPLOYE = REQ_PAIE.CODE_EMPLOYE
GROUP BY REQ_PAIE.NUMERO_BULLETIN, REQ_PAIE.Date, REQ_PAIE.NOMBRE_JOUR, REQ_PAIE.CODE_EMPLOYE, REQ_PAIE.NOM_EMPLOYE, REQ_PAIE.GRATIFICATION, REQ_PAIE.TAUX_CATEGORIEL, REQ_PAIE.PRENOM_EMPLOYE, REQ_PAIE.[SALAIRE CATEGORIEL], REQ_PAIE.[SALAIRE BRUT], REQ_PAIE.TRANSPORT, REQ_PAIE.CONGES, REQ_PAIE.ITS, ([SALAIRE BRUT]-[ITS]);

1 réponse

yg_be Messages postés 23400 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 décembre 2024 Ambassadeur 1 557
22 sept. 2021 à 10:32
bonjour,
je pense qu'il suffit de modifier la clause
ON
de la requête,
afin d'y tester que le mois de la paie est pendant la période de remboursement du prêt.
0
Oholabi12345 Messages postés 498 Date d'inscription vendredi 21 août 2020 Statut Membre Dernière intervention 29 octobre 2022 1
22 sept. 2021 à 11:48
Je n'arrive pas à comprendre votre explication et plus il faut remplacer la clause ON par quoi dans cette requête
0
yg_be Messages postés 23400 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 décembre 2024 1 557 > Oholabi12345 Messages postés 498 Date d'inscription vendredi 21 août 2020 Statut Membre Dernière intervention 29 octobre 2022
22 sept. 2021 à 14:44
pour le moment la clause ON contient:
ON REQ_PRET.CODE_EMPLOYE = REQ_PAIE.CODE_EMPLOYE  

Il faut la compléter, tester que le mois de la paie est pendant la période de remboursement du prêt.
0
Oholabi12345 Messages postés 498 Date d'inscription vendredi 21 août 2020 Statut Membre Dernière intervention 29 octobre 2022 1 > yg_be Messages postés 23400 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 décembre 2024
22 sept. 2021 à 20:11
voila ce que jai pu faire:
SELECT REQ_PAIE.NUMERO_BULLETIN, REQ_PAIE.Date, REQ_PAIE.NOMBRE_JOUR, REQ_PAIE.CODE_EMPLOYE, REQ_PAIE.NOM_EMPLOYE, REQ_PAIE.GRATIFICATION, REQ_PAIE.TAUX_CATEGORIEL, REQ_PAIE.PRENOM_EMPLOYE, REQ_PAIE.[SALAIRE CATEGORIEL], REQ_PAIE.[SALAIRE BRUT], REQ_PAIE.TRANSPORT, REQ_PAIE.CONGES, REQ_PAIE.ITS, ([SALAIRE BRUT]-[ITS]) AS [SALAIRE NET], Round(Nz(Sum([MENSUALITE RETENUE PRET]),0),0) AS [RETENUE PRET], Round([SALAIRE BRUT]-[ITS]+[TRANSPORT]-Nz(Sum([MENSUALITE RETENUE PRET]),0),0) AS [NET A PAYER]
FROM REQ_PRET RIGHT JOIN REQ_PAIE ON REQ_PRET.DATE_DEBUT_REMBOURSEMENT = REQ_PAIE.date
GROUP BY REQ_PAIE.NUMERO_BULLETIN, REQ_PAIE.Date, REQ_PAIE.NOMBRE_JOUR, REQ_PAIE.CODE_EMPLOYE, REQ_PAIE.NOM_EMPLOYE, REQ_PAIE.GRATIFICATION, REQ_PAIE.TAUX_CATEGORIEL, REQ_PAIE.PRENOM_EMPLOYE, REQ_PAIE.[SALAIRE CATEGORIEL], REQ_PAIE.[SALAIRE BRUT], REQ_PAIE.TRANSPORT, REQ_PAIE.CONGES, REQ_PAIE.ITS, ([SALAIRE BRUT]-[ITS]);
0
yg_be Messages postés 23400 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 décembre 2024 1 557 > Oholabi12345 Messages postés 498 Date d'inscription vendredi 21 août 2020 Statut Membre Dernière intervention 29 octobre 2022
22 sept. 2021 à 21:58
si je vois bien, tu n'as pas complété la condition. le résultat devrait être assez cahotique.

compléter, ce serait:
ON REQ_PRET.CODE_EMPLOYE = REQ_PAIE.CODE_EMPLOYE  
AND REQ_PRET.DATE_DEBUT_REMBOURSEMENT = REQ_PAIE.date
0
Oholabi12345 Messages postés 498 Date d'inscription vendredi 21 août 2020 Statut Membre Dernière intervention 29 octobre 2022 1 > yg_be Messages postés 23400 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 décembre 2024
Modifié le 23 sept. 2021 à 00:19
Jai essayé ce que vous m'avez proposé mais ça fonctionne seulement lorsque la date de la paie est egale à la date de debut du prelevement (REQ_PRET.DATE_DEBUT_REMBOURSEMENT = REQ_PAIE.date)
je propose cette instruction mais on arrive pas à aller en mode création
SELECT REQ_PAIE.NUMERO_BULLETIN, REQ_PAIE.Date, REQ_PAIE.NOMBRE_JOUR, REQ_PAIE.CODE_EMPLOYE, REQ_PAIE.NOM_EMPLOYE, REQ_PAIE.GRATIFICATION, REQ_PAIE.TAUX_CATEGORIEL, REQ_PAIE.PRENOM_EMPLOYE, REQ_PAIE.[SALAIRE CATEGORIEL], REQ_PAIE.[SALAIRE BRUT], REQ_PAIE.TRANSPORT, REQ_PAIE.CONGES, REQ_PAIE.ITS, ([SALAIRE BRUT]-[ITS]) AS [SALAIRE NET], Round(Nz(Sum([MENSUALITE RETENUE PRET]),0),0) AS [RETENUE PRET], Round([SALAIRE BRUT]-[ITS]+[TRANSPORT]-Nz(Sum([MENSUALITE RETENUE PRET]),0),0) AS [NET A PAYER]
FROM REQ_PRET RIGHT JOIN REQ_PAIE ON (REQ_PRET.CODE_EMPLOYE = REQ_PAIE.CODE_EMPLOYE) AND (REQ_PRET.DATE_DEBUT_REMBOURSEMENT <= REQ_PAIE.date) AND (REQ_PRET.DATE_FIN_REMBOURSEMENT >= REQ_PAIE.date)
GROUP BY REQ_PAIE.NUMERO_BULLETIN, REQ_PAIE.Date, REQ_PAIE.NOMBRE_JOUR, REQ_PAIE.CODE_EMPLOYE, REQ_PAIE.NOM_EMPLOYE, REQ_PAIE.GRATIFICATION, REQ_PAIE.TAUX_CATEGORIEL, REQ_PAIE.PRENOM_EMPLOYE, REQ_PAIE.[SALAIRE CATEGORIEL], REQ_PAIE.[SALAIRE BRUT], REQ_PAIE.TRANSPORT, REQ_PAIE.CONGES, REQ_PAIE.ITS, ([SALAIRE BRUT]-[ITS]);
en fait date_debut_remboursement<=date<=date_fin_remboursement
0