Images affichées avec des champs formule dans Salesforce

Images affichées avec des champs formule dans Salesforce

Images affichées avec des champs formule dans Salesforce

L’utilisation d’images s’avère parfois plus efficace qu’un simple champ pour mettre en avant une donnée auprès d’un utilisateur.

C’est ainsi qu’en fonction de la valeur d’un champ, une image différente peut être affichée comme un drapeau d’une certaine couleur (par exemple rouge / orange / vert) en fonction de la gravité d’un incident (forte / moyenne / faible) ou bien un nombre d’étoiles affichées en fonction d’une note.

Nous allons nous pencher sur le cas d’une opportunité sur laquelle on souhaite associer une image affichant un ou plusieurs symboles monétaires € en fonction du montant de celle-ci. Les seuils utilisés seront les suivants :

  • montant non renseigné, ne rien afficher
  • 0 à 1000 €, afficher 1 symbole
  • 1001 à 10000 €, afficher 2 symboles
  • Au dela de 10000 €, afficher 3 symboles

Ceci va nécessiter de créer un champ formule dans lequel va être appelée la fonction Image.

Stockage de l’image

Avant de créer le champ formule, il faut au préalable disposer de l’image (au format 16 x 16 pixels, à créer ou récupérer sur internet) et la stocker dans Salesforce, soit au niveau de l’onglet Documents, soit en tant que ressource statique.
Selon la méthode employée, l’appel via la fonction Image se fera différemment.

Pour le cas d’un stockage dans l’onglet Documents :

  1. Créer un répertoire accessible par tous les utilisateurs en lecture seule (Onglet Documents | Créer un nouveau dossier)
création répertoire

2. Dans ce nouveau répertoire, uploader l’image, en cliquant sur le bouton Nouveau document et renseigner l’écran qui s’affiche comme suit :

telecharger image

3. Après avoir cliqué sur Enregistrer, l’écran ci-dessous apparaît. Noter l’Id (de l’image) qui est visible dans la barre d’adresse du navigateur Internet. Cette information va être utile par la suite. Ici, l’Id vaut 01520000002Mhvj.

récupérer id

Dans le cas d’un stockage en tant que ressource statique :

  1. Créer tout d’abord une ressource statique depuis Configuration | Développer | Ressource statique | Nouveau  :
ressource statique

2. Une fois les données saisies, sur l’écran qui apparaît suite à l’enregistrement, cliquer sur l’hyperlien Afficher le fichier. Une nouvelle page s’ouvre, depuis laquelle il faut récupérer les informations affichées dans l’URL, en l’occurrence dans notre cas : /resource/1407440639000/DeviseEuro (utilisé en tant que 1er paramètre de la fonction Image)

récupération données

Création d’un champ formule

Créer un champ formule (depuis le menu Configuration | Personnaliser | Opportunité | Champ) avec un type de renvoi de la formule = Texte
Saisir le code suivant dans l’éditeur de formule :

IF( ExpectedRevenue > 0, IMAGE("/servlet/servlet.FileDownload ?file=01520000002Mhvj", "€", 16, 16),"")
&
IF( ExpectedRevenue > 1000, IMAGE("/servlet/servlet.FileDownload ?file=01520000002Mhvj", "€", 16, 16),"")
&
IF( ExpectedRevenue > 10000, IMAGE("/servlet/servlet.FileDownload ?file=01520000002Mhvj", "€", 16, 16),"")

éditeur formule

Une fois le champ créé, il peut être rajouté sur la présentation d’une opportunité ainsi que sur les différentes vues affichant des opportunités (en mode liste), ce qui donne le rendu suivant :

résultat liste

Dans le cas d’un stockage de l’image en tant que ressource statique, le 1er paramètre de la fonction image aurait du être remplacé ainsi :

IF( ExpectedRevenue > 0, IMAGE("/resource/1407440639000/DeviseEuro", "€", 16, 16),"")
&
IF( ExpectedRevenue > 1000, IMAGE("/resource/1407440639000/DeviseEuro", "€", 16, 16),"")
&
IF( ExpectedRevenue > 10000, IMAGE("/resource/1407440639000/DeviseEuro", "€", 16, 16),"")

Explications sur la formule Image

La fonction Image fait appel à 4 paramètres. Le 1er correspond à l’adresse de l’image / de la ressource.
Le 2e contient le texte de remplacement en cas de problème d’affichage de l’image et les 2 derniers arguments correspondent à la largeur et la hauteur de l’image en pixels.
Le code ci-dessus emploie le caractère & qui sert d’opérateur de concaténation (ici, jusque 3 images qui se succèdent).

A noter que Salesforce héberge un échantillon d’images utilisables directement. Des exemples sont cités dans l’aide en ligne :
Aide en ligne Salesforce

Par ailleurs, l’Appexchange propose des packages contenant des images utilisables dans des formules :
AppExchange Salesforce