#include <mymoneytransaction.h>
Inheritance diagram for MyMoneyTransaction:


Public Member Functions | |
| MyMoneyTransaction () | |
| MyMoneyTransaction (const QCString id, const MyMoneyTransaction &transaction) | |
| MyMoneyTransaction (const QDomElement &node, const bool forceId=true) | |
| ~MyMoneyTransaction () | |
| const QDate & | entryDate (void) const |
| const QDate & | postDate (void) const |
| const QString & | memo (void) const |
| const QValueList< MyMoneySplit > & | splits (void) const |
| QValueList< MyMoneySplit > & | splits (void) |
| unsigned int | splitCount (void) const |
| const QCString & | commodity (void) const |
| const QString & | bankID (void) const |
| void | setPostDate (const QDate &date) |
| void | setEntryDate (const QDate &date) |
| void | setMemo (const QString &memo) |
| void | setCommodity (const QCString &commodityId) |
| void | setBankID (const QString &bankID) |
| bool | operator== (const MyMoneyTransaction &) const |
| bool | operator!= (const MyMoneyTransaction &r) const |
| bool | operator< (const MyMoneyTransaction &r) const |
| bool | operator<= (const MyMoneyTransaction &r) const |
| bool | operator> (const MyMoneyTransaction &r) const |
| const MyMoneySplit & | splitByAccount (const QCString &accountId, const bool match=true) const |
| const MyMoneySplit & | splitByAccount (const QCStringList &accountIds, const bool match=true) const |
| const MyMoneySplit & | splitById (const QCString &splitId) const |
| const MyMoneySplit & | splitByPayee (const QCString &payeeId) const |
| bool | accountReferenced (const QCString &id) const |
| void | addSplit (MyMoneySplit &split) |
| void | modifySplit (MyMoneySplit &split) |
| void | removeSplit (const MyMoneySplit &split) |
| void | removeSplits (void) |
| const MyMoneyMoney | splitSum (void) const |
| bool | isLoanPayment (void) const |
| const MyMoneySplit & | amortizationSplit (void) const |
| bool | isDuplicate (const MyMoneyTransaction &transaction) const |
| bool | isStockSplit (void) const |
| bool | isImported (void) const |
| void | writeXML (QDomDocument &document, QDomElement &parent) const |
| virtual bool | hasReferenceTo (const QCString &id) const |
| bool | hasAutoCalcSplit (void) const |
| QString | accountSignature (bool includeSplitCount=false) const |
| QCString | uniqueSortKey (void) const |
Static Public Member Functions | |
| static const QCString | firstSplitID (void) |
| static unsigned long | hash (const QString &txt, unsigned long h=0) |
Private Member Functions | |
| const QCString | nextSplitID (void) |
Private Attributes | |
| QDate | m_entryDate |
| QDate | m_postDate |
| QString | m_memo |
| QValueList< MyMoneySplit > | m_splits |
| unsigned int | m_nextSplitID |
| QCString | m_commodity |
| QString | m_bankID |
Static Private Attributes | |
| static const int | SPLIT_ID_SIZE = 4 |
| static const int | YEAR_SIZE = 4 |
| static const int | MONTH_SIZE = 2 |
| static const int | DAY_SIZE = 2 |
Friends | |
| QDataStream & | operator<< (QDataStream &, MyMoneyTransaction &) |
| QDataStream & | operator>> (QDataStream &, MyMoneyTransaction &) |
|
|
|
|
||||||||||||
|
|
|
||||||||||||
|
|
|
|
|
|
|
This method is used to check if the given account is used in any of the splits of this transation
|
|
|
Returns a signature consisting of the account ids and the number of times they occur in the transaction if includeSplitCount is . The signature is independant from the order of splits.
Example: Having splits referencing the account B, A and B, the returned value will be "A-B" if The same result will be returned if the list of splits is A, B, B.
|
|
|
This method is used to add a split to the transaction. The split will be assigned an id. The id member must be empty and the accountId member must be filled.
|
|
|
This method returns a const reference to the amortization split. In case none is found, a reference to an empty split will be returned. |
|
|
|
|
|
|
|
|
|
|
|
This static method returns the id which will be assigned to the first split added to a transaction. This ID can be used to figure out the split that references the account through which a transaction was entered.
|
|
|
Checks whether any split contains an autocalc split.
|
|
||||||||||||
|
This module implements an algorithm used by P.J. Weinberger for fast hashing. Source: COMPILERS by Alfred V. Aho, pages 435-437.
It converts the string passed in
|
|
|
This method checks if a reference to the given object exists. It returns, a
Implements MyMoneyObject. |
|
|
This method is used to check if two transactions are identical. Identical transactions have:
|
|
|
returns true if this is an imported transaction |
|
|
This method returns information if the transaction contains information of a loan payment or not. Loan payment transactions have at least one split that is identified with a MyMoneySplit::action() of type MyMoneySplit::ActionAmortization.
|
|
|
returns true if this is a stock split transaction |
|
|
|
|
|
This method is used to modify a split in a transaction |
|
|
This method returns the next id to be used for a split |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This method is used to remove a split from a transaction |
|
|
This method is used to remove all splits from a transaction |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
This method is essentially the same as the previous method, except that takes a list of accounts instead of just one.
|
|
||||||||||||
|
This method is used to extract a split for a given accountId from a transaction. A parameter controls, whether the accountId should match or not. In case of 'not match', the first not-matching split is returned.
|
|
|
This method is used to extract a split from a transaction.
|
|
|
This method is used to extract a split for a given payeeId from a transaction.
|
|
|
|
|
|
|
|
|
|
|
|
This method is used to return the sum of all splits of this transaction
|
|
|
|
|
||||||||||||
|
This method creates a QDomElement for the
Reimplemented from MyMoneyKeyValueContainer. |
|
||||||||||||
|
|
|
||||||||||||
|
|
|
|
|
|
|
This member keeps the bank's unique ID for the transaction, so we can avoid duplicates. This is only used for electronic statement downloads. Note this is now deprecated! Bank ID's should be set on splits, not transactions. |
|
|
This member keeps the base commodity (e.g. currency) for this transaction |
|
|
This member contains the date when the transaction was entered into the engine |
|
|
This member keeps the memo text associated with this transaction |
|
|
This member keeps the unique numbers of splits within this transaction. Upon creation of a MyMoneyTransaction object this value will be set to 1. |
|
|
This member contains the date the transaction was posted |
|
|
This member contains the splits for this transaction |
|
|
|
|
|
|
|
|
constants for unique sort key |
1.4.1