renhao
2023-10-18 ff1d40a1a235da7c3bdfa26070af267f19c7a3d3
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
Quintiq file version 2.0
#parent: #root
StaticMethod GetVersionData (
  GlobalOTDSOP owner,
  String businessname
)
{
  Description: '抽取并处理版本数据'
  TextBody:
  [*
    // Administrator Sep-14-2023 (created)
    businesstype := GlobalOTDTable::GetBusinessTypeName( businessname );
    releasetime := DateTime::ActualTime();
    // Clean exist data
    traverse( owner, MappingVersionControl, mpc, true ){
      mpc.Delete();
    }
    
    // Get Data From DB
    //owner.Broker_OTD_VersionControl().Execute();
    
    // Get Data list to deal
    listtodeal := selectset( owner, MappingVersionControl, item, item.DataTo() = businesstype );
    
    traverse( listtodeal, Elements, item, true ){
      versionid := item.VersionID();
      existversion := VersionControl::FindByFullVersionID( owner, versionid );
      if( isnull( existversion ) ){
        longversionname := item.VersionName();
        longversionnamelist := longversionname.Tokenize( "-" );
        shortversionname := longversionnamelist.Element( longversionnamelist.Size() - 1 );
        caltype := shortversionname.SubString( 0, 10 );
        shortversionid := versionid.ReplaceAll( "-" + caltype, "" );
        newversioncontrol := VersionControl::Create( owner, 
                                                     item.DataFrom(), 
                                                     caltype, 
                                                     item.CreateTime(), 
                                                     shortversionid, 
                                                     longversionname, 
                                                     shortversionname, 
                                                     item.User() );
        newversioncontrol.IsReleased( true );
        newversioncontrol.ReleaseTime( releasetime );
        } 
      }
  *]
}