Changeset View
Changeset View
Standalone View
Standalone View
kmymoney/kmymoney.cpp
Context not available. | |||||
400 | } | 400 | } | ||
---|---|---|---|---|---|
401 | } | 401 | } | ||
402 | ft.commit(); | 402 | ft.commit(); | ||
403 | } catch (const MyMoneyException &e) { | 403 | } catch (const std::exception &e) { | ||
404 | qDebug("Error %s updating currency names", qPrintable(e.what())); | 404 | qDebug("Error %s updating currency names", qPrintable(e.what())); | ||
405 | } | 405 | } | ||
406 | } | 406 | } | ||
Context not available. | |||||
417 | checkAccountName(file->expense(), i18n("Expense")); | 417 | checkAccountName(file->expense(), i18n("Expense")); | ||
418 | checkAccountName(file->equity(), i18n("Equity")); | 418 | checkAccountName(file->equity(), i18n("Equity")); | ||
419 | ft.commit(); | 419 | ft.commit(); | ||
420 | } catch (const MyMoneyException &) { | 420 | } catch (const std::exception &) { | ||
421 | } | 421 | } | ||
422 | } | 422 | } | ||
423 | 423 | | |||
Context not available. | |||||
470 | // add new levels above. Don't forget to increase currentFixVersion() for all | 470 | // add new levels above. Don't forget to increase currentFixVersion() for all | ||
471 | // the storage backends this fix applies to | 471 | // the storage backends this fix applies to | ||
472 | default: | 472 | default: | ||
473 | throw MYMONEYEXCEPTION(i18n("Unknown fix level in input file")); | 473 | throw MYMONEYEXCEPTION(QString::fromLatin1("Unknown fix level in input file")); | ||
474 | } | 474 | } | ||
475 | } | 475 | } | ||
476 | ft.commit(); | 476 | ft.commit(); | ||
477 | } catch (const MyMoneyException &) { | 477 | } catch (const std::exception &) { | ||
478 | MyMoneyFile::instance()->blockSignals(blocked); | 478 | MyMoneyFile::instance()->blockSignals(blocked); | ||
479 | return false; | 479 | return false; | ||
480 | } | 480 | } | ||
Context not available. | |||||
648 | QString baseId; | 648 | QString baseId; | ||
649 | try { | 649 | try { | ||
650 | baseId = MyMoneyFile::instance()->baseCurrency().id(); | 650 | baseId = MyMoneyFile::instance()->baseCurrency().id(); | ||
651 | } catch (const MyMoneyException &e) { | 651 | } catch (const std::exception &e) { | ||
652 | qDebug("%s", qPrintable(e.what())); | 652 | qDebug("%s", qPrintable(e.what())); | ||
653 | } | 653 | } | ||
654 | 654 | | |||
Context not available. | |||||
661 | 661 | | |||
662 | try { | 662 | try { | ||
663 | baseId = MyMoneyFile::instance()->baseCurrency().id(); | 663 | baseId = MyMoneyFile::instance()->baseCurrency().id(); | ||
664 | } catch (const MyMoneyException &e) { | 664 | } catch (const std::exception &e) { | ||
665 | qDebug("%s", qPrintable(e.what())); | 665 | qDebug("%s", qPrintable(e.what())); | ||
666 | } | 666 | } | ||
667 | 667 | | |||
Context not available. | |||||
684 | try { | 684 | try { | ||
685 | if (!(*it).currencyId().isEmpty() || (*it).currencyId().length() != 0) | 685 | if (!(*it).currencyId().isEmpty() || (*it).currencyId().length() != 0) | ||
686 | cid = MyMoneyFile::instance()->currency((*it).currencyId()).id(); | 686 | cid = MyMoneyFile::instance()->currency((*it).currencyId()).id(); | ||
687 | } catch (const MyMoneyException& e) { | 687 | } catch (const std::exception &e) { | ||
688 | qDebug() << QLatin1String("Account") << (*it).id() << (*it).name() << e.what(); | 688 | qDebug() << QLatin1String("Account") << (*it).id() << (*it).name() << e.what(); | ||
689 | } | 689 | } | ||
690 | 690 | | |||
Context not available. | |||||
694 | try { | 694 | try { | ||
695 | file->modifyAccount(*it); | 695 | file->modifyAccount(*it); | ||
696 | ft.commit(); | 696 | ft.commit(); | ||
697 | } catch (const MyMoneyException &e) { | 697 | } catch (const std::exception &e) { | ||
698 | qDebug("Unable to setup base currency in account %s (%s): %s", qPrintable((*it).name()), qPrintable((*it).id()), qPrintable(e.what())); | 698 | qDebug("Unable to setup base currency in account %s (%s): %s", qPrintable((*it).name()), qPrintable((*it).id()), qPrintable(e.what())); | ||
699 | } | 699 | } | ||
700 | } | 700 | } | ||
Context not available. | |||||
766 | haveAt = false; | 766 | haveAt = false; | ||
767 | isEncrypted = true; | 767 | isEncrypted = true; | ||
768 | } else { | 768 | } else { | ||
769 | throw MYMONEYEXCEPTION(QString::fromLatin1("%1").arg(i18n("GPG is not available for decryption of file <b>%1</b>", fileName))); | 769 | throw MYMONEYEXCEPTION(QString::fromLatin1("GPG is not available for decryption of file <b>%1</b>").arg(fileName)); | ||
770 | } | 770 | } | ||
771 | } else { | 771 | } else { | ||
772 | // we can't use file directly, as we delete qfile later on | 772 | // we can't use file directly, as we delete qfile later on | ||
Context not available. | |||||
808 | if ((magic0 == MAGIC_0_50 && magic1 == MAGIC_0_51) || | 808 | if ((magic0 == MAGIC_0_50 && magic1 == MAGIC_0_51) || | ||
809 | magic0 < 30) { | 809 | magic0 < 30) { | ||
810 | // we do not support this file format anymore | 810 | // we do not support this file format anymore | ||
811 | throw MYMONEYEXCEPTION(QString::fromLatin1("<qt>%1</qt>").arg(i18n("File <b>%1</b> contains the old binary format used by KMyMoney. Please use an older version of KMyMoney (0.8.x) that still supports this format to convert it to the new XML based format.", fileName))); | 811 | throw MYMONEYEXCEPTION(QString::fromLatin1("<qt>File <b>%1</b> contains the old binary format used by KMyMoney. Please use an older version of KMyMoney (0.8.x) that still supports this format to convert it to the new XML based format.</qt>").arg(fileName)); | ||
812 | } | 812 | } | ||
813 | 813 | | |||
814 | // Scan the first 70 bytes to see if we find something | 814 | // Scan the first 70 bytes to see if we find something | ||
Context not available. | |||||
973 | auto rc = true; | 973 | auto rc = true; | ||
974 | try { | 974 | try { | ||
975 | if (! url.isValid()) { | 975 | if (! url.isValid()) { | ||
976 | throw MYMONEYEXCEPTION(i18n("Malformed URL '%1'", url.url())); | 976 | throw MYMONEYEXCEPTION(QString::fromLatin1("Malformed URL '%1'").arg(url.url())); | ||
977 | } | 977 | } | ||
978 | 978 | | |||
979 | if (url.scheme() == QLatin1String("sql")) { | 979 | if (url.scheme() == QLatin1String("sql")) { | ||
Context not available. | |||||
988 | } | 988 | } | ||
989 | 989 | | |||
990 | if(!pluginFound) | 990 | if(!pluginFound) | ||
991 | throw MYMONEYEXCEPTION(i18n("Couldn't find suitable plugin to save your storage.")); | 991 | throw MYMONEYEXCEPTION(QString::fromLatin1("Couldn't find suitable plugin to save your storage.")); | ||
992 | 992 | | |||
993 | } else if (url.isLocalFile()) { | 993 | } else if (url.isLocalFile()) { | ||
994 | filename = url.toLocalFile(); | 994 | filename = url.toLocalFile(); | ||
Context not available. | |||||
998 | KBackup::numberedBackupFile(filename, QString(), QStringLiteral("~"), nbak); | 998 | KBackup::numberedBackupFile(filename, QString(), QStringLiteral("~"), nbak); | ||
999 | } | 999 | } | ||
1000 | saveToLocalFile(filename, storageWriter.get(), plaintext, keyList); | 1000 | saveToLocalFile(filename, storageWriter.get(), plaintext, keyList); | ||
1001 | } catch (const MyMoneyException &) { | 1001 | } catch (const std::exception &) { | ||
1002 | throw MYMONEYEXCEPTION(i18n("Unable to write changes to '%1'", filename)); | 1002 | throw MYMONEYEXCEPTION(QString::fromLatin1("Unable to write changes to '%1'").arg(filename)); | ||
1003 | } | 1003 | } | ||
1004 | } else { | 1004 | } else { | ||
1005 | 1005 | | |||
Context not available. | |||||
1013 | file.open(QIODevice::ReadOnly); | 1013 | file.open(QIODevice::ReadOnly); | ||
1014 | KIO::StoredTransferJob *putjob = KIO::storedPut(file.readAll(), url, permission, KIO::JobFlag::Overwrite); | 1014 | KIO::StoredTransferJob *putjob = KIO::storedPut(file.readAll(), url, permission, KIO::JobFlag::Overwrite); | ||
1015 | if (!putjob->exec()) { | 1015 | if (!putjob->exec()) { | ||
1016 | throw MYMONEYEXCEPTION(i18n("Unable to upload to '%1'.<br />%2", url.toDisplayString(), putjob->errorString())); | 1016 | throw MYMONEYEXCEPTION(QString::fromLatin1("Unable to upload to '%1'.<br />%2").arg(url.toDisplayString(), putjob->errorString())); | ||
1017 | } | 1017 | } | ||
1018 | file.close(); | 1018 | file.close(); | ||
1019 | } | 1019 | } | ||
1020 | m_fileType = KMyMoneyApp::KmmXML; | 1020 | m_fileType = KMyMoneyApp::KmmXML; | ||
1021 | } catch (const MyMoneyException &e) { | 1021 | } catch (const std::exception &e) { | ||
1022 | KMessageBox::error(q, e.what()); | 1022 | KMessageBox::error(q, e.what()); | ||
1023 | MyMoneyFile::instance()->setDirty(); | 1023 | MyMoneyFile::instance()->setDirty(); | ||
1024 | rc = false; | 1024 | rc = false; | ||
Context not available. | |||||
1130 | ft.commit(); | 1130 | ft.commit(); | ||
1131 | 1131 | | |||
1132 | if (!device || !device->open(QIODevice::WriteOnly)) { | 1132 | if (!device || !device->open(QIODevice::WriteOnly)) { | ||
1133 | throw MYMONEYEXCEPTION(i18n("Unable to open file '%1' for writing.", localFile)); | 1133 | throw MYMONEYEXCEPTION(QString::fromLatin1("Unable to open file '%1' for writing.").arg(localFile)); | ||
1134 | } | 1134 | } | ||
1135 | 1135 | | |||
1136 | pWriter->setProgressCallback(&KMyMoneyApp::progressCallback); | 1136 | pWriter->setProgressCallback(&KMyMoneyApp::progressCallback); | ||
Context not available. | |||||
1140 | // Check for errors if possible, only possible for KGPGFile | 1140 | // Check for errors if possible, only possible for KGPGFile | ||
1141 | QFileDevice *fileDevice = qobject_cast<QFileDevice*>(device.get()); | 1141 | QFileDevice *fileDevice = qobject_cast<QFileDevice*>(device.get()); | ||
1142 | if (fileDevice && fileDevice->error() != QFileDevice::NoError) { | 1142 | if (fileDevice && fileDevice->error() != QFileDevice::NoError) { | ||
1143 | throw MYMONEYEXCEPTION(i18n("Failure while writing to '%1'", localFile)); | 1143 | throw MYMONEYEXCEPTION(QString::fromLatin1("Failure while writing to '%1'").arg(localFile)); | ||
1144 | } | 1144 | } | ||
1145 | 1145 | | |||
1146 | if (writeFile != localFile) { | 1146 | if (writeFile != localFile) { | ||
Context not available. | |||||
1148 | // If a temporary file was created, it is made in a way that the name is definitely different. So no | 1148 | // If a temporary file was created, it is made in a way that the name is definitely different. So no | ||
1149 | // symlinks etc. have to be evaluated. | 1149 | // symlinks etc. have to be evaluated. | ||
1150 | if (!QFile::remove(localFile) || !QFile::rename(writeFile, localFile)) | 1150 | if (!QFile::remove(localFile) || !QFile::rename(writeFile, localFile)) | ||
1151 | throw MYMONEYEXCEPTION(i18n("Failure while writing to '%1'", localFile)); | 1151 | throw MYMONEYEXCEPTION(QString::fromLatin1("Failure while writing to '%1'").arg(localFile)); | ||
1152 | } | 1152 | } | ||
1153 | QFile::setPermissions(localFile, m_fmode); | 1153 | QFile::setPermissions(localFile, m_fmode); | ||
1154 | pWriter->setProgressCallback(0); | 1154 | pWriter->setProgressCallback(0); | ||
Context not available. | |||||
1251 | MyMoneyFile::instance()->modifyReport(*it_r); | 1251 | MyMoneyFile::instance()->modifyReport(*it_r); | ||
1252 | } | 1252 | } | ||
1253 | } | 1253 | } | ||
1254 | } catch (const MyMoneyException &) { | 1254 | } catch (const std::exception &) { | ||
1255 | } | 1255 | } | ||
1256 | } | 1256 | } | ||
1257 | } | 1257 | } | ||
Context not available. | |||||
1358 | auto acc = MyMoneyFile::instance()->account((*it_s).accountId()); | 1358 | auto acc = MyMoneyFile::instance()->account((*it_s).accountId()); | ||
1359 | t.setCommodity(acc.currencyId()); | 1359 | t.setCommodity(acc.currencyId()); | ||
1360 | updated = true; | 1360 | updated = true; | ||
1361 | } catch (const MyMoneyException &) { | 1361 | } catch (const std::exception &) { | ||
1362 | } | 1362 | } | ||
1363 | } | 1363 | } | ||
1364 | // make sure the account exists. If not, remove the split | 1364 | // make sure the account exists. If not, remove the split | ||
1365 | try { | 1365 | try { | ||
1366 | MyMoneyFile::instance()->account((*it_s).accountId()); | 1366 | MyMoneyFile::instance()->account((*it_s).accountId()); | ||
1367 | } catch (const MyMoneyException &) { | 1367 | } catch (const std::exception &) { | ||
1368 | qDebug() << Q_FUNC_INFO << " " << sched.id() << " " << (*it_s).id() << " removed, because account '" << (*it_s).accountId() << "' does not exist."; | 1368 | qDebug() << Q_FUNC_INFO << " " << sched.id() << " " << (*it_s).id() << " removed, because account '" << (*it_s).accountId() << "' does not exist."; | ||
1369 | t.removeSplit(*it_s); | 1369 | t.removeSplit(*it_s); | ||
1370 | updated = true; | 1370 | updated = true; | ||
Context not available. | |||||
1393 | sched.setTransaction(t); | 1393 | sched.setTransaction(t); | ||
1394 | MyMoneyFile::instance()->modifySchedule(sched); | 1394 | MyMoneyFile::instance()->modifySchedule(sched); | ||
1395 | } | 1395 | } | ||
1396 | } catch (const MyMoneyException &e) { | 1396 | } catch (const std::exception &e) { | ||
1397 | qWarning("Unable to update broken schedule: %s", qPrintable(e.what())); | 1397 | qWarning("Unable to update broken schedule: %s", qPrintable(e.what())); | ||
1398 | } | 1398 | } | ||
1399 | } | 1399 | } | ||
Context not available. | |||||
1412 | , acc.name()), | 1412 | , acc.name()), | ||
1413 | i18n("Account problem")); | 1413 | i18n("Account problem")); | ||
1414 | 1414 | | |||
1415 | throw MYMONEYEXCEPTION("Fix LoanAccount0 not supported anymore"); | 1415 | throw MYMONEYEXCEPTION_CSTRING("Fix LoanAccount0 not supported anymore"); | ||
1416 | } | 1416 | } | ||
1417 | } | 1417 | } | ||
1418 | 1418 | | |||
Context not available. | |||||
1603 | transaction.modifySplit(split); | 1603 | transaction.modifySplit(split); | ||
1604 | file->modifyTransaction(transaction); | 1604 | file->modifyTransaction(transaction); | ||
1605 | } | 1605 | } | ||
1606 | } catch (const MyMoneyException &) { | 1606 | } catch (const std::exception &) { | ||
1607 | qDebug("Missing security '%s', split not altered", qPrintable(splitAccount.currencyId())); | 1607 | qDebug("Missing security '%s', split not altered", qPrintable(splitAccount.currencyId())); | ||
1608 | } | 1608 | } | ||
1609 | } | 1609 | } | ||
Context not available. | |||||
2478 | d->m_recentFiles->addUrl(d->m_fileName); | 2478 | d->m_recentFiles->addUrl(d->m_fileName); | ||
2479 | writeLastUsedFile(d->m_fileName.url()); | 2479 | writeLastUsedFile(d->m_fileName.url()); | ||
2480 | 2480 | | |||
2481 | } catch (const MyMoneyException &) { | 2481 | } catch (const std::exception &) { | ||
2482 | // next line required until we move all file handling out of KMyMoneyView | 2482 | // next line required until we move all file handling out of KMyMoneyView | ||
2483 | d->closeFile(); | 2483 | d->closeFile(); | ||
2484 | } | 2484 | } | ||
Context not available. | |||||
2634 | d->m_fileName = QUrl(); // imported files have no filename | 2634 | d->m_fileName = QUrl(); // imported files have no filename | ||
2635 | } | 2635 | } | ||
2636 | 2636 | | |||
2637 | } catch (const MyMoneyException &e) { | 2637 | } catch (const std::exception &e) { | ||
2638 | KMessageBox::sorry(this, i18n("Cannot open file as requested. Error was: %1", e.what())); | 2638 | KMessageBox::sorry(this, i18n("Cannot open file as requested. Error was: %1", e.what())); | ||
2639 | } | 2639 | } | ||
2640 | updateCaption(); | 2640 | updateCaption(); | ||
Context not available. | |||||
2971 | try { | 2971 | try { | ||
2972 | file->setUser(user); | 2972 | file->setUser(user); | ||
2973 | ft.commit(); | 2973 | ft.commit(); | ||
2974 | } catch (const MyMoneyException &e) { | 2974 | } catch (const std::exception &e) { | ||
2975 | KMessageBox::information(this, i18n("Unable to store user information: %1", e.what())); | 2975 | KMessageBox::information(this, i18n("Unable to store user information: %1", e.what())); | ||
2976 | } | 2976 | } | ||
2977 | } | 2977 | } | ||
Context not available. | |||||
2994 | (*it_t).importTemplate(&progressCallback); | 2994 | (*it_t).importTemplate(&progressCallback); | ||
2995 | } | 2995 | } | ||
2996 | ft.commit(); | 2996 | ft.commit(); | ||
2997 | } catch (const MyMoneyException &e) { | 2997 | } catch (const std::exception &e) { | ||
2998 | KMessageBox::detailedSorry(0, i18n("Error"), i18n("Unable to import template(s): %1, thrown in %2:%3", e.what(), e.file(), e.line())); | 2998 | KMessageBox::detailedSorry(this, i18n("Unable to import template(s)"), e.what()); | ||
2999 | } | 2999 | } | ||
3000 | } | 3000 | } | ||
3001 | delete dlg; | 3001 | delete dlg; | ||
Context not available. | |||||
3402 | 3402 | | |||
3403 | file->createAccount(newAccount, parentAccount, brokerageAccount, openingBal); | 3403 | file->createAccount(newAccount, parentAccount, brokerageAccount, openingBal); | ||
3404 | 3404 | | |||
3405 | } catch (const MyMoneyException &e) { | 3405 | } catch (const std::exception &e) { | ||
3406 | KMessageBox::information(this, i18n("Unable to add account: %1", e.what())); | 3406 | KMessageBox::information(this, i18n("Unable to add account: %1", e.what())); | ||
3407 | } | 3407 | } | ||
3408 | } | 3408 | } | ||
Context not available. | |||||
3438 | // We assume at least 2 splits in the transaction | 3438 | // We assume at least 2 splits in the transaction | ||
3439 | MyMoneyTransaction t = newSchedule.transaction(); | 3439 | MyMoneyTransaction t = newSchedule.transaction(); | ||
3440 | if (t.splitCount() < 2) { | 3440 | if (t.splitCount() < 2) { | ||
3441 | throw MYMONEYEXCEPTION("Transaction for schedule has less than 2 splits!"); | 3441 | throw MYMONEYEXCEPTION_CSTRING("Transaction for schedule has less than 2 splits!"); | ||
3442 | } | 3442 | } | ||
3443 | 3443 | | |||
3444 | MyMoneyFileTransaction ft; | 3444 | MyMoneyFileTransaction ft; | ||
Context not available. | |||||
3453 | file->modifyAccount(newAccount); | 3453 | file->modifyAccount(newAccount); | ||
3454 | } | 3454 | } | ||
3455 | ft.commit(); | 3455 | ft.commit(); | ||
3456 | } catch (const MyMoneyException &e) { | 3456 | } catch (const std::exception &e) { | ||
3457 | KMessageBox::information(this, i18n("Unable to add scheduled transaction: %1", e.what())); | 3457 | KMessageBox::information(this, i18n("Unable to add scheduled transaction: %1", e.what())); | ||
3458 | } | 3458 | } | ||
3459 | } catch (const MyMoneyException &e) { | 3459 | } catch (const std::exception &e) { | ||
3460 | KMessageBox::information(this, i18n("Unable to add scheduled transaction: %1", e.what())); | 3460 | KMessageBox::information(this, i18n("Unable to add scheduled transaction: %1", e.what())); | ||
3461 | } | 3461 | } | ||
3462 | } | 3462 | } | ||
Context not available. | |||||
3582 | try { | 3582 | try { | ||
3583 | MyMoneyFile::instance()->modifyAccount(src); | 3583 | MyMoneyFile::instance()->modifyAccount(src); | ||
3584 | ft.commit(); | 3584 | ft.commit(); | ||
3585 | } catch (const MyMoneyException &e) { | 3585 | } catch (const std::exception &e) { | ||
3586 | KMessageBox::sorry(this, i18n("<p><b>%1</b> cannot be moved to institution <b>%2</b>. Reason: %3</p>", src.name(), _dst.name(), e.what())); | 3586 | KMessageBox::sorry(this, i18n("<p><b>%1</b> cannot be moved to institution <b>%2</b>. Reason: %3</p>", src.name(), _dst.name(), e.what())); | ||
3587 | } | 3587 | } | ||
3588 | } | 3588 | } | ||
Context not available. | |||||
3595 | try { | 3595 | try { | ||
3596 | MyMoneyFile::instance()->reparentAccount(src, dst); | 3596 | MyMoneyFile::instance()->reparentAccount(src, dst); | ||
3597 | ft.commit(); | 3597 | ft.commit(); | ||
3598 | } catch (const MyMoneyException &e) { | 3598 | } catch (const std::exception &e) { | ||
3599 | KMessageBox::sorry(this, i18n("<p><b>%1</b> cannot be moved to <b>%2</b>. Reason: %3</p>", src.name(), dst.name(), e.what())); | 3599 | KMessageBox::sorry(this, i18n("<p><b>%1</b> cannot be moved to <b>%2</b>. Reason: %3</p>", src.name(), dst.name(), e.what())); | ||
3600 | } | 3600 | } | ||
3601 | } | 3601 | } | ||
Context not available. | |||||
3698 | bool modified; | 3698 | bool modified; | ||
3699 | try { | 3699 | try { | ||
3700 | modified = MyMoneyFile::instance()->dirty(); | 3700 | modified = MyMoneyFile::instance()->dirty(); | ||
3701 | } catch (const MyMoneyException &) { | 3701 | } catch (const std::exception &) { | ||
3702 | modified = false; | 3702 | modified = false; | ||
3703 | skipActions = true; | 3703 | skipActions = true; | ||
3704 | } | 3704 | } | ||
Context not available. | |||||
3815 | try { | 3815 | try { | ||
3816 | m_consistencyCheckResult = MyMoneyFile::instance()->consistencyCheck(); | 3816 | m_consistencyCheckResult = MyMoneyFile::instance()->consistencyCheck(); | ||
3817 | ft.commit(); | 3817 | ft.commit(); | ||
3818 | } catch (const MyMoneyException &e) { | 3818 | } catch (const std::exception &e) { | ||
3819 | m_consistencyCheckResult.append(i18n("Consistency check failed: %1", e.what())); | 3819 | m_consistencyCheckResult.append(i18n("Consistency check failed: %1", e.what())); | ||
3820 | // always display the result if the check failed | 3820 | // always display the result if the check failed | ||
3821 | alwaysDisplayResult = true; | 3821 | alwaysDisplayResult = true; | ||
Context not available. | |||||
3935 | rc = d->m_myMoneyView->enterSchedule(schedule, true, true); | 3935 | rc = d->m_myMoneyView->enterSchedule(schedule, true, true); | ||
3936 | schedule = file->schedule((*it).id()); // get a copy of the modified schedule | 3936 | schedule = file->schedule((*it).id()); // get a copy of the modified schedule | ||
3937 | } | 3937 | } | ||
3938 | } catch (const MyMoneyException &) { | 3938 | } catch (const std::exception &) { | ||
3939 | } | 3939 | } | ||
3940 | } | 3940 | } | ||
3941 | if (rc == eDialogs::ScheduleResultCode::Ignore) { | 3941 | if (rc == eDialogs::ScheduleResultCode::Ignore) { | ||
Context not available. |