2017-02-09 12 views
1

Я пытался конвертировать CSV-файл в .xls или .xlsx, и я добился успеха в этом. Но проблема в том, что файл не открывается. Он показывает, что невозможно открыть формат файла.Как преобразовать файл csv в xls или xlsx в sapui5?

Это следующий код, который я использовал.

1. var oExport = new sap.ui.core.util.Export({ 
       exportType : new sap.ui.core.util.ExportType({ 
        separatorChar : ",", 
        fileExtension : "xlsx", 
        mimeType: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", 
       }), 
       models : oModel, 

       rows : { 
        path : "/" 
       }, 
       columns : [ itemsArray ] 
      }); 
      oExport.saveFile(oFileName).always(function() { 
       this.destroy(); 
      }); 

Когда я скачу, размер файла будет равен нулю. Следовательно, это не имеет значения. И я попытался с альтернативным способом.

2.var oExport = new sap.ui.core.util.Export({ 
       exportType : new sap.ui.core.util.ExportTypeCSV({ 
        separatorChar : ",", 
        fileExtension : "xlsx", 
        mimeType: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", 
       }), 
       models : oModel, 

       rows : { 
        path : "/" 
       }, 
       columns : [ itemsArray ] 
      }); 
      oExport.saveFile(oFileName).always(function() { 
       this.destroy(); 
      }); 

Когда я использую вышеуказанный код, файл будет иметь некоторые данные, но не сможет его открыть. Может ли кто-нибудь помочь мне с этим?

спасибо.

+0

Получаете ли вы данные из службы OData шлюза Netweaver? –

+0

Спасибо, что ответили, я получаю шлюз данных. Но я пытаюсь загрузить данные, которые видны в интерфейсе (вид). Я могу загрузить шлюз формы данных, но результат не будет таким, каким я ожидал. Я просто хочу преобразовать csv в xls или xlsx. – Farooq

+0

Если бы вы загрузили напрямую со шлюза, добавив параметр к запросу odata (? $ Format = xlsx), он выполнил бы эту работу. Через UI5 экспорт CSV работает из коробки, экспорт Excel будет сложным –

ответ

0

AFAIK sapui5 не предоставляет эту функциональность из коробки. Поэтому вам может понадобиться управлять им самостоятельно.

Это может помочь вам https://github.com/SheetJS/js-xlsx.

Мы использовали его для чтения xlsx-файлов, но, похоже, он помогает вам их написать.

+0

Благодарим вас за предложение. Я обязательно пройду через это. – Farooq

Смежные вопросы