1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    septembre 2007
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : septembre 2007
    Messages : 34
    Points : 27
    Points
    27

    Par défaut Problème avec la fonction InputBoxListView de Arkham

    Bonjour à tous,

    Voilà, j'utilise l'excellente ressource d'Arkham documentée dans cette page et notamment la fonction InputBoxListView.

    Dans un formulaire de ma BDD, je veux que les utilisateurs choisissent un client parmi la totalité des clients dans une boîte de dialogue (via la fonction InputBoxListView d'Arkham). Cela marchait parfaitement avant mais depuis peu, la boîte de dialogue est vide.

    En analysant un peu le problème, je me suis rendu compte que cela était lié, vraisemblablement, au nombre de lignes renvoyées par la requête source passée en paramètre dans la Boîte de dialogue. En fait, si je limite le nombre de lignes à 2^15 (32768) via un SELECT TOP 32768 ça marche mais dès qu'on passe à 32769 ou plus la liste est totalement vide...

    Cela semble être un problème de mémoire ou une limitation de la fonction. L'un d'entre vous connaît-il un moyen de contourner cet ecueil ? Un grand merci par avance pour votre aide.

    Bien cordialement.
    el

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Consultant technique et formateur en recherche active pour le Canada
    Inscrit en
    juillet 2007
    Messages
    11 400
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Consultant technique et formateur en recherche active pour le Canada
    Secteur : Finance

    Informations forums :
    Inscription : juillet 2007
    Messages : 11 400
    Points : 25 244
    Points
    25 244

    Par défaut

    Salut,

    je te suggere de te contenter de faire un Dcount dans un premier temps.

    Si le total est superieur a un (deja) grand nombre, tu mets un message d'informations
    Sinon tu affiches les resultats dans la zone de liste.
    Pas de question technique par MP, je ne réponds pas

    Apprendre à programmer avec Access 2016

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Membre émérite

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    mai 2005
    Messages
    1 908
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : mai 2005
    Messages : 1 908
    Points : 2 889
    Points
    2 889

    Par défaut

    Bonjour,
    si je limite le nombre de lignes à 2^15 (32768) ...
    Je n'utilise pas cette liste mais ça sent certainement la limitation d'un INTEGER, qui serait à déclarer en LONG (et en vérifier les conséquences !).

    CDLT
    "Allways, look at the bright side of life." Monty Python.

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    septembre 2007
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : septembre 2007
    Messages : 34
    Points : 27
    Points
    27

    Par défaut

    Merci pour votre réponse mais malheureusement, la requête retourne actuellement un peu plus de 33000 lignes. Cela augmente régulièrement (c'est d'ailleurs pour cela que ça marchait avant car le nombre de clients devait être inférieur à 32768), tester le nombre de lignes ne me permettra pas de contourner le problème car le nombre de lignes va continuer à augmenter.

    Comment puis-je faire pour déplafonner ce nombre de lignes dans cette fonction ? Si cela est possible ?

    Un grand merci par avance.
    el

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    septembre 2007
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : septembre 2007
    Messages : 34
    Points : 27
    Points
    27

    Par défaut

    Citation Envoyé par micniv Voir le message
    Bonjour,

    Je n'utilise pas cette liste mais ça sent certainement la limitation d'un INTEGER, qui serait à déclarer en LONG (et en vérifier les conséquences !).

    CDLT
    Cette piste me semble intéressante, je vais tester et je vous tiens informés si ça règle le problème

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    septembre 2007
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : septembre 2007
    Messages : 34
    Points : 27
    Points
    27

    Par défaut

    Citation Envoyé par micniv Voir le message
    Bonjour,

    Je n'utilise pas cette liste mais ça sent certainement la limitation d'un INTEGER, qui serait à déclarer en LONG (et en vérifier les conséquences !).

    CDLT
    Bingo !!!
    C'était bien cela... A toutes fins utiles, pour ceux qui utilisent cette fonction d'Arkham et qui seraient confrontés au même problème, la variable à modifier est lcpt, elle est déclarée dans la fonction IBProc. Voici la ligne à modifier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Dim lcpt As Integer, lsubcpt As Integer, lcptimg As Long
    A remplacer par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Dim lcpt As Long, lsubcpt As Integer, lcptimg As Long
    Pour les conséquences, a priori, pas de plantage ou de comportement anormal... On verra si cela pose problème dans le futur.

    Merci pour votre aide.
    el

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème avec une fonction date.
    Par kmayoyota dans le forum ASP
    Réponses: 8
    Dernier message: 09/09/2004, 12h33
  2. Problème avec la fonction findfirst ()
    Par Angelico dans le forum Windows
    Réponses: 3
    Dernier message: 05/08/2004, 20h40
  3. [Requete SQL en VBA] Problème avec la fonction FLOOR
    Par zubral dans le forum Langage SQL
    Réponses: 4
    Dernier message: 13/07/2004, 13h24
  4. Problème avec les fonctions
    Par jvachez dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 13/01/2004, 12h06
  5. [Postgresql]Problème avec les fonctions ...
    Par fet dans le forum Requêtes
    Réponses: 4
    Dernier message: 02/10/2003, 09h04

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