Données

The Data tab page allows you to assign a data source to the selected control.

Pour accéder à cette commande...

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

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


Icône Remarque

For forms with database links, the associated database is defined in the Form Properties. You will find the functions for this on the Data tab page.


The possible settings of the Data tab page of a control depend on the respective control. You will only see the options that are available for the current control and context.
The following fields are available:

Cellule liée

Spécifie la référence à une cellule liée sur la feuille de calcul. L'état ou le contenu du contrôle est lié au contenu de la cellule. Les tableaux suivants dressent la liste des contrôles avec les types de liens correspondants :

Case à cocher avec cellule liée

Action

Résultat

Select the check box:

TRUE is entered into the linked cell.

Deselect the check box:

FALSE is entered into the linked cell.

Tri-state check box is set to "undetermined" state:

#NV is entered into the linked cell.

Enter a number or a formula that returns a number in the linked cell:

If entered value is TRUE or not 0: Check box is selected.
If entered value is FALSE or 0: Check box is deselected.

Clear the linked cell, or enter text, or enter a formula that returns text or an error:

La case à cocher est définie sur l'état "indéterminé" si c'est une case à cocher à trois états ; sinon, elle est désactivée.

Select the box. The Reference value box contains text:

The text from the Reference value box is copied to the cell.

Deselect the box. The Reference value box contains text:

Une chaîne vide est copiée dans la cellule.

The Reference value box contains text. Enter the same text into the cell:

La case à cocher est activée.

The Reference value box contains text. Enter another text into the cell:

La case à cocher est désactivée.


Bouton radio avec cellule liée

Action

Résultat

Select the option button:

TRUE is entered into the linked cell.

Option button is deselected by selecting another option button:

FALSE is entered into the linked cell.

Enter a number or a formula that returns a number in the linked cell:

If entered value is TRUE or not 0: Option button is selected.
If entered value is FALSE or 0: Option button is deselected.

Clear the linked cell, or enter text, or enter a formula that returns text or an error:

Option button is deselected.

Click the option button. The Reference value box contains text:

The text from the Reference value box is copied to the cell.

Click another option button of the same group. The Reference value box contains text:

Une chaîne vide est copiée dans la cellule.

The Reference value box contains text. Enter the same text into the cell:

Le bouton radio est activé.

The Reference value box contains text. Enter another text into the cell:

Le bouton radio est désactivé.


Zone de texte avec cellule liée

Action

Résultat

Enter text into the text box:

Text is copied into the linked cell.

Clear the text box:

Linked cell is cleared.

Enter text or a number in the linked cell:

Text or number is copied into the text box.

Enter a formula into the linked cell:

Formula result is copied into the text box.

Clear the linked cell:

Text box is cleared.


Champ numérique et champ formaté avec cellule liée

Action

Résultat

Enter a number into the field:

Number is copied into the linked cell.

Clear the field:

Value 0 is set in the linked cell.

Enter a number or a formula that returns a number in the linked cell:

Number is copied into the field.

Clear the linked cell, or enter text, or enter a formula that returns text or an error:

Value 0 is set in the field.


Zone de liste avec cellule liée

Les zones de liste prennent en charge deux modes Liaison, voir la propriété "Contenu de la cellule liée ".

  1. Linked contents: Synchronize the text contents of the selected list box entry with the cell contents.

  2. Linked selection position: The position of the single selected item in the list box is synchronized with the numerical value in the cell.

Action

Résultat

Select a single list item:

Le contenu est lié : le texte de l'élément est copié dans la cellule liée.

Selection is linked: Position of the selected item is copied into the linked cell.
For example, if the third item is selected, the number 3 will be copied.

Select several list items:

#NV is entered into the linked cell.

Deselect all list items:

Contents are linked: Linked cell is cleared.

Selection is linked: Value 0 is entered in the linked cell.

Enter text or a number into the linked cell:

Contents are linked: Find and select an equal list item.

Selection is linked: The list item at the specified position (starting with 1 for the first item) is selected. If not found, all items are deselected.

Enter a formula into the linked cell:

Find and select a list item that matches the formula result and link mode.

Clear the linked cell:

Deselect all items in the list box.

Change the contents of the list source range:

Les éléments de la zone de liste se mettent à jour en fonction des modifications, et la sélection est conservée. Cela peut entraîner la mise à jour de la cellule liée.


Boîte combinée avec cellule liée

Action

Résultat

Enter text into the edit field of the combo box, or select an entry from the drop-down list:

Text is copied into the linked cell.

Clear the edit field of the combo box:

Linked cell is cleared.

Enter text or a number into the linked cell:

Text or number is copied into the edit field of the combo box.

Enter a formula into the linked cell:

