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

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Windev
    Inscrit en
    novembre 2018
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Windev

    Informations forums :
    Inscription : novembre 2018
    Messages : 64
    Points : 0
    Points
    0

    Par défaut Affichage de trois caractères '#' dans les champs de Saisie

    Bonjour le forum.
    J'ai un problème, lorsque je selectionne une ligne du combo liste pour afficher les données d'un tel enregistrement (du Fichier1 ou du Fichier2 selon des conditions) dans tous les champs de saisie correspondants, (Avec un FichierVersEcran() ). Mais ces champs n'affichent que ###, lorsqu'ils sont reliés par liaison multifichiers à 2 fichiers: 1 et 2, (Fichier2 est le duplicata de du fichier1). Je ne sais pas d'où vient le problème.
    Merci de m'éclaircir. Très cordialement

  2. #2
    Nouveau Candidat au Club
    Homme Profil pro
    Windev
    Inscrit en
    novembre 2018
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Windev

    Informations forums :
    Inscription : novembre 2018
    Messages : 64
    Points : 0
    Points
    0

    Par défaut

    Une chose à signaler.
    Ça marche si je relie les champs de saisie aux fichiers par code.
    Mais problème si j'utilise fichierVersEcran()

    Le problème c'est que le projet contient beaucoup de champs de saisie liés à ces fichiers 1 et 2

  3. #3
    Membre régulier
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    juin 2011
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : juin 2011
    Messages : 55
    Points : 101
    Points
    101

    Par défaut

    bonjour,

    windev affiche les 3 # si le champs est trop court pour afficher la valeur
    agrandisser votre champs pour voir

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Windev
    Inscrit en
    novembre 2018
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Windev

    Informations forums :
    Inscription : novembre 2018
    Messages : 64
    Points : 0
    Points
    0

    Par défaut

    Merci pour votre réponse. Mais j'ai déjà vérifié, le problème ne vient pas de là. Je crois que le problème vient de la façon dont les champs sont reliés avec des liaisons multifichiers. Mais je ne sais pas comment

  5. #5
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    juin 2004
    Messages
    1 985
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : juin 2004
    Messages : 1 985
    Points : 3 224
    Points
    3 224

    Par défaut

    Bonjour,

    Oui c'est ça, le problème vient bien de la liaison.
    Les ### indiquent que la correspondance de l'identifiant du fichier 1 avec le fichier 2 n'existe pas.

  6. #6
    Nouveau Candidat au Club
    Homme Profil pro
    Windev
    Inscrit en
    novembre 2018
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Windev

    Informations forums :
    Inscription : novembre 2018
    Messages : 64
    Points : 0
    Points
    0

    Par défaut

    Oui effectivement, mais j'arrive pas à détecter comment résoudre le problème. J'ai testé toute les sortes de liaisons entre les fichiers et pas moyen. Le problème persiste toujours.

  7. #7
    Membre éclairé
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    juin 2017
    Messages
    539
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : juin 2017
    Messages : 539
    Points : 835
    Points
    835

    Par défaut

    Bonjour,
    Une copie écran de ton analyse serait utile.
    Il y a peut être plus simple, mais ça tourne

  8. #8
    Nouveau Candidat au Club
    Homme Profil pro
    Windev
    Inscrit en
    novembre 2018
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Windev

    Informations forums :
    Inscription : novembre 2018
    Messages : 64
    Points : 0
    Points
    0

    Par défaut

    Analyse simple Nom : 20190515_190740.jpg
