- Introduction to WorkXpress
- Building Your Application
- Examples and Best Practices
- Technical Manual

This shows you the differences between two versions of the page.

— |
expression builder [2016/09/14 14:19] (current) |
||
---|---|---|---|

Line 1: | Line 1: | ||

+ | ====== Expression Builder ====== | ||

+ | The Expression Builder allows you to create formulas and manipulate data. | ||

+ | An expression is something commonly thought of as a "formula". It is a combination of three things; (1) starting values, (2) manipulation of those values, and (3) a resulting value(s). Each of these properties of an expression is explained in greater detail below. | ||

+ | |||

+ | ==== Starting Values ==== | ||

+ | |||

+ | |||

+ | Starting values for an expression, if they exist, could come from the database, the interface, the session, or run time values. It is very important to note that you may have a static expression whereby you don't start with any starting values. In a static expression you simply type in the result that you want to see output. When an expression starts with data from the database, interface, session or run time values, it is referred to as a dynamic expression, because the expression results are variable based on the starting data pulled in. | ||

+ | |||

+ | ==== Manipulation ==== | ||

+ | |||

+ | |||

+ | Manipulation involes taking the starting data and transforming it into something else. Manipulation can involve the data itself or merely the appearance of the data (for example adding "bold" or increasing the font size). Manipulation may include the use of some combination of text or numerical functions, mathematical functions, application of html markup, and looping expressions and subexpressions. | ||

+ | |||

+ | In static expressions, manipulation simply involves entering the static values you wish your expression to output and, possibly, formatting them. | ||

+ | |||

+ | ==== Resulting Value ==== | ||

+ | |||

+ | |||

+ | What comes out of an expression is its resulting value. This is always the product of your starting values and the subsequent manipulation. | ||

+ | |||

+ | Your results can be either plaintext or html-enabled. Enabling html will attempt to present your results with html formatting enforced. Plaintext, on the other hand, will simply display all characters in the result, including any html tags that may be present. | ||

+ | |||

+ | |||

+ | ===== Subexpressions ===== | ||

+ | A subexpression is a complete expression (including a Query Builder) that is evaluated independently, and whose result is inserted into an expression. You can nest as many subexpressions as you like into your expression, or into each other. | ||

+ | ===== Expression Builder Tools ===== | ||

+ | Introduction to the tools in the rich text area | ||

+ | |||

+ | ==== Looping Control ==== | ||

+ | You may toggle the Loop Control function to allow this expression to loop through its results for those functions which do not inherently use looping. | ||

+ | |||

+ | Sometimes you will develop data in your Query Builder that returns multiple records. You will need to understand how you want your expression to loop over each of these records to achieve your desired result. | ||

+ | |||

+ | For example, you may want to sum the "amount" field for each record. Or, you may want to concatenate the names of each record in the result set, separated by commas. | ||

+ | |||

+ | Some functions are inherently "looping" functions, meaning by default they will loop over each record in the result set. The "Sum" function is a good example of an inherently looping function. | ||

+ | |||

+ | Other functions are designed to operate on a single result from a single record and therefore will select a random record when multiple records are returned from the result list. | ||

+ | |||

+ | Turning on the Loop Control will tell the Expression Builder to loop over any results. Turning off the Loop Control will return a single record, however, if there are multiple resulting records, the Expression Builder will choose a random record. Build your queries carefully to ensure that you are returning the number of records you require. | ||

+ | |||

+ | ==== HTML Editor ==== | ||

+ | This section of the Expression Builder allows you to add a variety of HTML formatting to the output of your expression. Use this section to cut, copy or paste text into and out of the Expression Box, manipulate fonts and styles, change alignment, and create lists. | ||

+ | |||

+ | These controls insert actual hypertext markup language (HTML) into your Expression, however the Expression Box itself does not display the raw HTML, only the formatted results of it. To see the full expression as its HTML source code click the HTML button in the upper right hand corner of this section. | ||

+ | ===== Functions ===== | ||

+ | In the Expression Builder, you can use a variety of pre-defined math and text based functions. For example, you can capture the current date easily by using the [[Expression Function - Now|Date function NOW()]]. Each function below contains a description and example of its use. | ||

+ | ==== List of Expression Builder Functions ==== | ||

+ | === Text Functions === | ||

+ | * [[Expression Function - Add to List|Add to List]] | ||

