Mai 17, 2021, 15:39:02

Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!


Autocomplete Combobox funktioniert nicht bei allen Usern

Begonnen von Madmán, Februar 25, 2021, 06:51:18

⏪ vorheriges - nächstes ⏩

Madmán

Hallo zusammen,

habe ein seltsames Problemchen.
Folgende Konstellation:
Front-/ Backend Datenbank (Access/SQL) - ca. 30 User
Startformular - Unterformular - Auftragsauswahl
Auftragsauswahl über Combobox (ungebunden, Abfrage der Daten via SELCET Anweisung im Feld Datensatzherkunft)
Referenziert wird die ID, angezeigt/eingegeben wird die Auftragsnummer | Spaltenbreiten 0cm;0cm;3cm
Die Auftragsnummern sind indiziert und eindeutig.

Funktioniert bei 28 Usern wunderbar.
Bei 2 Usern werden die Datensätze im Dropdown angezeigt, jedoch funktioniert die Auswahl über eine händische Eingabe nicht.

Bsp. 3337 wird eingeben und der Vorschlagswert wird angezeigt : 33374256.
Hierüber kann Access die ID finden und das entsprechende Formular mit Filter öffnen.
Da dies aber nicht funktioniert, muss der Auftrag immer manuell aus der Liste rausgesucht werden.

Habe 1000 Seiten durchgelesen, in der Registry nach Win settings gesucht und angepasst (auch die Autocomplete) nichts ändert etwas an dem Verhalten.
Hat das von euch schon jemand gehabt und hat nen heißen Tipp?

Wäre für jeden Hinweis dankbar!

Viele Grüße





MzKlMu

Hallo
Standardfrage: Hat jeder User sein eigenes Frontend auf seinem PC?
Gruß
Klaus

Madmán

Ja, wird via .exe sichergestellt.
Frontend befindet sich ohne direkte Zugriffsrechte auf einem Server und wird von dort aus lokal zwischengespeichert.

crystal

Hallo,
ich fand ein ähnliches Problem hier:
https://www.ms-office-forum.net/forum/showthread.php?t=288239

Der Link auf die KB in Antwort #11 geht nicht mehr, aber der Hinweis "DISTINCT einfügen" hilft vielleicht.

Es ist ja auch so, dass Access gewisse Einstellungen (Optionen) in der Registry speichert; ein simples Kopieren des FE reicht daher nicht.

Was, wenn sich die 2 User an einem anderen PC anmelden? Da werden ja wohl die User-Settings aus dem Server-Profil auf den lokalen PC kopiert und das Problem wandert mit. Also kann es sich doch nur um Registry-Settings handeln (im Ast HKCU).

Gruß,
crystal
Wer Fehler in meinen Antworten findet, darf sie behalten, muss sie aber kommentieren. ;-)
Dies ist keineswegs arrogant gemeint, sondern soll nur unterstreichen, dass meine Antworten - natürlich - nicht immer fehlerfrei sind und sein können.
Devise: bitte immer erst selbst probieren!

Aus gesundheitlichen Gründen nur noch selten dabei...


Madmán

@crystal Ich werde das mit dem DISTINCT nach SELECT mal probieren und schauen, ob das etwas ändert.

@DF6GL Hab ich auch schon vermutet und habe die aktuellen Einträge nach oben genommen. Die Datensatzherkunft selbst hat mehrere Tausend Einträge. Hatte das Problem schon in vergangenen Tagen, dass neue Einträge nicht mehr gelistet waren und deshalb die Reihenfolge geändert. Oder sollte das auf etwas anderes hinaus laufen?


Schon mal vielen Dank für eure Anregungen. Werde ich morgen direkt überprüfen :)

Madmán

Noch als kleinen Hinweis:

Das Autocomplete funktioniert bei den genannten Usern in keiner Combobox, in welchen Zahlen angezeigt werden.
Ändere ich die Spaltenbreiten auf 0cm;0cm;0cm;3cm, sodass Text in der Combobox angezeigt wird, funktioniert Autocomplete  :o Also muss es mit dem Zahlenformat zusammen hängen?

crystal

Februar 25, 2021, 15:14:24 #7 Letzte Bearbeitung: Februar 25, 2021, 15:23:17 von crystal
Na klar: Zahlen werden ja nicht so gespeichert, wie wir sie sehen, sondern binär.
Vielleicht könnte CStr(Zahl) oder Trim(CStr(zahl)) (um führende Leerzeichen zu entfernen) helfen als Quelle für die betroffenen Spalten der Kombobox...

Aber wieso klappt es nur bei 2 Usern nicht? Haben die User die Möglichkeit, die Kombobox-Quelle selbst auszuwählen, also die Spalten, die gezeigt werden sollen?
Wer Fehler in meinen Antworten findet, darf sie behalten, muss sie aber kommentieren. ;-)
Dies ist keineswegs arrogant gemeint, sondern soll nur unterstreichen, dass meine Antworten - natürlich - nicht immer fehlerfrei sind und sein können.
Devise: bitte immer erst selbst probieren!

Aus gesundheitlichen Gründen nur noch selten dabei...

DF6GL

Hallo,

Kombi(listen)Spalten haben immer den Datentyp TEXT (von NULL abgesehen).

Führende Leerzeichen können daher immer mal für Verwirrung sorgen, wenn sie denn auch schon in der Tabelle so vorhanden sind.


In den Access-Optionen sollte die Angabe für die max. Listenfeldeinträge überprüft werden:

Siehe Bild.

Madmán

Also folgende neue Informationen:

Das Problem scheint mit den Usersettings zusammen zu hängen.
Melde ich mich auf einem Problem PC an oder anders rum, wandert das Problem mit. Wie @crystal bereits erwähnt hatte.

Das Problem scheint nicht nur in Access aufzutreten. Die SAP Autocomplete verhält sich exakt gleich. Bei den wenigen Usern mit dem Problem klappt Autocomplete in SAP ebenfalls nicht.

@crystal : Ich habe es probiert und es hat nichts verändert. Die Umwandlung in eine String scheint es nicht zu ändern. Habe ein Testform erstellt und 8 Varianten probiert. Die einzige Funktionierende ist die, in der ich den Datentypen in der Tabelle von int auf str geändert habe. Es liegt absolut an dem Datentypen. 
Und nein, sie können keine Quelle und nichts ändern.

@DF6GL : Führende Leerzeichen sind an dieser Stelle ausgeschlossen. Habe dennoch die Datenintegrität gecheckt und alles ist i.O. Habe bereits alle Settings in Access verglichen und es gibt keine Unterschiede.

Also ich kann aufgrund von den Vergleichen der verschiedenen PCs bereits sicher sagen, dass es sich nicht um ein Problem meiner Programmierung oder meines Datenbankdesigns handelt. Wie oben erwähnt tritt es ebenfalls in SAP auf und wandert mit dem User mit. Also kann es nur noch eine Reg Einstellung sein.

Aber welche???

crystal

Hallo,
es gibt 2 kostenlose Tools, um Zugriffe auf die Registry zu loggen, s. dieser Artikel:
https://www.windowspro.de/tool/registry-aenderungen-ueberwachen-regfromapp-process-monitor

Allerdings wird es nicht einfach sein...
Vielleicht kommst du mit dem Process-Monitor weiter, weil das Tool auch Dateizugriffe loggt.

Und: gehören die 2 User zu einer bestimmten Gruppe (und die anderen nicht)? Dann könnte es auch eine Group-Policy (Gruppen-Richtlinie) sein, die die Einstellung vornimmt.

Vermutung: es könnte am Auto-Complete-Feature des Internet-Explorers liegen, das bei den 2 Usern abgeschaltet wurde. (Das Feature bezieht sich eigentlich auf Formular-Eingaben wie Name, Anschrift etc.)
Wer Fehler in meinen Antworten findet, darf sie behalten, muss sie aber kommentieren. ;-)
Dies ist keineswegs arrogant gemeint, sondern soll nur unterstreichen, dass meine Antworten - natürlich - nicht immer fehlerfrei sind und sein können.
Devise: bitte immer erst selbst probieren!

Aus gesundheitlichen Gründen nur noch selten dabei...

Madmán

Hallo zusammen,

habe mir das Wochenende noch mal den kompletten Code zu Gemüte geführt und bin doch tatsächlich über einen kleinen Fehler gestoßen.
Habe bei irgendeinem Update vergessen, einen Verweis zu entfernen.
Es war noch ein Verweis auf die "Adobe Reader File Preview Type Libary" gesetzt. Da sonst alles late binding ist, habe ich da keinen Gedanken daran verschwendet und beim User selbst ist kein Access installiert, weshalb die Runtime verwendet wird und keine entsprechende Fehlermeldung angezeigt.

Den Verweis entfernt und siehe da, alles funktioniert wie gewohnt.

Vielen Dank für eure Unterstützung :)