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 :

Fusionner 2 états en 1 sous wd5.5


Sujet :

WinDev

  1. #1
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    310
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 310
    Par défaut Fusionner 2 états en 1 sous wd5.5
    Bonjour et bonne année à tous,

    Sous WD 5.5 je voudrais pourvoir fusionner/enchainer 2 états pour que redirigés vers une imprimante virtuelle pdf il me génère qu'un seul pdf.

    Typiquement le cas des factures avec conditions générales de vente en fin.

    y'a pas de fonction iEnchainementImprime() en version 5.5

    Si je met un iImprimeEtat("Etat2") dans le code après bloc bas de l'état1 j'ai droit à une erreur interne pile d'exécution saturée ?

    Ok on peut faire cela en utilisant les fonctionnalités de certaines imprimantes pdf virtuelles comme PDF24 ou PDFCreator qui permettent d'ajouter un fichier à la fin du pdf généré mais je voudrais bien éviter de dépendre d'un logiciel tiers.

    Avec ces imprimantes virtuelles on peut aussi mettre un fond sur chaque page sous la forme d'un fichier .pdf directement alors qu'avec wd 5.5, pour avoir un fond il faut un fichier image genre .png et utiliser iImprimeImage() dans le bloc Haut de Page.

  2. #2
    Membre confirmé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Mars 2014
    Messages : 16
    Par défaut
    bonsoir
    il y a longtemps j'utilisais :
    https://sourceforge.net/projects/pdfmerge/
    intérêt : tu peux l'appeler en ligne de commande
    et dans windev construction d'un .bat et lancement du .bat
    puis récupération du pdf fusionné.
    et le programme c'est un petit exe que tu peux installer facilement dans le répertoire du tien.

    ! lancé avec sa propre interface : ultra moche
    mais en ligne de commande : silencieux

    bon dev
    titou44

  3. #3
    Membre confirmé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Mars 2014
    Messages : 16
    Par défaut
    je complémente :
    voici un exemple de fichier xml évoqué dans le mode d'emploi

    exemple.xml contenant :
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <merge>
    <file> <path>D:\livrer\cdrom\pdf\page_devant.pdf </path> <pages>all</pages> </file>
    <file> <path>D:\livrer\cdrom\pdf\Nouveautes10.pdf </path> <pages>all</pages> </file>
    <file> <path>D:\livrer\cdrom\pdf\page_dos.pdf </path> <pages>all</pages> </file>
    </merge>

    et exemple.bat
    @echo off
    cls
    del D:\livrer\cdrom\pdf\exmple.pdf
    PdfMerge.exe exemple.xml D:\livrer\cdrom\pdf\exemple.pdf

    écrit de mémoire. donc à valider et modifier en fonction de tes besoins

    cdt
    titou44

  4. #4
    Expert confirmé
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 531
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 531
    Par défaut
    Bonjour,

    Pour rester en code Windev, ce que j'ai fait, il y a quelques temps pour un cas similaire : tu crées un programme en WD "récent" qui permet la fusion de 2 pdf avec le passage des noms de fichiers en ligne de commande :
    - Tu imprimes le premier état en pdf,
    - Tu imprimes le deuxième état en pdf,
    - Tu lances ton prg de fusion avec le nom des 2 pdf en paramètre,
    - Tu supprimes les 2 fichiers "d'origine"

    Note : je ne sais plus si cela est faisable facilement en WD5.5. Si serendib passe dans le coin, elle peut corriger sans souci. Merci à elle.

    Détail + : générer les 2 fichiers dans un répertoire temporaire, histoire de ne pas "polluer" l'environnement de l'utilisateur.

  5. #5
    Membre Expert
    Femme Profil pro
    .
    Inscrit en
    Janvier 2012
    Messages
    1 108
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : .
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 1 108
    Par défaut
    Citation Envoyé par lubinfo Voir le message
    Bonjour et bonne année à tous,

    Typiquement le cas des factures avec conditions générales de vente en fin.

    Si je met un iImprimeEtat("Etat2") dans le code après bloc bas de l'état1 j'ai droit à une erreur interne pile d'exécution saturée ?
    Bonjour,

    Tu as un autre problème lié à un de tes états ou les deux parce que chez moi :
    Après impression BLOC_BAS
    iImprimeEtat("CGV")

    marche très bien chez tous mes Clients.

  6. #6
    Membre Expert
    Femme Profil pro
    .
    Inscrit en
    Janvier 2012
    Messages
    1 108
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : .
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 1 108
    Par défaut
    Citation Envoyé par frenchsting Voir le message

    Note : je ne sais plus si cela est faisable facilement en WD5.5. Si serendib passe dans le coin, elle peut corriger sans souci. Merci à elle.
    Bonjour frenchsting,

    J'utilise parfois cette astuce qui consiste à écrire un programme en 20 (c'est mon dernier investissement chez PCS)
    pour pallier à un manque en 5.5.

    Mais pour enchaîner 2 états je fais tout simplement ce qu'indiqué ci-dessus à lubinfo.

  7. #7
    Expert confirmé
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 531
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 531
    Par défaut
    Citation Envoyé par serendib Voir le message
    Bonjour frenchsting,

    J'utilise parfois cette astuce qui consiste à écrire un programme en 20 (c'est mon dernier investissement chez PCS)
    pour pallier à un manque en 5.5.

    Mais pour enchaîner 2 états je fais tout simplement ce qu'indiqué ci-dessus à lubinfo.
    Merci pour ta réponse.

    J'avoue que je ne fais plus de 5.5 depuis plus de 15 ans, et mes connaissances dessus se sont bien étiolées.

  8. #8
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    310
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 310
    Par défaut
    Bonjour,

    Citation Envoyé par serendib Voir le message
    Bonjour,

    Tu as un autre problème lié à un de tes états ou les deux parce que chez moi :
    Après impression BLOC_BAS
    iImprimeEtat("CGV")

    marche très bien chez tous mes Clients.
    Merci pour toutes les réponses.

    J'ai aussi un autre état pour lequel cela fonctionne donc je cherche ce qu'il y a de particulier sur celui qui plante.
    L'état 1 fonctionne bien seul, j'y ai ajouté une image en fond et cela marche mais dès que j'ajoute le iImprimeEtat("CGV" cela plante.
    Je cherche et vous tiens au jus.

  9. #9
    Membre Expert
    Femme Profil pro
    .
    Inscrit en
    Janvier 2012
    Messages
    1 108
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : .
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 1 108
    Par défaut
    Citation Envoyé par frenchsting Voir le message
    Merci pour ta réponse.

    J'avoue que je ne fais plus de 5.5 depuis plus de 15 ans, et mes connaissances dessus se sont bien étiolées.
    Celà ne t'empêche pas d'être étoilé sur le forum.

  10. #10
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    310
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 310
    Par défaut
    Bonsoir,

    Citation Envoyé par serendib Voir le message
    Bonjour frenchsting,

    J'utilise parfois cette astuce qui consiste à écrire un programme en 20 (c'est mon dernier investissement chez PCS)
    pour pallier à un manque en 5.5.

    Mais pour enchaîner 2 états je fais tout simplement ce qu'indiqué ci-dessus à lubinfo.
    Quelques questions par curiosité :

    - Pour accéder aux fichiers 5.5 avec un programme wd20 tu as migré l'analyse ? Comment se passe une modification de structure ?
    - Utilises tu l'éditeur d'états wd20 sur des fichiers 5.5 ?
    - Comment pratiques tu pour générer un état wd5.5 en pdf ? En changeant l'imprimante pour une imprimante virtuelle pdf ou bien par programme ?

  11. #11
    Expert confirmé
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 531
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 531
    Par défaut
    Bonjour,

    La création de pdf via Windev existe depuis la version 8 (et pas folichonne dans cette version).

    Personnellement, ce que je ferais :
    - Utiliser une imprimante pdf virtuelle. Il y en a une normalement intégrée aux versions récentes de windows 10. Sinon, de mémoire, il existe des applis dédiées à ça (outre PDFcreator qui est devenu une usine à gaz).
    - Depuis WD5.5, imprimer états 1 et 2 dans un répertoire temporaire.
    - Appeler l'appli WD récente (soit en faisant une ligne de commande avec le nom des 2 pdf, soit, plus simple, appeler juste le programme)
    - Dans le programme Wd "récent", utiliser PDFfusionne.

    Personnellement, je ne migrerais pas l'analyse, j'utiliserais des hdeclareexterne(). Histoire que s'il y a une modif faite dans l'appli WD5.5, il n'y ait pas le souci de devoir migrer l'analyse à nouveau.

  12. #12
    Membre Expert
    Femme Profil pro
    .
    Inscrit en
    Janvier 2012
    Messages
    1 108
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : .
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 1 108
    Par défaut
    Bonjour lubinfo,

    - Pour accéder aux fichiers 5.5 avec un programme wd20 tu as migré l'analyse ?
    Surtout pas !
    Si j'avais besoin d'accéder à un ou plusieurs fichiers 5.5, j'utiliserai HDeclareExterne.
    Mais je n'ai jamais eu ce besoin
    .

    - Utilises tu l'éditeur d'états wd20 sur des fichiers 5.5 ?
    Non.

    - Comment pratiques tu pour générer un état wd5.5 en pdf ?
    Avec PDFMail.

  13. #13
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    310
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 310
    Par défaut
    Citation Envoyé par serendib Voir le message
    Bonjour lubinfo,

    - Comment pratiques tu pour générer un état wd5.5 en pdf ?
    Avec PDFMail.
    Bonjour,

    Existe-il une version gratuite de PDFMail ?

  14. #14
    Membre Expert
    Femme Profil pro
    .
    Inscrit en
    Janvier 2012
    Messages
    1 108
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : .
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 1 108
    Par défaut
    Citation Envoyé par lubinfo Voir le message
    Bonjour,

    Existe-il une version gratuite de PDFMail ?
    Je ne sais pas, j'ai pour drôle d'habitude de payer ce qui me rends service.

  15. #15
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    310
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 310
    Par défaut
    Bonjour,

    Alors un petit résumé qui fonctionne en windev 5.5 avec un exemple d'état facture suivi d'un état conditions générales de vente CGV :

    Dans facture, traitement après impression bloc bas :
    iSautePage
    iImprimeEtat("CGV")

    CGV : créer un état libre (non lié à un fichier)
    Dans le bloc haut ou le corps mettre un champ image qui contiendra un fichier des CGV au format .png par exemple

    Attention aux marges et à la taille du champ ainsi que du fichier image car les fonction normal, centré, étiré ou homothétique du champs image en windev 5.5 peuvent dégrader la qualité du texte dans l'image.

    Si vous avez une autre solution que de passer par un un fichier au format image je suis preneur.

    La version 5.5 n'accepte pas de .doc, .pdf ou .rtf

    Si on saisi directement le texte des CGV dans l'état on est tributaire du manque de fonction de l'éditeur d'état de windev 5.5.
    Pas de mise en forme du texte, pas de justification, très souvent les CGV sont sur 2 colonnes, une seule police par champs, ...

    Merci pour toutes vos contributions.

  16. #16
    Membre Expert
    Femme Profil pro
    .
    Inscrit en
    Janvier 2012
    Messages
    1 108
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : .
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 1 108
    Par défaut
    Bonsoir lubinfo,

    Pourquoi une image ?

    Le texte dans un fichier HF avec mémos.
    On y enregistre les CGV.
    (Eventuellement, texte colonne de gauche et texte colonne de droite.)
    Dans l'éditeur d'état : un état libre avec champs textes.
    Dans un fichier INI ou en base de registre on enregistre les préférences du Client
    (Choix de la police, taille et couleurs)
    Et le Client est libre de changer tout cela quand bon lui semble.

Discussions similaires

  1. Fusionner un tableau et un sous tableau ensemble
    Par BOU59000 dans le forum Excel
    Réponses: 2
    Dernier message: 24/08/2020, 12h38
  2. Réponses: 1
    Dernier message: 26/03/2009, 16h56
  3. Réponses: 1
    Dernier message: 15/09/2008, 10h43
  4. [WD5.5] Base de registre sous Vista
    Par grimbd dans le forum WinDev
    Réponses: 6
    Dernier message: 24/07/2007, 13h21
  5. [VBA-E] fusionner 2 images sous excel
    Par richou dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 20/02/2007, 04h54

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