Focus-zetting in "enquiry" formulieren

OS: PC/Windows 10 pro
Libreoffice 7.2.5
database: Firebird, als server geïnstalleerd.

Omschrijving:
Bij gebruik van een formulier waarin gegevens uit een database tabel worden getoond
zijn naast database gebonden velden ook andere velden gebruikt voor aanvullende gegevens.
Alle inhouden van database-velden kunnen niet worden gewijzigd .
Ongemak:
Wanneer de gebruiker (per ongeluk) een database-gerelateerd veld anders dan het primaire sleutelveld aanklikt werken de (zelfgemaakte) navigatie-knoppen niet meer. Dit geldt niet voor andere tekstvelden en knoppen en ook niet wanneer een “scrollbar” van een tekst-veld wordt gebruikt bij grotere teksten.
De enige manier om het selecteren van betreffende velden te voorkomen is door “disable” te gebruiken, maar dan wordt de tekstopmaak uitgeschakeld en is tekst niet meer goed leesbar.
Een andere manier is om d.m.v. een event-macro de focus terug te zetten naar het sleutelveld, maar dat is ook geen fraaie oplossing, zeker niet als er een groter aantal velden uit de tabel worden getoond.
Vraag:
Is er een goede oplossing mogelijk voor dit soort situaties of doe ik iets niet goed?

Ontwerp het totale-formulier zo dat de navigatie knoppen altijd tot het data-formulier behoren waar de actie plaats moet vinden. Dit kun je zien in de formulier-navigator. De data-formulier eigenschappen hebben ook een mogelijkheid voor een subformulier om aan te geven dat de navigatie knoppen effect hebben op het hoofdformulier. Ik heb het nooit geprobeerd. Meestal plaats ik een navigatie-bestuurselement en gebruik ik niet de navigatie werkbalk. Let op dat bij het veranderen van een data-formulier meestal ook de gegevens bewaard worden(auto-commit).

Ik heb me waarschijnlijk niet goed uitgedrukt: Op betreffende “Enquiry”-formulier kunnen de databasevelden niet kunnen worden aangepast, maar zijn wel enabled en kunnen dus wel worden aangeklikt, waardoor betreffend veld de focus krijgt. In dat geval werken de navigatie-knoppen niet meer en moet de focus of door de gebruiker of d.m.v. een macro op het sleutelveld worden gezet.
Dit is niet het geval wanneer betreffende velden kunnen worden gewijzigd in een wijzigingsformulier.

Ik krijg het idee dat het formulier, document formulier, veel meer is ontworpen op een manier zoals het gebruikelijk is met Access. Dat past niet zo in de werkwijze van LibreOffice zoals het standaard is ontworpen. Wel is het zo dat LibreOffice nu standaard Access2Base heeft en sinds enige tijd nog enige aanvullingen die voorheen MS-gebruikers het wat gemakkelijker maken. Ik kan mij voorstellen dat het gemakkelijker is voor voorheen MS-gebruikers maar ik heb er geen kennis van.

Ik richt mij meer op hoe de API van LibreOffice zelf werkt. Daarom gebruik ik ook vaak woorden zoals: Een formulier zoals je ziet in de form-navigator.

Ik denk dat het document-formulier zo ontworpen is dat het gewenste alleen met een macro te bereiken is.