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

WinDev Discussion :

Format de champ programmable pour une même colonne


Sujet :

WinDev

  1. #1
    Membre habitué Avatar de GCASPIC10
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2010
    Messages : 247
    Points : 144
    Points
    144
    Par défaut Format de champ programmable pour une même colonne
    Bonjour à tous,

    Pour mieux comprendre, voir le fichier joint :
    Nom : 1.jpg
Affichages : 640
Taille : 92,0 Ko

    Dans la colonne "valeur" à saisir pour chaque ligne, je voudrais avoir une saisie possible en fonction de la colonne "type" (1ère colonne) :
    2 = Texte,
    27 = booléen
    et 14 = Date

    En fait, je voudrais voir la sélection et l'affichage suivant dans "valeur" pour du :
    - texte : zone de saisie (texte) => résultat (texte)
    - booléen : combo sélection (vrai/faux) => résultat affiché (0/-1) ou case à cocher
    - date : calendrier sélection () => résultat (format date standard)

    Il me semble qu'il faille modifier le format par programmation à la sélection du champ de la ligne concernée.

    Merci pour vos conseils
    La patience est d'or, l'aide est inestimable ...

  2. #2
    Expert confirmé
    Homme Profil pro
    ?
    Inscrit en
    Juillet 2002
    Messages
    2 378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : ?

    Informations forums :
    Inscription : Juillet 2002
    Messages : 2 378
    Points : 4 494
    Points
    4 494
    Par défaut
    Bonjour

    Tu peux changer le type d'une colonne (avec ..TypeSaisie) mais pas d'une cellule seule
    Et encore ..TypeSaisie ne permet pas de tout faire : texte,date,numérique,durée mais pas interrupteur

    Peut être avec une colonne conteneur qui contient plusieurs champs en cachant ceux qui ne servent pas, même c'est un peu lourd ... à voir

  3. #3
    Membre habitué Avatar de GCASPIC10
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2010
    Messages : 247
    Points : 144
    Points
    144
    Par défaut
    Merci Pascal,

    Je vais regarder çà de plus près mais en fait cette colonne contient du champ texte que je souhaite gérer en saisie.

    Le "type" 2 et 14 sont gérés de cette manière :

    Le 2 : pas de contrainte particulière...
    le 14 : j'utilise ce code en entrée de la colonne "valeur" de la ligne de type 14. par contre je n'ai pas de masque de saisie imposé ce qui peut être gênant en cas de saisie manuelle, et d'autre part, l'évènement est sur entrée et non possible sur le clic ou double clic par exemple...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SI GC_COL_Type = "14" ALORS
    	sDateSélectée est chaîne = DateVersChaîne(CalendrierSélecteur(ChaîneVersDate(MoiMême..ValeurAffichée), "Choisir une date : "))
    	SI (sDateSélectée <> "" ) ALORS MoiMême..Valeur = sDateSélectée
    FIN
    Voilà l'aspect final avec une fenêtre popup ouverte en selectionnant ce champ
    Nom : 2.jpg
