Mercurial > hg > syntilista
comparison src/main.cpp @ 255:55581d90c55d
Change API for slCheckAndReportSQLError().
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Wed, 10 Oct 2018 13:21:51 +0300 |
parents | eadffc38ab43 |
children | df3f902588af |
comparison
equal
deleted
inserted
replaced
254:0e0ad52994ca | 255:55581d90c55d |
---|---|
671 | 671 |
672 QSqlQuery query; | 672 QSqlQuery query; |
673 query.prepare(QStringLiteral("SELECT id,value,added FROM transactions WHERE person=? ORDER BY added DESC LIMIT 5")); | 673 query.prepare(QStringLiteral("SELECT id,value,added FROM transactions WHERE person=? ORDER BY added DESC LIMIT 5")); |
674 query.addBindValue(id); | 674 query.addBindValue(id); |
675 query.exec(); | 675 query.exec(); |
676 slCheckAndReportSQLError("SELECT transactions for tableview_Latest", query.lastError()); | 676 slCheckAndReportSQLError(query, "SELECT transactions for tableview_Latest"); |
677 | 677 |
678 model_Latest->setQuery(query); | 678 model_Latest->setQuery(query); |
679 | 679 |
680 model_Latest->setHeaderData(0, Qt::Horizontal, tr("ID")); | 680 model_Latest->setHeaderData(0, Qt::Horizontal, tr("ID")); |
681 model_Latest->setHeaderData(1, Qt::Horizontal, tr("Summa")); | 681 model_Latest->setHeaderData(1, Qt::Horizontal, tr("Summa")); |
932 // No filter | 932 // No filter |
933 query.prepare(queryBase + queryOrderBy); | 933 query.prepare(queryBase + queryOrderBy); |
934 } | 934 } |
935 | 935 |
936 // Execute the query and update model | 936 // Execute the query and update model |
937 slCheckAndReportSQLError("updatePersonList() before exec", query.lastError()); | 937 slCheckAndReportSQLError(query, "updatePersonList() before exec"); |
938 query.exec(); | 938 query.exec(); |
939 slCheckAndReportSQLError("updatePersonList() after exec", query.lastError()); | 939 slCheckAndReportSQLError(query, "updatePersonList() after exec"); |
940 | 940 |
941 model_People->setQuery(query); | 941 model_People->setQuery(query); |
942 | 942 |
943 model_People->setHeaderData(0, Qt::Horizontal, tr("ID")); | 943 model_People->setHeaderData(0, Qt::Horizontal, tr("ID")); |
944 model_People->setHeaderData(1, Qt::Horizontal, tr("Sukunimi")); | 944 model_People->setHeaderData(1, Qt::Horizontal, tr("Sukunimi")); |
957 { | 957 { |
958 // Update total balance value | 958 // Update total balance value |
959 QSqlQuery query; | 959 QSqlQuery query; |
960 query.prepare(QStringLiteral("SELECT TOTAL(value) FROM transactions AS balance")); | 960 query.prepare(QStringLiteral("SELECT TOTAL(value) FROM transactions AS balance")); |
961 query.exec(); | 961 query.exec(); |
962 if (slCheckAndReportSQLError("updateMiscValues() get total balance query", query.lastError()) && | 962 if (slCheckAndReportSQLError(query, "updateMiscValues() get total balance query") && |
963 query.next()) | 963 query.next()) |
964 { | 964 { |
965 totalBalance = query.value(0).toDouble();; | 965 totalBalance = query.value(0).toDouble();; |
966 ui->label_TotalBalanceValue->setText(slMoneyValueToStr(totalBalance)); | 966 ui->label_TotalBalanceValue->setText(slMoneyValueToStr(totalBalance)); |
967 ui->label_TotalBalanceValue->setStyleSheet(totalBalance < 0 ? "color: red;" : "color: green;"); | 967 ui->label_TotalBalanceValue->setStyleSheet(totalBalance < 0 ? "color: red;" : "color: green;"); |
969 | 969 |
970 // Update number of people | 970 // Update number of people |
971 query.finish(); | 971 query.finish(); |
972 query.prepare(QStringLiteral("SELECT COUNT(*) FROM people")); | 972 query.prepare(QStringLiteral("SELECT COUNT(*) FROM people")); |
973 query.exec(); | 973 query.exec(); |
974 if (slCheckAndReportSQLError("updateMiscValues() get people count", query.lastError()) && | 974 if (slCheckAndReportSQLError(query, "updateMiscValues() get people count") && |
975 query.next()) | 975 query.next()) |
976 { | 976 { |
977 totalPeople = query.value(0).toInt(); | 977 totalPeople = query.value(0).toInt(); |
978 ui->label_NumPeopleValue->setText(query.value(0).toString()); | 978 ui->label_NumPeopleValue->setText(query.value(0).toString()); |
979 } | 979 } |
1006 query.prepare(QStringLiteral("INSERT INTO transactions (person,value,added) VALUES (?,?,?)")); | 1006 query.prepare(QStringLiteral("INSERT INTO transactions (person,value,added) VALUES (?,?,?)")); |
1007 query.addBindValue(id); | 1007 query.addBindValue(id); |
1008 query.addBindValue(value); | 1008 query.addBindValue(value); |
1009 query.addBindValue(QDateTime::currentDateTimeUtc()); | 1009 query.addBindValue(QDateTime::currentDateTimeUtc()); |
1010 query.exec(); | 1010 query.exec(); |
1011 if (!slCheckAndReportSQLError(QStringLiteral("addTransaction(%1, %2)").arg(id).arg(value), query.lastError(), true)) | 1011 if (!slCheckAndReportSQLError(query, QStringLiteral("addTransaction(%1, %2)").arg(id).arg(value), true)) |
1012 { | 1012 { |
1013 QSqlDatabase::database().rollback(); | 1013 QSqlDatabase::database().rollback(); |
1014 return -2; | 1014 return -2; |
1015 } | 1015 } |
1016 | 1016 |
1017 // Update person record timestamp | 1017 // Update person record timestamp |
1018 query.prepare(QStringLiteral("UPDATE people SET updated=? WHERE id=?")); | 1018 query.prepare(QStringLiteral("UPDATE people SET updated=? WHERE id=?")); |
1019 query.addBindValue(QDateTime::currentDateTimeUtc()); | 1019 query.addBindValue(QDateTime::currentDateTimeUtc()); |
1020 query.addBindValue(id); | 1020 query.addBindValue(id); |
1021 query.exec(); | 1021 query.exec(); |
1022 if (!slCheckAndReportSQLError("addTransaction update timestamp", query.lastError(), true)) | 1022 if (!slCheckAndReportSQLError(query, "addTransaction update timestamp", true)) |
1023 { | 1023 { |
1024 QSqlDatabase::database().rollback(); | 1024 QSqlDatabase::database().rollback(); |
1025 return -3; | 1025 return -3; |
1026 } | 1026 } |
1027 | 1027 |