[Résolu] Saisie obligatoire d'un champ non obligatoire

Discussions sur le module de base de données Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est dédiée au module Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Pour accélérer les réponses, vous pouvez mettre en ligne votre base en joignant un fichier ODB : comment faire.
Nounours18200
NOOuvel adepte
NOOuvel adepte
Messages : 23
Inscription : 06 févr. 2010 18:48

[Résolu] Saisie obligatoire d'un champ non obligatoire

Message par Nounours18200 »

Bonjour,

J'ai complété la définition de ma BDD et ses relations avec des Tables maîtres, puis j'ai créé mon 1er formulaire de saisie, avec les listes déroulantes pour certains champs et les valeurs par défaut.

Lorsque j'essaie d'y saisir un enregistrement (il n'y a qu'un seul formulaire de saisie pour l'instant), il me dit que la saisie est obligatoire pour le champ "Tolérance_%", alors que dans la définition de la Table "Boards_Parts-Qty", j'ai bien indiqué que la saisie n'est pas obligatoire pour les 2 champs "Tolerance %" et "New Tolerance_%".

Où est mon erreur ?

EDIT: je viens de voir que TOUS les champs semblent obligatoires en saisie (par ex le champ commentaire présente le même problème). Voir ici:
https://forum.openoffice.org/fr/forum/v ... =9&t=58844
J'ai lu sur un forum que c'était peut-être dû à l'absence de JRE en 64 bits, mais je l'ai bien installé puisque LO Basse l'a exigé avant de démarrer la 1ère fois...
Donc je sèche encore plus !
Pièces jointes
Nakamichi 1000ZXL.odb
(28 Kio) Téléchargé 113 fois
LibreOffice 6.3.4.2 sous Windows 10-64bits
Avatar de l’utilisateur
rollmops
PassiOOnné
PassiOOnné
Messages : 665
Inscription : 20 déc. 2017 15:45

Re: Saisie obligatoire d'un champ non obligatoire...

Message par rollmops »

Bonjour,

Je ne sais pas si cela a de l'importance mais tes noms me semblent incorrects.
Le % est un joker en language SQL.
Tu devrais éviter de l'utiliser.
OpenOffice 4.1.15 - Windows 10
Nounours18200
NOOuvel adepte
NOOuvel adepte
Messages : 23
Inscription : 06 févr. 2010 18:48

Re: Saisie obligatoire d'un champ non obligatoire...

Message par Nounours18200 »

Je vais supprimer le % sur le champ "Tolérance", mais comme d'autres champs tels que le champ "Commentaires" ont le même problème...

Je reviens vers vous après avoir supprimé le %...
LibreOffice 6.3.4.2 sous Windows 10-64bits
Nounours18200
NOOuvel adepte
NOOuvel adepte
Messages : 23
Inscription : 06 févr. 2010 18:48

Re: Saisie obligatoire d'un champ non obligatoire...

Message par Nounours18200 »

J'ai supprimé le % à la fin des 2 champs "Tolerance" et "New_Tolerance", mais j'ai toujours un message d'erreur qui empêche l'enregistrement dans la base: j'ai mis la capture d'écran du message d'erreur en pièce jointe.

Je sèche toujours....
Pièces jointes
too long.JPG
LibreOffice 6.3.4.2 sous Windows 10-64bits
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16955
Inscription : 03 mars 2006 17:02
Localisation : Venise verte

Re: Saisie obligatoire d'un champ non obligatoire...

Message par jeanmimi »

Le message dit que tu veux entrer dans un champ de la Table un enregistrement dont le nombre de caractères, par exemple 45, est plus long que la valeur paramétrée dans le champ, par exemple 20.
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Nounours18200
NOOuvel adepte
NOOuvel adepte
Messages : 23
Inscription : 06 févr. 2010 18:48

Re: Saisie obligatoire d'un champ non obligatoire...

Message par Nounours18200 »

Je crois que j'ai trouvé (si le message me disait quel champ est en cause ce serait quand même plus sympa !).

Il s'agit du champ "Board_Ref" qui a une longueur de 20 dans la table où j'essaie de rentrer cet enregistrement "Boards_Part_Qty", alors que la table Maître ("Boards_List") où sont listées les différentes valeurs possibles a une longueur de 50 pour ce champ.

J'ai essayé d'allonger à 50 le champ dans la table "Boards_Part_Qty", mais je n'y suis pas arrivé (même en essayant de supprimer la colonne et de la recréer)....
Pièces jointes
Nakamichi 1000ZXL.odb
(27.99 Kio) Téléchargé 111 fois
LibreOffice 6.3.4.2 sous Windows 10-64bits
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16955
Inscription : 03 mars 2006 17:02
Localisation : Venise verte

Re: Saisie obligatoire d'un champ non obligatoire...

Message par jeanmimi »

Peut-être en essayant de copier la Table en question.
Puis, changer la longueur du champ dans cette nouvelle Table.
Tester si ça fonctionne en saisissant un texte plus long directement dans la Table.
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Nounours18200
NOOuvel adepte
NOOuvel adepte
Messages : 23
Inscription : 06 févr. 2010 18:48

Re: Saisie obligatoire d'un champ non obligatoire...

Message par Nounours18200 »

Merci jeanmimi: j'y ai pensé aussi mais ça ne fonctionne pas...
J'en suis réduit à installer une autre BDD (MySQL) pour voir si j'y arrive : c'est utiliser un char d'assaut pour écraser une mouche, mais....
Je reviens vers toi demain : c'est l'heure du dodo !...
LibreOffice 6.3.4.2 sous Windows 10-64bits
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25142
Inscription : 03 mars 2006 08:45
Localisation : 127.0.0.1
Contact :

Re: Saisie obligatoire d'un champ non obligatoire...

Message par Dude »

Salut,

Le modèle relationnel est à revoir :
no_problemo.PNG
Tes clés primaires devraient être sur l'identifiant numérique.
Indexer une chaîne de caractères est coûteux.
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16955
Inscription : 03 mars 2006 17:02
Localisation : Venise verte

Re: Saisie obligatoire d'un champ non obligatoire...

Message par jeanmimi »

En appliquant le conseil de Dude, le schéma relationnel deviendrait :
Relation Nakamichi.jpg
Pièces jointes
Nakamichi 1000ZXL.odb
(29.57 Kio) Téléchargé 111 fois
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Nounours18200
NOOuvel adepte
NOOuvel adepte
Messages : 23
Inscription : 06 févr. 2010 18:48

Re: Saisie obligatoire d'un champ non obligatoire...

Message par Nounours18200 »

Merci les amis pour votre aide,
Petite précision: j'aurai très très peu de données par base, donc l'aspect performance n'est pas important...

En chargeant le modèle de jeanmimi (merci !), j'ai cherché à rajouter la relation avec la Table Supplier: j'ai vérifié que l'ID_Supplier est bien du même type (integer 10) des 2 côtés, et la relation est refusée... donc mon incompétence m'agace !

Je capitule, et je vais me démerder en continuant à bidouiller des tableaux Calc dans tous les sens: je ne veux pas vous faire perdre votre temps !

Je vais continuer à chercher et à apprendre, et quand je serai moins nul...
LibreOffice 6.3.4.2 sous Windows 10-64bits
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16955
Inscription : 03 mars 2006 17:02
Localisation : Venise verte

Re: Saisie obligatoire d'un champ non obligatoire...

Message par jeanmimi »

Nounours18200 a écrit : la relation est refusée
Il fallait sans doute supprimer l'ancienne relation avant de modifier la Table.
Pièces jointes
Relation Nakamichi.jpg
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Nounours18200
NOOuvel adepte
NOOuvel adepte
Messages : 23
Inscription : 06 févr. 2010 18:48

Re: Saisie obligatoire d'un champ non obligatoire...

Message par Nounours18200 »

C'est ce que j'avais essayé de faire...
Le problème venait (je pense) de la clef primaire qui n'était pas définie sur le bon champ: je viens de corriger ça et c'est OK...

Je viens de supprimer toutes les anciennes tables pour ne conserver que les tiennes + la table Supplier.
Et je vais refaire un essai...
Et encore merci pour votre soutien (!)
LibreOffice 6.3.4.2 sous Windows 10-64bits
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16955
Inscription : 03 mars 2006 17:02
Localisation : Venise verte

Re: Saisie obligatoire d'un champ non obligatoire...

Message par jeanmimi »

Nounours18200 a écrit :Je viens de supprimer toutes les anciennes tables pour ne conserver que les tiennes + la table Supplier.
Le schéma relationnel devient alors :
Pièces jointes
Relation Nakamichi.jpg
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Avatar de l’utilisateur
Bidouille
RespOOnsable forum
RespOOnsable forum
Messages : 12196
Inscription : 08 nov. 2005 17:23
Localisation : Caen, France
Contact :

Re: Saisie obligatoire d'un champ non obligatoire...

Message par Bidouille »

Dernière visite le : 21 Sep 2019 21:00
30 jours plus tard, plus de nouvelle : fil classé résolu
Verrouillé