Inhoud
Index 🔎︎

# Gegevens

Op het tabblad Gegevens definieert u de formuliereigenschappen die verwijzen naar de database die aan het formulier is gekoppeld.

De gegevensbron definiëren waarop het formulier moet worden gebaseerd of aangeven welke gegevens door de gebruiker kunnen worden bewerkt. Los van de sorteer- en filterfuncties, worden alle benodigde eigenschappen weergegeven voor het maken van een subformulier.

Om toegang te krijgen tot deze functie..

Open het contextmenu van het geselecteerde formulierelement en kies Formulier, tabblad Gegevens.

Open de werkbalk Besturingselementen of Formulierontwerp en klik op het pictogram Besturingselement. Klik vervolgens op het tabblad Gegevens.

## Alleen gegevens toevoegen

Determines if the form only allows the addition of new data (Yes) or if it allows other properties as well (No).

Als Alleen gegevens toevoegen is ingesteld op 'Ja', kunt u geen gegevens wijzigen of verwijderen.

## Cyclus

Determines how the navigation should be done using the tab key. Using the tab key, you can move forward in the form. If you simultaneously press the Shift key, the navigation will follow the opposite direction. If you reach the last (or the first) field and press the tab key again, it can have various effects. Define the key control with the following options:

Optie | Betekenis
Standaard | Op basis van deze instelling wordt automatisch een cyclus gedefinieerd die een bestaande databasekoppeling volgt: Als het formulier een databasekoppeling bevat, wordt met de Tabtoets standaard een wijziging geïnitieerd in de volgende of de vorige record wanneer het laatste veld wordt verlaten (zie Alle records). Als er geen databasekoppeling is, wordt het volgende/vorige formulier weergegeven (zie Huidige pagina).
Alle records | Deze optie is alleen van toepassing op databaseformulieren en wordt gebruikt voor het navigeren door alle records. De huidige record wordt gewijzigd als het laatste veld van een formulier wordt verlaten via de Tabtoets.
Actieve record | Deze optie is alleen van toepassing op databaseformulieren en wordt gebruikt voor het navigeren binnen de huidige record. De huidige record wordt gewijzigd als het laatste veld van een formulier wordt verlaten via de Tabtoets.
Huidige pagina | Bij verlaten van het laatste veld van een formulier, springt de cursor naar het eerste veld in het volgende formulier. Dit is standaard voor HTML-formulieren; deze optie is dus bijzonder relevant voor HTML-formulieren.

## Filteren

Enter the required conditions for filtering the data in the form. The filter specifications follow SQL rules without using the WHERE clause. For example, if you want to display all records with the "Mike" forename, type into the data field: Forename = 'Mike'. You can also combine conditions: Forename = 'Mike' OR Forename = 'Peter'. All records matching either of these two conditions will be displayed.

De functie Filteren is in de gebruikersmodus beschikbaar via de pictogrammen AutoFilter en Standaardfilter op de werkbalk Formuliernavigatie.

## Gegevens toevoegen

Determines if data can be added.

## Gegevens wijzigen

Determines if the data can be modified.

## Gegevensbron

Defines the data source to which the form should refer. If you click the ... button, you call the Open dialog, where you can choose a data source.

## Hoofdvelden koppelen

If you create a subform, enter the data field of the parent form responsible for the synchronization between parent and subform. To enter multiple values, press Shift + Enter after each input line.

Het subformulier is gebaseerd op een SQL-query, of beter gezegd, op een parameterquery. Als in het vak Hoofdvelden koppelen een veldnaam is ingevoerd, worden de gegevens in dat veld in het hoofdformulier gelezen naar een variabele die u moet invoeren in het veld Slave-velden koppelen. In een toepasselijke SQL-instructie wordt deze variabele vergeleken met de tabelgegevens waarnaar in het subformulier wordt verwezen. U kunt ook de kolomnaam in het vak Hoofdvelden koppelen invoeren.

Bekijk het volgende voorbeeld:

De databasetabel waarop het formulier wordt gebaseerd, bijvoorbeeld een klantendatabase ("Klanten"), waarin elke klant over een uniek nummer beschikt in een gegevensveld met de naam "Klant_ID". De orders van de klant worden bijgehouden in een andere databasetabel. U wilt nu alle klantorders bekijken nadat deze in het formulier zijn ingevoerd. Hiertoe moet u een subformulier maken. Voer onder Hoofdvelden koppelen het gegevensveld uit de klantendatabase in waarmee de klant wordt aangegeven, het veld KLANT_ID. Voer onder Slave-velden koppelen de naam in van een variabele waarmee de gegevens van het veld KLANT_ID worden geaccepteerd, bijvoorbeeld x.

In het subformulier moeten de juiste gegevens uit de ordertabel ("Orders") voor elke klant of klant ID (Klant_ID -> x) worden weergegeven. Dit is alleen mogelijk als elke order uniek is toegewezen aan één klant in de ordertabel. Als alternatief kunt u een veld gebruiken met de naam "K_ID"; om er zeker van te zijn dat dit veld niet wordt verward met het veld in het hoofdformulier ("Klant_ID").

Nu kunt u eenvoudig de waarde in het veld "K_ID" in de tabel "Orders" vergelijken met de waarde in het veld "Klant_ID" in de tabel "Klanten". U kunt dit bijvoorbeeld doen met behulp van de x-variabele met de volgende SQL-instructie:

SELECT * FROM Orders WHERE K_ID =: x (als in het subformulier alle gegevens uit de ordertabel moeten worden weergegeven)

of:

SELECT Item FROM Orders WHERE K_ID =: x (als u in het subformulier uit de ordertabel alleen de gegevens wil weergeven die zijn opgenomen in het veld "Item")

De SQL-instructie kan worden ingevoerd in het veld Gegevensbron of u kunt een parameterquery maken die u kunt gebruiken om het subformulier te maken.

## Inhoud

Determines the content to be used for the form. The content can be an existing table or a query (previously created in the database), or it can be defined by an SQL-statement. Before you enter a content you have to define the exact type in Content type.

Als u Tabel of Query hebt geselecteerd in Soort inhoud, worden in het vak alle tabellen en query's weergegeven die in de geselecteerde database zijn ingesteld.

## Navigatiebalk

Specifies whether the navigation functions in the lower form bar can be used.

De optie "Bovenliggende formulier" wordt gebruikt voor subformulieren. Als u deze optie kiest voor een subformulier, kunt u navigeren met behulp van de records van het hoofdformulier als de cursor zich in het subformulier bevindt. Omdat een subformulier is gekoppeld aan het hoofdformulier met een 1:1-verhouding, wordt de navigatie altijd uitgevoerd in het hoofdformulier.

## SQL-opdracht analyseren

Specifies whether the SQL statement is to be analyzed by LibreOffice. If set to Yes, you can click the ... button next to the Content list box. This will open a window where you can graphically create a database query. When you close that window, the SQL statement for the created query will be inserted in the Content list box.

## Slave-velden koppelen

If you create a subform, enter the variable where possible values from the parent form field can be stored. If a subform is based on a query, enter the variable that you defined in the query. If you create a form using an SQL statement entered in the Data source field, enter the variable you used in the statement. You can choose any variable name. If you want to enter multiple values, press Shift + Enter.

Als u bijvoorbeeld het databaseveld "Klant_ID" als bovenliggend veld onder Hoofdvelden koppelen hebt opgegeven, kunt u onder Slave-velden koppelen de naam definiëren van de variabele waarin de waarden van het databaseveld "Klant_ID" moeten worden opgeslagen. Als u nu een SQL-instructie in het vak Gegevensbron opgeeft met behulp van deze variabele, worden de relevante waarden in het subformulier weergegeven.

## Soort inhoud

Aangeven of de gegevensbron een bestaande databasetabel of -query is en of het formulier dat moet worden gegenereerd, is gebaseerd op een SQL-instructie.

Als u Tabel of Query kiest, wordt in het formulier verwezen naar de tabel of query die u opgeeft onder Inhoud. Als u een nieuwe query of een subformulier, wilt maken, moet u de optie SQL kiezen. Vervolgens kunt u de instructie voor de SQL-query of het subformulier direct invoeren in het vak Lijstinhoud op het tabblad met eigenschappen voor besturingselementen.

## Sorteren

Specifies the conditions to sort the data in the form. The specification of the sorting conditions follows SQL rules without the use of the ORDER BY clause. For example, if you want all records of a database to be sorted in one field in an ascending order and in another field in a descending order, enter Forename ASC, Name DESC (presuming Forename and Name are the names of the data fields).

De daarvoor bestemde pictogrammen op de werkbalk Formuliernavigatie kunnen in gebruikersmodus worden gebruikt om te sorteren: Oplopend sorteren, Aflopend sorteren, Sorteren.

## Verwijderen toestaan

Determines if the data can be deleted.

## Wat is een subformulier?

Formulieren worden gemaakt op basis van een databasetabel of databasequery. In formulieren worden de gegevens op grafische wijze weergegeven en kunnen worden gebruikt om nieuwe gegevens in te voeren of bestaande gegevens te bewerken.

Als u een formulier nodig hebt dat naar de gegevens in een tabel of query kan verwijzen en ook gegevens uit een andere tabel kan weergeven, dan kunt u een subformulier in uw formulier maken. Dit subformulier kan bijvoorbeeld een tekstvak bevatten, waarin de gegevens uit een tweede databasetabel zijn opgenomen.

Een subformulier is een aanvullende component van het hoofdformulier. Het hoofdformulier wordt het 'bovenliggend' formulier of 'master' genoemd. Subformulieren zijn nodig als u toegang wilt tot meerdere tabellen uit een formulier. Voor elke tabel is een eigen subformulier nodig.

Nadat u een formulier hebt gemaakt, kunt u het veranderen in een subformulier. Ga hiervoor naar de ontwerpmodus en open de Formulier-navigator. In de Formulier-navigator sleept u een formulier (dat een subformulier moet worden) op een ander formulier (dat een model zal worden).

De gebruiker van het document kan niet zien of een formulier over subformulieren beschikt. De gebruiker ziet alleen een formulier waarin gegevens zijn ingevoerd of waarin bestaande gegevens worden weergegeven.

Specificeer het hoofdveld voor koppeling bij de gegevensvelden in het hoofdformulier. In het subformulier kan het slave-veld voor koppeling ingesteld worden als een veld dat in overeenstemming gebracht zal worden met de inhoud van het hoofdveld voor koppeling.

Wanneer de gebruiker door de gegevens navigeert, geeft het formulier altijd de huidige gegevensrecord weer. Als er subformulieren gedefinieerd zijn, wordt de inhoud van deze formulieren na een korte vertraging van ongeveer 200 ms weergegeven. U kunt dan snel door de gegevensrecords van het hoofdformulier bladeren. Als u naar de volgende hoofdgegevensrecord gaat binnen de vertragingstijd, worden de gegevens van het subformulier niet opgehaald en weergegeven.