Comme la documentation sur les formulaires d'openoffice n'est pas vraiment facile à trouver, je vais mettre ici mes remarques sur les problèmes rencontrés.

Le SQL d'openoffice est chatouilleux

Vous avez intérêt à mettre les noms des champs et des tables en MAJUSCULE. Oui, c'est lourd, illisible, et pas beau.

Il semble (il faudrait que je cherche les standards pour ça) que les noms des tables soient réputés être en majuscule. Sinon, openoffice n'est pas content. Ou plus exactement, certaines parties d'openoffice ne sont pas contentes.

En gros, il y a des contrôles (comme par exemple la liste) qui fonctionnent très bien dans tous les cas, mais le combobox (et plus exactement le combobox placé dans un "Table Control" n'aime pas du tout avoir des noms de table avec des minuscule, quand il est alimenté par une requête SQL. En cas de présence de minuscules, il faut entourer le nom de guillemets doubles.

Ainsi, dans l'exemple ci-dessous, si la table dont je tire les valeurs s'appelle "table_langue", le SQL dans le champ "List Content" doit être

select langue from "table_langue"

et non

select langue from table_langue

En revanche, si la table s'appelait "TABLE_LANGUE", il suffirait d'écrire

select langue from TABLE_LANGUE

Combobox dans une table

Plusieurs remarques:

Bon, en fait, pour ce que je fais là, une liste fonctionne mieux. Mais ce n'est pas une raison pour être inconsistant ; tant qu'à faire, "langue" devrait aussi être en majuscule, histoire d'être cohérent ; pour revenir sur le premier point, un combobox qui prend ses données dans une requête SQL, c'est assez proche d'une liste, et ça ne devrait sans doute pas être éditable (on ne peut pas insérer de nouvelle entrée dans la table "TABLE_LANGUE"). Bref, c'est une liste. Avec une Combobox, on s'attendrait à pouvoir saisir un nouvel élément si la source est une table, mais ça n'a pas l'air de fonctionner… à suivre

Next Post Previous Post