
Ajouter des images au Template Word
Étiquetté : MigrationPP
Ajouter des images au Template Word
Posté par Zliga Oumaima sur 31 mai 2023 à 15h27Bonjour,
J’ai un projet où je dois générer un rapport avec plusieurs photo (avant et après intervention).
j’ai les Images comme pièce joint dans les lignes d’une liste SharePoint, chaque ligne avec 2 images.
J’ai crée un Template Word avec Control Picture , ca marche bien pour une photo, par contre lorsque j’ai fait un tableau avec répétition ca marche pas .
Et vue que je ne sais pas le nombre de photo que je dois intégrer dans le Word, je dois avoir un control générique (Tableau) qui s’adapte pour N images, mais je n’arrive pas a trouver une solution.
Example :
Je dois générer un rapport où je dois traiter 15 lignes de ma liste SharePoint (30 images).
Je dois générer un rapport où je dois traiter 5 lignes de ma liste SharePoint (10 images).
Si vous avez une proposition a me faire s’il vous plait pour résoudre se type de demande.
Merci
Cordialement,
PostID=m6ZW59Be9byujA4
R3dKap a répondu Il y a 1 année, 3 mois 1 Membre · 15 Réponses- 15 Réponses
Zliga Oumaima, c’est justement pour ça que j’utilise rarement les templates Word. Je ne fais quasiment plus que du PDF à partir d’HTML où c’est ultra plus simple d’y coller des images (et quasiment faire tout ce que tu veux -> sauf les sauts de page qui sont pas gérés et ça c’est un peu dommage).
Le problème c’est que, de mémoire lointaine, les blocs répétitifs dans Word n’acceptent pas les images.
Mais peut-être DavidZed me contredira ou aura une autre piste… 😉
CommentID=mvnr7LH4q15AOwo, PostID=m6ZW59Be9byujA4
Je te rejoins totalement là dessus 😀 👍
Pour un projet avec un envoi de rapports de maintenance, j’avais procédé ainsi, ça avait été même assez simple à faire au final alors qu’à l’époque je n’avais que de très vagues notions d’HTML.
Si je me rappelle bien, j’avais construit mon tableau sur une variable de type string en trois étapes car j’avais un format de tableau assez spécial :
Définition : style css, headers du tableau
Dans un for each, pour chaque ligne à ajouter au tableau, un append to string variable avec les balises de ligne
Après le For each, un dernier append to string variable pour fermer les balises
SubCommentID=lN4mmqdZYlNUtXy, CommentID=mvnr7LH4q15AOwo, PostID=m6ZW59Be9byujA4
Mon rapport contient plusieurs pages, j’ai choisi de travaillé avec un Template Word car j’ai une mise en page (Des paragraphes /logos …) si le Template Word ne marche pas je peux essayer autre solution
CommentID=ewr97bMEygmEd1i, PostID=m6ZW59Be9byujA4
Regarde tout ce qu’on peut faire avec du HTML->PDF 😃
C’est quelque chose comme ça que tu voudrais ?
CommentID=oEJHWRuWAqZWWKo, PostID=m6ZW59Be9byujA4
Oui Sauf moi j’ai plusieurs pages , si HTML ->Word gère saut de ligne de peut faire un word au lieu de PDF
CommentID=JdQL7Qk62sGzf0u, PostID=m6ZW59Be9byujA4
Non justement :
HTML -> PDF ne gère pas les sauts de page
WORD -> PDF gère les sauts de page (forcément, c’est du Word 😉)
Par contre HTML -> je sais pas si ça existe… 😅
Quoiqu’il arrive, l’injection de données répétitives dans Word est galère, mais beaucoup plus simple avec l’HTML.
C’est un choix cornélien… 😉
CommentID=lAkfmYB74ZVbLKw, PostID=m6ZW59Be9byujA4
D’accord
Je dois créer un fichier HTML et le convertir au PDF, si oui avec quelle action je peux faire la conversion ?
CommentID=vvyWATwQfOYEdvM, PostID=m6ZW59Be9byujA4
il faut “rédiger” le code HTML de ton fichier dans ton flux, soit en construisant ce code “au fil de l’eau” dans une variable chaîne de caractères, soit en utilisant l’action créer un tableau html.
Pour la conversion en PDF, une fois ton code html construit, il faudra créer le fichier html et le convertir en pdf, ce sont deux actions avec le connecteur OneDrive. un exemple ici : reate A PDF File From HTML [No Premium] (zeitgeistcode.com)
Si tu débutes avec le html, je te conseille d’utiliser un générateur de table, qui va te générer le code CSS facilement Generator (quackit.com)
CommentID=5sFadhUnmDEAHPv, PostID=m6ZW59Be9byujA4
Zliga Oumaima avant de te lancer soit sûre que les destinataires de ton PDF vont accepter le fait qu’aux sauts de page tu pourras avoir du texte coupé au milieu (c’est à dire que la moitié supérieure des lettres de ta phrase sera à la fin d’une page et l’autre moitié inférieure sur le début de la page suivante) et que tes images pourront être coupées en plein milieu. Quand je dis qu’il n’y a aucune gestion des sauts de page c’est pas juste qu’il fait sauter les trucs à la page suivante, c’est qu’il coupe en plein milieu.
Maintenant si tu veux un PDF plus pro et plus propre, il y a des connecteurs payants (et si tu génères pas beaucoup de PDF c’est vraiment pas très cher) qui te permettent de gérer proprement les sauts de page.
Voilou… 😉
CommentID=eNwEtZW9gvOXjj9, PostID=m6ZW59Be9byujA4
Merci pour vos réponse
Je suis débutante dans HTML mais je vais essayer de générer le Rapport avec HTML.
Les destinataires veulent un fichier Word car il doivent ajouter des choses manuellement, c’est possible que je convertit le PDF à Word après ?
CommentID=ohySEL7IhLvpFT9, PostID=m6ZW59Be9byujA4
Pas sur la Power Platform à mon avis… Si tes destinataires doivent rajouter des choses, alors il vaut mieux rester sur du Word…
Mais les destinataires sont des personnes de la même entreprise ? Ils ne peuvent pas avoir accès à l’application pour faire leurs saisies plutôt dans l’application ?
CommentID=S6ceUQlUHaWdaI1, PostID=m6ZW59Be9byujA4
Nous avons des techniciens qui font des interventions dans des différentes chantiers, et à chaque fois ils prennent beaucoup de photos (Avant/Après) pour plusieurs équipements et les mettre dans un drop box.
Et à l’assistance de trier les photos et les mettre dans un rapport pour l’envoyer au client, et cette action prend beaucoup de temps pour elle.
Le rapport contient ( des infos du chantier, table de matière ,cadre de l’opération, prestations, …. , un tableau avec les phots pour chaque équipement ) donc j’ai beaucoup de pages dans le rapport.
Donc l’idée est mettre un application mobile pour les techniciens pour insérer les photos, et a fin de l’intervention en génère le document de synthèse.
et à l’assistante de mettre des infos comme : nbre de technicien, les prestas … (on peux mettre ces informations dans l’application si c’est une solution )
Mes idées :
Si je fait tous le rapport en HTML (même si je sais pas comment faire table de matière et haut et bas de la page ) et je le converti en PDF je vais avoir toujours le problème de saut de page.
Je ne peux pas faire populate Word car il gère pas la répétition d’images .
Je ne peux pas convertir PDF a Word, plutôt nous avons pas un connecteur gratuit.
Donc maintenant je sais plus comment je peux faire pour trouver une solution qui répond au besoin
CommentID=UJxtUYhc3quOWjr, PostID=m6ZW59Be9byujA4
Zliga Oumaima merci pour le détail du besoin, ça peut nous aider à envisager une autre solution.
Oui tu es confrontée aux limitations techniques imposées par les connecteurs gratuits : pas d’entête et de pied-de-page ni de sauts de page en HTML->PDF ; pas d’images dynamiques dans des templates Word (ça ça reste peut-être à vérifier, parce-que c’est un lointain souvenir et que ça a peut-être évolué depuis). Bon, je viens de regarder vite fait… Tiens voici par ex. un post de 2021 qui confirme :
Et voici un autre article qui décrit le problème avec le Word et qui détaille toutes les solutions possible et qui finit par dire qu’il faut utiliser un connecteur payant (Encodian) pour avoir un truc propre :
Sachant qu’en plus ATTENTION, le convertisseur gratuit HTML->PDF de OneDrive Business ne supporte pas la conversion de contenu HTML supérieur à (seulement 😌) 2MO. Or vu que tu vas avoir pleins de photos, de toutes façons ça ne pouvais pas fonctionner pour toi.
Si tu as vraiment besoin de produire un PDF avec les photos, tu n’as pas d’autre choix que de prendre un connecteur payant.
Ceci dit, si c’était moi j’essaierais de régler le problème à la source, c’est-à-dire : est-ce que plutôt que de produire un PDF on ne proposerait pas aux utilisateurs de consulter le rapport de visite directement dans l’application ?
En gros, l’idée serait :
les techniciens utilisent l’application sur les chantiers pour constituer leurs rapports et prendre des photos qui seraient stockées dans SharePoint
l’assistante intervient sur le rapport dans l’application pour choisir les bonnes photos et éliminer les autres et saisir les informations complémentaires
l’assistante (ou autre ?) valide/clôture le rapport pour que d’autres utilisateurs puissent le consulter directement dans l’application
Avec quelques rôles d’autorisation/de sécurité tu gères les différents accès et ce que chacun a le droit de faire dans l’application. Plus de PDF.
Et si jamais ils veulent vraiment produire un PDF derrière, alors il faudra prendre une licence Encodian.
Voilou…
CommentID=1uozq2ZfF0mgzAd, PostID=m6ZW59Be9byujA4
Merci pour ta réponse détaillée.
Dans l’application le rapport sera sous forme de quoi ? juste formulaire/ galerie ou un document ?
Je dois générer un rapport Word ou PDF pour l’envoyer au Client Final qui n’est pas dans l’entreprise.
Donc il me reste la seule solution est de prendre la licence Encodian.
Si je prend Encodian, je dois créer le rapport en HTML ? ce connecteur gère saut de page dans pdf ?
CommentID=E9HkzZ6Mqbfkmz7, PostID=m6ZW59Be9byujA4
Oui l’idée c’était d’afficher le “rapport” directement dans l’app avec formulaire en mode visu et galerie. Mais si tu dois envoyer un rapport à un client externe à l’entreprise, alors pas le choix : faut prendre Encodian.
Et si tu prends Encodian, tu as le choix : ils offrent pleins de possibilités, soit HTML soit Word. A vérifier sur leur site les possibilités étendues de leurs connecteurs :
Voilà par exemple les fonctionnalités qui pourraient répondre à ton cas de figure :
Et évidemment, pleins de conversions possibles, à toi de choisir :
Pensez juste à faire une estimation du coût en fonction du nombre de rapport, de photos, de conversions, etc. car il me semble qu’ils facturent au nombre d’appels de leurs action dans leur connecteur.
CommentID=ORwkJH6ZSczcC6U, PostID=m6ZW59Be9byujA4
Connectez-vous pour répondre.