initDataPicker static method
Implementation
static Future<List<Picker>> initDataPicker(
String tableName,
List<Map<String, Object?>?>? dtData, {
bool override = false,
}) async {
if (Common.pickers.containsKey(tableName) && !override) {
return Common.pickers[tableName] ?? [];
}
List<Picker> listVal = [];
try {
if (dtData == null || dtData.isEmpty) {
var ds = await SQLService.execute(
'sp_getValueDataPicker',
params: {
'@tableName': tableName,
},
);
if (ds.isEmpty) return listVal;
dtData = ds['sp_getValueDataPicker'] ?? ds.values.first;
}
dtData ??= [];
for (var row in dtData) {
int id = Methods.getInt(row, 'ID', defaultValue: -1);
if (id < 0) continue;
listVal.add(
Picker.data(row),
);
}
Common.pickers[tableName] = listVal;
} catch (ex) {
if (kDebugMode) {
print('[Exception] getValueDataPicker: $ex');
}
}
if (kDebugMode) {
print('getValueDataPicker: $tableName count: ${listVal.length}');
}
return listVal;
}