Closed ravihabibillah closed 2 years ago
selain bulan 10, 11, 12 itu ternyata 1 digit
ketika memilih bulan yg ingin ditampilkan ternyata dia mengembalikan bulan dengan digit 1 misalnya bulan September itu 9, sedangkan didatabase yg tersimpan itu 2 digit, misalnya bulan September: berarti 09 bukan 9
karna query LIKE itu dia harus sama persis misal bulan September didalam database tertulis 2021-09-01
kamu LIKE nya dengan kondisi '2021-9'
Kode didalam database_helper.dart aku coba menambahkan karakter 0 secara manual
Future<List<Transactions>> getTransactionsJoinCategorybyMonthAndYear(
int month, int year) async {
var add;
if (month == 9) {
add = '0';
} else {
add = '';
}
final Database? db = await database;
List<Map<String, dynamic>> results = await db!.rawQuery(
"SELECT t.*, c.name FROM $_tblTransaction t INNER JOIN $_tblCategories c ON t.id_categories = c.id AND t.transaction_date LIKE '%$year-$add$month%' GROUP BY t.transaction_date ORDER BY t.transaction_date DESC");
// print(results);
return results.map((res) => Transactions.fromMap(res)).toList();
}
Future<List<Transactions>> getTransactionsJoinCategorybyDateMonthAndYear(
int month,
int year,
) async {
var add;
if (month == 9) {
add = '0';
} else {
add = '';
}
final Database? db = await database;
List<Map<String, dynamic>> results = await db!.rawQuery(
"SELECT t.*, c.name FROM $_tblTransaction t INNER JOIN $_tblCategories c ON t.id_categories = c.id AND t.transaction_date LIKE '%$year-$add$month%'");
// print(results);
return results.map((res) => Transactions.fromMap(res)).toList();
}
perhatikan var add
, dia mengembalikan karakter 0 ketika bulan adalah 9.
Setelah itu di masukkan variable add
didalam query LIKE '%$year-$add$month%'...
ketika menambahkan data dan memilih bulan selain dari okt, nov dan des, entah data gagal diinsert atau gagal ketika nge get, kurang tau juga