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 :

Etat Imprimer et BDD [WD11]


Sujet :

WinDev

  1. #1
    Nouveau membre du Club
    Inscrit en
    Janvier 2012
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Janvier 2012
    Messages : 171
    Points : 37
    Points
    37
    Par défaut Etat Imprimer et BDD
    Bonjour communauté WinDev

    Je viens une nouvelle fois vous demander votre aide.

    Voila mon soucis, j'ai une fenetre avec 2 tableau 1 entete et 1 avec lignes.

    Losque je sélectionne une ligne du tableau entete et les lignes associé s'affiche dans le second tableau.

    Dans ma fenetre j'ai un bouton imprimer qui est associé a un Etat.

    Cette Etat est basé sur cette requete :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    SELECT
    Entête.IDEntête AS EID, Ligne.IDEntête AS LID, DateArrive, DateCreation, DateFacture, DateReception, Designation, Exercice, 
    Fournisseur, GestCommande, IniExpediteur, MarcheLot, MontantNet, MonTTC, NomUtilisateur, NonRegroup, NumBesoin, NumCommande, 
    NumCompte, NumFournisseur, NumLiquidation, ObjetDepense, Produit, Qte, Rattachement, RefFacture, TauxTVA, UF,URG
    FROM
    Ligne INNER JOIN Entête ON LID = EID
    WHERE
    LID = EID
    ORDER BY
    EID,LID
    Le problème c'est que lorsque je clique sur mon bouton imprimer il 'm'ouvre bien etat mais me fait des pages pour tout ce qui ya dans ma BDD.

    Ce que j'aimerais c'est que en fonction de la ligne sélectionné etat affiche juste les infos de la lignes selectionné voila...

    Mon actuellement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    SI TableSelect(TABLE_ListeEntête) = -1 ALORS RETOUR
     
    SELON OuiNon("Voulez-vous imprimez cette liquidation?")
    	CAS Oui
     
    		iAperçu(i100)
            iImprimeEtat(ETAT_Imprimer)
     
        CAS Non
     
            RepriseSaisie()
     
    FIN
    Merci

  2. #2
    Membre émérite
    Homme Profil pro
    Développeur et responsable micros/réseaux
    Inscrit en
    Octobre 2010
    Messages
    1 286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur et responsable micros/réseaux
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 286
    Points : 2 562
    Points
    2 562
    Par défaut
    Bonjour,

    ta requête doit avoir un paramètre pour pouvoir passer l'ID de l'en-tête sinon forcément il va faire tous les en-têtes et toute les lignes associées à tous ces en-têtes !

    une fois le paramètre en place, ça devrait aller beaucoup mieux.

    Nicolas

  3. #3
    Nouveau membre du Club
    Inscrit en
    Janvier 2012
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Janvier 2012
    Messages : 171
    Points : 37
    Points
    37
    Par défaut
    Je me disais aussi que ma requête ne le faisait pas

    Pour faire ce que tu m'as dit je dois m'y prendre comment? au niveau du IimprimeEtat?

    Merci

  4. #4
    Membre émérite
    Homme Profil pro
    Développeur et responsable micros/réseaux
    Inscrit en
    Octobre 2010
    Messages
    1 286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur et responsable micros/réseaux
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 286
    Points : 2 562
    Points
    2 562
    Par défaut
    Hé bien, avant de lancer l'impression, tu passes le paramètre à ta requête, tu l'exécutes et ensuite tu lances ton impression. Comme ton état est basé sur la requête et que tu viens de la lancer, tu ne devrais plus avoir tout.

    Peut-être devrais-tu faire un test sur le retour de l'exécution de la requête pour ne pas imprimer si un problème s'est passé.

    Attention aussi aux modifications faites mais non enregistrées !

  5. #5
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 197
    Points : 12 772
    Points
    12 772
    Par défaut
    Bonjour,
    Je dirai qu'il faut regarder dans l'aide des requêtes paramétrées...
    Et j'ajouterai aussi que tu as une condition en trop dans ta requête:
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    SELECT
    Entête.IDEntête AS EID, Ligne.IDEntête AS LID, DateArrive, DateCreation, DateFacture, DateReception, Designation, Exercice, 
    Fournisseur, GestCommande, IniExpediteur, MarcheLot, MontantNet, MonTTC, NomUtilisateur, NonRegroup, NumBesoin, NumCommande, 
    NumCompte, NumFournisseur, NumLiquidation, ObjetDepense, Produit, Qte, Rattachement, RefFacture, TauxTVA, UF,URG
    FROM
    Ligne INNER JOIN Entête ON LID = EID
    WHERE
    LID = EID
    ORDER BY
    EID,LID

    Ca ne l'empêche pas de fonctionner, mais plus tard tu risques d'avoir des surprises...

    Tatayo.

  6. #6
    Nouveau membre du Club
    Inscrit en
    Janvier 2012
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Janvier 2012
    Messages : 171
    Points : 37
    Points
    37
    Par défaut
    comme cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Aperçu(i100)
    iInitRequêteEtat(ETAT_Imprimer,REQ_Liste.EID,REQ_Liste.LID)
    iImprimeEtat(ETAT_Imprimer)

  7. #7
    Membre émérite
    Homme Profil pro
    Développeur et responsable micros/réseaux
    Inscrit en
    Octobre 2010
    Messages
    1 286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur et responsable micros/réseaux
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 286
    Points : 2 562
    Points
    2 562
    Par défaut
    Non, ce n'est qu'une partie. D'abord modifies ta requêtes pour qu'elle reçoive un paramètre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    SELECT
    Entête.IDEntête AS EID, Ligne.IDEntête AS LID, DateArrive, DateCreation, DateFacture, DateReception, Designation, Exercice, 
    Fournisseur, GestCommande, IniExpediteur, MarcheLot, MontantNet, MonTTC, NomUtilisateur, NonRegroup, NumBesoin, NumCommande, 
    NumCompte, NumFournisseur, NumLiquidation, ObjetDepense, Produit, Qte, Rattachement, RefFacture, TauxTVA, UF,URG
    FROM
    Ligne INNER JOIN Entête ON LID = EID
    WHERE EID = {ParametreAPasser_EID}
    ORDER BY
    EID,LID
    Ensuite, tu peux mettre ta nouvelle ligne comme cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    iInitRequêteEtat(ETAT_Imprimer,TABLE_ListeEntête.IDEntete[TableSelect(TABLE_ListeEntête)])
    Et tu devrais avoir ce qu'il faut.

  8. #8
    Nouveau membre du Club
    Inscrit en
    Janvier 2012
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Janvier 2012
    Messages : 171
    Points : 37
    Points
    37
    Par défaut
    Citation Envoyé par Nicolas_Jeanneau Voir le message
    Non, ce n'est qu'une partie. D'abord modifies ta requêtes pour qu'elle reçoive un paramètre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    SELECT
    Entête.IDEntête AS EID, Ligne.IDEntête AS LID, DateArrive, DateCreation, DateFacture, DateReception, Designation, Exercice, 
    Fournisseur, GestCommande, IniExpediteur, MarcheLot, MontantNet, MonTTC, NomUtilisateur, NonRegroup, NumBesoin, NumCommande, 
    NumCompte, NumFournisseur, NumLiquidation, ObjetDepense, Produit, Qte, Rattachement, RefFacture, TauxTVA, UF,URG
    FROM
    Ligne INNER JOIN Entête ON LID = EID
    WHERE EID = {ParametreAPasser_EID}
    ORDER BY
    EID,LID
    Ensuite, tu peux mettre ta nouvelle ligne comme cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    iInitRequêteEtat(ETAT_Imprimer,TABLE_ListeEntête.IDEntete[TableSelect(TABLE_ListeEntête)])
    Et tu devrais avoir ce qu'il faut.

    Sa marche parfaitement

    Merci bien !

    Une autre petite question : dans mon Etat j'ai une partie avec des champs et la seconde avec un tableau, le truc c'est que lorsque le tableau arrive en fin de page il me recréer une page en reprenant tous les champs et le tableau pour afficher les lignes qui reste ... c'est possible de faire en sorte que juste le tableau ce recréer un peu comme dans excel ???

  9. #9
    Membre émérite
    Homme Profil pro
    Développeur et responsable micros/réseaux
    Inscrit en
    Octobre 2010
    Messages
    1 286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur et responsable micros/réseaux
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 286
    Points : 2 562
    Points
    2 562
    Par défaut
    dans ce cas, changes ton haut de page par un haut de document et transfert ces champs dedans.

    Dans le haut de page, tu ne mets que les titres des colonnes.

  10. #10
    Nouveau membre du Club
    Inscrit en
    Janvier 2012
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Janvier 2012
    Messages : 171
    Points : 37
    Points
    37
    Par défaut
    Solution trouvé.

    Merci de ton aide

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 01/08/2007, 12h47
  2. [Etat] imprimer une partie d'un état selon critères
    Par The_Super_Steph dans le forum IHM
    Réponses: 1
    Dernier message: 13/06/2007, 16h46
  3. [Etat]-Imprimer un seul enregistrement
    Par Kelly182 dans le forum VBA Access
    Réponses: 2
    Dernier message: 13/06/2007, 12h08
  4. [Etat]Imprimer un enregistrement par page
    Par The_Super_Steph dans le forum IHM
    Réponses: 6
    Dernier message: 24/05/2007, 08h59
  5. Comment imprimer une BDD comme le fait Access
    Par Hamza dans le forum Bases de données
    Réponses: 5
    Dernier message: 23/05/2006, 13h15

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