yanweiyuan3
2023-08-09 588bc7829387dfc761cc25f06f77d4c81818bd10
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
Quintiq file version 2.0
#parent: #root
Method Update (
  Unit owner,
  DateTime earlieststart,
  Duration duration,
  Number sequencenumberforexcel,
  Real minqty,
  Real maxqty,
  Duration minduration,
  Duration maxduration,
  String campaigntypename,
  String campaignid,
  String comment,
  Boolean hasinputmaxquantity,
  Boolean hasinputmaxduration,
  Boolean isfromdb
)
{
  Description: 'Update Campaign'
  TextBody:
  [*
    if( owner <> this.Unit()
        or sequencenumberforexcel <> this.SequenceNumberForExcel() )
    {
      this.ResetPeriodTasks();
    }
    
    owner.Campaign_MP( relmove, this );
    maxqty := ifexpr( hasinputmaxquantity, maxqty, 0 );
    maxduration := ifexpr( hasinputmaxduration, maxduration, Duration::Zero() );
    
    this.UpdateTypeIndex( owner.ID(), campaignid, campaigntypename );
    this.EarliestStart(earlieststart );
    this.Duration( duration );
    this.SequenceNumberForExcel( sequencenumberforexcel );
    this.HasInputMaxQuantity( hasinputmaxquantity );
    this.HasInputMaxDuration( hasinputmaxduration );
    this.CampaignTypeName( campaigntypename );
    this.MinQuantity( minqty );
    this.MaxQuantity( maxqty );
    this.MinDuration( minduration );
    this.MaxDuration( maxduration );
    this.Comment( comment );
    
    this.IsManuallyConfigured( not isfromdb );
  *]
}