String formatter
Modify the formatting of one or more values according to a customizable rule.
TIP:
Using the string formatter, you can, for example:
- Add characters before or after a value, if the value of the source variable numeric.
- Format and parameterize SQL queries to use in database objects
- Link multiple strings together in a series
- Apply formatting, such as decimal places or float rounding, to numbers
Properties
Property | Description |
---|---|
Format | The formatting rule for variable reference:
|
Mode | The direction of the dynamic link:
|
Source
One or more variables, identified by a placeholder with an index number in the following {index} format. The index number is progressive and it must be an integer greater than zero {0}.
TIP:
Placeholders can appear in any order in the formatting rule. For example, the syntax "the minimum value of {3}, {0} and {2} is {1}" is valid.
Data types
Format | Description | Example |
---|---|---|
g | Short date and time, local |
|
F | Extended date and time, local |
|
X | Short date and time, UTC |
|
x | Extended date and time, UTC |
|
U | Complete Universal Date and Time, UTC |
|
p | Short date, local |
|
P | Extended date, local |
|
d | Short date, UTC |
|
D | Extended date, UTC |
|
t | Short time, local |
|
T | Extended time, local |
|
h | Short time, UTC |
|
H | Extended time, UTC |
|
Format | Description | Example |
---|---|---|
d | Numerical, without thousands separator. After the format placeholder, the number of decimal places is configured with an integer (without padding). |
|
n | Numerical, with thousands separator. After the format placeholder, the number of decimal places is configured with an integer (without padding). |
|
e | Exponential notation. After the format placeholder, the number of significant numbers is configured with an integer. |
|
f | Fixed-point notation. After the format placeholder, the exact number of decimal places is configured with an integer. |
|
p | Percentage. After the format placeholder, an integer is used to configure the number of decimal places. |
|
x | Hexadecimal notation. | 255 ► ff |
b | Binary notation. | 107 ► 1101011 |
o | Octal notation. | 56 ► 70 |
Format | Description | Example |
---|---|---|
c | Constant format: [-][d’.’]hh’:’mm’:’ss[‘.’fffffff] |
|
g | General short format: [-][d’.’]hh’:’mm’:’ss[‘.’fffffff] |
|
G | Extended general format: [-][d’.’]hh’:’mm’:’ss[‘.’fffffff] |
|
Format | Description | Example |
---|---|---|
l | All lowercase. | grüßEN ► grüßen |
u | All uppercase. | grüßEN ► GRÜSSEN |
t | All first letters uppercase. | grüßEN ► GRÜSSEN |
f | Case independent. | grüßEN ► grüssen |
Format | Description | Example |
---|---|---|
sql_identifier | Formats a given String or LocalizedText as a table or column identifier. | - |
sql_literal | Formats the value of a variable as an SQL literal value ( Number , String , date , time , and so on). | - |
Inverse formatting
The inverse formatting feature allows you to modify a formatted value at runtime to replace the value with a new value that the application displays with the same formatting at runtime.
The inverse formatting feature requires the following settings to operate correctly:
- The dynamic linkModeof the converter must beRead/Write.
- TheFormatfield must have only one placeholder or source. The placeholder can have a suffix and/or prefix and be set with a format string such as {0:n}.
Output
The string entered in the
Format
property, based on the formatting rules with values in place of the placeholder or placeholders.Example
SQL queries examples
Parameterize the name of the internal column with the condition:
SELECT * FROM Table1 WHERE {0:sql_identifier} > 5
Comparison with a data variable:
SELECT * FROM AlarmsDatalogger WHERE Time > {0:sql_literal}
Parameterize the
LIKE
operator:SELECT * FROM AlarmsDatalogger WHERE Name LIKE '{0}'
Parameterize a part of a query with a placeholder:
SELECT * FROM Table1 {0}
The placeholder with index
0
is linked to a project string variable and parameterizes a column; The placeholder with index 1
is linked to a numeric variable that represents the value for the comparison operator >
:SELECT * FROM {0:sql_identifier} WHERE Column1 > {1:sql_literal}
Parameterize the table name, the column and also the
LIKE
operator:SELECT {0:sql_identifier} FROM {1:sql_identifier} WHERE {0:sql_identifier} LIKE '{2}'
Provide Feedback