2016-02-21 74 views
1

首次採用alasql到XLSX文件,和一般的SQL,但是試圖導出多個JSON對象XLSX文件 我使用出口多個JSON對象使用alasql

alasql('SELECT * INTO XLSX("Report.xlsx",{headers:true}) FROM ?', [$scope.children, $scope.answer, $scope.optional, $scope.user]); 

只爲第一目標工作正常在數組($ scope.children)中,但從不顯示這些對象的其餘部分。 有沒有任何線索我如何將所有這些對象添加到只有一個表。

另外我試圖合併所有的對象只有一個對象,但沒有工作,我只得到表頭,但它沒有顯示正確的數據,它只顯示(對象對象)表格單元格內。

+0

'insert into xlsx' does not work? –

+0

我不明白你的意思?報告文件不存在 – kero

回答

0

您希望Excel文件中有什麼結果?

如果這是爲每個陣列不同片材的多個片材文件應該是

var opts = [{sheetid:'Children'},{sheetid:'Answer'}, 
    {sheetid:'Optional'},{sheetid:'User'}]; 

alasql('SELECT INTO XLSX("Report.xlsx") FROM ?', 
     [opts,[$scope.children, $scope.answer, $scope.optional, $scope.user]]); 

在情況下,如果要將所有這些陣列合併成一個陣列,需要先製備它,例如:

var arr = []; 
$scope.children.forEach(function(ch,idx){ 
    arr.push({child:$scope.children[idx], answer:$scope.answer[idx], 
        optional:$scope.optional[idx],$scope.user[idx] 
    }); 
}); 

alasql('SELECT * INTO XLSX("Report.xlsx") FROM ?',[arr]); 

如果你能提供有關的$ scope.children結構,$ scope.answer和其他對象(或數組),我可以調整回答您的需求更多的細節。

+0

$ scope.answer,$ scope.optional,$ scope.user是簡單的json對象,但$ scope.children是對象數組:$ scope.children = [{firstName:''「, lastName:「」,isStudent:「」},{firstName:''「,lastName:」「,isStudent:」「}]'這個對象是xlsx文件中的一個顯示爲[Object object] – kero