Vous trouverez ci-après des exemples d’expressions de rapport concernant des questions de type image et pièce jointe.
Pour les questions image, il est possible de définir des tailles pour garantir une taille cohérente des images dans vos rapports. Le format pour ces expressions est le suivant :
${image1 | size:width:height:max_width:max_height}
Les valeurs de largeur et de hauteur contrôlent la taille définie pour l’image, mesurée en pixels. Même si ces valeurs sont obligatoires pour l’expression, le fait de renseigner une valeur de 0 n’applique aucune restriction à cette dimension de l’image. Par exemple, l’expression suivante établit la largeur d’une image à 300 pixels tout en préservant les proportions de l’image :
${image1 | size:300:0}
Les valeurs de largeur et de hauteur maximales limitent la taille maximale d’une image et sont des valeurs facultatives. L’exemple suivant règle la largeur d’une image à 300 pixels, et en limite la hauteur à 200 pixels au maximum :
${image1 | size:300:0:0:200}
L’exemple ci-dessous fait appel à la méthode rotate pour définir la rotation dans le sens horaire de l’image. Il accepte des valeurs comprises entre 0 et 360.
${image1 | size:300:0:0:200 | rotate:90}
Les questions image peuvent également comporter des détails d’images extraits et affichés dans une réponse d’enquête. Ceci peut être utilisé pour afficher le nom et la taille de fichier de l’image comme suit :
${image1 | getValue:"name"}
${image1 | getValue:"size"}
${image1 | getValue:"width"}
${image1 | getValue:"height"}
La même méthode permet d’afficher les données EXIF de l’image, avec les détails indiquant où et quand une photo a été prise comme suit :
${image1 | getValue:"x"}
${image1 | getValue:"y"}
${image1 | getValue:"date"}
${image1 | getValue:"time"}
${image1 | getValue:"direction"}
Pour afficher l’image d’origine à sa taille et sa qualité réelle, utilisez l’expression sans aucune méthode ou l’expression getValue sans aucune valeur comme suit :
${image1} ou ${image1 | getValue:""}
L’exemple suivant présente l’image d’origine à sa qualité réelle mais à une taille définie en utilisant les expressions getValue et size ensemble :
${image1 | getValue:"" | size:300:0}
Remarque :
Si vous définissez la taille d’une image tout en utilisant un autre paramètre d’expression, size doit être placé en dernière position dans l’expression.
Les dates et heures sont stockées sous forme de chaînes dans les données EXIF, ces valeurs ne peuvent donc pas être présentées dans un rapport à l’aide de l’expression format pour les questions de date et heure. Si la définition du format de ces valeurs est important, vous pouvez procéder à une extraction EXIF dans le cadre de l’enquête à l’aide de la fonction pulldata("@exif"). Pour plus d’informations, reportez-vous à la rubrique Images.
Les expressions getValue ci-dessus permettent également d’extraire des données de n’importe quelle propriété valide dans tout type de pièce jointe, notamment les résultats de questions de type image, audio et fichier. Les propriétés pouvant être extraites de n’importe quelle pièce jointe sont les suivantes :
${file1 | getValue:"name"}
${file1 | getValue:"size"}
${file1 | getValue:"globalId"}
${file1 | getValue:"id"}
${file1 | getValue:"contentType"}
${file1 | getValue:"keywords"}
Pour afficher une image en ligne, indiquez son URL source avec l’expression src lorsque vous faites référence au mot-clé $image au lieu d’un nom de question :
${$image |
src:"https://upload.wikimedia.org/wikipedia/commons/1/13/Esri_Headquarters%2C_Building_Q.jpg"
| size:400:0}
Pour renvoyer plusieurs images transmises pour la même question dans une réponse, utilisez les emplacements réservés suivants, en plaçant chacun d’entre eux sur une ligne dédiée :
${#image1}
${$file}
${/}
Le mot-clé $attachment permet d’itérer toutes les pièces jointes à l’entité actuelle :
${#attachment}
${$file}
${/}
Cette méthode permet d’afficher des images dans les versions ArcGIS Enterprise antérieures à 10.8.1. Elle permet également d’afficher des images qui ont été ajoutées à une entité en dehors de Survey123 dans lesquelles les pièces jointes ne comportent aucune valeur pour la propriété keywords. L’exemple suivant affiche les noms de fichier de toutes les pièces jointes d’une entité :
${#$attachment}
${$file|getValue:"name"}
${/}
Pour afficher des pièces jointes particulières, incluez la méthode attachmentsDefExp afin d’identifier la pièce jointe :
${#image1 | attachmentsDefExp:"DATA_SIZE > "+1*1024*1024}...${$file}...${/}
${#$attachment | attachmentsDefExp:"Keywords = 'image1'"}...${$file}...${/}
${#$attachment | attachmentsDefExp:"CONTENT_TYPE like '%image%'"}...${$file}...${/}
Remarque :
La méthode attachmentsDefExp se comporte de la même façon que la propriété Query attachmentsattachmentsDefinitionExpression. Examinez l’objet attachmentProperties dans le code JSON de la couche pour voir les champs qu’il est possible d’utiliser dans la requête portant sur les pièces jointes.Vous avez un commentaire à formuler concernant cette rubrique ?