2017-08-09 3 views
1

J'essaye de créer un modèle PDF/HTML avancé qui affichera une image en utilisant une URL qui se trouve dans un champ personnalisé. Le champ personnalisé est un lien hypertexte et l'ID de champ est {custitem_dp_image1}. J'utilise la balise d'image et faisant référence à la {custitem_dp_image1} champ comme src mais je ne peux pas enregistrer le modèle en raison de l'erreur suivante:NetSuite Advanced PDF/HTML - Affichage des images avec l'URL du champ personnalisé

java.lang.StringIndexOutOfBoundsException: String index out of range: 0 java.lang.InternalError: java.lang.StringIndexOutOfBoundsException: String index out of range: 0

J'ai aussi essayé le code suivant:

<#if result.custitem_dp_image1?length != 0><img src="${result.custitem_dp_image1}" style="width: 100px; height: 100px;" /> </#if> 

Mais j'ai reçu l'erreur suivante lorsque j'ai essayé de voir le modèle PDF/HTML avancée d'une recherche enregistrée:

The template cannot be saved due to the following errors: org.xml.sax.SAXParseException; lineNumber: 53; columnNumber: 28; The value of attribute "src" associated with an element type "img" must not contain the '<' character.

*The template was stored as invalid.

Comment puis-je obtenir ce travail et afficher l'image?

Répondre

1

La solution est de changer le champ personnalisé type = texte libre et utiliser le code freemarker suivant:

<#if result.custitem_dp_image1?length != 0><img src="${result.custitem_dp_image1}" style="width: 100px; height: 100px;" /> </#if> 
0

Au lieu de lien hypertexte, utilisez le type de données image pour votre champ personnalisé.

+0

Malheureusement, cela ne fonctionnera pas parce que les images sont d'une autre ressource en dehors de NetSuite. Les images ne sont pas hébergées sur notre compte NetSuite. Nous utilisons simplement ce champ pour insérer l'URL de l'image. –

+0

Dans ce cas, vous pouvez utiliser du texte libre et y mettre l'URL. –