Jump to content
Claris Engage 2025 - March 25-26 Austin Texas ×

This topic is 6796 days old. Please don't post here. Open a new topic instead.

Recommended Posts

Posted

hey just a quick question, i want to get the number from a number field that may be in the format $299,000 or 299000 or 299,000 etc etc.. and put it in a hard format of $299,000 within a calc field, what number formatting functions if any would i use to do this?

cheers for help,

~genx

Posted

If no-one is going to reply i'm going to use a work around and i know no one likes it when i do that hehe...

anyway, im thinking of just using a calc

Let([Price = GetAsNumber(PriceField); PL = Length(GetAsNumber(PriceField)] ;

Case(PL <= 3 ; "$" & Price ;

PL > 3 And PL <= 6 ; "$" & Left(Price ; PL-3) & "," & Right(Price;3) ;

PL > 6 And PL <= 9 ; "$" & Left(Price ; PL-6) & "," & Left(Right(Price ; 6); 3) & "," & Right(Price;3) ;

"Invalid Price" )

)

  • Newbies
Posted

Not sure if this is what you mean but select the number field that you want in Layout & then 'Number' under 'Format'.

Click the 'Format as decimal' button & tick fixed number decimal digits & key in '2'.

Click 'Use notation' with leading currency sign & choose '$' sign.

Then use the thousands separator a bit further down.

So a calculated result of eg 2987.46669 will display as $2,987.47.

Hope this helps

Posted

... No, i need to hard format it with something like the textstyleadd function. Thanks anyway

Genx

Posted

The best one I've seen is by Comment:

Let ( [

// USER DEFINED:

input = numberfield ;

precision = 2 ;

currency = "$" ;

separator = "," ;

decPoint = "." ;

// DO NOT MODIFY FROM THIS POINT ON

inputRound = Round ( input ; precision ) ;

Amt = Abs (inputRound ) ;

Dollars = Int ( Amt )

] ;

// PREFIX

Case ( inputRound < 0 ; "-" )

& currency

&

// BILLIONS

Choose ( Dollars < 10 ^ 9 ; Right ( Div ( Dollars ; 10 ^ 9 ) ; 3 ) & separator )

&

// MILLIONS

Choose ( Dollars < 10 ^ 6 ; Right ( Div ( Dollars ; 10 ^ 6 ) ; 3 ) & separator )

&

// THOUSANDS

Choose ( Dollars < 10 ^ 3 ; Right ( Div ( Dollars ; 10 ^ 3 ) ; 3 ) & separator )

&

// UNITS

Right ( Dollars ; 3 )

&

// FRACTION

Choose ( precision < 1 ; decPoint

&

Right ( 10 ^ precision & Amt * ( 10 ^ precision ) ; precision ) )

)

Sorry I can't refer you to the post which generated it. This is the most flexible because you can define your own formats.

LaRetta :wink2:

Posted

...Why are my calculations so ******* stupid looking compared to other peoples hehe.

Cheers guys, its perfect

~Genx

  • 2 months later...

This topic is 6796 days old. Please don't post here. Open a new topic instead.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.