Netsuite PDF/HTML 模板上带有数字范围的 IF 语句

IF Statement with Number Range on Netsuite PDF/HTML Template

我需要指定默认送货方式,因为在 Netsuite 的报名表上提供了 none。由于各种原因,我必须在 PDF/HTML 模板中执行此操作。 这是我目前的代码,但它似乎不起作用;

<#function toNumber val>
<#if val?has_content && val?length gt 0 >
<#return val?html?replace('[^0-9.]','','r')?number >
<#else><#return 0 ></#if></#function>

<#if record.shipmethod?has_content>

${record.shipmethod}  <!-- if a courier is selected -->

<#else>               <!-- else -->
<#list 2000..2560 as pcx>  <!-- Sydney Metro postcodes -->
<#if toNumber(record.shipzip)==pcx> 

Courier1              <!-- Standard Sydney Metro Courier -->

<#else>               <!-- else -->

Courier2              <!-- Standard Interstate Courier -->

</#if></#list></#if>

你的循环将在每次运行时打印一些东西(即 560 行)!您应该使用 lte(小于或等于)和 gte(大于或等于)[=13 来测试邮政编码是否在所需范围内,而不是遍历数字=]:

<#function toNumber val>
<#if val?has_content && val?length gt 0 >
<#return val?html?replace('[^0-9.]','','r')?number >
<#else><#return 0 ></#if></#function>

<#assign zip = toNumber(record.shipzip)>

<#if record.shipmethod?has_content>
  ${record.shipmethod}
<#elseif zip gte 2000 && zip lte 2560 >
  Courier 1
<#else>
  Courier 2
</#if>