PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV Mobile 2024 → Procédure pour faire un PDF
Procédure pour faire un PDF
Débuté par Stéphane D., 03 jan. 2020 15:46 - 7 réponses
Membre enregistré
161 messages
Popularité : -1 (1 vote)
Posté le 03 janvier 2020 - 15:46
Bonjour à tous,
Je recherche la méthode pour faire un pdf sous Windev mobile.

J'utilise un Webservice pour créer une commande sur une tablette. Lorsqu'il valide cela envoi la commande sur le serveur (En passant par le webservice).

Si quelqu'un pouvez m'orienter sur la démarche à suivre pour générer un pdf afin qu'il puisse le récupérer.

Merci d'avance pour votre aide.

--
Stéphane.
Membre enregistré
473 messages
Popularité : +20 (20 votes)
Posté le 03 janvier 2020 - 16:30
Avec la version 24 il est déjà possible générer un etat en pdf directement dans WM si c'est pour une appli IOS, et ce sera le cas aussi pour Android en 25
Autre solution générer le pdf depuis le webservice et soit le renvoyer dans la reponse dans un buffer ou sinon le faire telecharger
Membre enregistré
161 messages
Popularité : -1 (1 vote)
Posté le 03 janvier 2020 - 16:49
Merci Stef1811, je suis en version 21. Comment tu fais pour faire un état dans le Webservice ?
Ce que j'ai fait :
Une procédure global que je nomme gGeneration_PDF(), jusque là c'est normale.
ensuite dans le code de la procédure je mets le code suivant :
stRetour est un StRetourReqSimple

Ouvre(FEN_GENERATION_PDF)

stRetour.sCommentaire = "Fin de procédure"

RENVOYER stRetour

Dans la fenêtre FEN_GENERATION_PDF je créé un champs table avec une colonne et j'ajoute 10 ligne bidons.
Et pour finir j'ajoute ce code :
POUR i=1 A 10
TableAjouteLigne(tbl_commande,i)
FIN

iDestination(iPDF,"C:\Partage_GS\COMMANDE\maCommande.pdf")
iImprimeEtat(Etat_Commande_Test)

Ferme()


Mais cela ne fonctionne pas, donc je pense que je m'y prends mal.
Merci d'avance de ton aide.

--
Stéphane.
Membre enregistré
161 messages
Popularité : -1 (1 vote)
Posté le 04 janvier 2020 - 16:02
Salut à tous,
Toujours besoin d'aide pour ce sujet.
Merci d'avance.

--
Stéphane.
Membre enregistré
3 311 messages
Popularité : +93 (137 votes)
Posté le 05 janvier 2020 - 06:18
Salut Stéphane,
En android il n'y a pas d'état jusqu'a la 25.
De plus tu écris
iDestination(iPDF,"C:\Partage_GS\COMMANDE\maCommande.pdf")
Hors tu es sur mobile et ton chemin n'est valide qu'en mode test.
Donc ton code ne peut fonctionner.
Membre enregistré
161 messages
Popularité : -1 (1 vote)
Posté le 06 janvier 2020 - 11:13
Salut Popoy,
Ma demande s'oriente maintenant vers : Comment faire un état avec un webservice, et le code ci-dessus est le code dans le webservice est non dans le mobile. Je vais donc poster aussi cette demande dans le forum Windev.
Si tu pouvez m'orienter pour faire un état avec un webservice cela serait super.
Merci de ton aide.

--
Stéphane.
Membre enregistré
473 messages
Popularité : +20 (20 votes)
Posté le 06 janvier 2020 - 11:45
Il n'y pas de particularité pour le webservice tu créés l'etat comme pour n'ilmporte quel projet, il faudra simplement l’alimenter avec les données du WS puis l'imprimer en pdf et le renvoyer a l'appli mobile
Membre enregistré
161 messages
Popularité : -1 (1 vote)
Posté le 06 janvier 2020 - 19:16
Merci c'est ok.
J'ai créé un état que je remplis par programmation.
Le truc qui ne fonctionne pas c'est que dans ma procédure global, je faisais appel à la fonction ouvre().
Directement dans la procédure global :
iDestination(iPDF,"C:\Partage_GS\COMMANDE\maCommande.pdf")
iImprimeEtat(Etat_Commande_Test)

et ensuite à l'initialisation de l'état, par programmation, ma requête pour le remplir.

Merci encore pour votre aide.

--
Stéphane.