code: private Object[] processSymbolicValues(Object[] oldValues, FieldContainer container, Map<GenericCriteriaPrompt, Object> promptValues)
     {
        Object[] newValues = new Object[2];
  
        for (int loop = 0; loop < oldValues.length; loop++)
        {
           Object value = oldValues[loop];
           if (value == null)
           {
              continue;
           }
  
           if (value instanceof FieldType)
           {
              FieldType type = (FieldType) value;
              value = container.getCachedValue(type);
  
              switch (type.getDataType())
              {
                 case DATE:
                 {
                    if (value != null)
                    {
                       value = DateHelper.getDayStartDate((Date) value);
                    }
                    break;
                 }
  
                 case DURATION:
                 {
                    if (value != null && ((Duration) value).getUnits() != TimeUnit.HOURS)
                    {
                       value = ((Duration) value).convertUnits(TimeUnit.HOURS, m_properties);
                    }
                    else
                    {
                       value = Duration.getInstance(0, TimeUnit.HOURS);
                    }
                    break;
                 }
  
                 case STRING:
                 {
                    value = value == null ? "" : value;
                    break;
                 }
  
                 default:
                 {
                    break;
                 }
              }
           }
           else
           {
              if (value instanceof GenericCriteriaPrompt && promptValues != null)
              {
                 GenericCriteriaPrompt prompt = (GenericCriteriaPrompt) value;
                 value = promptValues.get(prompt);
              }
           }
           newValues[loop] = value;
        }
        return (newValues);
     }
docs: This method is called to create a new list of values, converting from
  any symbolic values (represented by FieldType instances) to actual
  values retrieved from a Task or Resource instance.
  
  @param oldValues list of old values containing symbolic items
  @param container Task or Resource instance
  @param promptValues response to prompts
  @return new list of actual values