Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 使用Alasql可以用空字符串替换空列_Angularjs_Excel_Alasql - Fatal编程技术网

Angularjs 使用Alasql可以用空字符串替换空列

Angularjs 使用Alasql可以用空字符串替换空列,angularjs,excel,alasql,Angularjs,Excel,Alasql,在我的角度控制器中,我有ExportToExcel函数,它使用alasql将数据导出到Excel,数据来自角度数组。 问题是数组可能包含null作为数据,这是将alasql中的null替换为空字符串的一种方法吗 下面是函数 ac.ExportToExcel = function () { var time = new Date().toJSON().slice(0, 10); alasql('SELECT * INTO XLSX("ExchangeReport'

在我的角度控制器中,我有ExportToExcel函数,它使用alasql将数据导出到Excel,数据来自角度数组。 问题是数组可能包含null作为数据,这是将alasql中的null替换为空字符串的一种方法吗

下面是函数

 ac.ExportToExcel = function () {
        var time = new Date().toJSON().slice(0, 10);
        alasql('SELECT * INTO XLSX("ExchangeReport' + time + '.xlsx",{headers:true}) FROM ? WHERE BillingPeriod = "' + ac.ExchangeReport.BillingPeriod + '" or "' + ac.ExchangeReport.BillingPeriod + '" = "" ', [ac.ExchangeDatas]);
    }
这是我的数据源

ac.ExchangeDatas = [];

excel中的数据:


您应该能够使用
COALESCE
,尽管您需要将所有列(如
COALESCE(YourColumn'))列为YourColumn
,而不是
*
。看

        ac.GetAllExchangeData = function () {
        AccountRepository.GetAllExchangeData().$promise.then(
            function (data) {
                ac.ExchangeDatas = data.result;
            },
            function (err) {
                console.log("error in GetAllExchangeData : " + err);
            }
        );
    }
var old = JSON.stringify($scope.achData).replace(/null/g, '""'); //convert to 
JSON string and puts empty string in place of null values   
var newArray = JSON.parse(old); //convert back to array  
alasql('select * into XLSX("amar.xlsx", {headers:true}) from ?', [newArray]);