1. Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !
    Rejeter la notice

WD Saisie données sans fermer Fiche

Discussion dans 'Windev' créé par anakinsqt, Mar 7, 2021.

  1. michel

    michel Well-Known Member
    MEMBRE WX

    Inscrit:
    Jan 1, 2018
    Messages:
    174
    J'aime reçus:
    601
    Voici ton programme corrigé et qui marche parfaitement (WD22)

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    Ps : Si tu n'as pas la version 22 de windev il suffit de copier ce code dans le bouton valider

    EcranVersFichier()

    // Ajoute / Modifie l'enregistrement
    HEnregistre(Livraisons)

    //RepriseSaisie(Fiche_Livraisons)
    RAZ()
    HRAZ(Livraisons)

    //Actualiser La Table
    TableAffiche(Table_Livraisons.Livraisons,taCourantBandeau)
     
    yooseetim apprécie ceci.
  2. Fouedusa

    Fouedusa Active Member

    Inscrit:
    Avr 22, 2018
    Messages:
    141
    J'aime reçus:
    120
    Bonjour;
    Code (Windev):

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()

    SI Livraisons..NouvelEnregistrement ALORS     // On est dans le cas d'ajout d'enregistrement
        // Ajoute l'enregistrement
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (Livraisons)
        // Réaffichage de la table dans la fenêtre mère
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (Table_Livraisons.Livraisons, taCourantPremier)
        SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("Autre saisie ?") ALORS
            // initialisation des champs
           

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()
            // initialisation des rubriques
           

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (Livraisons)
            // se positionner dans le premier champs de la fiche
            RepriseSaisie(Date_Livraison)
        SINON
            // Fermeture de la fiche
           

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("",Vrai)
        FIN
    SINON     // On est dans le cas de modification d'enregistrement
        // Modifie l'enregistrement
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (Livraisons)
        // Fermeture de la fiche
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("",Vrai)
    FIN
     
    Bon Dev
     
  3. anakinsqt

    anakinsqt Member

    Inscrit:
    Sept 5, 2019
    Messages:
    115
    J'aime reçus:
    1

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Voici ton programme corrigé et qui marche parfaitement (WD22)

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    Ps : Si tu n'as pas la version 22 de windev il suffit de copier ce code dans le bouton valider

    EcranVersFichier()

    // Ajoute / Modifie l'enregistrement
    HEnregistre(Livraisons)

    //RepriseSaisie(Fiche_Livraisons)
    RAZ()
    HRAZ(Livraisons)

    //Actualiser La Table
    TableAffiche(Table_Livraisons.Livraisons,taCourantBandeau)
    Cliquez pour agrandir...
    Un grand merci, Michel, cela fonctionne parfaitement
     
  • anakinsqt

    anakinsqt Member

    Inscrit:
    Sept 5, 2019
    Messages:
    115
    J'aime reçus:
    1

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Bonjour;
    Code (Windev):

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()

    SI Livraisons..NouvelEnregistrement ALORS     // On est dans le cas d'ajout d'enregistrement
        // Ajoute l'enregistrement
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (Livraisons)
        // Réaffichage de la table dans la fenêtre mère
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (Table_Livraisons.Livraisons, taCourantPremier)
        SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("Autre saisie ?") ALORS
            // initialisation des champs
           

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()
            // initialisation des rubriques
           

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (Livraisons)
            // se positionner dans le premier champs de la fiche
            RepriseSaisie(Date_Livraison)
        SINON
            // Fermeture de la fiche
           

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("",Vrai)
        FIN
    SINON     // On est dans le cas de modification d'enregistrement
        // Modifie l'enregistrement
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (Livraisons)
        // Fermeture de la fiche
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("",Vrai)
    FIN
     
    Bon Dev
    Cliquez pour agrandir...

    Un grand merci aussi à vous Fouedusa, votre code est un peu plus complexe, mais fonctionne très bien aussi
     
  • Scorpion

    Scorpion New Member

    Inscrit:
    Fev 28, 2018
    Messages:
    24
    J'aime reçus:
    6

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Un grand merci aussi à vous Fouedusa, votre code est un peu plus complexe, mais fonctionne très bien aussi
    Cliquez pour agrandir...
    Bonjour, je suis un autodidacte comme la plupart, mais il manque certaines conditions dans le code, car aucune condition d'enregistrement n'est mit. Et de ce fait même si les champs sont vide, l'enregistrement ce fait.
    ex:
    1: le rendre obligatoire ou

    si champs = "" alors
    tostaffiche("Le champs ne peut être vide")
    reprisesaisie(champs)
    fin
    le code peut être placé soit lors de la validation ou en sortie de champs et ceci pour les champs concernés.
     
  • Dandypunk

    Dandypunk Well-Known Member

    Inscrit:
    Nov 28, 2019
    Messages:
    611
    J'aime reçus:
    333
    Sans oublier que CAS ERREUR et CAS EXCEPTION ne sont toujours pas renseignés
     
  • Nab

    Nab Active Member

    Inscrit:
    Mai 9, 2019
    Messages:
    230
    J'aime reçus:
    59
    Bonjour a tous !
    comment corriger l'erreur windev de compilation lorsque windev affiche les champs ont les même nom Libellé !
     
  • Dandypunk

    Dandypunk Well-Known Member

    Inscrit:
    Nov 28, 2019
    Messages:
    611
    J'aime reçus:
    333
    En changeant le libellé, de l'un, de l'autre ou des deux. La plupart du temps, cela provient du '&'
     
  • Nab

    Nab Active Member

    Inscrit:
    Mai 9, 2019
    Messages:
    230
    J'aime reçus:
    59
    Bonjour,

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!


    Merci a toi pour ta réponse !
     
  • anakinsqt

    anakinsqt Member

    Inscrit:
    Sept 5, 2019
    Messages:
    115
    J'aime reçus:
    1

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Voici ton programme corrigé et qui marche parfaitement (WD22)

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    Ps : Si tu n'as pas la version 22 de windev il suffit de copier ce code dans le bouton valider

    EcranVersFichier()

    // Ajoute / Modifie l'enregistrement
    HEnregistre(Livraisons)

    //RepriseSaisie(Fiche_Livraisons)
    RAZ()
    HRAZ(Livraisons)

    //Actualiser La Table
    TableAffiche(Table_Livraisons.Livraisons,taCourantBandeau)
    Cliquez pour agrandir...
    Bonsoir,
    Après avoir testé en condition réelle, le code ne fonctionne pas correctement... Je saisie une donnée, elle se met bien dans la fenêtre table sur la première ligne.
    Lorsque j'en saisie une seconde, au lieu de se mettre sur la ligne suivante cela ne fait que corriger la première ligne
     
    #70 anakinsqt, Mar 25, 2021
    Dernière édition: Mar 25, 2021
  • anakinsqt

    anakinsqt Member

    Inscrit:
    Sept 5, 2019
    Messages:
    115
    J'aime reçus:
    1
    J'ai trouvé la solution, au lien de mettre HEnregistre(Livraisons), il fallait mettre HAjoute(Livraisons)
    Merci tout de même, cela fonctionne mieux
     
  • Yusep

    Yusep Active Member
    DUMP TEAM

    Inscrit:
    Jan 3, 2018
    Messages:
    235
    J'aime reçus:
    165
    Lire SVP l'aide :
    Remarques
    • Si la propriété

      Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

      est à Vrai, la fonction HEnregistre ajoute l'enregistrement dans le fichier de données (fonction

      Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

      ). Pour plus de détails, consultez la documentation de la fonction

      Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

      .
    • Si la propriété

      Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

      est à Faux, la fonction HEnregistre modifie l'enregistrement dans le fichier de données (fonction

      Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

      ). Pour plus de détails, consultez la documentation de la fonction

      Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

      .
     
  • popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,961
    J'aime reçus:
    1,575
    Personnellement, j'évite le henregistre
    Je préfère toujours gèrer moi même avec hajoute et hmodifie .
    J'ai constaté que la fonction henregistre peut se tromper.
     
  • Fouedusa

    Fouedusa Active Member

    Inscrit:
    Avr 22, 2018
    Messages:
    141
    J'aime reçus:
    120

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Personnellement, j'évite le henregistre
    Je préfère toujours gèrer moi même avec hajoute et hmodifie .
    J'ai constaté que la fonction henregistre peut se tromper.
    Cliquez pour agrandir...
    Idem
     
  • anakinsqt

    anakinsqt Member

    Inscrit:
    Sept 5, 2019
    Messages:
    115
    J'aime reçus:
    1
    Code (Text):
    EcranVersFichier()

    // Ajoute / Modifie l'enregistrement
    HEnregistre(Livraisons)

    //RepriseSaisie(Fiche_Livraisons)
    RAZ()
    HRAZ(Livraisons)

    //Actualiser La Table
    TableAffiche(Table_Livraisons.Livraisons,taCourantBandeau)
    Bon j'ai un soucis avec le code ci dessus, lorsque je saisis une donnée et que je valide pas de problème cela fonctionne.
    Si j'en saisis une seconde et que je valide, cela modifie ma première saisie au lieu de l'ajouter à la ligne suivante.
    J'ai essayé avec HAjoute(Livraisons), mais cela ne fonctionne pas toujours
     
  • Dandypunk

    Dandypunk Well-Known Member

    Inscrit:
    Nov 28, 2019
    Messages:
    611
    J'aime reçus:
    333
    C'est normal, comme tu ne fais pas de HRAZ avant le HEnregistre, le pointeur reste sur le tuple en cours.
    L'ordre est :
    HRaz
    FichierVersEcran
    Affectation diverses
    Enregistrement ou modification
    Utilise l'option RTFM
     
    #76 Dandypunk, Mar 28, 2021
    Dernière édition: Mar 28, 2021
  • anakinsqt

    anakinsqt Member

    Inscrit:
    Sept 5, 2019
    Messages:
    115
    J'aime reçus:
    1

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    C'est normal, comme tu ne fais pas de HRAZ avant le HEnregistre, le pointeur reste sur le tuple en cours.
    L'ordre est :
    HRaz
    FichierVersEcran
    Affectation diverses
    Enregistrement ou modification
    Utilise l'option RTFM
    Cliquez pour agrandir...
    Désolé, ne fonctionne pas:evilsmile:
     
  • anakinsqt

    anakinsqt Member

    Inscrit:
    Sept 5, 2019
    Messages:
    115
    J'aime reçus:
    1
    Décidemment malgré votre aide précieuse rien ne marche malgré mes recherches
     
  • Dandypunk

    Dandypunk Well-Known Member

    Inscrit:
    Nov 28, 2019
    Messages:
    611
    J'aime reçus:
    333
    A priori tu cherches mal. Un (nouveau) passage par l'auto formation serait le bienvenu.
    A l'heure actuelle, tu récupères du code sans chercher à savoir ce qu'il fait. Alors que ce sont des commandes de base
    Tu as mis RepriseSaisie en commentaire parce qu'elle "génait". Et pour cause. J'avais fait une remarque à ce sujet. A priori sans succès.
    Il ne faut pas hésiter à mettre des traces et de passer en mode débug
     
  • Scorpion

    Scorpion New Member

    Inscrit:
    Fev 28, 2018
    Messages:
    24
    J'aime reçus:
    6
    // Lecture des informations saisies
    EcranVersFichier()

    //1 : &Sortir
    //2 : &Poursuivre
    // Ajoute / Modifie l'enregistrement
    HEnregistre(ASSOCIATION_INT_TYP)
    SELON Dialogue("Désirez-vous poursuivre ou sortir ?")
    // &Sortir
    CAS 1
    // Ferme la fenêtre
    Ferme("",Vrai)
    // &Poursuivre
    CAS 2
    HRAZ(ASSOCIATION_INT_TYP)
    RAZ()
    SetFocus(SAI_INTERVENTION_TYPE)
    FIN


    //Voici le code, transpose le à ton projet, cela fonctionne depuis des années :) ou alors il y a un autre code qui perturbe le reste
     
  • Partager cette page

    Chargement...