Shopping Cart

Search:

Signup

Contact

FileMaker is a registered trademark of FileMaker, Inc. in the U.S. and other countries.

# FileMaker Pro Custom Functions

ImportoInLettereRicorsiva ( parteIntera ; scala )

Rate this function:

Discuss this Custom Function

Federico Severin, Federico Severin
http://ilseve.altervista.org

Re-writes amounts in words in Italian language (2/3)

Sample Input:
 ImportoInLettereRicorsiva ( 1234 , 0 )
Sample Output:
 milleduecentotrentaquattro

Then copy & paste into FileMaker Advanced's Edit Custom Function window.

## Description:

// IMPORTANT: you need also the custom function NumeroATesto

// This is a recursive function that process a number translating the 3 rightmost ciphers and recursively calls herself to analyze the remaining part of the number, proceeding from right to left
// E.g.: if parteIntera = 123.546.789, the actual call will translate 789 in letters, appending to it's left the result of the recursive call on 123.456 and incrementing scala so that we shift of 3 positions the value of digits

// The first time ImportoInLettereRicorsiva is called, scala must be set to 0.

Dichiara (

// parteSinistra is the left part of the number
// left because we proceed from right to left, and than what is left to read is at the left :-)
parteSinistra = Tronca ( parteIntera / 1000 ; 0 );

// If there are no more ciphers at the left, just translate this last number
// else, call recursively the function on the left part of the number, specifying with scala that we are shifting of 3 digits, and append result to the translation of the last 3 digits in this position
If ( parteSinistra = 0 ;
NumeroATesto ( parteIntera ; scala ) ;
ImportoInLettereRicorsiva ( parteSinistra ; scala + 3 ) & NumeroATesto ( parteIntera - parteSinistra * 1000 ; scala )
)

)

Note: these functions are not guaranteed or supported by BrianDunning.com. Please contact the individual developer with any questions or problems.

This is my Custom Function and I want to edit it