mirror of
https://github.com/Kingsrook/qqq-frontend-material-dashboard.git
synced 2025-07-18 13:20:43 +00:00
Clean csv values; Update qfc - for audit count fix
This commit is contained in:
@ -107,7 +107,7 @@ function TableWidget(props: Props): JSX.Element
|
||||
{selector: ".button", format: "skip"}
|
||||
]
|
||||
});
|
||||
csv += `"${text}"`;
|
||||
csv += `"${ValueUtils.cleanForCsv(text)}"`;
|
||||
}
|
||||
csv += "\n";
|
||||
}
|
||||
|
@ -193,16 +193,12 @@ function ColumnStats({tableMetaData, fieldMetaData, fieldTableName, filter}: Pro
|
||||
|
||||
const doExport = () =>
|
||||
{
|
||||
let csv = `"${fieldMetaData.label}","Count"\n`;
|
||||
let csv = `"${ValueUtils.cleanForCsv(fieldMetaData.label)}","Count"\n`;
|
||||
for (let i = 0; i < valueCounts.length; i++)
|
||||
{
|
||||
let fieldValue = valueCounts[i].displayValues.get(fieldMetaData.name);
|
||||
if(fieldValue === undefined)
|
||||
{
|
||||
fieldValue = "";
|
||||
}
|
||||
|
||||
csv += `"${fieldValue}",${valueCounts[i].values.get("count")}\n`;
|
||||
const fieldValue = valueCounts[i].displayValues.get(fieldMetaData.name);
|
||||
const count = valueCounts[i].values.get("count");
|
||||
csv += `"${ValueUtils.cleanForCsv(fieldValue)}",${count}\n`;
|
||||
}
|
||||
|
||||
const fileName = tableMetaData.label + " - " + fieldMetaData.label + " Column Stats " + ValueUtils.formatDateTimeForFileName(new Date()) + ".csv";
|
||||
|
@ -418,6 +418,19 @@ class ValueUtils
|
||||
return toPush;
|
||||
}
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
** for building CSV in frontends, cleanse null & undefined, and escape "'s
|
||||
*******************************************************************************/
|
||||
public static cleanForCsv(param: any): string
|
||||
{
|
||||
if(param === undefined || param === null)
|
||||
{
|
||||
return ("");
|
||||
}
|
||||
|
||||
return (String(param).replaceAll(/"/g, "\"\""));
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
Reference in New Issue
Block a user