Bonjour, depuis ma base 4D j'effectue une serie d'impression. Je souhaiterai ne plus imprimer mais générer des fichiers PDF.
Avez-vous, S.V.P., un exemple avec les instructions correspondantes.
Je vous remercie par avance.
Bonjour, depuis ma base 4D j'effectue une serie d'impression. Je souhaiterai ne plus imprimer mais générer des fichiers PDF.
Avez-vous, S.V.P., un exemple avec les instructions correspondantes.
Je vous remercie par avance.
Voici un exemple simplifié sur Mac, j'ai une routine qui renseigne vNomFic pour avoir un nom de fichier différent à chaque fois. $4 est le dossier de destination choisi par l'utilisateur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 vDest:=$4+":"+vNomFic+".pdf" FIXER OPTION IMPRESSION(Option destination ;3;vDest) IMPRIMER ENREGISTREMENT([MaTable];>)
Merci pour l'aide, mais la solution ne fonctionne pas sous Windows.
Je suis arrivé à mettre au point une autre solution.
J'ai utilisé PDFCreator. Dans les options PDFCreator à sauvegarde automatique : choisir le répertoire et un nom du document(ici c'est TEST). Toutes les impressions seront redirigées vers ce fichier.
Dans mon source 4D pour diriger automatiquement un état automatique vers le fichier nommé TEST.PDF.
Attention le système Windows va moins vite que 4D.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 FIXER IMPRIMANTE COURANTE("PDFCreator") QR ETAT([XTpRelance];$SelEtatRel;Faux;Faux;Faux;*)
Il faut vérifier en premier que le fichier existe.
Il faut vérifier en second que la création du fichier est terminée(sa taille n'évolue plus).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Tant que (Tester chemin acces("D:\\PDF\\test.pdf")#Est un document ) ENDORMIR PROCESS(Numero du process courant;60) Fin tant que
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Repeter $TailleDct:=Taille document("D:\\PDF\\test.pdf") ENDORMIR PROCESS(Numero du process courant;60) Jusque (($TailleDct=Taille document("D:\\PDF\\test.pdf"))*&*($TailleDct#0))
Ensuite il faut copier le fichier avec un nouveau nom pour enchainer d'autres éditions sinon est le fichier est remplacé.
Encore merci pour la solution proposée sous Mac.
Code : Sélectionner tout - Visualiser dans une fenêtre à part COPIER DOCUMENT("D:\\PDF\\test.pdf";DctListe)
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager