Faq/Base/135

    From The Document Foundation Wiki
    < Faq‎ | Base
    This page is a translated version of the page Faq/Base/135 and the translation is 100% complete.
    Other languages:


    Hoe maak ik een keuzelijst?

    Bij het invoeren van gegevens wil je graag kunnen kiezen uit de lijst waarden die al in dat veld voorkomen. Dit is mogelijk in Calc teksten met een keuzelijst (rechtsklik of Alt + Down).

    Wat we willen hebben

    Selectie van een unieke index

    Base geeft dit, maar alleen met een formulier.

    • Met andere woorden, niet met direct record in de tabel.
    • Om dit in bladmode (datasheet) te krijgen, maar een formulier aan met de assistent: het opzoeken gaat dan met een "control table".

    Deze techniek gebruikt een combobox controle met het inhoudstype Sql en de inhoud is de verlangde selectie.

    SELECT DISTINCT "Instrument" FROM "Table1" ORDER BY "Instrument" ASC

    NB:

    • Door het gebruik van DISTINCT bevat de lijst geen dubbele gegevens
    • Door het sorteren wordt het zoeken in de lijst gemakkelijker.
    • Het is aan te raden om een index op het zoekveld aan te maken (klik op Draft Index bij het bewerken van de tabel).

    Dit zijn de velden die je bij dit instellen ziet:

    SQL-code voor de combobox

    Met de controle combobox kun je nieuwe waarden toevoegen. Die komen vanzelf in de lijst, maar komen standaard wel achteraan te staan tot de volgende gegevenswijziging. Forceer deze wijziging door een macro toe te voegen aan de gebeurtenis On got focus. De macro is zoiets als

    option explicit
    Sub PysAcutaliserListe(PysEvent)
    PysEvent.source.model.refresh
    End Sub
    

    Voorbeeld database downloaden