IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

IIF limité


Sujet :

Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de crovette51101
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    73
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 73
    Par défaut IIF limité
    bonjour,
    je suis en train de créer une table sous access 2000 en mode sql mais je rencontre un probléme au niveau du iif.
    Lorsque je fais plus d'une dizaine de IIF imbriqué, access me dit que la requete est trop complexe et donc refuse de s'executer
    Voici le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    IIF(LEFT([Position de Bon de Livraison].[Numéro de Bon de livraison],2) = "11" AND (LEFT([Position de Bon de Livraison].[Code Article], 3) <> "763" OR LEFT([Position de Bon de Livraison].[Code Article],3) <> "708") AND [Article].[Code d'Approvisionnement] = "F" AND (CODTAX="F" OR CODTAX="M") , "7013    ",
     
    IIF(LEFT([Position de Bon de Livraison].[Numéro de Bon de livraison],2) = "11" AND (LEFT([Position de Bon de Livraison].[Code Article], 3) <> "763" OR LEFT([Position de Bon de Livraison].[Code Article],3) <> "708") AND [Article].[Code d'Approvisionnement] = "F" AND CODTAX="E", "7011    ",
     
    IIF(LEFT([Position de Bon de Livraison].[Numéro de Bon de livraison],2) = "11" AND (LEFT([Position de Bon de Livraison].[Code Article], 3) <> "763" OR LEFT([Position de Bon de Livraison].[Code Article],3) <> "708") AND [Article].[Code d'Approvisionnement] = "F" AND CODTAX="C", "7015    ",
     
    IIF(LEFT([Position de Bon de Livraison].[Numéro de Bon de livraison],2) = "11" AND (LEFT([Position de Bon de Livraison].[Code Article], 3) <> "763" OR LEFT([Position de Bon de Livraison].[Code Article],3) <> "708") AND [Article].[Code d'Approvisionnement] = "F" AND CODTAX="U", "7014    ",
     
    IIF(LEFT([Position de Bon de Livraison].[Numéro de Bon de livraison],2) = "11" AND (LEFT([Position de Bon de Livraison].[Code Article], 3) <> "763" OR LEFT([Position de Bon de Livraison].[Code Article],3) <> "708") AND [Article].[Code d'Approvisionnement] = "F" AND CODTAX="S", "7012    ",
     
    IIF(LEFT([Position de Bon de Livraison].[Numéro de Bon de livraison],2) = "11" AND (LEFT([Position de Bon de Livraison].[Code Article], 3) <> "763" OR LEFT([Position de Bon de Livraison].[Code Article],3) <> "708") AND [Article].[Code d'Approvisionnement] = "A" AND (CODTAX="F" OR CODTAX="M"), "7073    ",
     
    IIF(LEFT([Position de Bon de Livraison].[Numéro de Bon de livraison],2) = "11" AND (LEFT([Position de Bon de Livraison].[Code Article], 3) <> "763" OR LEFT([Position de Bon de Livraison].[Code Article],3) <> "708") AND [Article].[Code d'Approvisionnement] = "A" AND CODTAX="E", "7071    ",
     
    IIF(LEFT([Position de Bon de Livraison].[Numéro de Bon de livraison],2) = "11" AND (LEFT([Position de Bon de Livraison].[Code Article], 3) <> "763" OR LEFT([Position de Bon de Livraison].[Code Article],3) <> "708") AND [Article].[Code d'Approvisionnement] = "A" AND CODTAX="C", "7075    ",
     
    IIF(LEFT([Position de Bon de Livraison].[Numéro de Bon de livraison],2) = "11" AND (LEFT([Position de Bon de Livraison].[Code Article], 3) <> "763" OR LEFT([Position de Bon de Livraison].[Code Article],3) <> "708") AND [Article].[Code d'Approvisionnement] = "A" AND CODTAX="U", "7074    ",
     
    IIF(LEFT([Position de Bon de Livraison].[Numéro de Bon de livraison],2) = "11" AND (LEFT([Position de Bon de Livraison].[Code Article], 3) <> "763" OR LEFT([Position de Bon de Livraison].[Code Article],3) <> "708") AND [Article].[Code d'Approvisionnement] = "A" AND CODTAX="S", "7072    ",
     
    IIF(LEFT([Position de Bon de Livraison].[Numéro de Bon de livraison],2) = "19" AND LEFT([Position de Bon de Livraison].[Compte],1) = 7 , TRIM([Position de Bon de Livraison].[Compte])&"    ",
     
    IIF((LEFT([Position de Bon de Livraison].[Code Article], 3) = "763" OR [Position de Bon de Livraison].[Code Article] = "70800" OR [Position de Bon de Livraison].[Code Article] = "70810" OR [Position de Bon de Livraison].[Code Article] = "70851") OR (LEFT([Position de Bon de Livraison].[Numéro de Bon de livraison],2) = "19") , "        "
    )))))))))))) AS CPTVEN


    Est ce que qu'elqu'un pourrait m'aider?!
    Est ce un probléme d'access 2000?
    Est ce ma mémoire qui est limité? (je ne pense pas car le message est assez clair)
    ...


    Rappel du message d'erreur:
    "La requete est trop complexe"

    merci

  2. #2
    Invité
    Invité(e)
    Par défaut
    Salut

    Passe plutôt par des select case imbriqué

    Un pour le test de Numéro de Bon de livraison
    dans le case 11 un pour le test Code Article
    dans le case 763 un pour le test Code d'Approvisionnement

    ainsi de suite, et ce sera plus clair


    Starec

Discussions similaires

  1. Limitation DirectSound
    Par Sub0 dans le forum DirectX
    Réponses: 1
    Dernier message: 28/02/2003, 12h21
  2. [Turbo Pascal] Limite de la mémoire virtuelle
    Par moon tiger dans le forum Turbo Pascal
    Réponses: 12
    Dernier message: 08/02/2003, 23h30
  3. Limiter le déplacement de la souris
    Par el_bouleto dans le forum C++Builder
    Réponses: 4
    Dernier message: 09/11/2002, 00h56
  4. Comment limiter les mouvements du curseur??
    Par scorpiwolf dans le forum C++Builder
    Réponses: 9
    Dernier message: 07/07/2002, 23h09
  5. [Comparatifs] Limites nombres tables et quantité de données
    Par benj63 dans le forum Décisions SGBD
    Réponses: 7
    Dernier message: 13/06/2002, 22h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo