Contingut

# Dades

La pestanya Dades defineix les propietats del formulari que fan referència a la base de dades que està enllaçada al formulari.

Defineix la font de dades a partir de la qual es basa el formulari, o indica si l'usuari pot editar les dades. A part de les funcions d'ordenació i filtre, també hi trobareu les propietats necessàries per crear un subformulari.

Per accedir a esta orde...

Open context menu of a selected form element - choose Form Properties - Data tab.

Open Form Design toolbar, click Form Properties icon - Data tab.

## Afig només dades

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

Si Afig només dades està definit en "Sí", no es poden canviar ni suprimir les dades.

## Analitza l'orde SQL

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.

## Barra de navegació

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

L'opció "Formulari pare" s'utilitza per als subformularis. Si trieu esta opció per a un subformulari, podeu navegar utilitzant els registres del formulari principal si el cursor està situat al subformulari. Un subformulari està enllaçat al formulari pare mitjançant una relació 1:1, de manera que la navegació sempre es fa al formulari pare.

## Cicle

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:

Opció | Significat
--- | ---
Per defecte | Este paràmetre defineix automàticament el cicle que segueix un enllaç a una base de dades que ja existeix: si el formulari conté un enllaç a una base de dades, la tecla de tabulació, com a opció per defecte, iniciarà un canvi cap al registre següent o l'anterior en eixir de l'últim camp (vegeu Tots els registres). Si no hi ha cap enllaç a una base de dades, es mostrarà el formulari següent o l'anterior (vegeu Pàgina actual).
Tots els registres | Esta opció només s'aplica als formularis de bases de dades i s'utilitza per navegar per tots els registres. Si utilitzeu la tecla de tabulació per eixir de l'últim camp d'un formulari, es canvia el registre actual.
Registre actiu | Esta opció només s'aplica als formularis d'una base de dades, i s'utilitza per navegar dins del registre actual. Si utilitzeu la tecla de tabulació per eixir de l'últim camp d'un formulari, es canvia el registre actual.
Pàgina actual | En eixir de l'últim camp d'un formulari, el cursor salta fins al primer camp del formulari següent. Això passa en tots els formularis HTML; per tant, esta opció és especialment important en este tipus de formularis.

## Contingut

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.

Si heu seleccionat "Taula" o "Consulta" al Tipus de contingut, el quadre mostra totes les taules i consultes configurades a la base de dades seleccionada.

## Enllaça els camps esclau

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.

Si, per exemple, heu indicat el camp de la base de dades ID_Client com a camp principal a Enllaça els camps mestre, a Enllaça els camps esclau podeu definir el nom de la variable en què s'han d'emmagatzemar els valors del camp de la base de dades ID_Client. Si ara indiqueu una expressió SQL al quadre Font de dades utilitzant esta variable, es mostraran els valors adequats al subformulari.

## Enllaça els camps mestre

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.

The subform is based on an SQL query; more specifically, on a Parameter Query. If a field name is entered in the Link master fields box, the data contained in that field in the main form is read to a variable that you must enter in Link slave fields. In an appropriate SQL statement, this variable is compared to the table data that the subform refers to. Alternatively, you can enter the column name in the Link master fields box.

Considereu l'exemple següent:

La taula de la base de dades en la qual es basa el formulari és, per exemple, una base de dades de clients ("Client"), on a cada client se li ha assignat un nombre únic en un camp de dades anomenat "ID_client". Les comandes d'un client es troben en una altra taula d'una base de dades. Ara voleu veure cadascuna de les comandes del client després d'introduir-les al formulari. Per fer-ho, heu de crear un subformulari. A Enllaça els camps mestre introduïu el camp de dades de la base de dades de clients que identifica clarament el client, és a dir, ID_client. A Enllaça els camps esclau introduïu el nom d'una variable que ha d'acceptar les dades del camp ID_Client, per exemple, x.

El subformulari ha de mostrar les dades adequades a partir de la taula de comandes ("Ordes") per a cada ID de client (ID_Client -> x). Això només és possible si a la taula de comandes cada comanda està assignada únicament a un client. Alternativament, podeu utilitzar un altre camp anomenat ID_Client; tanmateix, assegureu-vos que este camp no es confongui amb el mateix camp del formulari principal, el camp s'anomena Nombre_Client.

Ara compareu el Nom_client de la taula "Comandes" amb l'ID_client de la taula "Clients", que es pot fer, per exemple, utilitzant la variable x amb l'expressió SQL següent:

SELECT * FROM Orders WHERE Customer_Number =: x (si voleu que el subformulari mostre totes les dades de la taula de comandes)

o:

SELECT Item FROM Orders WHERE Customer_Number =: x (si voleu que el subformulari de la taula de comandes mostre només les dades que hi ha al camp "Element")

L'expressió SQL es pot introduir al camp Font de dades o podeu crear una consulta de paràmetre adequada que es pot utilitzar per crear el subformulari.

## Filtre

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.

The filter function is available in user mode through the AutoFilter and Standard Filter icons on the Form Navigation Bar.

## Font de dades

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.

## Ordena

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).

Les icones adequades de la barra Navegació de formularis es poden utilitzar en mode d'usuari per ordenar: Orde ascendent, Orde descendent, Ordena.

## Permet addicions

Determines if data can be added.

## Permet les modificacions

Determina si les dades es poden modificar.

## Permet les supressions

Determina si les dades es poden suprimir.

## Tipus de contingut

Defineix si la font de dades ha de ser una taula d'una base de dades que ja existeix o una consulta, o si el formulari s'ha de generar a partir d'una expressió SQL.

Si trieu "Taula" o "Consulta", el formulari farà referència a la taula o consulta que indiqueu a Contingut. Si voleu crear una nova consulta o un subformulari, heu de triar l'opció SQL. Podeu introduir l'expressió per a la consulta SQL o el subformulari directament al quadre Contingut de la llista de la pestanya Dades de les Propietats de control.

## Què és un subformulari?

Els formularis es creen a partir d'una taula d'una base de dades o d'una consulta a una base de dades. Mostren les dades d'una manera visualment agradable i es poden utilitzar per introduir o editar dades.

If you require a form that can refer to the data in a table or query and can additionally display data from another table, you should create a subform. For example, this subform can be a text box that displays the data of another database table.

Un subformulari és un component addicional del formulari principal. El formulari principal es pot anomenar "formulari pare" o "mestre". Els subformularis són necessaris quan voleu accedir a més d'una taula d'un formulari. Cada taula addicional requereix un subformulari.

Després de crear un formulari, el podeu convertir en un subformulari. Per fer-ho, entreu al Mode disseny i obriu el Navegador de formularis. Al Navegador de formularis, arrossegueu un formulari (que es convertirà en un subformulari) damunt d'un altre formulari (que es convertirà en formulari mestre).

L'usuari del document no veurà que un formulari té subformularis. L'usuari només veu un document on s'introdueixen dades o on es mostren les dades que ja existeixen.

Indiqueu el camp mestre d'enllaç dels camps de dades al formulari mestre. Al subformulari, el camp esclau d'enllaç es pot definir com a camp que coincidirà amb els continguts del camp mestre d'enllaç.

Quan l'usuari navega per les dades, el formulari mostra sempre el registre de dades actual. Si hi ha subformularis definits, els continguts dels subformularis es mostraran després d'un retard breu d'aproximadament 200 ms. Este retard vos permet navegar ràpidament pels registres de dades del formulari mestre. Si navegueu cap al següent registre de dades mestre dins del límit del retard, les dades del subformulari no s'hauran de recuperar ni de mostrar.