Données

L'onglet Données définit les propriétés du formulaire qui se rapportent à la base de données liée au formulaire.

DĂ©finit la source de donnĂ©es Ă  laquelle le formulaire est liĂ© ou spĂ©cifie si les donnĂ©es peuvent ĂȘtre, ou non, Ă©ditĂ©es. Outre les fonctions de tri et de filtre, figurent Ă©galement toutes les propriĂ©tĂ©s nĂ©cessaires Ă  la crĂ©ation d'un sous-formulaire.

Pour accéder à cette commande...

Ouvrez le menu contextuel d'un élément de formulaire sélectionné, choisissez l'onglet Formulaire - Données.

Ouvrez la barre d'outils ContrÎles de formulaire ou Conception de formulaire, puis cliquez sur l'icÎne Formulaire dans l'onglet Données.


Analyser l'instruction 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.

Autoriser les ajouts

Determines if data can be added.

Autoriser les modifications

Determines if the data can be modified.

Autoriser les suppressions

Determines if the data can be deleted.

Barre de navigation

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

L'option "Formulaire parent" concerne les sous-formulaires. Lorsque vous sĂ©lectionnez cette option pour un sous-formulaire, vous pouvez naviguer parmi les enregistrements du formulaire principal Ă  condition que le curseur se trouve dans le sous-formulaire. Étant donnĂ© qu'un sous-formulaire est liĂ© au formulaire principal via une relation 1:1, la navigation s'effectue toujours dans le formulaire parent.

Contenu

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 vous avez sĂ©lectionnĂ© "Table" ou "RequĂȘte" dans Type de contenu, la zone rĂ©pertorie toutes les tables et requĂȘtes paramĂ©trĂ©es dans la base de donnĂ©es sĂ©lectionnĂ©e.

Cycle

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:

Option

Signification

Par défaut

Ce paramÚtre permet de définir automatiquement un cycle orienté vers une connexion à une base de données existante. S'il existe dans un formulaire une connexion à une base de données, il est normalement possible de basculer vers l'enregistrement précédent ou suivant au moyen de la touche de tabulation lorsque vous quittez le dernier champ (voir Tous les enregistrements). S'il n'y a pas de connexion à une base de données, le basculement s'effectue vers le précédent formulaire ou le suivant (voir la page actuelle).

Tous les enregistrements

Cette option ne s'applique qu'aux formulaires de base de données et sert à explorer l'ensemble des enregistrements. Si vous utilisez la touche Tabulation pour quitter le dernier champ d'un formulaire, l'enregistrement actif est modifié.

Enregistrement actif

Cette option ne s'applique qu'aux formulaires de base de données et sert à explorer l'enregistrement actif. Si vous utilisez la touche Tabulation pour quitter le dernier champ d'un formulaire, l'enregistrement actif est modifié.

Page active

Si vous quittez un formulaire à partir de son dernier champ, le curseur passe au premier champ du formulaire suivant. Cette option, qui est la norme avec les formulaires HTML, est particuliÚrement appropriée avec ceux-ci.


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.

La fonction de filtrage peut ĂȘtre activĂ©e en mode utilisateur Ă  l'aide des icĂŽnes AutoFiltre et Filtre standard de la Barre de formulaire.

Lier les champs esclaves

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 vous avez indiquĂ© par exemple le champ de base de donnĂ©es "Clients_ID" comme champ de base de donnĂ©es supĂ©rieur sous Établir un lien depuis, vous dĂ©terminez ensuite sous Établir un lien avec le nom de la variable au niveau de laquelle les valeurs du champ de base de donnĂ©es "Clients_ID" doivent ĂȘtre lues. Si vous utilisez maintenant cette variable pour dĂ©finir une instruction SQL dans le champ Source de donnĂ©es, les valeurs correspondantes sont affichĂ©es dans le sous-formulaire.

Lier les champs maĂźtres

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.

Le sous-formulaire se base sur une requĂȘte SQL, et tout particuliĂšrement sur une requĂȘte de paramĂštre. Lorsque vous entrez un nom de champ dans la zoneÉtablir un lien depuis, les donnĂ©es du champ sont lues Ă  partir du formulaire principal au niveau d'une variable que vous devez spĂ©cifier dans la zoneÉtablir un lien avec. Une instruction SQL adĂ©quate permet de comparer cette variable avec les donnĂ©es de la table auxquelles le sous-formulaire se rĂ©fĂšre. Vous pouvez Ă©galement entrer le nom de la colonne dans la zone Établir un lien depuis.

Examinez l'exemple suivant :

La table de base de donnĂ©es sur laquelle s'appuie le formulaire correspond par exemple Ă  une base de donnĂ©es client ("Clients") dans laquelle vous identifiez chaque client par un numĂ©ro unique au niveau d'un champ de donnĂ©es intitulĂ© "Clients_ID". Vous gĂ©rez les commandes d'un client dans une autre table de base de donnĂ©es. Vous souhaitez maintenant visualiser les commandes de chaque client que vous avez entrĂ© dans le formulaire. Pour ce faire, vous devez crĂ©er le sous-formulaire et sous Établir un lien depuis entrez le champ de donnĂ©es de la base de donnĂ©es client auquel le client peut ĂȘtre clairement identifiĂ©, donc "Clients_ID" (sans guillemets). Sous Établir un lien avec, entrez le nom d'une variable Ă  laquelle les donnĂ©es du champ Clients_ID doivent s'ajouter, par exemple "x".

