Difference between revisions of "Adding a given number of days to a date based on the value of a dropdown"

From SmartWiki
Jump to: navigation, search
(Solution)
Line 5: Line 5:
 
Create a [[Custom Field Type: Special – Calculated Value|Special – Calculated Value]] custom field with expressions equivalent to the following:
 
Create a [[Custom Field Type: Special – Calculated Value|Special – Calculated Value]] custom field with expressions equivalent to the following:
  
===Where the date to be added to is a custom field with a [[custom field id]] of 12345 and the dropdown list is named ''Client Category''===
+
===Where the date to be added to is a custom field with a [[Custom Field ID]] of 12345 and the dropdown list is named ''Client Category''===
 
  [Client Category]=='Regular'?busdateadd(frm.cf_12345.value,10):[Client Category]=='Under Investigation'?busdateadd(frm.cf_12345.value,5):[Client Category]=='Special'?busdateadd(frm.cf_12345.value,30):'0000-00-00'
 
  [Client Category]=='Regular'?busdateadd(frm.cf_12345.value,10):[Client Category]=='Under Investigation'?busdateadd(frm.cf_12345.value,5):[Client Category]=='Special'?busdateadd(frm.cf_12345.value,30):'0000-00-00'
 
===Where the date to be added to is the [[standard field]] "Start Date" and the dropdown list is ''Time Line''===
 
===Where the date to be added to is the [[standard field]] "Start Date" and the dropdown list is ''Time Line''===
 
  [Time Line]=='Regular'?busdateadd(frm.startdate.value,10):[Time Line]=='Under Investigation'?busdateadd(frm.startdate.value,5):[Time Line]=='Special'?busdateadd(frm.startdate.value,30):'0000-00-00'
 
  [Time Line]=='Regular'?busdateadd(frm.startdate.value,10):[Time Line]=='Under Investigation'?busdateadd(frm.startdate.value,5):[Time Line]=='Special'?busdateadd(frm.startdate.value,30):'0000-00-00'
  
The  
+
The above calculations follow the rules:
 
+
* If the dropdown field is set to "Regular," the value of this field will be 10 business days after the specified date field
 +
* If the dropdown field is set to "Under Investigation," the value of this field will be 5 business days after the specified date field
 +
* If the dropdown field is set to "Special," the value of this field will be 30 business days after the specified date field
 +
* If the dropdown field is set to none of the above values, the value of this field will be '0000-00-00'
  
 
==See Also==
 
==See Also==

Revision as of 16:00, 8 November 2013

Problem

A date must be displayed which is a number of business days after a date shown in an existing field. The number of days to be added will vary depending on the value of a dropdown field elsewhere on the page.

Solution

Create a Special – Calculated Value custom field with expressions equivalent to the following:

Where the date to be added to is a custom field with a Custom Field ID of 12345 and the dropdown list is named Client Category

[Client Category]=='Regular'?busdateadd(frm.cf_12345.value,10):[Client Category]=='Under Investigation'?busdateadd(frm.cf_12345.value,5):[Client Category]=='Special'?busdateadd(frm.cf_12345.value,30):'0000-00-00'

Where the date to be added to is the standard field "Start Date" and the dropdown list is Time Line

[Time Line]=='Regular'?busdateadd(frm.startdate.value,10):[Time Line]=='Under Investigation'?busdateadd(frm.startdate.value,5):[Time Line]=='Special'?busdateadd(frm.startdate.value,30):'0000-00-00'

The above calculations follow the rules:

  • If the dropdown field is set to "Regular," the value of this field will be 10 business days after the specified date field
  • If the dropdown field is set to "Under Investigation," the value of this field will be 5 business days after the specified date field
  • If the dropdown field is set to "Special," the value of this field will be 30 business days after the specified date field
  • If the dropdown field is set to none of the above values, the value of this field will be '0000-00-00'

See Also