toFile method
dynamic
toFile(
- dynamic data,
- dynamic context,
- dynamic label
Implementation
toFile(data, context, label) {
myLogAll('toFile');
dynamic tableName = data[gTableID];
List header = [];
List body = [];
dynamic tableInfo = _tableList[tableName];
//tableInfo.[gData].length;
//List tableData = tableInfo[gData];
List columns = tableInfo[gColumns];
dynamic subject = tableInfo[gAttr][gLabel] ?? '';
for (int i = 0; i < columns.length; i++) {
if (isHiddenColumn(columns, i)) {
continue;
}
header.add(getSCurrentLan(columns[i][gLabel], gEn));
}
List newData = getTableData(tableName, context);
for (int i = 0; i < newData.length; i++) {
Map dataRow = newData[i];
//get updated value
dynamic ti = getTableRowShowValueFilterMapOrList(
tableName, dataRow, columns, context, '', false);
if (ti != null) {
body.add(ti);
}
}
//header
//body
//request
var filename = _globalParam[gToken] ?? "atmpfile";
if (filename.indexOf("-") > 0) {
filename = filename.substring(0, filename.indexOf("-"));
}
sendRequestOne(
label,
{
gHeader: header,
gBody: body,
gFilename: label + filename,
gSubject: subject
},
context);
}