Limitation expression dans le générateur
Résolu
Oholabi12345
Messages postés
498
Date d'inscription
Statut
Membre
Dernière intervention
-
Oholabi12345 Messages postés 498 Date d'inscription Statut Membre Dernière intervention -
Oholabi12345 Messages postés 498 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Dans mon générateur d'expression je constate que les expressions trop longues ne peuvent pas y contenir ; c'est à dire quand j'ai plusieurs iif imbriquées ; la voici
la partie en gras et soulignée ne peut pas être saisie dans le générateur de requete
Dans mon générateur d'expression je constate que les expressions trop longues ne peuvent pas y contenir ; c'est à dire quand j'ai plusieurs iif imbriquées ; la voici
=SI(0,85*(0,8*ARRONDI(I16/1000;0)*1000-(Q18+Q19))/O6<=(300000/12); 0; SI(0,85*(0,8*ARRONDI(I16/1000;0)*1000-(Q18+Q19))/O6<=(547000/12); 0,85*(0,8*ARRONDI(I16/1000;0)*1000-(Q18+Q19))/11-O6*27273/12; SI(0,85*(0,8*ARRONDI(I16/1000;0)*1000-(Q18+Q19))/O6<=(979000/12); 0,85*(0,8*ARRONDI(I16/1000;0)*1000-(Q18+Q19))*15/115-O6*48913/12; SI(0,85*(0,8*ARRONDI(I16/1000;0)*1000-(Q18+Q19))/O6<=(1519000/12); 0,85*(0,8*ARRONDI(I16/1000;0)*1000-(Q18+Q19))*20/120-O6*84375/12; SI(0,85*(0,8*ARRONDI(I16/1000;0)*1000-(Q18+Q19))/O6<=(2644000/12); 0,85*(0,8*ARRONDI(I16/1000;0)*1000-(Q18+Q19))*25/125-O6*135000/12; SI(0,85*(0,8*ARRONDI(I16/1000;0)*1000-(Q18+Q19))/O6<=(4669000/12); 0,85*(0,8*ARRONDI(I16/1000;0)*1000-(Q18+Q19))*35/135-O6*291667/12; <ital><souligne>SI(0,85*(0,8*ARRONDI(I16/1000;0)*1000-(Q18+Q19))/O6<=(10106000/12); 0,85*(0,8*ARRONDI(I16/1000;0)*1000-(Q18+Q19))*45/145-O6*530172/12; 0,85*(0,8*ARRONDI(I16/1000;0)*1000-(Q18+Q19))*60/160-O6*1183594/12)))))))</souligne></ital>
la partie en gras et soulignée ne peut pas être saisie dans le générateur de requete
Configuration: Windows / Firefox 92.0
A voir également:
- Limitation expression dans le générateur
- Generateur mot de passe - Télécharger - Sécurité
- Expression écrite cm1 cm2 télécharger gratuit - Télécharger - Éducatifs
- Microsoft expression encoder - Télécharger - Divers Utilitaires
- Generateur de cle windows 10 - Guide
- Canva générateur d'image - Accueil - Outils
3 réponses
Bjr est ce il ya une possibilité de faire contenir les expressions trop longues dans le générateur d'expression ou il faut utiliser une autre fonction
Merci
Merci
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour,
je ne comprends pas bien le contexte.
cela ressemble à une formule de Excel, et la question est posée dans le forum Access.
je ne comprends pas bien le contexte.
cela ressemble à une formule de Excel, et la question est posée dans le forum Access.
Bonjour et merci de me répondre, je suis toujours en access, en fait j'ai essayé de traduire cette formule Excel en Access, je suis toujours dans ma base de donnée de la gestion des prêts sur salaire et cette formule je la traduit dans une requête enfin de calculer IGR mais toute la formule ne tient pas dans le générateur d'expression et je ne sais plus comment le faire
Voici le code totalement traduit en sql ; mais dont la longueur ne tient pas dans le génerateur d'expression
IGR:VraiFaux(0,85*(0,8*Round([SALAIRE BRUT]/1000;0)*1000-([ITS]+[CN]))/[NBRE PART]<=25000;0; IIF(0,85*(0,8*Round([salaire brut]/1000;0)*1000-([ITS]+[CN]))/[NBRE PART]<=(547000/12); 0,85*(0,8*Round([SALAIRE BRUT]/1000;0)*1000-[ITS]+[CN]))/11-[NBRE PART]*27273/12; IIF(0,85*(0,8*Round([SALAIRE BRUT]/1000;0)*1000-([ITS]+[CN]))/[NBRE PART]<=(979000/12); 0,85*(0,8*Round([SALAIRE BRUT]/1000;0)*1000-([ITS]+[CN]))*15/115-[NBRE PART]*48913/12; IIF(0,85*(0,8*Round([I16]/1000;0)*1000-([ITS]+[CN]))/[NBRE PART]<=(1519000/12); 0,85*(0,8*Round([SALAIRE BRUT]/1000;0)*1000-([ITS]+[CN]))*1/6-[NBRE PART]*84375/12; IIF(0,85*(0,8*Round([SALAIRE BRUT]/1000;0)*1000-([ITS]+[CN]))/[NBRE PART]<=(2644000/12); 0,85*(0,8*Round([SALAIRE BRUT]/1000;0)*1000-([ITS]+[CN]))*25/125-[NBRE PART]*11250; IIF(0,85*(0,8*Round([SALAIRE BRUT]/1000;0)*1000-([ITS]+[CN]))/[NBRE PART]<=4669000/12; 0,85*(0,8*Round([SALAIRE BRUT]/1000;0)*1000-([ITS]+[CN]))*35/135-[NBRE PART]*291667/12; IIF(0,85*(0,8*Round([SALAIRE BRUT]/1000;0)*1000-([ITS]+[CN]))/[NBRE PART]<=(10106000/12); 0,85*(0,8*Round([SALAIRE BRUT]/1000;0)*1000-([ITS]+[CN]))*45/145-[NBRE PART]*530172/12; 0,85*(0,8*Round([SALAIRE BRUT]/1000;0)*1000-([ITS]+[CN]))*60/160-[NBRE PART]*1183594/12)))))))
jai essayé mais les 3 dernieres lignes(12 -13 et 14) en <4> ne peuvent pas etre ajoutées dans la synthaxe sql de la requete
SELECT PAIE.NUMERO_BULLETIN, PAIE.Date, PAIE.NOMBRE_JOUR, PAIE.CODE_EMPLOYE, EMPLOYE.NOM_EMPLOYE, EMPLOYE.NUMERO_CNPS, EMPLOYE.[SITUATION MATRIMONIALE], EMPLOYE.[NBRE ENFANTS], EMPLOYE.PRENOM_EMPLOYE, EMPLOYE.TITRE, EMPLOYE.ADRESSE, EMPLOYE.EMPLOI_OCCUPE, EMPLOYE.ID_SERVICE, SERVICE.DESIGNATION_SRVICE, EMPLOYE.ETABLISSEMENT_BANCAIRE, EMPLOYE.NUMERO_COMPTE_BANCAIRE, EMPLOYE.ID_CATEGORIE, CATEGORIE.LIBELLE_CATEGORIE, CATEGORIE.TAUX_CATEGORIEL, PAIE.SURSALAIRE, EMPLOYE.TAUX_TRANSPORT, [TAUX_TRANSPORT]*[NOMBRE_JOUR] AS TRANSPORT, PAIE.AUTRES_INDEMNITES, PAIE.CONGES, PAIE.[PRIME_D'ANCIENNETE], [NOMBRE_JOUR]*[TAUX_CATEGORIEL] AS [SALAIRE CATEGORIEL], [SALAIRE CATEGORIEL]*0.012 AS ITS, PAIE.GRATIFICATION, [SALAIRE CATEGORIEL]+[CONGES]+[PRIME_D'ANCIENNETE]+[SURSALAIRE]+[GRATIFICATION] AS [SALAIRE BRUT], EMPLOYE.VILLE, IIf(Round([SALAIRE BRUT]/1000,0)*1000*8/10<=50000,0,IIf(Round([SALAIRE BRUT]/1000,0)*1000*8/10<=130000,((Round([SALAIRE BRUT]/1000,0)*1000)*8/10-50000)*15/1000,IIf(Round([SALAIRE BRUT]/1000,0)*1000*8/10<=200000,((((Round([SALAIRE BRUT]/1000,0)*1000)*8/10-130000)*5/100)+1200),((((Round([SALAIRE BRUT]/1000,0)*1000)*8/10-200000)*1/10)+4700)))) AS CN, IIf([SITUATION MATRIMONIALE]="CELIBATAIRE",[nbre enfants]*0.5+1,[nbre enfants]*0.5+2) AS [NBRE PART], IIf(0.85*(0.8*Round([SALAIRE BRUT]/1000,0)*1000-([ITS]+[CN]))/[NBRE PART]<=25000,0,IIf(0.85*(0.8*Round([SALAIRE BRUT]/1000,0)*1000-([ITS]+[CN]))/[NBRE PART]<=45583,0.85/11*(0.8*Round([SALAIRE BRUT]/1000,0)*1000-[ITS]+[CN])-[NBRE PART]*2281,IIf(0.85*(0.8*Round([SALAIRE BRUT]/1000,0)*1000-([ITS]+[CN]))/[NBRE PART]<=(979000/12),0.85*(0.8*Round([SALAIRE BRUT]/1000,0)*1000-([ITS]+[CN]))*15/115-[NBRE PART]*48913/12,IIf(0.85*(0.8*Round([SALAIRE BRUT]/1000,0)*1000-([ITS]+[CN]))/[NBRE PART]<=(1519000/12),0.85*(0.8*Round([SALAIRE BRUT]/1000,0)*1000-([ITS]+[CN]))*1/6-[NBRE PART]*84375/12,IIf(0.85*(0.8*Round([SALAIRE BRUT]/1000,0)*1000-([ITS]+[CN]))/[NBRE PART]<=(2644000/12),0.85*(0.8*Round([SALAIRE BRUT]/1000,0)*1000-([ITS]+[CN]))*25/125-[NBRE PART]*11250,IIf(0.85*(0.8*Round([SALAIRE BRUT]/1000,0)*1000-([ITS]+[CN]))/[NBRE PART]<=4669000/12,0.85*(0.8*Round([SALAIRE BRUT]/1000,0)*1000-([ITS]+[CN]))*35/135-[NBRE PART]*291667/12,69999)))))) AS IGR FROM SERVICE INNER JOIN ((CATEGORIE INNER JOIN EMPLOYE ON CATEGORIE.ID_CATEGORIE = EMPLOYE.ID_CATEGORIE) INNER JOIN PAIE ON EMPLOYE.CODE_EMPLOYE = PAIE.CODE_EMPLOYE) ON SERVICE.ID_SERVICE = EMPLOYE.ID_SERVICE;