Bonjour !
je cherche à afficher un résultat de requête qui tappe dans une Base Oracle dans une liste modifiable.
Cependant, vu le grand nombre de résultats, Access me renvoie le message d'erreur suivant:
Voici le code source:Erreur d'exécution '2176':
Le paramètre de cette propriété est trop long.
- NumBC_parution: fonction qui requête dans Oracle et renvoie un tableau de string contenant les valeurs à afficher (marche bien: vu par msgbox).
- numBCs: tableau de string servant à stocker le retour de la fonction Oracle.
- listevaleurs: chaîne de caractères qui sera alimentée au fur et à mesure de la boucle sur le tableau numBCs et utilisée au final pour alimenter la liste.
-Ld_NCde: liste en question devant afficher les valeurs. Cette liste est bien paramétrée à Origine source=liste valeur.
J'ai pensé à l'éventualité de faire renvoyer les données de la requête Oracle dans une table intermédiaire. Mais alors se pose le problème des accès multi-utilisateurs qui seraient en conflit sur la table en question.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 numBCs = NumBC_parution(Me.LD_Support, Me.NParution) i = 1 listevaleurs = "" While numBCs(i) <> "" listevaleurs = listevaleurs & (numBCs(i)) & ";" i = i + 1 Wend MsgBox listevaleurs Me.Ld_NCde.RowSource = listevaleurs Me.Repaint
J'ai aussi pensé à utiliser la liste avec le paramétrée Origine source=Table/requête. Mais puisque mes tables sont dans une autre base Oracle (et que celà me fait un peu peur de les rattacher en liaison vu l'énorme quantités d'enregistrements de ces tables): je ne peux pas écrire directement une requête dans le paramètre Rowsource.
Auriez-vous la gentillesse de me soumettre une idée pour permettre l'ajout de tous mes enregistrements retournés par ma requête Oracle ?
(j'ai parcouru le forum par recherche et le tutoriel mais je n'ai rien trouvé qui traite précisément de cette problématique de source externe avec bcp d'enregistrements retournés)
Merci beaucoup pour votre aide![]()
Partager