+ | * [[Expression Function - Build a List|Build a List]] | ||

+ | * [[Expression Function - Base64 Decode|Base64 Decode]] - Deprecated See [[Expression Function - Convert| Convert]] | ||

+ | * [[Expression Function - Base64 Encode|Base64 Encode]] - Deprecated See [[Expression Function - Convert| Convert]] | ||

+ | * [[Expression Function - Concatenate|Concatenate]] | ||

+ | * [[Expression Function - Convert| Convert]] | ||

+ | * [[Expression Function - Field to JSON|Field to JSON]] - Deprecated See [[Expression Function - Convert| Convert]] | ||

+ | * [[Expression Function - JSON to Field|JSON to Field]] - Deprecated See [[Expression Function - Convert| Convert]] | ||

+ | * [[Expression Function - Length of String|Length of String]] | ||

+ | * [[Expression Function - Lowercase|Lowercase]] - Deprecated See [[Expression Function - Convert| Convert]] | ||

+ | * [[Expression Function - Number to Letters|Number to Letters]] - Deprecated See [[Expression Function - Convert| Convert]] | ||

+ | * [[Expression Function - Pad String|Pad String]] | ||

+ | * [[Expression Function - Propercase|Propercase]] - Deprecated See [[Expression Function - Convert| Convert]] | ||

+ | * [[Expression Function - Random String|Random String]] | ||

+ | * [[Expression Function - Read Cookie|Read Cookie]] | ||

+ | * [[Expression Function - Remove From List|Remove From List]] | ||

+ | * [[Expression Function - Search Substring|Search Substring]] | ||

+ | * [[Expression Function - String Between|String Between]] | ||

+ | * [[Expression Function - Strip Html|Strip Html]] | ||

+ | * [[Expression Function - Substitute|Substitute]] | ||

+ | * [[Expression Function - Substring|Substring]] | ||

+ | * [[Expression Function - Uppercase|Uppercase]] - Deprecated See [[Expression Function - Convert| Convert]] | ||

+ | * [[Expression Function - URL Decode|URL Decode]] - Deprecated See [[Expression Function - Convert| Convert]] | ||

+ | * [[Expression Function - URL Encode|URL Encode]] - Deprecated See [[Expression Function - Convert| Convert]] | ||

+ | * [[Expression Function - User Agent|User Agent]] | ||

+ | === Math Functions === | ||

+ | == Arithmetic == | ||

+ | * [[Expression Function - Absolute Value|Absolute Value]] | ||

+ | * [[Expression Function - Arithmetic|Arithmetic]] | ||

+ | * [[Expression Function - Log|Log]] | ||

+ | * [[Expression Function - Mod|Mod]] | ||

+ | * [[Expression Function - Power|Power]] | ||

+ | * [[Expression Function - Product|Product]] | ||

+ | * [[Expression Function - Quotient|Quotient]] | ||

+ | * [[Expression Function - Sum|Sum]] | ||

+ | == Counting == | ||

+ | * [[Expression Function - Count|Count]] | ||

+ | * [[Expression Function - Count Distinct|Count Distinct]] | ||

+ | == Minima/Maxima == | ||

+ | * [[Expression Function - Maximum Field Value|Maximum Field Value]] | ||

+ | * [[Expression Function - Maximum Value|Maximum Value]] | ||

+ | * [[Expression Function - Minimum Field Value|Minimum Field Value]] | ||

+ | * [[Expression Function - Minimum Value|Minimum Value]] | ||

+ | == Rounding == | ||

+ | * [[Expression Function - Ceiling|Ceiling]] | ||

+ | * [[Expression Function - Floor|Floor]] | ||

+ | * [[Expression Function - Round|Round]] | ||

+ | * [[Expression Function - Round Down|Round Down]] | ||

+ | * [[Expression Function - Round Up|Round Up]] | ||

+ | == Miscellaneous == | ||

+ | * [[Expression Function - E|E]] | ||

+ | * [[Expression Function - Pi|Pi]] | ||

+ | * [[Expression Function - Random Number|Random Number]] | ||

+ | * [[Expression Function - Root|Root]] | ||

+ | * [[Expression Function - Square Root|Square Root]] | ||

+ | == Trigonometry == | ||

+ | * [[Expression Function - Inverse Cosine|Inverse Cosine]] | ||

