Create several fields of the specified types:
On the custom fields administration page click the "add custom field" button
select the screens where you want to see the fields
Then go to the field context configuration page
Click on " Edit Formula field config"
the interface opens for configuring the formula
Formula:
(function(){ var startDateCustomFieldId = 10200;//Date picker - Start Date var testDaysCustomFieldId = 10201;//Number field - Test Length in Days if(cfValues[startDateCustomFieldId] != null){ return cfValues[startDateCustomFieldId].time + cfValues.getOrDefault(testDaysCustomFieldId, 0)*24*60*60*1000 } })() |
Prepare value for view:
if(formulaValue != null){ "" + formulaValue.date + "/" + (formulaValue.month+1) + "/" + (formulaValue.year-100) } |
View:
$prepareFormulaValue |
Formula:
(function(){ var endDateCustomFieldId = 10011;//Formula date field - End Date var agingCustomFieldId = 10202;//Number field - Aging Length in Days if(cfValues[endDateCustomFieldId] != null){ return cfValues[endDateCustomFieldId].time + cfValues.getOrDefault(agingCustomFieldId, 0)*24*60*60*1000 } })() |
Prepare value for view:
if(formulaValue != null){ "" + formulaValue.date + "/" + (formulaValue.month+1) + "/" + (formulaValue.year-100) } |
View:
$prepareFormulaValue |
Formula:
(function(){ var startDateCustomFieldId = 10101;//Date picker - Start Date var testDaysCustomFieldId = 10200;//Number field - Test Length in Days return calculate() function calculate(){ var now = new Date() var start = cfValues[startDateCustomFieldId] var testingDays = cfValues[testDaysCustomFieldId] if(start == null || start.getTime() > now.getTime() || testingDays == null || testingDays == 0){ return 0 } else { return Math.min(100, Math.round(dayBetweenDates(start, now)/testingDays*100)) } } function dayBetweenDates(date1, date2){ return (date2.getTime() - date1.getTime())/ (1000 * 3600 * 24) } })() |
View:
$formulaValue% |
Formula:
(function(){ var endDateCustomFieldId = 10011;//Formula date field - End Date var agingCustomFieldId = 10202;//Number field - Aging Length in Days return calculate() function calculate(){ var now = new Date() var end = cfValues[endDateCustomFieldId] var agingDays = cfValues[agingCustomFieldId] if(end == null || end.getTime() > now.getTime() || agingDays == null || agingDays == 0){ return 0 } else { return Math.min(100, Math.round(dayBetweenDates(end, now)/agingDays*100)) } } function dayBetweenDates(date1, date2){ return (date2.getTime() - date1.getTime())/ (1000 * 3600 * 24) } })() |
View:
$formulaValue% |