Affichages : 56
Taille : 1,41 Mo

  9. #9
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    décembre 2013
    Messages
    2 500
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : décembre 2013
    Messages : 2 500
    Points : 5 374
    Points
    5 374

    Par défaut

    Une liaison [O,n][0,1] ?
    Pourquoi pas, rien n'interdit d'avoir des liaisons de ce type.
    Mais c'est quand même assez rare.
    Je ne sais pas ce que tu veux faire, je ne sais pas ce que tu fais, donc difficile de t'aider.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  10. #10
    Nouveau Candidat au Club
    Homme Profil pro
    Windev
    Inscrit en
    novembre 2018
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Windev

    Informations forums :
    Inscription : novembre 2018
    Messages : 64
    Points : 0
    Points
    0

    Par défaut

    Merci tbc92. Oui bien sûr type de liaisons rare. Je vous explique:

    J'ai testé cette liaison pour essayer de résoudre le problème. En faite, il n'y a pas de liaison entre les 2 fichiers. Ils sont indépendants l'un de l'autre. Le fichier1 contient les données des personnes pour l'année 2018 et le fichier2 contient celles de l'année 2019.
    J'ai créé une combo liste par programmation pour pouvoir se connecter, soit à l'année 2018 ou à l'année 2019.

  11. #11
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    décembre 2013
    Messages
    2 500
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : décembre 2013
    Messages : 2 500
    Points : 5 374
    Points
    5 374

    Par défaut

    Ok, c'est un peu plus clair.
    Et ce que tu veux, c'est afficher une année , puis l'autre quand l'utilisateur change sa sélection dans la combo ? Ou bien afficher les 2 années dans 2 champ différents ?
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  12. #12
    Nouveau Candidat au Club
    Homme Profil pro
    Windev
    Inscrit en
    novembre 2018
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Windev

    Informations forums :
    Inscription : novembre 2018
    Messages : 64
    Points : 0
    Points
    0

    Par défaut

    Merci bcp tbc92 pour ton aide.
    C'est juste l'affichage d'une seule année. Voilà mon code:
    Et qui n'affiche rien dans les champs.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    SI COMBO_Années..ValeurAffichée="2018" ALORS
    // (Ici COMBO_liste prend les données correspondantes au Fichier1, année 2018)
    HlitRecherchePremier(Fichier1, IDFichier1, COMBO_Liste)
    SI HTrouve(Fichier1)=Vrai ALORS
    FichierVersEcran(FEN_1,Fichier1)
    FIN
     
    SINON SI COMBO_Années..ValeurAffichée="2019" 
    // (Ici COMBO_liste prend les données correspondantes au Fichier2 année 2019)
    HlitRecherchePremier(Fichier2, IDFichier2, COMBO_Liste)
    SI HTrouve(Fichier2)=Vrai ALORS
    FichierVersEcran(FEN_1,Fichier2)
    FIN
    FIN
    ******

    *****************

    *************

  13. #13
    Membre actif
    Homme Profil pro
    Développeur COBOL
    Inscrit en
    mai 2015
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur COBOL

    Informations forums :
    Inscription : mai 2015
    Messages : 118
    Points : 237
    Points
    237

    Par défaut

    Bonjour,

    Utiliser un sinon si c'est pas top à mon avis.

    déjà dans ce cas j'utiliserais

    un selon

    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
     
    monanne,idfichier est une chaine
    monannee=COMBO_Années..ValeurAffichée
     
    selon monannee
             cas "2018"
                     nomdefichier="fichier1"
                    idfichier="idfichier1"
             cas "2019"
                    nomdefichier="fichier2"
                    idfichier="idfichier2"
             autre cas
                    reprisesaisie(COMBO_Années)
                    erreur("veuillez sélectionner une année")
    fin
     
    hlitrecherchepremier({nomdefichier},{idfichier}, combo_liste)
    blabla etc
    que contient combo_liste ?
    met un point d'arret après le hlitrecherchepremier et compare les valeurs de l'id et de combo_liste

    je précise tapé à la volé sans test

  14. #14
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    décembre 2013
    Messages
    2 500
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : décembre 2013
    Messages : 2 500
    Points : 5 374
    Points
    5 374

    Par défaut

    Dans ton analyse, il faut un seul fichier, pas 2. TOUJOURS, dans une analyse, pour un 'concept', il faut un fichier ; jamais 2 fichiers avec exactement la même structure.

    Il faut donc supprimer le fichier 'Fichier2'.
    Si on veut faire les choses très bien, tu vas ajouter une colonne 'Année' dans ton analyse, tu auras donc toutes tes données dans un seul fichier , la clé unique de ce fichier sera une clé composée ( l'année + l'identifiant personne).
    Mais, à ton niveau, on va faire un compromis.

    Dans Windev, tu as d'une part l'analyse ( un fichier avec 5 ou 6 colonnes, comme dans ton cas), et il y a d'autre part les données. Et même si tu as un seul fichier dans l'analyse, tu peux avoir plusieurs fichiers de données.

    Regarde l'aide de la fonction hChangeNom() ( ou aussi la fonction hChangeRep() ), tout est expliqué.

    Dans ton analyse, ton fichier va s'appeler fichier1, par exemple, et sur ton disque dur, tu vas appeler tes fichiers fichier1_2018 et fichier1_2019 par exemple.
    Et dans ton code , tu vas faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    hChangenom(fichier1, "FICHIER1_" +COMBO_Années..ValeurAffichée )
     
    HlitRecherchePremier(Fichier1, IDFichier1, COMBO_Liste)
    SI HTrouve(Fichier1)=Vrai ALORS
    FichierVersEcran(FEN_1,Fichier1)
    Du coup, même si tu dois traiter 10 années de données au lieu de 2, tu n'as rien à changer dans ton code.

    Bien sûr, avant de faire ça, il faut que tu revoies aussi la partie où tu remplis tes fichiers... Mais la logique est la même.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  15. #15
    Nouveau Candidat au Club
    Homme Profil pro
    Windev
    Inscrit en
    novembre 2018
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Windev

    Informations forums :
    Inscription : novembre 2018
    Messages : 64
    Points : 0
    Points
    0

    Par défaut

    Merci bcp tbc92 pour votre précieuse idée qui sera sans doute une aide à bcp de personne qui cherchent à archiver les données de chaque année.
    J'ai pris bcp de temps pour tester cela et chercher comment ça va marcher.
    Je me suis trouvé en face d'un obstacle que j'arrive pas à assimiler.
    Lorsque je crée les fichiers physiques dans le disque, malheureusement ils sont vides (çad à dire sans données).
    Et à l'exécution, HChangeNom(.......) ne fonctionne pas, ça veut dire que:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    hChangenom(fichier1, "FICHIER1_" +COMBO_Années..ValeurAffichée )
    HlitRecherchePremier(Fichier1, IDFichier1, COMBO_Liste) 
    SI HTrouve(Fichier1)=Vrai ALORS 
    FichierVersEcran(FEN_1,Fichier1)
    S'exécute sur Fichier1 et pas sur Fichier1_20018 que j'ai choisi.
    Ça veut dire que l'ajout ou la modification se fait sur Fichier1 et pas sur Fichier_2018 qui reste intact et vide.
    Merci de m'encadrer.
    Je suis sur la version 20.

  16. #16
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    décembre 2013
    Messages
    2 500
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : décembre 2013
    Messages : 2 500
    Points : 5 374
    Points
    5 374

    Par défaut

    La documentation de la fonction hChangeNom() ici dit qu'il faut faire Resultat = hChangeNom(... ...) , puis il faut tester la valeur de Resultat. Si Résultat vaut Vrai, tout va bien, l'opération s'est bien effectuée. Sinon, on peut avoir plus d'information sur le plantage vec la fonctoin hErreur() . Et ça va nous permettre de comprendre ce qu'il faut changer pour que ça marche.

    La documentation dit aussi qu'il faut FERMER le fichier avant de faire hChangeNom(), si non le changement sera pris en compte beaucoup plus tard.

    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
     
    Res est un booleen
    NomPhysique est une chaine
    NomPhysique  = "FICHIER1_" +COMBO_Années..ValeurAffichée
    Res =hFerme(fichier1) 
    Si res = Faux alors 
       Erreur ( " Erreur lors de la fermeture de Fichier1" , herreur() )
    fin
    Res = hChangenom(fichier1, NomPhysique )
    si Res = Faux alors 
       Erreur ( " Plantage sur hChangeNom fichier " + NomPhysique , herreur() )
       Renvoyer faux
    fin
    HlitRecherchePremier(Fichier1, IDFichier1, COMBO_Liste) 
    SI HTrouve(Fichier1)=Vrai ALORS 
    FichierVersEcran(FEN_1,Fichier1)
    Sinon
       Avertissement ( " Pas de ligne à afficher")
    Fin
    Il faut probablement ajouter la fonction hCreationSiInexistant() après le hChangeNom().
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  17. #17
    Membre averti
    Homme Profil pro
    Admin - Gestion reconverti en informatique
    Inscrit en
    septembre 2017
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Admin - Gestion reconverti en informatique

    Informations forums :
    Inscription : septembre 2017
    Messages : 270
    Points : 385
    Points
    385

    Par défaut

    Généralement, dans une application qui gère le multi exercice, les fichiers de données sont enregistrés dans des sous-répertoires par année, d'autant plus si l'application est multi dossiers, plusieurs entités, il faut faire en premier lieu, l'arborescence du répertoire avec un code de l'entité.

    Moi, je procède comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    // pour fichier à gérer par dossier et par année
    HChangeRep(STAT,fRepExe()+"\"+sXCodeDossier+"\"+sAnnée)
    HChangeNom(STAT,"Stat"+sAnnée)
    HCréationSiInexistant(STAT)

  18. #18
    Nouveau Candidat au Club
    Homme Profil pro
    Windev
    Inscrit en
    novembre 2018
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Windev

    Informations forums :
    Inscription : novembre 2018
    Messages : 64
    Points : 0
    Points
    0

    Par défaut

    Merci beaucoup tbc92. Ça marche à merveille. Très cordialement

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 03/07/2014, 14h13
  2. Gérer le caractère € dans un champs de saisie
    Par mmahouac dans le forum Struts 1
    Réponses: 3
    Dernier message: 30/01/2009, 14h20
  3. Réponses: 6
    Dernier message: 19/10/2008, 07h56
  4. Affichage de données dans les champs
    Par Vivian Pennel dans le forum Formulaires
    Réponses: 6
    Dernier message: 24/06/2008, 14h04
  5. Affichage dans les champs d'un formulaire
    Par perlgirl dans le forum Formulaires
    Réponses: 2
    Dernier message: 25/08/2006, 16h40

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