ahora genera csv para excel
This commit is contained in:
@@ -348,6 +348,35 @@
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function generarCSVEstadistica() {
|
||||
let contenido = ["Categorias", ...chartData.datasets.map((d: { label: any; }) => d.label)].join(",") + "\n";
|
||||
|
||||
chartData.labels.forEach((label: any, index: string | number) => {
|
||||
let fila = [label, ...chartData.datasets.map((d: { data: { [x: string]: any; }; }) => d.data[index])].join(",");
|
||||
contenido += fila + "\n";
|
||||
});
|
||||
|
||||
contenido += "\n";
|
||||
|
||||
|
||||
if (canons.length > 0) {
|
||||
contenido += "ID,Mes Num,Mes,Monto,Divisa,Pago\n";
|
||||
canons.forEach(c => {
|
||||
let fila = [c.id, c.mesNum, String(c.mes).split("T")[0], c.monto, c.divisa, c.pago ? "Sí" : "No"].join(",");
|
||||
contenido += fila + "\n";
|
||||
});
|
||||
}
|
||||
|
||||
let blob = new Blob([contenido], { type: "text/csv" });
|
||||
let url = URL.createObjectURL(blob);
|
||||
let a = document.createElement("a");
|
||||
a.href = url;
|
||||
a.download = "chart_data.csv";
|
||||
a.click();
|
||||
URL.revokeObjectURL(url);
|
||||
|
||||
}
|
||||
</script>
|
||||
|
||||
<NavBarAutocompletable/>
|
||||
@@ -455,10 +484,13 @@
|
||||
<div id="c6" class="accordion-collapse collapse"
|
||||
data-bs-parent="#accordionExample">
|
||||
<div class="accordion-body d-flex justify-content-center" >
|
||||
<div style="width: 500px; height: 500px;">
|
||||
<div style="width: 500px; height: auto;">
|
||||
{#if chartData != null}
|
||||
<FChart {chartData} typec="doughnut" />
|
||||
{/if}
|
||||
<button class="btn btn-secondary mt-2" onclick={generarCSVEstadistica}>
|
||||
Exportar CSV
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -508,7 +540,6 @@
|
||||
</div>
|
||||
{/each}
|
||||
{#if max < prop.mesesDuracion}
|
||||
{$inspect(max)}
|
||||
<div class="card">
|
||||
<div class="card-header text-center">
|
||||
Definir el interés para los siguientes Canones
|
||||
|
||||
Reference in New Issue
Block a user