Le sous-formulaire doit indiquer les donnĂ©es appropriĂ©es Ă  partir de la table des commandes ("Commandes") pour chaque ID client (ID_Client -> x). Ce n'est possible que si chaque commande n'est assignĂ©e qu'Ă  un seul client dans la table des commandes. Vous pouvez aussi utiliser un autre champ nommĂ© ID_Client. Cependant, pour Ă©viter les confusions entre ce champ et le mĂȘme champ du formulaire principal, le champ est nommĂ© NumĂ©ro_Client.

Comparez maintenant le Numéro_Client de la table "Commandes" à l'ID_Client de la table "Clients". Pour ce faire, vous pouvez par exemple utiliser la variable x avec l'instruction SQL suivante :

SELECT * FROM Commandes WHERE No_Client = : x (si le sous-formulaire doit afficher toutes les données de la table Cde.)

ou :

SELECT Article FROM Commandes WHERE No_Client = : x (si le sous-formulaire ne doit afficher que les données du champ "Article" de la table Cde.)

Vous pouvez entrer l'instruction SQL soit dans le champ Source de donnĂ©es, ou vous gĂ©nĂ©rez une requĂȘte de paramĂštre correspondante que vous utilisez pour crĂ©er le sous-formulaire.

N'ajouter que des données

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

IcĂŽne Remarque

Si N'ajouter que des données est défini sur "Oui", il n'est pas possible de modifier ou de supprimer des données.


Source de données

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.

Trier

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

Vous pouvez utiliser les icÎnes correspondantes de la barre de formulaire en mode utilisateur pour effectuer les opérations suivantes : Tri croissant, Tri décroissant, Tri.

Type de contenu

DĂ©termine si la source de donnĂ©es doit ĂȘtre une table ou une requĂȘte de base de donnĂ©es existante, ou si le formulaire doit ĂȘtre gĂ©nĂ©rĂ© Ă  partir d'une instruction SQL.

Si vous choisissez Table ou RequĂȘte, le formulaire fera rĂ©fĂ©rence Ă  la table ou Ă  la requĂȘte spĂ©cifiĂ©e sous Contenu. Pour crĂ©er une requĂȘte ou un sous-formulaire, sĂ©lectionnez l'option SQL. Vous pourrez alors saisir l'instruction de la requĂȘte SQL ou du sous-formulaire directement dans la zone Contenu de liste dans l'onglet DonnĂ©es sous PropriĂ©tĂ©s du contrĂŽle.

Qu'est-ce qu'un sous-formulaire ?

La gĂ©nĂ©ration de formulaires s'effectue d'aprĂšs une table ou une requĂȘte de base de donnĂ©es. Ils permettent de prĂ©senter les donnĂ©es et peuvent ĂȘtre utilisĂ©s pour saisir de nouvelles donnĂ©es ou pour modifier des donnĂ©es.

Pour obtenir un formulaire pouvant faire rĂ©fĂ©rence aux donnĂ©es d'une table ou d'une requĂȘte et pouvant Ă©galement afficher des donnĂ©es d'une autre table, vous devez crĂ©er un sous-formulaire. Ce sous-formulaire peut ĂȘtre, par exemple, une zone de texte affichant les donnĂ©es d'une autre table de base de donnĂ©es.

Un sous-formulaire est un composant supplémentaire du formulaire principal. Le formulaire principal est également appelé formulaire "parent". Les sous-formulaires sont nécessaires dÚs lors que vous accédez à plusieurs tables depuis un formulaire. Chaque table supplémentaire requiert son propre sous-formulaire.

Une fois créés, vous pouvez transformer les formulaires en sous-formulaires. Il suffit de passer en mode Ébauche, puis d'ouvrir le navigateur de formulaire. Dans le navigateur de formulaire, faites glisser le formulaire que vous souhaitez transformer en sous-formulaire sur tout autre formulaire. Ce dernier devient le formulaire principal.

L'utilisateur de votre document ne peut pas savoir si un formulaire possÚde des sous-formulaires. Il ne voit qu'un document dans lequel des données sont entrées ou dans lequel des données figurent déjà.

Dans les champs de donnĂ©es du formulaire principal, renseignez le champ Établir un lien depuis. Dans le sous-formulaire, l'option Établir un lien avec peut ĂȘtre dĂ©finie comme un champ qui sera mis en correspondance avec le contenu du champ Établir un lien depuis.

Lorsque l'utilisateur parcourt les données, le formulaire affiche toujours l'enregistrement des données actuelles. Si des sous-formulaires ont été définis, leur contenu s'affichera dans un délai trÚs court d'environ 200 ms, durée pendant laquelle vous pouvez rapidement parcourir les enregistrements de données du formulaire principal. Si vous accédez au prochain enregistrement de données principales dans le temps imparti, il sera inutile d'extraire et d'afficher les données du sous-formulaire.