Discusiones
Ahora es el momento de pedir a sus amigos y colegas expertos en NetSuite que se unan a la comunidad de soporte de NetSuite. ¡Recomiende ahora! ¡Haga clic aquí por más información!
Actualice su Perfil con su tipo de soporte para obtener la insignia de Tipo de Soporte.
SuiteWorld del 6 al 9 de octubre de 2025: ¡Agenda Builder ya está disponible!
Continúe leyendo para conocer las últimas novedades, incluyendo:
• Lanzamiento de Agenda Builder
• Registro en SuiteWorld On Air
• Nuevo concurso NetSuite Prompt Studio
• ¡Y más!
¡Consulte este hilo para obtener más información!
Continúe leyendo para conocer las últimas novedades, incluyendo:
• Lanzamiento de Agenda Builder
• Registro en SuiteWorld On Air
• Nuevo concurso NetSuite Prompt Studio
• ¡Y más!
¡Consulte este hilo para obtener más información!
Ejemplo de Sintaxis de Suitelet Freemarker
Se aplica a
Producto: NetSuite 2025.2
Escenario
Freemarker permite obtener valores de cualquier registro y transferirlos a una plantilla personalizada. Funciona con ID de campos (se puede encontrar en Record Browser) y tiene su propia sintaxis de Freemarker.
La función de impresión avanzada utiliza la sintaxis de Freemarker y se puede utilizar como ejemplo del aspecto del código. Puede encontrar un ejemplo en Personalización > Formularios > Plantillas PDF avanzadas > Plantilla PDF/HTML de factura estándar > Código fuente.
Solución
- Create Suitelet and Deploy on the needed record
- Input below code and execute
SuiteScript 1.0:
var salesOrderID = 1002; var record = nlapiLoadRecord('salesorder', salesOrderID); var renderer = nlapiCreateTemplateRenderer(); var item; var template = '<?xml version="1.0"?><html><head><meta charset="utf-8"></head><body>'; template += '<table>'; template += '<tr><td align="right"><b>SALES ORDER</b></td><td><b>#${record.tranid}</b></td></tr>'; template += '<td align="right"></td></tr><tr><td align="left">${record.trandate}</td></tr>'; template += '</table>'; template += '</br>'; template += '<table>'; template += '<tr><td><b>${record.billaddress@label}</b></td><td><b>${record.total@label?upper_case}</b></td></tr>'; template += '<tr><td>${record.billaddress}</td><td align="right">${record.total}</td></tr>'; template += '</table>'; template += '</br>'; template += '<table>'; template += '<tr><th>${record.otherrefnum@label}</th><th>${record.shipmethod@label}</th></tr>'; template += '<tr><td>${record.otherrefnum}</td><td>${record.shipmethod}</td></tr>'; template += '</table>'; template += '</br>'; template += '<table border="1">'; template += '<#list record.item as item>'; template += '<thead>'; template += '<tr><th align="center">${item.quantity@label}</th><th>${item.item@label}</th><th align="right">${item.rate@label}</th><th align="right">${item.amount@label}</th></tr>'; template += '</thead>'; template += '<tr><td align="center" line-height="150%">${item.quantity}</td><td><span class="itemname">${item.item}</span><br />${item.description}</td><td
Etiquetado:
0
¡Hola, Bienvenido/a!
Iniciar sesión
Para ver los detalles completos, inicia sesión.
Registrarse
¿No tienes una cuenta? ¡Haz clic aquí para comenzar!