Javascript 需要在Netsuite(SQL语言)中包含和以文字表示的金额

Javascript 需要在Netsuite(SQL语言)中包含和以文字表示的金额,javascript,sql,netsuite,suitescript,Javascript,Sql,Netsuite,Suitescript,我将此公式包括在netsuit的字段默认值中: CASE WHEN {total}=0 THEN 'ZERO' ELSE TO_CHAR(TO_DATE(TO_CHAR(TRUNC({total}, 0)),'J'),'JSP') || ' ' || ' ' || ( CASE WHEN LENGTH(TO_CHAR(REGEXP_REPLACE({total}, '^[0-9]+\.', ''))) = 1 THEN TO_CHAR(TO_DATE(TO_CHAR(TRUNC

我将此公式包括在netsuit的字段默认值中:

CASE WHEN {total}=0 THEN 'ZERO' 
ELSE TO_CHAR(TO_DATE(TO_CHAR(TRUNC({total}, 0)),'J'),'JSP') || ' ' || ' ' || ( 
  CASE WHEN LENGTH(TO_CHAR(REGEXP_REPLACE({total}, '^[0-9]+\.', ''))) = 1 THEN 
    TO_CHAR(TO_DATE(TO_CHAR(TRUNC(REGEXP_REPLACE({total}, '^[0-9]+\.', ''), 0)*10),'J'),'JSP') || 'cents' 
  ELSE  TO_CHAR(TO_DATE(TO_CHAR(TRUNC(REGEXP_REPLACE({total}, '^[0-9]+\.', ''), 0)),'J'),'JSP')  || ' FILS ONLY' 
  END)
END
如果金额为6703.20,则打印:

 SIX THOUSAND SEVEN HUNDRED THREE TWENTY FILS ONLY
我想在这两者之间加入和,让它像这样展现:

SIX THOUSAND SEVEN HUNDRED THREE and TWENTY FILS ONLY

有人能帮我吗?

在您的情况下,您应该使用SUBSTR来获取结果,而不是使用REGEXP\u REPLACE

以下是一个例子:

TO_CHAR(TO_CHAR({total}))-1*长度(TO_CHAR({total}))、长度(TO_CHAR({total}))-3、'J')、'JSP')| |'和'| TO_CHAR(TO_CHAR({total})、-2,3、'J')、'JSP')

定义您的“案例”,并在“然后”部分,使用此公式获得结果