Value property
Special value available in formulas:
Item
The field this property is part of, enabling multiple checked items in the app designer to share the same formula and be updated all at once.
Consider the fields Field1 and Field2, which should
only be considered to be valid if their values are
greater than 4. Without using the Item
value, the Valid
property of Field1 would need to use the formula Field1 > 4Field1 > 4 and the Valid
property of Field2 would need to use the formula Field2 > 4Field2 > 4.
Using Item
, both formulas can read Item > 4Item > 4. This is useful
if you have many fields and you want to be able to update their
formulas all at once. To do so, click their check boxes in Calcapp
Creator and make sure that a checked field is selected. Then, when you
update a formula for one checked field, you update all the other
checked fields too, which is a great timesaver.
Use Item
in exactly the same way you'd use the regular
name. Field1.VisibleField1,Visible and Item.VisibleItem,Visible are equivalent, for
instance.
The value of the field. If no formula is associated with this property, the date and time field is an input field that users use to enter and edit values. If a formula is associated with this property, the date and time field is an output field that displays a calculated value derived through the formula.
The value of a date and time field is a sequential serial number. The integer part of the number represents the number of days that have elapsed since December 31, 1899, and the fractional part represents the time of day. The number 10.75 represents the 10th of January, 1900, at 6 PM (18:00). (0.75 means that three quarters of a day have elapsed.)
Specialized date and time functions
There are many specialized date and time functions that can process and return sequential serial numbers. Here are some of the most useful date and time functions:
- NOW returns the current date and time.
- TODAY returns the current date.
- DATE returns a specific date.
- TIME returns a specific time.
- YEAR, MONTH and DAY extract the year, month and day, respectively, from a sequential serial number.
- HOUR, MINUTE and SECOND extract the hour, minute and second, respectively, from a sequential serial number.
- WEEKDAY extracts the day of the week from a sequential serial number.
- NETWORKDAYS calculates the number of whole working days between two dates.
Using regular functions and operators to process dates and times
As regular numbers, you can also use standard numeric functions and operators to process sequential serial numbers, as long as you keep in mind how dates and times are stored. Again, dates are stored as the integer part of the sequential serial number and times are stored as the fractional part. As such, September 30, 2021, at 6 AM is stored as 44469.25. (0.25 means that one quarter of a day has elapsed.)
We can use that information to combine the DATE and TIME functions to create a formula which returns the date and time above:
The two sequential serial numbers produced by the DATE and TIME functions are simply added together to combine the date and time into a single sequential serial number.
To calculate the number of days between two dates, subtract one sequential serial number from another and take the absolute value of the result (to prevent the result from being negative):
To remove the time portion from a sequential serial number, truncate the number:
To remove the date portion from a sequential serial number, use this formula:
Referencing date and time field values from formulas
When referencing a date and time field value from a formula, there is no need to write .Value,Value after the field name if a number is sought. These formulas are equivalent:
Above, the HOUR function is looking to extract the hour (0 through 23) from a sequential serial number. As DateTimeField1DateTimeField1 can return a number through its Value property, .Value,Value is implied.
Examples
Returns the hour (0 through 23) from the value of DateTimeField1.
Returns the hour (0 through 23) from the value of DateTimeField1. Writing out the Value property in formulas (by writing DateTimeField1.ValueDateTimeField1,Value) is rarely necessary.
Returns a sequential serial number representing the date of DateField1 (configured to only allow dates to be entered, no times) and the time of TimeField1 (configured to only allow times to be entered, no dates).
Returns the day of the week from DateTimeField1. If the field represents a Monday, 2 is returned.
Returns the number of days between the two date and time fields.
Returns a sequential serial number representing the date of DateTimeField1, with its time portion removed.