хочу скачать sap.m. Данные таблицы в Excel, но Excel отображает GUID вместо значения. Для отображения таблицы я использовал onUpdatedFinished () и конвертировал GUID в TEXT, и то же самое я хочу достичь в EXCEL. Пожалуйста, предложите. Например, таблица в пользовательском интерфейсе отображается с именем клиента «AB C», как мы использовали «onUpdateFinished ()» и при загрузке в EXCEL, отображается как GUID «5e8361a0e9f8262658abbe41».
Просмотр кода:
<Table id="idTable1"
items="{
path: '/StockItems',
sorter: {
path: 'Date',
descending: 'true'
}
}"
mode="MultiSelect" growing="true"
growingThreshold="20" updateFinished="onUpdateFinished">
<headerToolbar>
<Toolbar>
<Title id="idTitle" text="{i18n>allEntries}"></Title>
<ToolbarSpacer/>
<Button id="idDelete" icon="sap-icon://delete" press="onDelete"></Button>
<Button id="idDownlaod" icon="sap-icon://download" press="onExportPdf"></Button>
</Toolbar>
</headerToolbar>
<columns>
<Column>
<Label text="Date"></Label>
</Column>
<Column>
<Label text="Order Number" />
</Column>
<Column>
<Label text="Material" />
</Column>
<Column>
<Label text="Quantity"></Label>
</Column>
<Column>
<Label text="Weight"></Label>
</Column>
<Column>
<Label text="Created By"></Label>
</Column>
<Column>
<Label text="Remarks"></Label>
</Column>
</columns>
<items>
<ColumnListItem>
<cells>
<Text text= "{
path: 'Date',
type: 'sap.ui.model.type.Date',
formatOptions: {
style: 'medium',
pattern: 'dd.MM.yyyy'}}"></Text>
<Text text="{OrderNo}"/>
<Text text="{Material}"/>
<Text text="{Qty}" />
<Text text="{Weight}" />
<Text text="{CreatedBy}"></Text>
<Text text="{Remarks}" />
</cells>
</ColumnListItem>
</items>
</Table>`
Код контроллера:
onExportPdf:function(oEvent) {
var oTab = this.getView().byId("idTable1");
var oBinding = oTab.getBinding("items");
var oExport = new Export({
exportType : new ExportTypeCSV({
separatorChar: "\t",
mimeType: "application/vnd.ms-excel",
charset: "utf-8"
fileExtension: "xls"
}),
models : this.getView().getModel(),
rows : {
path : "/StockItems",
filters: this.ZFilterr
},
columns : [
{
name : "Date",
template : {
content : "{Date}"
}
}, {
name : "Order Number",
template : {
content : "{OrderNo}"
}
}, {
name : "Material",
template : {
content : "{Material}"
}
}, {
name : "Quantity",
template: {
content: "{Qty}"
}
}, {
name: "Weight",
template: {
content: "{Weight}"
}
}, {
name: "Created By",
template: {
content: "{CreatedBy}"
}
},
{
name: "Remarks",
template: {
content: "{Remarks}"
}
},
]
});
oExport.saveFile().always(function() {
this.destroy();
});
onUpdateFinsihed Метод
onUpdateFinished: function (oEvent) {
debugger;
var oTable = oEvent.getSource();
var itemList = oTable.getItems();
var noOfItems = itemList.length;
var title = this.getView().getModel("i18n").getProperty("allEntries");
this.getView().byId("idTitle").setText(title + " " + "(" + noOfItems + ")");
for (var i=0; i < noOfItems; i++) {
debugger;
var materialId = oTable.getItems()[i].getCells()[2].getText();
var orderId = oTable.getItems()[i].getCells()[1].getText();
var custId= oTable.getItems()[i].getCells()[5].getText();
var ohId=this.allMasterData.orderHeader[orderId];
var ohIdW=this.allMasterData.wholeSaleHeader[orderId];
var material = this.allMasterData.materials[materialId];
var cName=this.allMasterData.users[custId];
try {
if(material){
oTable.getItems()[i].getCells()[2].setText(material.ProductCode);
}
} catch (e) {
}
try {
if(ohId){
oTable.getItems()[i].getCells()[1].setText(ohId.OrderNo);
}
} catch (e) {
}
try {
if(ohIdW){
oTable.getItems()[i].getCells()[1].setText(ohIdW.OrderNo);
}
} catch (e) {
}
try {
if(cName){
oTable.getItems()[i].getCells()[5].setText(cName.UserName);
}
} catch (e) {
}
}
}
});
});
enter code here