Changes

SsParseNum

1,913 bytes added, 17:46, 19 May 2021
When Using "Show Currency Format in Edit Mode"
The ''ssParseNum'' syntax is used in {{JavaScript expressions Syntax}}__TOC__
==Overview==
To convert a number from a formatted string (containing symbols like "$" or "%") to a number using [[JavaScript]] you can use a function called ''ssParseNum''.
==Syntax==
Where: <br / >
 {| border="1"!Parameter!Description|-|<b><em>value </em></b>- is |Required. Is the a value to be converted to a number (i.e: $5,000.00 and 5,000% will be converted to 5000)<br />|-|<b><em>emptyok </em></b>- is |Optional. Is a true/false value
:*if ''emptyok'' is true - an empty string will be returned by ssParseNum if the value is ''empty''
:*if ''emptyok'' is false - a "0" will be returned by ssParseNum if the value is ''empty''
|}
===Examples===
<pre>
ssParseNum($5,000.50);
</pre>
Will return: 5000.5
 
----
 
If you wish to display a ratio of two fields that are set to have currency formatting, you should convert the values to numbers using ''ssParseNum'':
==Example==
<pre>
ssParseNum($5,000.00,true[field1])/ssParseNum([field2]);
</pre>
 
Will return: 5000
 
==Requirements==
<SCRIPT type="text/javascript" language="javascript" src="/sstools.js"></SCRIPT>
==When Using "Show Currency Format in Edit Mode"==
When using the "Show Currency Format in Edit Mode" setting for custom fields, the following syntax must be used:
 
: <span style="font-size: medium;">'''ssParseNumFromCurrency(value,getLocalestrByCurrency(code),1,emptyok);''' ''(getLocalestrByCurrency will get the "default" locale of the currency code, e.g. CAD will result in en-CA, NOT fr-CA)'''''<br /><br />OR<br /><br />ssParseNumFromCurrency(value,locale,1,emptyok); '''''(if you know the locale of the formatted currency, e.g. da-DK or fr-FR or fr-CA etc)'''<br />'''''</span>
Where:
 
{| border="1"
|-
!|Parameter
!|Description
|-
||'''''value '''''
||Required. Is the value to be converted to a number (i.e: $5,000.00 and 5,000 will be converted to 5000)
|-
||'''''emptyok '''''
||Optional. Is a true/false value
:* if ''emptyok'' is true - an empty string will be returned by if the value is ''empty''
:* if ''emptyok'' is false - a "0" will be returned by if the value is ''empty''
 
|-
||'''''code'''''
||Required. The three-letter currency code defined by [http://en.wikipedia.org/wiki/ISO_4217 ISO 4217]. Example: ''JPY'' for Japanese Yen.
|}
 
Example:
 
: <span style="font-size: medium;">ssParseNumFromCurrency([YER Total revenue],getLocalestrByCurrency('CAD'),1,true) - ssParseNumFromCurrency([YER Total expenses],getLocalestrByCurrency('CAD'),1,true)<br /></span>
: <span style="font-size: medium;">or</span>
: <span style="font-size: medium;">ssParseNumFromCurrency([YER Total revenue],'fr-CA',1,true) - ssParseNumFromCurrency([YER Total expenses],'fr-CA',1,true)  <br /><br /></span>
==See Also==
* [[Custom Field Type: Special – Calculated Value]]
* [[SsFormatCurrency]]
[[Category:JavaScript]][[Category:Currency]]
Smartstaff
119
edits