Brian Dunning's FileMaker Custom Functions

ListGet ( InList ; InNum )

Get the value from the list, specified by InNum

  Average rating: 4.6 (27 votes) Log in to vote

Richard DeShong   Richard DeShong
Logic Tools
http://logictools.com

Share on Facebook Share on Twitter

  Sample input:
ListGet ( "A¶B¶C" , 2 )
  Sample output:
"B"

  Function definition: (Copy & paste into FileMaker's Edit Custom Function window)

Uses FM's GetValue() function, but tests for IsEmpty() and returns "Empty" instead.

~~~ Design Notes ~~~

This is part of a series of LIST functions.
ListAdd, ListAddUnique, ListExist, ListGet, ListToggle.
Each uses the same name format: List
Each uses the same parameter format: InList; InValue.

They also work in concert with two SET functions:
SetVar and SetField
These are all designed to work with variables and to
keep the variables from being un-set (removed from memory),
by using the string "Empty" to indicate IsEmpty().
Example:
If a field, MyField, is empty and I use SetVar(),
MyVariable = SetVar( MyField )
Tnen MyVariable is now = "Empty"

~~~

 

Comments

Bart Bartholomay   Bart Bartholomay, South Florida
Aug 29, 2014
I might insert some trimming functionality to preclude the errant space(s), or any other unwanted characters in the validation:

Let( V = GetValue ( InList; InNum ); Case ( IsEmpty ( Substitute ( V ; " " ; "" ); "Empty"; V ) )
// Get the specified (InNum) value of InList. If no value, return "Empty" string.
 
Richard DeShong   Richard DeShong, Logic Tools
Mar 23, 2016
Hi Bart, thanks for that. In the case, I'm not interested in modifying the list, just getting what ever is there. These functions are used to work with lists that I've created in the UI. It is at creation time that I manage input into the list. If I was to work with a list that I did not create, then I would clean it first - before trying to get a particular value.
 

Log in to post comments.

 

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

Under construction. Email me your wish list for improvements.