admin
2025-01-22 7e31442f0e9b07764e9c6a9680d3d4aeba5fe1de
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
Quintiq file version 2.0
#parent: #root
StaticMethod Synchronize (
  InterfaceDataset owner,
  String executor
)
{
  TextBody:
  [*
    //// 甄兰鸽 Jul-17-2024 (created)
    date    := Date::ActualDate() - Duration::Days( 1 );
    loginfo := owner.InterfaceLoginfo( relnew, ExecuteUser := executor
                                       , Name := Translations::InterfaceDataset_ShippingActualData_Name()
                                       , InterfaceDateTime := DateTime::ActualTime()
                                       , Message := '发运实际数据'
                                       , RequestBody := ShippingActualData::GetRequestBody( date.Date()) );
    // vwedadmin Jul-18-2024 (created)
    //address := "ds-yunrong-gw.dmp.vwfawedl.mobi"; 
    //
    //           /// http://ds-yunrong-gw.dmp.vwfawedl.mobi/data-service/api/service/post-data/V1.101/f4f94c47c1a2440898b5e1e2c0c5cbc8 
    //httpinterface := HTTPInterface::Create( address,80);
    //                httpinterface.URL("/data-service/api/service/post-data/V1.101/f4f94c47c1a2440898b5e1e2c0c5cbc8");
    //httpinterface.MediaType("application/json");
    ////httpinterface.SSL(true);
    ////httpinterface.SSLKeystore("MyKeystore");
    //httpinterface.PostMethod(true); 
    ////str :='{
    ////    "inParam":
    ////        {
    ////            "dday" : "2024-07-11"
    ////        }
    ////}'
    //httpinterface.AddHeader("Authorization","MTlLeG94UEYyNWN5OTZLOFRMXzUyNzA4ODkwNzg1NTA2OTIxNV9wcml2YXRlS2V5XzE3MjEzMDM4Nzc0NTE=")
    //httpinterface.Call( ShippingActualData::GetRequestBody( column.StartDate() ) ); //Sends request with the header Authorization: 538baa9045a84c0e889f 可以传递动态token 的吧
    //result := httpinterface.Result();
    
    data := InterfaceLoginfo::CallInterface( owner, loginfo );
    if( not isnull( data ) ){
      cnv1 := StringToDateTime::StandardConverter();
      cnv1.SetCustomConversion();
      cnv1.CustomFormatString( 'yyyy-MM-dd HH:mm:ss' );
      
      cnv2 := StringToDate::StandardConverter();
      cnv2.SetCustomConversion();
      cnv2.CustomFormatString( 'yyyy-MM-dd' );
      column  := owner.ShippingActualColumn( relnew, StartDate := date.Date(), Index := owner.ShippingActualColumn( relsize ) );
      
      sadatalist := construct( ShippingActualDatas );
      for( seq := 0;seq < data.Size();seq++){
        item := data.Get(seq);
        sadata := ShippingActualData::GenerateData( loginfo, cnv1, cnv2, item );
        sadatalist.Add( sadata );
      }
      beforerowsize := owner.ShippingActualRow( relsize );
      traverse( sadatalist, Elements, e ){
        row := selectobject( owner, ShippingActualRow, row, row.Name() = e.FourCode() and row.Fac() = e.Fac() );
        if( isnull( row ) ){
          row := owner.ShippingActualRow( relnew, Name := e.FourCode(), Fac := e.Fac() );
        }
        
        cell := row.ShippingActualCell( relnew, Quantity := e.Quantity() );
        column.ShippingActualCell( relinsert, cell );
      }
      if( beforerowsize <> owner.ShippingActualRow( relsize ) ){
        traverse( owner, ShippingActualColumn, sacolumn ){
          traverse( owner, ShippingActualRow, row ) {
            if( not exists( row, ShippingActualCell, cell, cell.ShippingActualColumn() = sacolumn ) ){
              cell := row.ShippingActualCell( relnew, Quantity := 0 );
              sacolumn.ShippingActualCell( relinsert, cell );
            }
          }
        }
        rows := selectsortedset( owner, ShippingActualRow, row, row.Name() );
        nr    := 0;
        traverse( rows, Elements, e ){
          e.RowNr( nr );
          nr := nr + 1;
        }
      }
    }
  *]
}