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 :

Envoyer des données vers popup


Sujet :

WinDev

  1. #1
    Membre à l'essai
    Envoyer des données vers popup
    Bonjour
    Désolé pour mes questions, surtout débutant comme je suis, sachant que je suis médecin pour cela mes questions paraissent parfois débiles.
    Ma question est la suivante :
    J'ai une fenêtre interne son nom : FI_FicheIndividuelPatient dont existe dessus un champ texte type date sai_DDR

    je veux envoyer la valeur date afficher sur FI_FicheIndividuelPatient.SAI_DDR vers fenêtre popup POP_DDR.SAI_DDR

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    //  clic sur btn_ddr 
    sPopDDR est une chaîne
     sPopDDR=OuvrePopup(POP_DDR)
    POP_DDR.SAI_DDR=FI_FicheIndividuelPatient.SAI_DDR  =======cette ligne affiche erreur  POP_DDR.SAI_DDR est inconnu
    // OuvrePopup(POP_DDR)
     
    SAI_AgeGrossTheorq=sPopDDR
     SI SAI_AgeGrossTheorq="-1" 
     	RENVOYER opFinTraitement
     FIN
     SI SAI_AgeGrossTheorq<>"-1" 
    	 SAI_AgeGrossTheorq=sPopDDR
    FIN


    Un autre problème le champ date sur le fenêtre popup ne veut pas afficher le calendrier
    merci pour votre aide

  2. #2
    Rédacteur/Modérateur

    Imaginons que ton programmme accepte de s'exécuter, que va-t-il se passer :

    Tu as une instruction ouvrepopup(xxx) (ici en ligne 3), le programme ouvre la fenêtre et attend que l'utilisateur agisse.
    Donc le programme ne passera à l'instruction suivante que quand l'utilisateur aura fermé la fenêtre.

    L'instruction POP_DDR.SAI_DDR= .... sera donc exécutée après la fermeture de la fenêtre popup , trop tard !


    Il faut utiliser les paramètres ; regarde l'aide ici

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    ouvrepopup ( pop_ddr, FI_FicheIndividuelPatient.SAI_DDR )


    Et ensuite, dans le code de la fenêtre popup, il va falloir dire au programme quoi faire de ce paramètre. La méthode est expliquée dans le lien précédent, dans le paragraphe 'paramètres passés à la fenêtre à ouvrir'.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  3. #3
    Membre à l'essai
    Rebonjour voici ce que j'ai obtenu

  4. #4
    Rédacteur/Modérateur

    Normal.
    Lis la fin de mon 1er message. C'état expliqué un peu rapidement.

    Là, tu envoies une information à la fenêtre popup, mais tu ne lui dis pas quoi en faire ; le programme ne sait pas s'il doit afficher cette valeur dans du texte, ou dans un champ de saisie... Tu pourrais même lui envoyer 2 ou 3 paramètres, mais si tu ne lui dis pas quoi faire avec ces paramètres, tu as ce message d'erreur.

    Dans la fenêtre Popup, il faut donc faire des changements pour lui dire : tu reçois un paramètre, voici ce qu'il faut en faire.

    Code à mettre dans la fenêtre popup :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    // Dans la section Déclarations Globales de Pop_DDR
    procedure Pop_DDR ( zdate est une date ) 
     
    // Dans la section Fin d'initialisation de Pop_DDR
    sai_ddr = zdate


    J'ai mis dans la première ligne procedure Pop_DDR ( zdate est une date ) , mais j'aurais pu mettre procedure Pop_DDR ( zdate )
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  5. #5
    Membre à l'essai
    BONJOUR CHER AMI
    sincèrement j'arrive pas à mon sortir
    voila ce que j'ai fait

  6. #6
    Membre expérimenté
    Ce message n'a pas pu être affiché car il comporte des erreurs.
    Il y a peut être plus simple, mais ça tourne

  7. #7
    Membre à l'essai
    Merci à vous tous, le problème est résolu grâce à vos solutions, une fois que mon programme sera réalisé je mettrai vos noms comme contributeurs.

  8. #8
    Membre à l'essai
    Mes chers vous tellement gentil que je veux abuser de votre génie

    la date s'affiche correctement dans le popup dans le champ sai_ddr mais n'actionne pas son code

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    SAI_DDR..Libellé =  "DDR: " + DateVersChaîne(SAI_DDR, "Jjjj JJ Mmmm AAAA")
     
    //SI SAI_Ages="" ALORS
    //	Erreur(ErreurInfo())	
    //SINON
    dMonAge est une Date
    dMonAge = Age(SAI_DDR, DateDuJour())
    LIB_AgeGross =ChaîneConstruit(" %1 mois et %2 jours", dMonAge..Mois, dMonAge..Jour)

  9. #9
    Expert éminent
    Bonjour,

    Regarde du côté de executetraitement().
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Make it real not fantasy.

  10. #10
    Membre expérimenté
    Où se trouve ce code.
    Dans quelle condition doit il être déclenché ?
    Il y a peut être plus simple, mais ça tourne

  11. #11
    Membre à l'essai
    Citation Envoyé par Voroltinquo Voir le message
    Où se trouve ce code.
    Dans quelle condition doit il être déclenché ?
    bonjour
    le code ce trouve dans le fenêtre popup qui reçoit déjà la valeur date quand je clique sur le bouton de la page principale

  12. #12
    Membre à l'essai
    Citation Envoyé par frenchsting Voir le message
    Bonjour,

    Regarde du côté de executetraitement().
    bonjour avec cette possibilité le problème est résolu