lazhen
2025-01-09 8afe90b633046db39042aada36b88193062f8cff
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
Quintiq file version 2.0
#parent: #root
Method ReadStructure
{
  TextBody:
  [*
    tableGroupHandle := TableGroupHandle::Create( this.Name() );
    tableGroupHandle := XLS::LoadTableGroupFromBinaryData( this.FileBinaryValue().AsBinaryData(), tableGroupHandle, true, this.IsXLSX() );
    sheets := tableGroupHandle.TableNames();
    
    traverse ( sheets, Elements, sheetName ) {
      tableHandle := tableGroupHandle.Table( sheetName );
      tableXML := TableHandle::ExportXML( tableHandle );
      
    //  info( tableXML.AsQUILL() );
      
      FinancialSalesReport::XMLImportFinancialSalesReportXMLHeaders( tableXML );
      xlstable := FinancialSalesReport::XMLImportFinancialSalesReportXML( tableXML );
      
      xlstable.SyncRows();
      
      xlstable.Name( sheetName );
      xlstable.IsImport( true );
      this.FinancialSalesReport( relinsert, &xlstable ); 
      
      Transaction::Transaction().Propagate( attribute( FinancialSalesColumn, Index ) );
      
      // (导入前)给空值赋予默认值(N/A),并且删除空行数据和数据校验
      xlstable.IdentifyNullValues();
      
      xlstable.ImportVerification();
    }
    //导入后处理数据
    //this.AfterImport();
  *]
}