X-Git-Url: https://git.ktnx.net/?p=mobile-ledger.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fasync%2FRetrieveTransactionsTask.java;h=8f1a764b386aa4db91a901fcde5688ec346dd6d6;hp=63e931d49ae978143008a864806de5e1724cd86a;hb=010406b05a5a4f8447af34187afef8c1e78a4552;hpb=6c859be9de1f83ef2e4e22ea4bb3d000c46dcceb diff --git a/app/src/main/java/net/ktnx/mobileledger/async/RetrieveTransactionsTask.java b/app/src/main/java/net/ktnx/mobileledger/async/RetrieveTransactionsTask.java index 63e931d4..8f1a764b 100644 --- a/app/src/main/java/net/ktnx/mobileledger/async/RetrieveTransactionsTask.java +++ b/app/src/main/java/net/ktnx/mobileledger/async/RetrieveTransactionsTask.java @@ -169,11 +169,12 @@ public class RetrieveTransactionsTask acct_name = acct_name.replace("\"", ""); L(String.format("found account: %s", acct_name)); - lastAccount = profile.loadAccount(acct_name); - if (lastAccount == null) { + lastAccount = profile.tryLoadAccount(db, acct_name); + if (lastAccount == null) lastAccount = new LedgerAccount(acct_name); - profile.storeAccount(db, lastAccount); - } + else + lastAccount.removeAmounts(); + profile.storeAccount(db, lastAccount); // make sure the parent account(s) are present, // synthesising them if necessary @@ -189,8 +190,8 @@ public class RetrieveTransactionsTask while (!toAppend.isEmpty()) { String aName = toAppend.pop(); LedgerAccount acc = new LedgerAccount(aName); - acc.setHidden(lastAccount.isHidden()); - if (!onlyStarred || !acc.isHidden()) + acc.setHiddenByStar(lastAccount.isHiddenByStar()); + if (!onlyStarred || !acc.isHiddenByStar()) accountList.add(acc); L(String.format("gap-filling with %s", aName)); accountNames.put(aName, null); @@ -198,7 +199,7 @@ public class RetrieveTransactionsTask } } - if (!onlyStarred || !lastAccount.isHidden()) + if (!onlyStarred || !lastAccount.isHiddenByStar()) accountList.add(lastAccount); accountNames.put(acct_name, null); @@ -516,7 +517,7 @@ public class RetrieveTransactionsTask } catch (IOException e) { e.printStackTrace(); - return "Parse error"; + return e.getLocalizedMessage(); } catch (ParseException e) { e.printStackTrace();