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

Runtime Discussion :

Export PDF Runtime Access


Sujet :

Runtime

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert Avatar de Gado2600
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Mai 2013
    Messages
    909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Office VBA

    Informations forums :
    Inscription : Mai 2013
    Messages : 909
    Par défaut Export PDF Runtime Access
    Bonjour,

    Lors du développement d'une base Access (utilisée en Runtime 2010), on m'a demandé de mettre en place des états pour les générer ensuite en PDF.
    Pour vous mettre dans le contexte, j'ai besoin de générer plusieurs états différents selon certaines conditions et de les fusionner à la fin avec un logiciel au format PDF.

    J'ai tenté d'utiliser les logiciels suivants :
    • PDFCreator : fonctionne sur la version officielle mais pas chez le client
    • Adobe Acrobat : fonctionne sur la version officielle mais le client ne souhaite pas acquérir le logiciel (compréhensible puisque c'est payant)
    • PDFToolKit : fonctionne plus ou moins selon les ordinateurs


    Bref, j'ai utilisé aujourd'hui PDFToolKit mais celui-ci pose, au final, beaucoup de problèmes :
    • Lenteur du logiciel à fusionner environ 20 PDF entre eux
    • Quand une fusion pose problème à un moment T, le fichier est corrompu et donc, impossibilité de l'ouvrir

    L'exploitation de ce logiciel est donc (je m'excuse auprès des développeurs), pourrie, pas fiable et instable.

    Aujourd'hui, je cherche un autre logiciel ayant le même potentiel que PDFCreator et Adobe Acrobat et utilisable en VBA (avec, si possible, un petit tutoriel d'utilisation en VBA pour manipuler les PDF entre eux si possible).

    Merci d'avance pour les réponses.

    Cordialement,

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 443
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 443
    Par défaut
    Bonjour.

    Je n'ai pas de solution pour tes PDF mais as-tu envisagé de faire ta fusion en amont dans un rapport Access puis de l'exporter en PDF ?

    Personnellenent je suis intervenu sur des rapports Access assez complexes montés comme suit :

    Rapport principal (coquille vide servant uniquement de contenant)

    Sous-Rapport 1
    Saut de page

    Sous-Rapport 2
    Saut de page

    Sous-Rapport 3

    Et pour éviter d'avoir des problèmes de longueur de page (un rapport ne peut pas avoir une page de plus de 50cm de hauteur environ) définir les sous-rapports de hauteur 1 ou 2cm.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  3. #3
    Membre Expert Avatar de Gado2600
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Mai 2013
    Messages
    909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Office VBA

    Informations forums :
    Inscription : Mai 2013
    Messages : 909
    Par défaut
    Bonjour,

    Merci pour ta réponse et oui, j'ai pensé à cette éventualité de ne faire qu'un seul export mais j'ai une contrainte particulière du client, qui est de générer une certaine page en fonction d'une condition de la mission. Ce qui fait que mes formats ne sont pas forcément les mêmes.
    J'aurais pu tout mettre dans un seul et préparer une requête qui contourne cette règle mais le second problème est que, si j'exporte toutes les données de l'état, cela représente, en moyenne, 40 pages. Là, c'est Access qui ne supporte pas, vu que pour exporter un état, avec les bonnes données, il faut au moins l'ouvrir derrière.

    Cordialement,

  4. #4
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 163
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    Ghostscript permet de fusionner des PDF. L'usage est très simple puisque c'est en ligne de commande :

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=final.pdf fichier1.pdf fichier2.pdf fichier3.pdf
    Argy
    Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

    Ils comptent sur vous...
    Eux aussi...
    Web Site
    Tutoriels : Déployez vos applications Access 2010 à 2019 */* Réalisez un Assistant de présaisie...
    MDB Viewer : Visionneuse Access v4.0

  5. #5
    Membre Expert Avatar de Gado2600
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Mai 2013
    Messages
    909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Office VBA

    Informations forums :
    Inscription : Mai 2013
    Messages : 909
    Par défaut
    Bonjour,

    Merci pour la réponse.
    Je viens de l'essayer et j'ai mis ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Shell "C:\Program Files (x86)\gs\gs8.61\bin\gswin32c.exe -dBATCH -dNOPAUSE -dQUIET -sDEVICE=pdfwrite -sOutputFile=""C:\Final.pdf"" ""C:\1.pdf""" ""C:\2.pdf"" ""C:\3.pdf"""
    J'ai fouillé un peu sur le net et je ne sais pas à quoi correspondent toutes ces options (-dBATCH, -dNOPAUSE...)

    De plus, je ne sais pas si c'est une erreur de mon côté ou non, mais il ne fusionne pas les PDF entre eux et j'ai 2 bizarreries qui surviennent selon la configuration des fichiers pris pour cible :
    • Il créé un fichier Final.pdf avec seulement une image dedans (qui vient de 1.pdf)
    • Il prend l'intégralité de 2.pdf et me signale une erreur sur le format de la police utilisée lorsque j'arrive sur la page concernée (il ne semble pas supporté les "é")


    Pourrais-tu me fournir un peu plus d'explications dessus, stp ?

    Cordialement,

  6. #6
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 163
    Billets dans le blog
    5
    Par défaut
    Bien en fait, la syntaxe est certes un peu abscons mais tu as omis des guillemets d'une part (sur l'exe) et tu en as ajouté en trop d'autre part...

    Si tu affectes ta chaîne à une variable, tu as une erreur de syntaxe :
    Code Erreur : Sélectionner tout - Visualiser dans une fenêtre à part
    myCmd= "C:\Program Files (x86)\gs\gs8.61\bin\gswin32c.exe -dBATCH -dNOPAUSE -dQUIET -sDEVICE=pdfwrite -sOutputFile=""C:\Final.pdf"" ""C:\1.pdf""" ""C:\2.pdf"" ""C:\3.pdf"""
    Elle aurait du être :
    Code Syntaxe correcte : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    myCmd = Chr(34) & "C:\Program Files (x86)\gs\gs8.61\bin\gswin32c.exe" & Chr(34) & " -dBATCH -dNOPAUSE -dQUIET -sDEVICE=pdfwrite -sOutputFile=C:\Final.pdf C:\1.pdf C:\2.pdf C:\3.pdf"

    Voici un exemple opérationel :
    Code Exemple opérationel : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    Private Sub TestGhostScript()
    '---------------------------------------------------------------------------
    ' Procedure     : TestGhostScript
    ' DateTime      : 27/05/2015
    ' Author        : Jean-Philippe AMBROSINO
    ' Purpose       : Demo Ghostscript
    '...........................................................................
    ' Parameters    : None
     
    ' Return Codes  : None
    '...........................................................................
    ' Notes         :
    '---------------------------------------------------------------------------
    Const CMD_PGR                                          As String = "C:\Program Files (x86)\gs\Ghostscript\bin\gswin32.exe"
    Const CMD_PARAM                                        As String = " -dNOPAUSE -sDEVICE=pdfwrite -sOUTPUTFILE="
    Const PDF_OUTPUT_FILES                                 As String = "Z:\MyDocuments\Trash\TestPDF\Final.pdf "
    Const PDF_INPUT_FILES                                  As String = "-dBATCH Z:\MyDocuments\Trash\TestPDF\1.pdf Z:\MyDocuments\Trash\TestPDF\2.pdf Z:\MyDocuments\Trash\TestPDF\3.pdf"
     
    Dim dblSuccess                                         As Double
    Dim strCommand                                         As String
     
        strCommand = Chr(34) & CMD_PGR & Chr(34) & CMD_PARAM & PDF_OUTPUT_FILES & PDF_INPUT_FILES
        dblSuccess = Shell(strCommand, 1)
        If dblSuccess Then
            Shell "EXPLORER /select," & PDF_OUTPUT_FILES, 1
        Else
            MsgBox "Erreur #& " & dblSuccess
        End If
    End Sub

    Argy
    Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

    Ils comptent sur vous...
    Eux aussi...
    Web Site
    Tutoriels : Déployez vos applications Access 2010 à 2019 */* Réalisez un Assistant de présaisie...
    MDB Viewer : Visionneuse Access v4.0

Discussions similaires

  1. Exporter un état en fichier pdf sous access 2010
    Par titi_la_vermine dans le forum VBA Access
    Réponses: 0
    Dernier message: 25/08/2010, 16h30
  2. Export pdf sous ACCESS 2000
    Par _Drama dans le forum Access
    Réponses: 2
    Dernier message: 22/02/2010, 14h27
  3. Tutoriel Export PDF et Access 97
    Par JeremieT dans le forum Access
    Réponses: 7
    Dernier message: 22/05/2008, 13h29
  4. Runtime Access 2003 Exporter
    Par papatte62360 dans le forum Runtime
    Réponses: 2
    Dernier message: 23/11/2006, 11h28
  5. Export d'état Access sous forme de PDF
    Par rapace dans le forum Access
    Réponses: 13
    Dernier message: 31/08/2006, 10h07

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