Quintiq file version 2.0 
 | 
#parent: #root 
 | 
Method DataCollectBasedOnInterest (LibDMF_Interest interest_i, Boolean isNotificationOnly, output LibDMF_SetType setType_o,  
 | 
  output LibDMF_Set set_o, output DateTime lastUpdated) as owning structured_Object 
 | 
{ 
 | 
  Description: 'Collect data based on interest (set or set type) passed. Also return last updated time stamp, and set and set type as output parameter' 
 | 
  TextBody: 
 | 
  [* 
 | 
    // derred beh Nov-11-2015 (created) 
 | 
     
 | 
    data := null( structured_Object, owning ); 
 | 
     
 | 
    // Collect data (if not notification only ) from either SetType or Set 
 | 
    if( interest_i.Data().istype( LibDMF_SetType ) ) 
 | 
    { 
 | 
      setType_o := interest_i.Data().astype( LibDMF_SetType ); 
 | 
     
 | 
      if( not isNotificationOnly ) 
 | 
      { 
 | 
        setTypes := construct( LibDMF_SetTypes ); 
 | 
        setTypes.Add( setType_o ); 
 | 
        data := this.DataCollect( setTypes ); 
 | 
        lastUpdated := setType_o.TimestampLastUpdated(); 
 | 
      } 
 | 
    } 
 | 
    else 
 | 
    { 
 | 
      set_o := interest_i.Data().astype( LibDMF_Set); 
 | 
      setType_o := set_o.SetType(); 
 | 
     
 | 
      if( not isNotificationOnly ) 
 | 
      { 
 | 
        data := this.DataCollect( set_o ); 
 | 
        lastUpdated := set_o.TimestampLastUpdated(); 
 | 
      } 
 | 
    } 
 | 
     
 | 
    return &data; 
 | 
  *] 
 | 
} 
 |