Affichages : 392
Taille : 85,8 Ko

    Il me reste à voir le type 27 (booleen) qui pourrait être une liste de valeur imposée (vrai, faux)

    C'est une première approche et je suis toujours à l'écoute de vos suggestions (conteneur... à voir).

    A+
    La patience est d'or, l'aide est inestimable ...

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 217
    Points : 487
    Points
    487
    Par défaut
    Bonjour,

    J'ai déjà réalisé cela en utilisant une colonne conteneur dans laquelle je mettais un champ fenêtre interne.
    En fonction du besoin il faut charger une fenêtre interne qui contient le champ voulu.
    Ça fonctionne très bien, il y a juste un bug visuel avec les combo-table sans saisie en WD16 qui a d’ailleurs été corrigé en WD17.

    Cordialement

    Madsl@nD

  5. #5
    Membre habitué Avatar de GCASPIC10
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2010
    Messages : 247
    Points : 144
    Points
    144
    Par défaut
    Merci Madsland pour l'info,

    j'avoue que pour l'instant je poursuis mes essais sans conteneur, en réalisant :
    - une saisie relativement basique :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    // Conserve la valeur initiale en cas d'erreur de saisie
    sMémoireTemporaire = MoiMême..ValeurAffichée
     
    SELON GC_COL_Type
     
    	CAS "14" : // Date
    		sDateSélectée est chaîne = DateVersChaîne(CalendrierSélecteur(ChaîneVersDate(MoiMême..ValeurAffichée), "Choisir une date : "))
    		SI (sDateSélectée <> "" ) ALORS MoiMême..Valeur = sDateSélectée
     
    	CAS "27" : // Booléen
     
    	AUTRE CAS : // Texte
     
    FIN
    et en effectuant des contrôles de cette saisie en sortie de champ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // Contrôle le format saisie
    SELON GC_COL_Type
     
    	CAS "14" : // Date
     
    		// Extraction des différents éléments d'une date au format JJ/MM/AAAA (par exemple : 28/03/2003)
    		SI (MoiMême <> "") ALORS 
    			MonJour, MonMois, MonAnnée sont des chaînes
    			SI VérifieExpressionRégulière(MoiMême,"([0-9]{2}+)/([0-9]{2}+)/([0-9]{4}+)", MonJour, MonMois, MonAnnée)=False ALORS
    				Erreur("La date n'est pas au bon format")
    				MoiMême..Valeur = sMémoireTemporaire
    				RepriseSaisie(MoiMême)
    			FIN
    		FIN
     
    	CAS "27" : // Booléen
     
    		SI (MoiMême <> "0" ET MoiMême <> "-1" ET MoiMême <> "") ALORS 
    			Erreur("format erroné")
    			MoiMême..Valeur = sMémoireTemporaire
    			RepriseSaisie(MoiMême)
    		FIN
     
    	AUTRE CAS : // Texte
     
    FIN
    Mais, çà ne répond pas vraiment à mes attentes.

    Je vais regarder du coté du conteneur, mais avant, pourrais tu me dire si le bug visuel avec les combo-table sans saisie en WD16 (corrigé en WD17) est vraiment perturbant (quel type de défaut?) auquel cas, je ne perdrais pas de temps à mettre çà en oeuvre.

    Je ne penses pas investir prochainement dans les nouvelles versions !

    Merci de ta réponse,
    A+
    La patience est d'or, l'aide est inestimable ...

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 217
    Points : 487
    Points
    487
    Par défaut
    Pour le problème d'affichage, voir le post que j'avais ouvert ci dessous.

    http://www.developpez.net/forums/d10...nne-conteneur/

    Cordialement

    Madsl@nD

  7. #7
    Membre habitué Avatar de GCASPIC10
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2010
    Messages : 247
    Points : 144
    Points
    144
    Par défaut CONTAINER
    Bonjour,

    Je rappelle que je travaille sur une table mémoire (volatile) dont les libellés, conditions et valeurs sont spécifiques à chaque type de ligne. Celle ci sont toutes renseignées par programmation et fonctionnent à merveille.

    Voilà le modèle graphique sous toutes ses formes:
    Description,
    Nom : 3.jpg
Affichages : 366
Taille : 66,2 Ko

    Mode création,
    Nom : 1.jpg
Affichages : 362
Taille : 90,1 Ko

    Mode utilisation,
    Nom : 2.jpg
Affichages : 362
Taille : 101,2 Ko

    Maintenant, j'axe mes essais (comme conseillé), sur l'utilisation de la dernière colonne déclarée comme container et susceptible de recevoir différentes options :
    - texte à saisir
    - listes de valeurs (vrai/faux)
    - combo (valeur à selectionner).

    J'avoue que l'utilisation du container m'est totalement inconnu et que malgré les quelques infos sur le forum et dans l'aide, je n'ai pas trouvé d'exemple concret (à mon sens).

    Y aurait t'il d'après vous un exemple livré ou consultable et compréhensible en V16 (de préférence) sur lequel je puisse me baser dans ma réflexion.

    En fait, le problème est que :
    - Je ne sait pas comment faire car la zone container semble verrouillée ?
    - Comment charger chaque type de sélection pour chacune des lignes afin de les voir apparître dans cette colonne ?

    Je vais encore chercher dans les exemples livrés, mais sans piste, c'est pour moi une perte de temps énorme

    Critères de recherches : container, table mémoire, ...
    La patience est d'or, l'aide est inestimable ...

Discussions similaires

  1. Gérer dates au format us et fr dans une même colonne
    Par bilou_12 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 30/05/2012, 11h08
  2. Réponses: 3
    Dernier message: 15/03/2012, 23h29
  3. [AC-2007] Deux champs différents dans une même colonne
    Par Prettyletter dans le forum IHM
    Réponses: 10
    Dernier message: 23/04/2011, 23h16
  4. Réponses: 17
    Dernier message: 09/02/2010, 16h22
  5. Plusieurs valeurs pour une même colonne
    Par maxlegrand dans le forum Langage SQL
    Réponses: 7
    Dernier message: 16/10/2007, 13h32

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