Code - Custom Function
StringConstruct ( text ; prefix ; suffix ; altText )
BrianDunning.com, Brian Dunning http://www.briandunning.com/filemaker-custom-functions/list.php
Rate this function: Average rating: 0.0 (0 votes) Discuss this Custom FunctionChad Sager, IT Solutions Consulting, Inc.
http://www.itsolutions-inc.com/Filemaker
Shows a value if present with an option prefix and suffix, otherwise shows alternate text
==================== SAMPLE INPUT AND OUTPUT ====================
INPUT
Student::Name & " is " & StringConstruct ( Student::Age; "an "; " year old" & StringConstruct ( Student::Gender; " "; "."; " person." ); StringConstruct ( Student::Gender; ""; "."; "a person." ) )
OUTPUT
Joe is an 18 year old male.
==================== DESCRIPTION ====================
PURPOSE: used to concatenated text strings, extremely useful when trying to build natural language text strings.
You can point to a text value, if its empty, only the Alt text will display if provided.
If there is a value for the text the prefix and suffix will show, if provided.
PARAMETERS:
text - the text you want to display
prefix - a prefix to the text
suffix - a suffix to the text
altText - an alternate text to show if the primary text is empty
IMPORTANT NOTES: remember if you want any or all the parameters to be empty, just use "" (double quotes)
EXAMPLES:
Student::Name = "Joe"
Student::Gender = "male"
Student::Name & " is " & StringConstruct ( Student::Gender; "" ; "." ; "a person." )
Returns "Joe is male."
Student::Name = "Joe"
Student::Gender = ""
Student::Name & " is " & StringConstruct ( Student::Gender ; "" ; "." ; "a person." )
returns "Joe is a person."
Student::Name = "Joe"
Student::Gender = "male"
Student::Age = 18
Student::Name & " is " & StringConstruct ( Student::Age; "a "; " year old" & StringConstruct ( Student::Gender; " "; "."; " person." ); StringConstruct ( Student::Gender; ""; "."; "a person." ) )
Returns:
"Joe is a 18 year old male."
Student::Name = "Joe"
Student::Gender = ""
Student::Age = 18
Student::Name & " is " & StringConstruct ( Student::Age; "an "; " year old" & StringConstruct ( Student::Gender; " "; "."; " person." ); StringConstruct ( Student::Gender; ""; "."; "a person." ) )
Returns:
"Joe is a 18 year old person."
Student::Name = "Joe"
Student::Gender = ""
Student::Age = ""
Student::Name & " is " & StringConstruct ( Student::Age; "an "; " year old" & StringConstruct ( Student::Gender; " " ; "." ; " person." ) ; StringConstruct ( Student::Gender ; "" ; "." ; "a person." ) )
Returns:
"Joe is a person."
Student::Name = "Joe"
Student::Gender = "male"
Student::Age = 18
Student::Name & " is " & StringConstruct ( Student::Age ; "an " ; " year old" & StringConstruct ( Student::Gender ; " " ; "." ; " person." ) ; StringConstruct ( Student::Gender; "" ; "." ; "a person." ) )
Returns:
"Joe is male."
==================== CUSTOM FUNCTION ====================
/*
NAME: StringConstruct ( text ; prefix ; suffix ; altText )
CREATORNAME: Chad Sager, IT Solutions Consulting, Inc.
CREATOREMAIL: chad.sager@itsolutions-inc.com
DATE CREATED: 2010-02-18
DATE LASTMODIFIED: 2010-02-18
PURPOSE: used to concatenated text strings, extremely useful when trying to build natural language text strings.
You can point to a text value, if its empty, only the Alt text will display if provided.
If there is a value for the text the prefix and suffix will show, if provided.
PARAMETERS:
text - the text you want to display
prefix - a prefix to the text
suffix - a suffix to the text
altText - an alternate text to show if the primary text is empty
IMPORTANT NOTES: remember if you want any or all the parameters to be empty, just use "" (double quotes)
EXAMPLES:
Student::Name = "Joe"
Student::Gender = "male"
Student::Name & " is " & StringConstruct ( Student::Gender; "" ; "." ; "a person." )
Returns "Joe is male."
Student::Name = "Joe"
Student::Gender = ""
Student::Name & " is " & StringConstruct ( Student::Gender ; "" ; "." ; "a person." )
returns "Joe is a person."
Student::Name = "Joe"
Student::Gender = "male"
Student::Age = 18
Student::Name & " is " & StringConstruct ( Student::Age; "a "; " year old" & StringConstruct ( Student::Gender; " "; "."; " person." ); StringConstruct ( Student::Gender; ""; "."; "a person." ) )
Returns:
"Joe is a 18 year old male."
Student::Name = "Joe"
Student::Gender = ""
Student::Age = 18
Student::Name & " is " & StringConstruct ( Student::Age; "an "; " year old" & StringConstruct ( Student::Gender; " "; "."; " person." ); StringConstruct ( Student::Gender; ""; "."; "a person." ) )
Returns:
"Joe is a 18 year old person."
Student::Name = "Joe"
Student::Gender = ""
Student::Age = ""
Student::Name & " is " & StringConstruct ( Student::Age; "an "; " year old" & StringConstruct ( Student::Gender; " " ; "." ; " person." ) ; StringConstruct ( Student::Gender ; "" ; "." ; "a person." ) )
Returns:
"Joe is a person."
Student::Name = "Joe"
Student::Gender = "male"
Student::Age = 18
Student::Name & " is " & StringConstruct ( Student::Age ; "an " ; " year old" & StringConstruct ( Student::Gender ; " " ; "." ; " person." ) ; StringConstruct ( Student::Gender; "" ; "." ; "a person." ) )
Returns:
"Joe is male."
*/
Case (
not IsEmpty ( text ) ; prefix & text & suffix ;
altText
)
Referring URL: 'http://www.briandunning.com/cf/1127'
Keywords: ''
ClipManager:

