M320 Logo mobil saha asistanı içerisinde yer alan dinamik sayfalar üzerinden firmanın ihtiyacına göre istenen raporların eklenmesi ve eklenen bu raporların kullanıcı bazında yetkilendirilmesi mümkündür. Rapor üretici özelliği M320 Basic ve Standart paketlerinde ek modül olarak sunulurken, M320 Enterprise paketinde dahil olarak gelmektedir.
Aşağıdaki kodu kullanarak tablo biçiminde özel rapor ekleyebilirsiniz.
<br />
<div class="container-fluid">
<div>
</div>
<div class="row">
<div class="col-12">
<div id="gridContainer"></div>
</div>
</div>
</div>
<script
src="https://www.jqueryscript.net/demo/Export-Html-Table-To-Excel-Spreadsheet-using-jQuery-table2excel/src/jquery.table2excel.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/exceljs/3.3.1/exceljs.js"></script>
<script>
$(document).on("SORGU_ADI_BURAYA_YAZILACAK", function (e, res) { //Dinamik sayfa ekledikten sonra tanımlanan sorgu adı bu alana yazılmalıdır.
VerileriGetir(res);
});
function VerileriGetir(deger) {
$("#gridContainer").dxDataGrid({
dataSource: deger,
keyExpr: "",
export: {
enabled: true,
allowExportSelectedData: true
},
// columnHidingEnabled: true,
showRowLines: true,
rowAlternationEnabled: true,
searchPanel: {
visible: true
},
groupPanel: {
visible: true
},
sorting: {
mode: "multiple"
},
filterRow: {
visible: true,
applyFilter: "auto"
},
onExporting: function (e) {
var workbook = new ExcelJS.Workbook();
var worksheet = workbook.addWorksheet('Raporlar');
DevExpress.excelExporter.exportDataGrid({
component: e.component,
worksheet: worksheet,
autoFilterEnabled: true
}).then(function () {
workbook.xlsx.writeBuffer().then(function (buffer) {
saveAs(new Blob([buffer], { type: 'application/octet-stream' }), 'Raporlar.xlsx');
});
});
e.cancel = true;
},
columns: [
{ dataField: "KOLON_ADI", hidingPriority: -1 }, //Sorgudan gelen kolon adları buraya yazılmalıdır. Ek kolon eklenmek istenirse eklenebilir.
{ dataField: "KOLON_ADI", hidingPriority: -1 }, //Sorgudan gelen kolon adları buraya yazılmalıdır. Ek kolon eklenmek istenirse eklenebilir.
{ dataField: "KOLON_ADI", hidingPriority: -1 }, //Sorgudan gelen kolon adları buraya yazılmalıdır. Ek kolon eklenmek istenirse eklenebilir.
{ dataField: "KOLON_ADI", hidingPriority: -1 }, //Sorgudan gelen kolon adları buraya yazılmalıdır. Ek kolon eklenmek istenirse eklenebilir.
{ dataField: "KOLON_ADI", hidingPriority: -1 }, //Sorgudan gelen kolon adları buraya yazılmalıdır. Ek kolon eklenmek istenirse eklenebilir.
{ dataField: "KOLON_ADI", hidingPriority: -1 }, //Sorgudan gelen kolon adları buraya yazılmalıdır. Ek kolon eklenmek istenirse eklenebilir.
{ dataField: "KOLON_ADI", hidingPriority: -1 }, //Sorgudan gelen kolon adları buraya yazılmalıdır. Ek kolon eklenmek istenirse eklenebilir.
{ dataField: "KOLON_ADI", hidingPriority: -1 }, //Sorgudan gelen kolon adları buraya yazılmalıdır. Ek kolon eklenmek istenirse eklenebilir.
{ dataField: "KOLON_ADI", hidingPriority: -1 }, //Sorgudan gelen kolon adları buraya yazılmalıdır. Ek kolon eklenmek istenirse eklenebilir.
{ dataField: "KOLON_ADI", hidingPriority: -1 }, //Sorgudan gelen kolon adları buraya yazılmalıdır. Ek kolon eklenmek istenirse eklenebilir.
{ dataField: "KOLON_ADI", hidingPriority: -1 }, //Sorgudan gelen kolon adları buraya yazılmalıdır. Ek kolon eklenmek istenirse eklenebilir.
{ dataField: "KOLON_ADI", hidingPriority: -1 }, //Sorgudan gelen kolon adları buraya yazılmalıdır. Ek kolon eklenmek istenirse eklenebilir.
{ dataField: "KOLON_ADI", hidingPriority: -1 }, //Sorgudan gelen kolon adları buraya yazılmalıdır. Ek kolon eklenmek istenirse eklenebilir.
,
],
showBorders: true,
summary: {
totalItems: [{
column: "KAR", //Bu alana tablo değerlerinden hangisi yazılırsa o değere göre alt hesaplama yapılır.
summaryType: "sum" //Bu alanda sum değeri üst kolonda tanımlı olan değeri toplar. avg değeri ortalama alır.
}, ]
}
});
}
$("#btnExcel").on("click", function () {
console.log("Excel Aktar Girildi!");
$("#gridContainer").table2excel({
exclude: ".noExl",
name: "Worksheet Name",
filename: "Rapor", //do not include extension
fileext: "Rapor.xls" // file extension
});
});
</script>