En bref : Améliorer le widget d'impression standard d'Experience Builder afin que les utilisateurs puissent sélectionner une mise en page portrait ou paysage, dessiner ou ajuster l'étendue de l'impression, saisir un nom de fichier et télécharger le PDF avec ce nom de fichier réel.
J'essaie de créer ce qui semble être un flux de travail d'impression assez simple pour le personnel :
- Choisir une mise en page portrait ou paysage.
- Dessiner ou ajuster la zone spécifique de la carte à imprimer.
- Saisir un nom de fichier significatif, comme un numéro de ticket GSOC.
- Exporter et télécharger le PDF en utilisant ce nom de fichier.
Cependant, les options disponibles semblent se situer à des extrêmes opposés.
L'impression disponible dans Instant Apps est simple et accessible, mais elle ne fournit pas assez de personnalisation pour ce flux de travail. Dans ma version Enterprise, du moins, je ne peux pas sélectionner parmi nos mises en page personnalisées téléchargées. J'ai besoin d'un contrôle plus important sur la mise en page, l'orientation, l'étendue imprimée et d'autres éléments de mise en page.
Experience Builder offre beaucoup plus de flexibilité. Son widget Print prend en charge des mises en page personnalisées, des modèles portrait et paysage, et une étendue visible de la zone d'impression. Cependant, les utilisateurs ne peuvent pas dessiner indépendamment la zone d'impression souhaitée. Ils doivent déplacer et zoomer sur toute la carte ou saisir manuellement une échelle de carte — ce qui n'est pas un flux de travail intuitif pour le personnel ordinaire qui a simplement besoin d'une carte couvrant une zone particulière.
Le titre saisi par l'utilisateur semble également fonctionner principalement comme étiquette du résultat et titre de la carte. Lorsque le résultat est ouvert ou téléchargé, le PDF réel porte un nom de fichier généré par ArcGIS Server tel que :
_ags_[long identifiant aléatoire].pdf
Ce n'est pas pratique lorsque le personnel doit associer une carte exportée à un ticket, une demande ou un projet spécifique.
La solution apparente est de développer un widget Experience Builder personnalisé. Cela nécessite d'associer la bonne Developer Edition à la version Enterprise, d'installer Node.js, de configurer les identifiants OAuth, d'exécuter les environnements de développement client et serveur, de compiler le widget, de l'héberger sur un serveur web, de configurer CORS et les types MIME, et de l'enregistrer dans Portal.
C'est une quantité extraordinaire de développement et d'infrastructure pour une exigence d'impression très ordinaire.
Il semble y avoir un manque important entre :
- l'impression Instant Apps, qui est trop limitée pour des cartes opérationnelles personnalisées ; et
- le développement personnalisé Experience Builder, qui est disproportionnellement compliqué pour un flux PDF basique portrait/paysage.
Le widget Print standard d'Experience Builder pourrait-il offrir des options pour :
- utiliser le titre saisi comme nom réel du fichier téléchargé ;
- sélectionner entre des mises en page portrait et paysage configurées ;
- dessiner, déplacer ou redimensionner une zone représentant l'étendue d'impression souhaitée ; et
- télécharger directement le résultat au lieu d'ouvrir le fichier temporaire
_ags_ du serveur ?
Cela soutiendrait un flux de travail courant dans les administrations locales sans nécessiter un widget personnalisé simplement pour produire un PDF correctement orienté et nommé de manière significative.