+ | * [[Expression Function - Inverse Hyperbolic Cosine|Inverse Hyperbolic Cosine]] | ||

+ | * [[Expression Function - Inverse Sine|Inverse Sine]] | ||

+ | * [[Expression Function - Inverse Hyperbolic Sine|Inverse Hyperbolic Sine]] | ||

+ | * [[Expression Function - Inverse Tangent|Inverse Tangent]] | ||

+ | * [[Expression Function - Inverse Hyperbolic Tangent|Inverse Hyperbolic Tangent]] | ||

+ | * [[Expression Function - Cosine|Cosine]] | ||

+ | * [[Expression Function - Hyperbolic Cosine|Hyperbolic Cosine]] | ||

+ | * [[Expression Function - Degrees|Degrees]] | ||

+ | * [[Expression Function - Radians|Radians]] | ||

+ | * [[Expression Function - Sine|Sine]] | ||

+ | * [[Expression Function - Hyperbolic Sine|Hyperbolic Sine]] | ||

+ | * [[Expression Function - Tangent|Tangent]] | ||

+ | * [[Expression Function - Hyperbolic Tangent|Hyperbolic Tangent]] | ||

+ | === Currency === | ||

+ | * [[Expression Function - Currency to Text|Currency to Text]] | ||

+ | === Dates === | ||

+ | * [[Expression Function - Now|Now]] | ||

+ | * [[Expression Function - Date|Date]] | ||

+ | * [[Expression Function - Date and Time|Date and Time]] | ||

+ | * [[Expression Function - Days in Month|Days in Month]] | ||

+ | * [[Expression Function - Convert Timestamp|Convert Timestamp]] | ||

+ | * [[Expression Function - Adjust Timestamp|Adjust Timestamp]] | ||

+ | * [[Expression Function - Number of Days|Number of Days]] | ||

+ | * [[Expression Function - AMPM Lowercase|AMPM Lowercase]] | ||

+ | * [[Expression Function - AMPM Uppercase|AMPM Uppercase]] | ||

+ | * [[Expression Function - Day of the Month|Day of the Month]] | ||

+ | * [[Expression Function - Day of the Month Suffix|Day of the Month Suffix]] | ||

+ | * [[Expression Function - Day of the Month with Leading Zero|Day of the Month with Leading Zero]] | ||

+ | * [[Expression Function - Day of the Week|Day of the Week]] | ||

+ | * [[Expression Function - Day of the Week Abbreviated|Day of the Week Abbreviated]] | ||

+ | * [[Expression Function - Day of the Week Number|Day of the Week Number]] | ||

+ | * [[Expression Function - Day of the Year|Day of the Year]] | ||

+ | * [[Expression Function - Hour|Hour]] | ||

+ | * [[Expression Function - Hour with Leading Zero|Hour with Leading Zero]] | ||

+ | * [[Expression Function - Hour 24|Hour 24]] | ||

+ | * [[Expression Function - Hour 24 with Leading Zero|Hour 24 with Leading Zero]] | ||

+ | * [[Expression Function - Minute|Minute]] | ||

+ | * [[Expression Function - Month Name|Month Name]] | ||

+ | * [[Expression Function - Month Name Abbreviated|Month Name Abbreviated]] | ||

+ | * [[Expression Function - Month|Month]] | ||

+ | * [[Expression Function - Month with Leading Zero|Month with Leading Zero]] | ||

+ | * [[Expression Function - Second|Second]] | ||

+ | * [[Expression Function - Second with Leading Zero|Second with Leading Zero]] | ||

+ | * [[Expression Function - Timezone|Timezone]] | ||

+ | * [[Expression Function - Week of the Year|Week of the Year]] | ||

+ | * [[Expression Function - Year 4-Digit|Year 4-Digit]] | ||

+ | * [[Expression Function - Year 2-Digit|Year 2-Digit]] | ||

+ | === Geolocation === | ||

+ | * [[Expression Function - Distance Between|Distance Between]] | ||

+ | * [[Expression Function - Distance Between Driving|Distance Between Driving]] | ||

+ | * [[Expression Function - Suggest Postal Code|Suggest Postal Code]] | ||

+ | * [[Expression Function - Time Between Driving|Time Between Driving]] | ||

+ | * [[Expression Function - Validate City State Postal Code|Validate City State Postal Code]] |

Copyright WorkXpress, 2020