Formula result is copied into the edit field of the combo box.

Clear the linked cell:

Edit field of the combo box is cleared.

Change the contents of the list source range:

Les éléments de la liste déroulante se mettent à jour en fonction des modifications. Le champ d'édition de la boîte combinée et la cellule liée ne sont pas modifiés.


Champ de données

Avec les formulaires de base de données, vous pouvez lier les champs de contrôle aux champs de données.

Plusieurs possibilités s'offrent à vous :

  1. Premier cas : le formulaire ne comporte qu'une seule table.

    Dans Champ de données, indiquez le champ de la table de sources de données dont vous souhaitez afficher le contenu.

  2. Deuxième cas : l'élément de contrôle appartient à un sous-formulaire créé par une requête SQL.

    Dans Champ de données, indiquez le champ de l'instruction SQL dont vous souhaitez afficher le contenu.

  1. Troisième cas : Boîtes combinées

    Pour les zones combinées, saisissez, sous Champ de données, le champ de la table du formulaire actif, dans lequel seront stockées les valeurs saisies ou sélectionnées par l'utilisateur. Les valeurs à afficher dans la liste de la zone combinée sont spécifiées par une instruction SQL saisie sous Contenu de liste.

  2. Quatrième cas : Zones de liste

    La table de sources de données ne contient pas les données à afficher, mais une table qui lui est liée est accessible par un champ de données commun.

    Si vous souhaitez qu'une zone de liste affiche les données d'une table liée à la table de sources de données active, indiquez dans Champ de données le champ de la table de sources de données auquel le contenu de la zone de liste renvoie. Vous pouvez aussi spécifier le champ de base de données contrôlant l'affichage des données dans le formulaire. Ce champ de données fournit le lien vers l'autre table si les deux tables peuvent être liées par un champ de données commun. Il s'agit généralement d'un champ de données dans lequel sont stockés des numéros d'identification uniques. Le champ de données dont le contenu est affiché dans le formulaire est indiqué par une instruction SQL dans Contenu de liste.

Les zones de liste acceptent des références qui peuvent réalisées au moyen de tables liées par des instructions SQL (4e cas) ou de listes de valeurs :

Références via les tables liées (instructions SQL)

Si vous souhaitez qu'une zone de liste affiche les données d'une table de base de données qui est liée, par un champ de données commun, à la table sur laquelle le formulaire est basé, vous pouvez spécifier le champ de lien de la table du formulaire dans Champ de données.

Le lien est créé avec une instruction SQL Select qui, si vous avez sélectionné "SQL" ou "SQL Natif", est spécifiée sous Type du contenu de liste dans le champ Contenu de liste. Par exemple, une table "Commandes" est liée au contrôle de formulaire actif et, dans la base de données, une table "Clients" est liée à la table "Commandes". L'instruction SQL peut être la suivante :

SELECT NomClient, NumClient FROM Clients,

où "NomClient" est le champ de données de la table liée "Clients", et "NumClient" le champ de la table "Clients" lié à un champ de la table du formulaire "Commandes" indiqué dans Champ de données.

Références via les listes de valeurs

Vous pouvez utiliser des listes de valeurs dans les zones de liste. Ces listes définissent les valeurs de référence. Autrement dit, le champ de contrôle n'affiche pas directement le contenu d'un champ de base de données dans le formulaire, mais la liste des valeurs associées.

Si vous utilisez des valeurs référentielles provenant d'une liste de valeurs, le contenu du champ de données spécifié sous Champ de données dans le formulaire n'est pas visible. Ce sont les valeurs assignées qui s'affichent à la place. Si vous choisissez "Liste de valeurs" dans le champ Type du contenu de liste de l'onglet Données, et assignez une valeur référentielle à la liste des entrées visibles du formulaire sous Entrées de liste (saisie dans l'onglet Général), les valeurs référentielles sont comparées au contenu du champ de données spécifié. Si une valeur référentielle correspond au contenu d'un champ de données, les entrées de liste associées s'affichent dans le formulaire.

Champ lié

Icône Remarque

Si vous supprimez le contenu de la cellule Champ lié dans l'explorateur de propriétés, le premier champ du résultat défini est utilisé pour afficher et échanger les données.


Cette propriété spécifique aux zones de liste détermine quel champ de données d'une table liée est affichée dans le formulaire.

Si une zone de liste du formulaire affiche le contenu d'une table liée à la table de formulaire, vous devez renseigner le champ Type du contenu de liste si l'affichage est déterminé par une commande SQL ou par la table (liée) à laquelle le système accède. Une fois la propriété Champ lié définie, vous pouvez utiliser un index pour spécifier à quels champs de données de la requête ou de la table le champ de la liste est associé.

Icône Remarque

La propriété Champ lié ne s'applique qu'aux formulaires utilisés pour accéder à plusieurs tables. Si le formulaire est basé sur une seule table, le champ devant s'afficher dans le formulaire est spécifié directement dans Champ de données. Cependant, si vous souhaitez que la zone de liste affiche les données à partir d'une table liée à la table active au moyen d'un champ de données commun, vous devez définir ce champ à l'aide de la propriété Champ lié.


Si vous avez sélectionné "Sql" dans Type du contenu de liste, la commande SQL détermine l'index à spécifier. Exemple : si vous spécifiez une instruction SQL telle que "SELECT Champ1, Champ2 FROM nom_de_table" dans Contenu de liste, référez-vous au tableau suivant :

Champ lié

Lien

-1

L'index de l'entrée sélectionnée dans la liste est lié au champ spécifié sous Champ de données.

{vide} ou 0

Le champ de base de données "Champ1" est lié au champ spécifié sous Champ de données.

1

Le champ de base de données "Champ2" est lié au champ spécifié sous Champ de données.


Si vous avez sélectionné "Table" dans Type du contenu de liste, la structure de la table définit l'index à spécifier. Exemple : si une table de base de données est sélectionnée dans Contenu de liste, référez-vous au tableau suivant :

Champ lié

Lien

-1

L'index de l'entrée sélectionnée dans la liste est lié au champ spécifié sous Champ de données.

{vide} ou 0

La colonne 1 de la table est liée au champ spécifié sous Champ de données.

1

La colonne 2 de la table est liée au champ spécifé sous Champ de données.

2

La colonne 3 de la table est liée au champ spécifié sous Champ de données.


Chaîne vide est NULL

Defines how an empty string input should be handled. If set to "Yes", an input string of length zero will be treated as a value NULL. If set to "No", any input will be treated as-is without any conversion.

An empty string is a string of length zero (""). Normally, a value NULL is not the same as an empty string. In general, a term NULL is used to denote an undefined value, an unknown value, or "no value has been entered yet."

Les systèmes de base de données varient et peuvent traiter une valeur NULL différemment. Consultez la documentation de la base de données que vous utilisez.

Contenu de la cellule liée

Sélectionnez le mode de liaison d'une zone de liste avec une cellule liée dans une feuille de calcul.

  1. Linked contents: Synchronize the text contents of the selected list box entry with the cell contents. Select "The selected entry".

  2. Linked selection position: The position of the single selected item in the list box is synchronized with the numerical value in the cell. Select "Position of the selected entry".

Contenu de liste

Dans des formulaires de base de données, indique la source de données du contenu de la liste de l'élément du formulaire. Ce champ peut être utilisé pour définir une liste de valeurs pour des documents non liés à une base de données.

Dans le cas de formulaires de base de données, la source de données détermine les entrées de la zone de liste ou de la zone combinée. En fonction du type sélectionné, vous pouvez choisir entre différentes sources de données dans Contenu de liste, à condition que ces objets existent dans votre base de données. Tous les objets de base de données disponibles correspondant au type sélectionné dans Type du contenu de liste y sont proposés. Si vous avez sélectionné le type "Liste de valeurs", vous pouvez utiliser des références pour les formulaires de base de données. Si l'affichage de l'élément de contrôle est commandé par une instruction SQL, celle-ci est saisie à cet endroit.

Exemples utilisant des instructions SQL :

Dans le cas de zones de listes, une instruction SQL peut avoir la forme suivante :

SELECT champ1, champ2 FROM table,

Où "table" est la table dont les données doivent apparaître dans la liste du champ de contrôle (table de liste). "champ1" est le champ de données qui détermine les entrées qui seront visibles dans le formulaire, c'est-à-dire dont le contenu apparaîtra dans la zone de liste. "champ2" est le champ de la table de liste qui est lié à la table de formulaire (table de valeurs) via le champ entré sous Champ de données lorsque la valeur 1 est sélectionnée dans la zone Champ lié.

Dans le cas de boîtes combinées, une instruction SQL peut avoir la forme suivante :

SELECT DISTINCT champ FROM table,

Ici, "champ" désigne le champ de données de la table de liste "table" dont le contenu est affiché dans la liste de la zone combinée.

Listes de valeurs pour les documents HTML

Pour les formulaires HTML, vous pouvez saisir une liste de valeurs dans Contenu de liste. Sélectionnez l'option "Liste de valeurs" dans Type du contenu de liste. Les valeurs saisies à cet endroit ne sont pas visibles dans le formulaire et servent à assigner des valeurs aux entrées visibles. Les entrées saisies dans Contenu de liste correspondent à la balise HTML <OPTION VALUE=...>.

Lors du transfert des données d'une entrée sélectionnée dans une zone de liste ou dans une boîte combinée, la liste de valeurs affichée dans le formulaire, saisie sous Entrées de liste dans l'onglet Général, ainsi que la liste de valeurs saisie sous Contenu de liste dans l'onglet Données, sont prises en compte : si un texte (non vide) se trouve à la position sélectionnée dans la liste de valeurs (<OPTION VALUE=...>), il est envoyé. Sinon, c'est le texte affiché dans le contrôle (<OPTION>) qui est envoyé.

Si la liste de valeurs doit contenir un espace vide, saisissez la valeur "$$$empty$$$" sous Contenu de liste à la position correspondante (en respectant la casse). LibreOfficeDev interprète cette entrée comme un espace vide et l'assigne à l'entrée de liste correspondante.

Le tableau suivant montre les relations entre HTML, JavaScript et le champ LibreOfficeDev Contenu de liste en prenant pour exemple une zone de liste nommée "ListBox1". Dans cette description, le terme "item" représente une entrée de liste visible dans le formulaire :

Balise HTML

JavaScript

Entrée dans la liste de valeurs du contrôle (contenu de liste)

Données transmises

<OPTION>Item

Impossible

""

l'entrée de liste visible ("ListBox1=Item")

<OPTION VALUE="Valeur">Item

ListBox1.options[0].value="Valeur"

"Valeur"

La valeur associée à l'entrée de liste ("ListBox1=Valeur")

<OPTION VALUE="">Item

ListBox1.options[0].value=""

"$$$empty$$$"

Une chaîne vide ("ListBox1=")


Plage de cellules source

Saisissez une plage de cellules contenant des entrées pour une zone de liste ou une boîte combinée sur une feuille de calcul. Si la plage de cellules saisie s'étale sur plusieurs colonnes, seul le contenu de la colonne la plus à gauche sera pris en compte pour définir le contrôle.

Proposition de filtre

While designing your form, you can set the "Filter proposal" property for each text box in the Data tab of the corresponding Properties dialog. In subsequent searches in the filter mode, you can select from all information contained in these fields. The field content can then be selected using the AutoComplete function. Note, however, that this function requires a greater amount of memory space and time, especially when used in large databases and should therefore be used sparingly.

Type du contenu de liste

Détermine les données devant s'afficher dans les zones de liste et dans les boîtes combinées.

Avec l'option Liste de valeurs, toutes les entrées saisies dans le champ Entrées de liste de l'onglet Général s'affichent dans le contrôle. Pour les formulaires de base de données, vous pouvez utiliser des valeurs référentielles. Reportez-vous à la rubrique Références via les listes de valeurs.

Si le contenu de l'élément de contrôle est lu à partir d'une base de données, vous pouvez déterminer le type de source de données à l'aide des autres options. Vous pouvez par exemple choisir entre des tables et des requêtes.

Valeur référentielle (activée)

Vous pouvez assigner une valeur référentielle aux boutons radio et aux cases à cocher. La valeur référentielle est transmise à un serveur lors de l'envoi du formulaire Web. Les formulaires de base de données permettent d'écrire la valeur saisie ici dans la base de données assignée au champ de contrôle.

Valeurs de référence pour les formulaires Web

Les valeurs référentielles sont utiles si vous devez concevoir un formulaire Web et si les informations sur le statut du contrôle doivent être transmises à un serveur. Si l'utilisateur clique sur le contrôle, la valeur référentielle correspondante est envoyée au serveur.

Par exemple, s'il existe deux champs de contrôle pour les options "féminin" et "masculin" et que vous assignez la valeur référentielle 1 au champ "féminin" et la valeur 2 au champ "masculin", la valeur 1 est transmise au serveur si l'utilisateur clique sur le champ "féminin" et la valeur 2 s'il clique sur le champ "masculin".

Valeurs de référence pour les formulaires de base de données

Avec les formulaires de bases de données, vous pouvez également identifier l'état d'un bouton radio ou d'une case à cocher à l'aide d'une valeur de référence et stocker cette valeur de référence dans la base de données. Par exemple, si vous avez un groupement de trois options appelées "en cours", "terminé" et "à revoir" auxquelles vous avez affecté les valeurs de référence "ToDo", "OK" et "AR", ce sont ces dernières qui apparaissent dans la base de données chaque fois que l'on clique sur l'option correspondante.

Valeur référentielle (désactivée)

Check boxes and radio buttons in spreadsheets can be bound to cells in the current document. If the control is enabled, the value you enter in Reference value (on) is copied to the cell. If the control is disabled, the value from Reference value (off) is copied to the cell.