lazhen
2024-07-01 17dc904834ee19f0e57db374aaadea932acdaf00
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: PanelFinancialSalesReportOperation/ButtonSalesImport
Response OnClick () id:Response_PanelFinancialSalesReportOperation_ButtonSalesImport_OnClick
{
  #keys: '[415136.0.858621764]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  Precondition:
  [*
    return not isnull( MacroPlan );
  *]
  QuillAction
  {
    Body:
    [*
      try {
        uploadJsonString := Application.GetFile();
        if ( uploadJsonString <> "" ) {
          uploadJson := JSON::Parse( uploadJsonString );
          Archive::VerifyTheFileName( uploadJson );
                
          fileName := uploadJson.Get( "name" ).GetString();
          base64String := uploadJson.Get( "data" ).GetString();
              
          webFileBinaryData := BinaryData::FromBase64EncodedString( base64String ).AsBinaryValue();
          
          source := FinancialSalesSource::Upload( MacroPlan, webFileBinaryData, fileName );
          source.ReadStructure();
          //如果存在计划开始后的日期数据需要点击确认
          if( not source.IsExistFutureMonthData() or 
              ( source.IsExistFutureMonthData() and WebMessageBox::Question( this, Translations::MP_FinancialProductionReport_Question(), 'Yes|No' ) = 0 ) ){
             source.AfterImport();
             DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() );
          }
          
          WebMessageBox::Success( Translations::A_VWED_Success() );
          traverse( MacroPlan, FinancialSalesSource, psource, psource.IsImport() and psource <> source ){
            psource.Delete();
          }
        }
      } onerror {
        WebMessageBox::Error( e.GeneralInformation() );
      }
    *]
    GroupServerCalls: false
  }
}