The value of Display Format is a string that encodes the formatting of data using the specifiers in the following table:
NUMERIC Data
0
Digit placeholder. If the value being formatted has a digit in the position where the "0" appears in the format string, then that digit is copied to the output string. Otherwise, a "0" is stored in that position in the output string.
#
Digit placeholder. If the value being formatted has a digit in the position where the "#" appears in the format string, then that digit is copied to the output string. Otherwise, nothing is stored in that position in the output string.
.
Decimal point. The first "." character in the format string determines the location of the decimal separator in the formatted value; any additional "." characters are ignored. The actual character used as the decimal separator in the output string is determined by the Number Format values of the Regional Settings section in the Windows Control Panel.
,
Thousand separator. If the format string contains one or more "," characters, the output will have thousand separators inserted between each group of three digits to the left of the decimal point. The placement and number of "," characters in the format string does not affect the output, except to indicate that thousand separators are wanted. The actual character used as the thousand separator in the output is determined by the Number Format values of the Regional Settings section in the Windows Control Panel.
E+
Scientific notation. If any of the strings "E+", "E-", "e+", or "e-" are contained in the format string, the number is formatted using scientific notation. A group of up to four "0" characters can immediately follow the "E+", "E-", "e+", or "e-" to determine the minimum number of digits in the exponent. The "E+" and "e+" formats cause a plus sign to be output for positive exponents and a minus sign to be output for negative exponents. The "E-" and "e-" formats output a sign character only for negative exponents.
'xx'/"xx"
Characters enclosed in single or double quotes are output as-is, and do not affect formatting.
;
Separates sections for positive, negative, and zero numbers in the format string.
The locations of the leftmost "0" before the decimal point in the format string and the rightmost "0" after the decimal point in the format string determine the range of digits that are always present in the output string.
The number being formatted is always rounded to as many decimal places as there are digit placeholders ("0" or "#") to the right of the decimal point. If the format string contains no decimal point, the value being formatted is rounded to the nearest whole number.
If the number being formatted has more digits to the left of the decimal separator than there are digit placeholders to the left of the "." character in the format string, the extra digits are output before the first digit placeholder.
To allow different formats for positive, negative, and zero values, the format string can contain between one and three sections separated by semicolons.
•One section - The format string applies to all values.
•Two sections - The first section applies to positive values and zeros, and the second section applies to negative values.
•Three sections - The first section applies to positive values, the second applies to negative values, and the third applies to zeros.
If the section for negative values or the section for zero values is empty, that is if there is nothing between the semicolons that delimit the section, the section for positive values is used instead.
If the section for positive values is empty, or if the entire format string is empty, the value is formatted using general floating-point formatting with 15 significant digits. General floating-point formatting is also used if the value has more than 18 digits to the left of the decimal point and the format string does not specify scientific notation.
DATE and TIME Data
c
The date using the format given by the DATE FORMAT value, followed by the time using the format given by the TIME FORMAT value. The time is not displayed if the fractional part of the DateTime value is zero.
d
The day as a number without a leading zero (1-31).
dd
The day as a number with a leading zero (01-31).
ddd
The day as an abbreviation (Sun-Sat) using the strings given by the operating system.
dddd
The day as a full name (Sunday-Saturday) using the strings given by the operating system.
ddddd
The date using the format given by the TIME FORMAT value.
dddddd
The date using the format given by the TIME FORMAT value.
m
The month as a number without a leading zero (1-12). If the m specifier immediately follows an h or hh specifier, the minute rather than the month is displayed.
mm
The month as a number with a leading zero (01-12). If the mm specifier immediately follows an h or hh specifier, the minute rather than the month is displayed.
mmm
The month as an abbreviation (Jan-Dec) using the strings given by the operating system.
mmmm
The month as a full name (January-December) using the strings given by the operating system.
yy
The year as a two-digit number (00-99).
yyyy
The year as a four-digit number (0000-9999).
h
The hour without a leading zero (0-23).
hh
The hour with a leading zero (00-23).
n
The minute without a leading zero (0-59).
nn
The minute with a leading zero (00-59).
s
The second without a leading zero (0-59).
ss
The second with a leading zero (00-59).
t
The time using the format given by the TIME FORMAT value.
tt
The time using the format given by the TIME FORMAT value.
am/pm
The time using the 12-hour clock for the preceding h or hh specifier, followed by "am" for any hour before noon, or "pm" for any hour after noon. The am/pm specifier can use lower, upper, or mixed case, and the result is displayed accordingly.
a/p
The time using the 12-hour clock for the preceding h or hh specifier, followed by "a" for any hour before noon, or "p" for any hour after noon. The a/p specifier can use lower, upper, or mixed case, and the result is displayed accordingly.
ampm
The time using the 12-hour clock for the preceding h or hh specifier, followed by the contents of the AM value of the operating system for any hour before noon, or the contents of the PM value of the operating system for any hour after noon.
/
The date separator character used in the DATE FORMAT value.
:
The time separator character given by the TIME FORMAT value.
'xx'/"xx"
Characters enclosed in single or double quotes are displayed as-is, with no formatting changes.
Format specifiers may be written in uppercase or lowercase letters; both produce the same result.
If the string given by the Format parameter is empty, the date and time value is formatted as if a c format specifier had been given.
Examples:
Display Format |
Result |
m/d/yy h:nn:ss AM/PM |
8/1/03 1:53:23 AM |
d/m/yy h:nn:ss AM/PM |
1/8/03 1:53:23 AM |
m/d/yy h:nn:ss |
8/1/03 1:53:23 |
d/m/yy h:nn:ss |
1/8/03 1:53:23 |
m/d/yy |
8/1/03 |
d/m/yy |
1/8/03 |
mm/dd/yy |
08/01/03 |
dd/mm/yy |
01/08/03 |
mm/dd/yyyy |
08/01/2003 |
dd/mm/yyyy |
01/08/2003 |
d_mmm_yy |
1-Aug-03 |
dd_mmm_yy |
01-Aug-03 |
mmmm d, yyyy |
August 1, 2003 |
d mmmm, yyyy |
1 August 2003 |
m/d |
8/1 |
d/m |
1/8 |
mmm_yy |
Aug-03 |
mmmm_yy |
August-03 |
dddd, mmmm d, yyyy h:nn:ss AM/PM |
Friday, August 1, 2003 1:53:23 AM |
dddd, mmmm d, yyyy h:nn AM/PM |
Friday, August 1, 2003 1:53 AM |
dddd, mmmm d, yyyy h:nn AM/PM
(Notice the additional space between date and time) |
Friday, August 1, 2003 1:53 AM |
INTEGER, NUMERIC, REAL, DOUBLE and CURRENCY Data
0
Digit placeholder. If the value being formatted has a digit in the position where the "0" appears in the format string, then that digit is copied to the output string. Otherwise, a "0" is stored in that position in the output string.
#
Digit placeholder. If the value being formatted has a digit in the position where the "#" appears in the format string, then that digit is copied to the output string. Otherwise, nothing is stored in that position in the output string.
.
Decimal point. The first "." character in the format string determines the location of the decimal separator in the formatted value; any additional "." characters are ignored. The actual character used as the decimal separator in the output string is determined by the Number Format values of the Regional Settings section in the Windows Control Panel.
,
Thousand separator. If the format string contains one or more "," characters, the output will have thousand separators inserted between each group of three digits to the left of the decimal point. The placement and number of "," characters in the format string does not affect the output, except to indicate that thousand separators are wanted. The actual character used as the thousand separator in the output is determined by the Number Format values of the Regional Settings section in the Windows Control Panel.
E+
Scientific notation. If any of the strings "E+", "E-", "e+", or "e-" are contained in the format string, the number is formatted using scientific notation. A group of up to four "0" characters can immediately follow the "E+", "E-", "e+", or "e-" to determine the minimum number of digits in the exponent. The "E+" and "e+" formats cause a plus sign to be output for positive exponents and a minus sign to be output for negative exponents. The "E-" and "e-" formats output a sign character only for negative exponents.
'xx'/"xx"
Characters enclosed in single or double quotes are output as-is, and do not affect formatting.
;
Separates sections for positive, negative, and zero numbers in the format string.
The locations of the leftmost "0" before the decimal point in the format string and the rightmost "0" after the decimal point in the format string determine the range of digits that are always present in the output string.
The number being formatted is always rounded to as many decimal places as there are digit placeholders ("0" or "#") to the right of the decimal point. If the format string contains no decimal point, the value being formatted is rounded to the nearest whole number.
If the number being formatted has more digits to the left of the decimal separator than there are digit placeholders to the left of the "." character in the format string, the extra digits are output before the first digit placeholder.
Examples:
Display Format |
Value |
Result |
Comment |
#.## |
12.2 |
12.2 |
Note extra digit to left of decimal still appears |
#.00 |
2.5 |
2.50 |
Note extra zero: field will always show two decimal places |
00.## |
.006 |
00.01 |
Note extra 0s to right of decimal point and rounding to two decimal places. |
To allow different formats for positive, negative, and zero values, the format string can contain between one and three sections separated by semicolons.
•One section - The format string applies to all values.
•Two sections - The first section applies to positive values and zeros, and the second section applies to negative values.
•Three sections - The first section applies to positive values, the second applies to negative values, and the third applies to zeros.
If the section for negative values or the section for zero values is empty, that is, if there is nothing between the semicolons that delimit the section, the section for positive values is used instead.
If the section for positive values is empty, or if the entire format string is empty, the value is formatted using general floating-point formatting with 15 significant digits. General floating-point formatting is also used if the value has more than 18 digits to the left of the decimal point and the format string does not specify scientific notation.
Additional Examples:
Display Format |
Value |
Result |
#,0;-#,0 |
1234.40 |
1,234 |
#,0;-#,0 |
-1234.40 |
1,234 |
#,0.00;-#,0.00 |
1234.40 |
1,234.40 |
#,0.00;-#,0.00 |
-1234.40 |
-1,234.40 |
#,0.00;(#,0.00) |
-1234.40 |
(1,234.40) |
$#,0.00;($#,0.00) |
-1234.40 |
($1,234.40) |
$#,0.00;-$#,0.00 |
-1234.40 |
-$1,234.40 |
$#,0;-$#,0 |
-1234.40 |
-$1,234 |
Examples to use a Line Count in Reports:
###'.' |
1 |
1. |
###'.' |
22 |
22. |
###'.' |
999 |
999. |
Specific Data Type Examples:
Data Type |
Actual Value |
Display Format |
Result |
||
INTEGER |
123456789 |
#,0;_#,0 |
123,456,789 |
||
REAL |
99.98766 |
#.### |
99.988 |
||
DATE |
08/01/2003 |
mmmm d, yyyy dd_mmm_yy dddd mmmm dd, yyyy |
August 1 2003 01-Aug-03 Friday August 01, 2003 |
||
DATETIME |
08/01/2003 01:53:00 AM |
dddd, mmmm d yyyy h:nn AM/PM |
Friday, August 1, 2003 1:53 AM
|
||
TIME |
01:53:00 AM |
h:nn:ss h:nn AM/PM |
1:53:00 1:53 AM |
||
CURRENCY |
$99,999,999,999.99 |
#,0.00;-#,0.00 #,0;-#,0 |
99,999,999,999.99 100,000,000,000 |
||
DOUBLE |
99.8765432112367 |
#,0.00;-#,0.00 #,0;-#,0 |
99.99
|
||
NUMERIC |
12345678901 |
#,0.00;-#,0.00 #,0;-#,0 |
12,345,678,901.00 12,345,678,901 |