chenqinghong
2024-05-07 3ec06a830367465068963156dcc1d8e522571c13
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Quintiq file version 2.0
#parent: #root
Method CreateUpdateSubscriptions () id:Method_LibCal_dlgSubscription_CreateUpdateSubscriptions
{
  #keys: '[146730.0.242131378]'
  Body:
  [*
    if( dhParticipationsToSubscribeTo.Data().Size() <= 1 )
    {
      // Create or update a single subscription.
      this.CreateUpdateSubscription();
    }
    else
    {
      // Create multiple subscriptions
      subscribers := dhSubscribers.Data();
      subscribeTo := dhParticipationsToSubscribeTo.Data(); 
      
      useLeadingPeriod := ckbAllOccurrences.Checked();
      periodType       := ifexpr( ckbEndOfPeriod.Checked(), LibCal_RecurrencePeriod::TYPE_WITHENDDATE(),
                                                            LibCal_RecurrencePeriod::TYPE_WITHOUTEND() );
      startofPeriod    := dsStartOfPeriod.Date();
      endOfPeriod      := dsEndOfPeriod  .Date();
      nrOfOccurrences  := 1;  // Dummy, NrOfOccurrences is not supported for Subscriptions
      
      // Make it happen in the Server.
      LibCal_Subscription::CreateSubscriptions( subscribers, subscribeTo,
                                                useLeadingPeriod, periodType, 
                                                startofPeriod, nrOfOccurrences, endOfPeriod );    
    }
  *]
}