{"id":4361,"date":"2017-08-21T14:38:01","date_gmt":"2017-08-21T14:38:01","guid":{"rendered":"https:\/\/answers.gurussolutions.com\/answers\/comment-afficher-ladresse-de-livraison-dune-commande-client-netsuite-avec-des-sauts-de-ligne-dans-les-modeles-pdf-html-avances\/"},"modified":"2026-07-28T18:26:41","modified_gmt":"2026-07-28T18:26:41","slug":"comment-afficher-ladresse-de-livraison-dune-commande-client-netsuite-avec-des-sauts-de-ligne-dans-les-modeles-pdf-html-avances","status":"publish","type":"qa_entry","link":"https:\/\/answers.gurussolutions.com\/fr\/answers\/comment-afficher-ladresse-de-livraison-dune-commande-client-netsuite-avec-des-sauts-de-ligne-dans-les-modeles-pdf-html-avances\/","title":{"rendered":"Comment afficher l&rsquo;adresse de livraison d&rsquo;une commande client NetSuite avec des sauts de ligne dans les mod\u00e8les PDF\/HTML avanc\u00e9s ?"},"content":{"rendered":"","protected":false},"template":"","meta":{"_kad_blocks_custom_css":"","_kad_blocks_head_custom_js":"","_kad_blocks_body_custom_js":"","_kad_blocks_footer_custom_js":"","_kadence_starter_templates_imported_post":false,"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","ga_subtitle":"Apprenez \u00e0 extraire et \u00e0 afficher correctement les adresses de livraison sur plusieurs lignes \u00e0 partir des commandes client NetSuite, en veillant \u00e0 respecter la mise en forme appropri\u00e9e dans les documents PDF personnalis\u00e9s.","ga_short_answer":"Pour afficher l'adresse de livraison d'une commande client NetSuite avec des sauts de ligne dans un mod\u00e8le PDF\/HTML avanc\u00e9, r\u00e9cup\u00e9rez la valeur du champ `shipaddress`. Remplacez ensuite les caract\u00e8res de nouvelle ligne (`n`) par des balises de saut de ligne HTML (`<br\/>`) \u00e0 l\u2019aide de JavaScript. Enfin, assurez-vous que la sortie n\u2019est pas \u00e9chapp\u00e9e dans votre mod\u00e8le FreeMarker en utilisant `?no_esc` afin d\u2019afficher correctement les balises HTML.","ga_scenario":"Les utilisateurs qui cr\u00e9ent des mod\u00e8les PDF\/HTML avanc\u00e9s personnalis\u00e9s pour les commandes client NetSuite rencontrent souvent des probl\u00e8mes lorsque l\u2019adresse de livraison, qui comporte plusieurs lignes, ne s\u2019affiche pas avec les sauts de ligne appropri\u00e9s. L\u2019affichage par d\u00e9faut peut regrouper l\u2019adresse sur une seule ligne, ce qui la rend difficile \u00e0 lire et donne une impression peu professionnelle.","ga_solution":"Pour afficher correctement l\u2019adresse de livraison avec des sauts de ligne dans un mod\u00e8le PDF\/HTML avanc\u00e9 de NetSuite, proc\u00e9dez comme suit : 1.  **R\u00e9cup\u00e9ration de l\u2019adresse de livraison :** lorsque vous travaillez avec un enregistrement de commande client charg\u00e9 (par exemple, dans un contexte SuiteScript), r\u00e9cup\u00e9rez la valeur du champ `shipaddress`. Ce champ contient intrins\u00e8quement l\u2019adresse format\u00e9e avec des sauts de ligne.\n\n```\njavascriptvar address = record.getValue({ fieldId: 'shipaddress' });\n```\n\n*Remarque : `record` fait r\u00e9f\u00e9rence \u00e0 l\u2019objet \u00ab enregistrement de commande client \u00bb charg\u00e9 dans SuiteScript 2.x et versions ult\u00e9rieures.*2.  **Convertir les caract\u00e8res de nouvelle ligne en balises de saut de ligne HTML :** Pour vous assurer que les sauts de ligne s\u2019affichent correctement au format HTML dans votre PDF, remplacez les caract\u00e8res de nouvelle ligne (`n`) par des balises HTML `<br\/>`.\n\n```\njavascriptaddress = address.replace(\/n\/g, '<br\/>');\n```\n\n3.  **Affichage dans un mod\u00e8le PDF\/HTML avanc\u00e9 :** Lorsque vous int\u00e9grez la variable `address` dans votre mod\u00e8le PDF\/HTML avanc\u00e9 (qui utilise FreeMarker), il est essentiel d\u2019emp\u00eacher l\u2019\u00e9chappement automatique des balises HTML `<br\/>`. Utilisez la fonction int\u00e9gr\u00e9e `?no_esc` pour garantir une interpr\u00e9tation correcte du code HTML.\n\n```\nhtml${address?no_esc}\n```\n\nCela garantira que les balises `<br\/>` seront rendues sous forme de sauts de ligne r\u00e9els dans le PDF g\u00e9n\u00e9r\u00e9.","ga_source_author":"","ga_source_author_email":"","ga_date_original":"2017-08-21T16:38:01+02:00","ga_date_verified":"2026-07-05","ga_source_subject":"Like to pull address field from SO with line breaks or html tags","ga_ans_id":"ANS-0702","ga_publish_decision":"publish_with_edits","ga_staleness_risk":"high","ga_review_priority":"verify_first","ga_tier2_verdict":"partially_outdated","ga_tier2_concerns":"The function `salesorder.getFieldValue()` is a SuiteScript 1.0 function. While still functional in some contexts, the current best practice in NetSuite's SuiteScript 2.x (and later) is to use `record.getValue()`.; While the JavaScript `address.replace(\/n\/g, '<br\/>')` correctly converts newline characters to HTML break tags, when rendering this in NetSuite's Advanced PDF\/HTML Templates (which use FreeMarker), the output might be auto-escaped, causing `<br\/>` to appear as literal text instead of a line break. To ensure the `<br\/>` tags are interpreted as HTML, the FreeMarker template often requires the use of the `?no_esc` built-in or a similar unescaping mechanism.","ga_final_category":"Printing, PDF & Email Templates","footnotes":""},"ga_category":[95,19,95],"ga_audience":[10],"ga_difficulty":[92],"class_list":["post-4361","qa_entry","type-qa_entry","status-publish","hentry","ga_category-impression-pdf-et-modeles-de-mails","ga_category-printing-pdf-email-templates","ga_audience-developer-suitescript","ga_difficulty-niveau-intermediaire"],"taxonomy_info":{"ga_category":[{"value":95,"label":"Impression, PDF et mod\u00e8les d\u2019e-mails"},{"value":19,"label":"Printing, PDF & Email Templates"},{"value":95,"label":"Impression, PDF et mod\u00e8les d\u2019e-mails"}],"ga_audience":[{"value":10,"label":"Developer\/SuiteScript"}],"ga_difficulty":[{"value":92,"label":"Niveau interm\u00e9diaire"}]},"featured_image_src_large":[],"author_info":[],"comment_info":"","_links":{"self":[{"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/qa_entry\/4361","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/qa_entry"}],"about":[{"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/types\/qa_entry"}],"version-history":[{"count":1,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/qa_entry\/4361\/revisions"}],"predecessor-version":[{"id":6282,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/qa_entry\/4361\/revisions\/6282"}],"wp:attachment":[{"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/media?parent=4361"}],"wp:term":[{"taxonomy":"ga_category","embeddable":true,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/ga_category?post=4361"},{"taxonomy":"ga_audience","embeddable":true,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/ga_audience?post=4361"},{"taxonomy":"ga_difficulty","embeddable":true,"href":"https:\/\/answers.gurussolutions.com\/fr\/wp-json\/wp\/v2\/ga_difficulty?post=4361"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}