Maintain Numeric Settings w/ HTML | Discussions

Expand all | Collapse all

Maintain Numeric Settings w/ HTML

  • 1.  Maintain Numeric Settings w/ HTML

    Posted 09-27-2018 17:22
    Hello, I'm trying to show a Numeric Formula field in red by way of a Rich Text Formula field.

    This is what I'm using in the Rich Text Formula field:"<div style=\"color:#ff0000;font-size:9pt\">$"&[Sub-Total w/ Vacancy]&"</div>"

    The [Sub-Total] field is a Formula - Numeric field, with the currency option chosen. 

    The rich text field removes the dollar sign and decimal point from the numeric field. On one value it also added more decimal points than the numeric field allows for.

    Any ideas how to maintain the numeric settings in the rich text field?


  • 2.  RE: Maintain Numeric Settings w/ HTML

    Bronze
    Contributor
    Posted 09-27-2018 18:56
    That's pretty interesting. What happens when you try wrapping the currency field with a ToText() ?


  • 3.  RE: Maintain Numeric Settings w/ HTML

    Posted 09-27-2018 19:06
    No change! 


  • 4.  RE: Maintain Numeric Settings w/ HTML

    Posted 09-27-2018 19:04
    I have a formula I will post when i get a chance....


  • 5.  RE: Maintain Numeric Settings w/ HTML

    Posted 09-27-2018 19:06
    Thanks Mark!


  • 6.  RE: Maintain Numeric Settings w/ HTML

    Posted 09-27-2018 19:54
    Try this one.  Just change the first line to use your currency field.


    var number Value = Round([My Currency field],0.01);
    var text Decimals = "." & Right(ToText(Int(Abs($value) * 100)),2);
    var text Thousands = If(Abs($Value)>=1000,ToText(Int(Abs($Value)/1000)));
    var text Hundreds=Right(ToText(Int(Abs($Value))),3);

    If($Value=0,"$0.00",
    If($Value<0, "<font color=red>- ")
    &
    "$" & List(",",$Thousands,$Hundreds) & $Decimals)


  • 7.  RE: Maintain Numeric Settings w/ HTML

    Bronze
    Contributor
    Posted 09-27-2018 20:08
    So, it's necessary to recapitulate the baked-in currency settings for a numeric field in code in a formula field that wants to use the settings selected for that field, do I have that right?

    Do you think this represents a bug in the ToText function, or at least an error in its documentation, which reads 'Returns a Text value containing the print representation of the argument', which appears based on this conversation not to be true?


  • 8.  RE: Maintain Numeric Settings w/ HTML

    Posted 09-27-2018 22:01
    I don�t know if they will accept it as a bug, but I seem to recall in my testing that it did not retain the decimals when the cents end in 00 or 0 like 123.10 comes out as 123.1. Is that what you have found.

    I am just on my iPhone now but I think the actual function is ToFormattedText but I don�t think I was able to get it to retain 2 decimals.


  • 9.  RE: Maintain Numeric Settings w/ HTML

    Posted 09-28-2018 00:59
    Mark, i've used this formula and it retains the decimals and it also extends to millions

    var number Value = Round([MY FIELD],0.01);
    var text Decimals = "." & Right(ToText(Int($value * 100)),2);
    var text Thousands = If(Abs($Value)>=1000,ToText(Int(Abs($Value)/1000)));
    var text Hundreds=Right(ToText(Int($Value)),3);
    var text Millions = If($Value>=1000000,ToText(Int($Value/1000000)));

    If($value>=1000000,"$" & ToFormattedText($value, "comma_dot") & $decimals,
    If($Value=0,"$0.00",
    If($Value<0, "- ")
    &
    "$" & List(",",$Millions,$Thousands,$Hundreds) & $Decimals))


  • 10.  RE: Maintain Numeric Settings w/ HTML

    Posted 09-28-2018 01:13
    Thx Keith. I�ve added it to my collection.


  • 11.  RE: Maintain Numeric Settings w/ HTML

    Posted 09-28-2018 11:09
    Mark, thanks for your help. This did the trick.


  • 12.  RE: Maintain Numeric Settings w/ HTML

    Posted 06-11-2019 18:24
    I don�t know if they will accept it as a bug, but I seem to recall in my testing that it did not retain the decimals when the cents end in 00 or 0 like 123.10 comes out as 123.1. Is that what you have found. 

    I am just on my iPhone now but I think the actual function is ToFormattedText but I don�t think I was able to get it to retain 2 decimals."

    For the record I'm in an Advanced Formulas session at Empower right now and Eric Mohlman used ToFormattedText in an example and confirmed that the function drops trailing zeroes when converting decimals to text and that it's a known weakness. Unfortunately the documentation still doesn't speak to this issue!


  • 13.  RE: Maintain Numeric Settings w/ HTML

    Posted 06-11-2019 18:27
    This is Eric's version, to convert a currency field to text with everything intact:

    "$" & 
    ToFormattedText([Price],"comma_dot",3) & 
    If(
      not Contains(ToText([Price]),"."),
      ".00",
      Length(Right(ToText([Price]),"."))=1,"0"
    )