+ if (transaction.existsInDb(db)) {
+ db.execSQL("UPDATE transactions SET keep = 1 WHERE id" +
+ "=?", new Integer[]{transaction.getId()});
+ matchedTransactionsCount++;
+
+ if (matchedTransactionsCount == 100) {
+ db.execSQL("UPDATE transactions SET keep=1 WHERE " +
+ "id < ?",
+ new Integer[]{transaction.getId()});
+ progress.setTotal(progress.getProgress());
+ publishProgress(progress);
+ break LINES;
+ }
+ }
+ else {
+ db.execSQL("DELETE from transactions WHERE id=?",
+ new Integer[]{transaction.getId()});
+ db.execSQL("DELETE from transaction_accounts WHERE " +
+ "transaction_id=?",
+ new Integer[]{transaction.getId()});
+ transaction.insertInto(db);
+ matchedTransactionsCount = 0;
+ progress.setTotal(maxTransactionId);
+ }