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

Obriu el men√ļ contextual de l'element de formulari seleccionat - trieu la pestanya Formulari - Dades

Obriu la barra d'eines Controls de formulari o Disseny del formulari, feu clic a la icona Formulari - pestanya Dades


Afig només dades

Determina si el formulari només permet l'addició de noves dades (Sí) o si també permet altres propietats (No).

Icona de nota

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


Analitza l'orde SQL

Indica si el LibreOffice ha d'analitzar l'expressió SQL. Si es defineix en Sí, podeu fer clic al botó ... que apareix al costat del quadre de llista Contingut. Este quadre obri una finestra on podeu crear gràficament una consulta a una base de dades. Quan tanqueu esta finestra, l'expressió SQL de la consulta creada s'inserirà al quadre de llista Contingut.

Barra de navegació

Indica si es poden utilitzar les funcions de navegació a la barra inferior del formulari.

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

Determina com s'ha de fer la navegaci√≥ amb la tecla de tabulaci√≥. Amb la tecla de tabulaci√≥ podeu avan√ßar pel formulari. Si premeu simult√†niament la tecla de maj√ļscules, la navegaci√≥ es far√† cap a la direcci√≥ oposada. Si arribeu a l'√ļltim (o al primer) camp i torneu a pr√©mer la tecla de tabulaci√≥, poden succeir diverses coses. Definiu el control de la tecla amb les opcions seg√ľents:

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

Determina el contingut que s'ha d'utilitzar per al formulari. El contingut pot ser una taula que ja existeix o una consulta (creada anteriorment a la base de dades), o es pot definir mitjançant una expressió SQL. Abans d'introduir contingut, n'heu de definir el tipus exacte a Tipus de contingut.

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

Si creeu un subformulari, introdu√Įu la variable on es poden emmagatzemar els possibles valors del formulari pare. Si un subformulari es basa en una consulta, introdu√Įu la variable que heu definit a la consulta. Si creeu un formulari utilitzant una expressi√≥ SQL introdu√Įda al camp Font de dades, introdu√Įu la variable que heu utilitzat a l'expressi√≥. Podeu triar qualsevol nom per a la variable. Si voleu introduir valors m√ļltiples, premeu Maj + Retorn.

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

Si creeu un subformulari, introdu√Įu el camp de dades del formulari pare responsable de la sincronitzaci√≥ entre el formulari pare i el subformulari. Per introduir valors m√ļltiples, premeu Maj + Retorn despr√©s de cada l√≠nia d'entrada.

El subformulari es basa en una consulta SQL i, més específicament, en una Consulta d'un paràmetre. Si s'introdueix un nom de camp al quadre Enllaça els camps mestre, les dades que conté este camp en el formulari principal es lligen com una variable que heu d'introduir a Enllaça els camps esclau. En una expressió SQL adequada, esta variable es compara amb les dades de la taula a la qual es refereix el subformulari. Alternativament, podeu introduir el nom de la columna a Enllaça els camps mestre.

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

Introdu√Įu les condicions necess√†ries per filtrar dades al formulari. Les indicacions del filtre segueixen regles SQL sense utilitzar la cl√†usula WHERE. Per exemple, si voleu veure tots els registres amb el nom de pila "Miquel", al camp de dades escriviu: Nom de pila = 'Miquel'. Tamb√© podeu combinar condicions: Nom de pila = 'Miquel' OR Nom de pila = 'Pere'. Es mostraran tots els registres que coincidisquen amb qualsevol d'estes dues condicions.

La funció de filtre està disponible en mode d'usuari, mitjançant les icones Filtre automàtic i Filtre per defecte a la barra de Navegació de formularis.

Font de dades

Defineix la font de dades a la qual s'ha de referir el formulari. Si feu clic al botó ..., cridareu el diàleg Obrir, on podeu triar una font de dades.

Ordena

Indica les condicions per ordenar les dades al formulari. La indicaci√≥ de les condicions d'ordenaci√≥ segueix les regles SQL sense utilitzar la cl√†usula ORDER BY. Per exemple, si voleu que tots els registres d'una base de dades s'ordenin en un camp en orde ascendent i en un altre camp en orde descendent, introdu√Įu Nom de pila ASC i Nom DESC (s'assumeix que el Nom de pila i el Nom s√≥n els noms dels camps de dades).

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

Determina si es poden afegir dades.

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.

Si necessiteu un formulari que es puga referir a les dades d'una taula o d'una consulta i addicionalment puga mostrar dades d'una altra taula, heu de crear un subformulari. Per exemple, este subformulari pot ser un quadre de text que mostre les dades d'una altra taula d'una base de dades.

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.