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

AIDE Impression Etat Multi facture

Discussion dans 'Windev' créé par lerunner33, Sept 12, 2018.

  1. lerunner33

    lerunner33 Member

    Inscrit:
    Août 10, 2018
    Messages:
    34
    J'aime reçus:
    7
    Bonjour,
    J'ai ma table facture ou on trouve toute mes factures
    Je veux imprimer celle qui est sélectionnée dans la table.
    J'imprime bien un état mais j'ai toutes les factures à la suite ?

    j'ai fait avec Etat sur fichier
    Etat sur requète
    toujours pareil

    Merci pour votre aide
     
    Tags:
  2. channibal

    channibal Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 22, 2018
    Messages:
    210
    J'aime reçus:
    277
    Bonjour,

    Deux solutions :

    1 - Soit tu crée un filtre avant le lancement de l'impression

    Code (Windev):

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

    (F_LIFACT,IDFACTURE,F_FACTURE.IDFACTURE,F_FACTURE.IDFACTURE)

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

    ()

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

    (ETAT_FactureVente)

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

    (F_LIFACT)
    2- Soit tu passe les clés du filtre directement à l'état :

    Code (Windev):

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

    ()

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

    (ETAT_FactureVente,F_FACTURE.IDFACTURE,F_FACTURE.IDFACTURE)
    Dans ce cas dans ton état tu dois cocher les bornes Min et Max

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



    Perso, je préfère la première solution

    Bon Dev
     
    Fakirato et suenodesign aiment ça.
  3. lerunner33

    lerunner33 Member

    Inscrit:
    Août 10, 2018
    Messages:
    34
    J'aime reçus:
    7
    bonjour Channibal,
    j'ai emplyé la première solutions et toujours le même résultat
    impression impeccable mais de toutes les factures de ma table ?
    je vais essayer l'autre
    merci
     
  4. channibal

    channibal Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 22, 2018
    Messages:
    210
    J'aime reçus:
    277
    Peux-tu mètre le code de lancement de l'impression stp?
     
  5. lerunner33

    lerunner33 Member

    Inscrit:
    Août 10, 2018
    Messages:
    34
    J'aime reçus:
    7
    J'ai supprimé mes états et je suis reparti sur un état sur Table.
    Là ça marche, il ne m'imprime que celui qui est sélectionné. Je pense que j'ai du me mélanger les crayons entre état sur requête, état sur fichier ..
    J'ai conservé ton code
    HFiltre(FACTURE,IDFACTURE,FACTURE.IDFACTURE,FACTURE.IDFACTURE)
    iAperçu()
    iImprimeEtat(ETAT_FACTURE)
    HDésactiveFiltre(FACTURE)

    et ça marche
    encore merci
     
  6. channibal

    channibal Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 22, 2018
    Messages:
    210
    J'aime reçus:
    277
    "HFiltre(FACTURE,IDFACTURE,FACTURE.IDFACTURE,FACTURE.IDFACTURE)"

    Attention! le filtre ne devrait pas être lancer sur le fichier Factures mais plutôt sur le fichier LignesFacture

    HFiltre(LIGNEFACTURE,IDFACTURE,FACTURE.IDFACTURE,FACTURE.IDFACTURE)
     
    Fakirato apprécie ceci.
  7. Fakirato

    Fakirato New Member
    WXG24 MEMBRE WX WXG 23 WXG 22 WXG 21

    Inscrit:
    Déc 30, 2017
    Messages:
    302
    J'aime reçus:
    816
    Pour mon cas j'utilise les enchaînement
    IDDOC c'est un tableaux d'entiers sur 8 contient les id des factures a imprimé
    vous pouvez aussi utilisé iInitRequêteEtat(ETAT_FACTURE,IDDOC[1]) si vous voulez passez directement des paramétré a la requête de l’état

    Code (Windev):

    // Multi Document
    SI IDDOC..

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

    > 1
        POUR I = 1 _À_ IDDOC..

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


           

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

    (ETAT_FACTURE,IDDOC[I])
            iRAZNbPages() // Reset des compteurs de pages
        FIN
       

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

    ()
       

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

    ()    
    FIN
     
     
    suenodesign et channibal aiment ça.
  8. lerunner33

    lerunner33 Member

    Inscrit:
    Août 10, 2018
    Messages:
    34
    J'aime reçus:
    7
    bonjour
    LIGNEFACTURE inconnu ?

    marche très bien

    merci à vous
     
  9. channibal

    channibal Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 22, 2018
    Messages:
    210
    J'aime reçus:
    277

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

    bonjour
    LIGNEFACTURE inconnu ?

    marche très bien

    merci à vous
    Cliquez pour agrandir...
    LigneFacture c'est le nom de fichier où sont stockés les lignes d'une facture! c'est un exemple.

    Comment t'enregistre tes facture?
    Il faut y avoir au moins 2 fichiers pour ça. Un pour l’entête et les détails (Totaux, Client, Date, Numéro de facture,...) et l'autre pour les lignes (IDfacture,IDArticle, quantité, désignation, prix de vente, ...)
    le deuxième dans l'exemple c'est le LigneFacture c'est sur ce fichier qu'il faut lancer le filtre (sur la clé IDFacture) pour n'avoir que les lignes concernées par la facture sélectionnée.
     
    suenodesign apprécie ceci.
  • lerunner33

    lerunner33 Member

    Inscrit:
    Août 10, 2018
    Messages:
    34
    J'aime reçus:
    7
    Désolé je suis pas très bon, évidement c'était un exemple !:mad:

    Mon application gère des clients qui réservent un séjour dans une des chambres d’hôtes. Le fichier client sert à les enregistrer et éventuellement à lancer une réservation (fichier ou j'ajoute les dates arrivées et départ. Je calcule les nuitées que je multiplie au tarif de la chambre.
    j'édite un planning des réservations.
    Ensuite possibilités d'imprimer la facture qui est sauvegardée par un duplicata.



    J'ai un fichier FACTURES alimenté par un fichier RESERVATIONS
    J'ai une FEN_FACTURES avec une table (générée par le RAD)
    j'ai simplement crée un ETAT_FACTURES sur la table FEN_FACTURES.TABLE_FACTURES
    j'en profite pour faire une sauvegarde dans un répertoire du disque C:\

    J'imprime avec le code:

    // Si le répertoire MesRépertoires n'existe pas,
    // la fonction crée le répertoire MesRépertoires (C:/Faturas)

    MesFactures est une chaîne = "C:\Faturas"
    SI fRepExiste(MesFactures) = Faux ALORS
    MesFactures = fRepCrée("C:\Faturas")

    FIN

    // Paramétrage du duplicata de la facture
    iParamètreDuplicata(iDplImpression, "C:\Faturas", SAI_Nom + "_%d" ,"JJJJ JJ MMMM AAAA")

    //Impression
    HFiltre(FACTURE,IDFACTURE,FACTURE.IDFACTURE,FACTURE.IDFACTURE)
    iAperçu()
    iImprimeEtat(ETAT_FACTURE)
    HDésactiveFiltre(FACTURE)

    J'ai testé et ça à l'air de bien fonctionner :p
     
  • channibal

    channibal Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 22, 2018
    Messages:
    210
    J'aime reçus:
    277
    Ah ok si t'as pas besoin d'un autre fichier LignesFacture, chose que je trouve un peu bizarre, dans ce cas le filtre devrait être lancer sur le fichier des factures ou encore de passer l'ID de la facture en cours vers l’état comme borne min et max

    si ça marche alors tant mieux

    Bon Dev
     
    hamidzaki apprécie ceci.
  • lerunner33

    lerunner33 Member

    Inscrit:
    Août 10, 2018
    Messages:
    34
    J'aime reçus:
    7
    Merci à toi
    j'ai peut être mal analysé le besoin dans la création de mes différents fichiers ?
    Je suis toujours preneur de bons conseils.
     
  • Partager cette page

    Chargement...