IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Lazarus Pascal Discussion :

[SQlite 3.41.2/ZEOS] Champ référence raccourci [Lazarus]


Sujet :

Lazarus Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Phyto-aromathérapeute
    Inscrit en
    Juillet 2012
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Phyto-aromathérapeute
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2012
    Messages : 83
    Par défaut [SQlite 3.41.2/ZEOS] Champ référence raccourci
    Bonsoir,
    Je travaille sous windows 10/11 avec Lazarus 2.2.6 et SQlite 3.41.2. Depuis plusieurs jours, je me heurte à un problème d'affichage de données.

    J'ai créé un champ "Chercher" COMPOSANT que je récupère dans un dBGRid pour assurer une saisie cohérente via une liste déroulante (PickList).

    Si l'affichage du champ de référence (la table de laquelle je récupère la donnée) par la liste déroulante m'affiche la totalité du nom (la PickList est donc correcte), l'affichage dans le dBGRid se limite à 20 caractères seulement alors que le champ de référence est un String de 75 caractères...

    Nom : Affichage réduit.jpg
Affichages : 137
Taille : 131,1 Ko

    Les valeurs pour l'affichage dans l'inspecteur d'objet semblent définies correctement.

    Nom : Inspecteur objet.jpg
Affichages : 126
Taille : 55,8 Ko

    Malheureusement la documentation du Lazarus Handbook est muette sur le domaine des champs références et les sites dédiés n'évoquent pas ce problème. Quelqu'un a-t-il déjà rencontré ce type de problème ?

    Cordialement

  2. #2
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 931
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 931
    Billets dans le blog
    6
    Par défaut
    Bonjour,
    N'y aurait-il pas quelque part une définition du type en VARCHAR(20) ?
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  3. #3
    Membre confirmé
    Homme Profil pro
    Phyto-aromathérapeute
    Inscrit en
    Juillet 2012
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Phyto-aromathérapeute
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2012
    Messages : 83
    Par défaut Champ référence raccourci
    Citation Envoyé par tourlourou Voir le message
    Bonjour,
    N'y aurait-il pas quelque part une définition du type en VARCHAR(20) ?
    bonjour tourlourou,

    Voici mes descripteurs de fichiers :

    CREATE TABLE CHROMATO (
    ID_CHROMATO INTEGER PRIMARY KEY ASC ON CONFLICT ROLLBACK AUTOINCREMENT DEFAULT (0) UNIQUE ON CONFLICT ROLLBACK NOT NULL ON CONFLICT ROLLBACK,
    NUMM INTEGER DEFAULT (0) REFERENCES PRODUITS (NUMM) ON DELETE CASCADE ON UPDATE CASCADE,
    FAM VARCHAR (3) DEFAULT ('0'),
    MOLECULE VARCHAR (75) DEFAULT (' '),
    TAUX REAL DEFAULT (0),
    ORGANE VARCHAR (40) DEFAULT (' '),
    PROV VARCHAR (40) DEFAULT (' '),
    PARTIE VARCHAR (40) DEFAULT (' '),
    PTYPE CHAR (1) DEFAULT ('H'),
    TOTAL REAL DEFAULT (0),
    POURCENT REAL DEFAULT (0)
    );

    CREATE TABLE NMOLECULE (
    NUMMOLEC INTEGER UNIQUE PRIMARY KEY ASC ON CONFLICT ROLLBACK AUTOINCREMENT DEFAULT (0),
    COMPOSANT VARCHAR (75) DEFAULT (''),
    FAMILLE INTEGER DEFAULT (0),
    SFAMILLE VARCHAR (30) DEFAULT (''),
    CAS VARCHAR (15) DEFAULT ('00-00-0'),
    CAS1 VARCHAR (15) DEFAULT (''),
    CAS2 VARCHAR (15) DEFAULT (''),
    FORMULE VARCHAR (20) DEFAULT ('CxHxOx'),
    AUTRENOM VARCHAR (75) DEFAULT (''),
    ODEUR TEXT (255) DEFAULT ('/'),
    PARFUM VARCHAR (5) DEFAULT ('false'),
    ALIMENTAIRE VARCHAR (5) DEFAULT ('false'),
    COSMETIQUE VARCHAR (5) DEFAULT ('false'),
    GENRE VARCHAR (30) DEFAULT (''),
    NBMOLEC INTEGER DEFAULT (0),
    MOLECPC REAL DEFAULT (0)
    );

    Nmolecule contient le nom des molécules et divers autres renseignements. Pour une saisie correcte, Chromato vient récupérer le nom de la molécule dans NMOlecule, via un champ référence basé sur le nom de la molécule qui est unique.

  4. #4
    Membre confirmé
    Homme Profil pro
    Phyto-aromathérapeute
    Inscrit en
    Juillet 2012
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Phyto-aromathérapeute
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2012
    Messages : 83
    Par défaut Champ référence raccourci
    J'ai oublié de préciser que j'utilisais ZEOSLib en lieu et place des composants natifs Lazarus.

  5. #5
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 931
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 931
    Billets dans le blog
    6
    Par défaut
    Bonjour,
    Je connais peu les composants d'accès aux données, mais je pensais à la définition du champ dans un composant intermédiaire (DataSet, Table ou autre), la grille ne servant qu'à afficher ce qu'il lui fournit, pour ce que j'en comprends. A moins qu'on ne puisse aussi fixer le type de données de chaque colonne de la grille.
    Je chercherais donc à vérifier les types déclarés (ou attribués par défaut) du champ du Dataset et de la colonne de la grille.
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  6. #6
    Membre confirmé
    Homme Profil pro
    Phyto-aromathérapeute
    Inscrit en
    Juillet 2012
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Phyto-aromathérapeute
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2012
    Messages : 83
    Par défaut Champ référence raccourci
    Bonjour Tourlourou,
    Merci pour ta réponse. Habitué de Delphi depuis des années, je ne comprenais pas pour quelle raison je ne pouvais pas définir la longueur du champ résultant lors de sa création. Cela me surprenait beaucoup mais nouveau avec Lazarus et n'en connaissant pas les arcanes, je me disais que c'était peut-être automatique.

    A force de chercher dans les composants et, grâce à tes suggestion, de réfléchir, je suis parti sur 2 hypothèses : soit la définition en 'String' n'était pas bonne et devrait être remplacée par un 'Text' ou un 'Varchar', soit la longueur du champ référence se règle en dehors de sa création.

    En éditant le champ dans l'inspecteur d'objet, je me suis aperçu qu'il fallait régler DisplayWidth et Size à la longueur souhaitée... Chose faite, cela fonctionne.

    Merci pour tes pistes et désolé pour le dérangement.
    Cordialement,

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Locate ne marche pas sur un champ référence
    Par Loïc M dans le forum Débuter
    Réponses: 2
    Dernier message: 03/12/2007, 22h58
  2. [D7],[ADO] : ordonner une table avec des champs référencés
    Par iam dans le forum Bases de données
    Réponses: 3
    Dernier message: 07/11/2006, 21h36
  3. Réponses: 4
    Dernier message: 23/08/2006, 15h36
  4. Réponses: 3
    Dernier message: 02/05/2006, 21h36
  5. Réponses: 7
    Dernier message: 27/04/2006, 10h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo