#include <transaction.h>
Inheritance diagram for HBCI::Transaction:
Public Methods | |
Transaction () | |
virtual | ~Transaction () |
bool | operator== (const Transaction &tda) const |
unique id | |
virtual unsigned int | id () const |
virtual void | setId (unsigned int i) |
Our account | |
int | ourCountryCode () const |
void | setOurCountryCode (int i) |
const string & | ourBankCode () const |
void | setOurBankCode (const string &code) |
const string & | ourAccountId () const |
void | setOurAccountId (const string &id) |
const string & | ourSuffix () const |
void | setOurSuffix (const string &id) |
Date | |
const Date & | valutaDate () const |
void | setValutaDate (const Date &d) |
const Date & | date () const |
void | setDate (const Date &d) |
Value | |
const Value & | value () const |
void | setValue (const Value &v) |
Type of Transaction | |
const string & | transactionKey () const |
void | setTransactionKey (const string &s) |
Reference String | |
const string & | customerReference () const |
void | setCustomerReference (const string &s) |
const string & | bankReference () const |
void | setBankReference (const string &s) |
Currency exchange | |
const Value & | originalValue () const |
void | setOriginalValue (const Value &v) |
const Value & | charge () const |
void | setCharge (const Value &v) |
Transaction Description | |
int | transactionCode () const |
void | setTransactionCode (int c) |
const string & | transactionText () const |
void | setTransactionText (const string &s) |
const string & | primanota () const |
void | setPrimanota (const string &s) |
const list< string > & | description () const |
void | addDescription (const string &s) |
Other account | |
int | otherCountryCode () const |
void | setOtherCountryCode (int i) |
const string & | otherBankCode () const |
void | setOtherBankCode (const string &s) |
const string & | otherAccountId () const |
void | setOtherAccountId (const string &s) |
const string & | otherSuffix () const |
void | setOtherSuffix (const string &id) |
const list< string > & | otherName () const |
void | addOtherName (const string &s) |
This class represents a transaction. It therefore implements two different specifications:
The data getters/setters are ordered in the order in which they appear in the SWIFT MT940 Specification (HBCI Spec. chapter IX.2.8). That specification is therefore the authoritative source of what precisely each data element means. (Unfortunately sometimes the spec is not so precise...)
Note that a whole lot of important information wasn't specified in the MT940 itself but only as an additional structure of the "misc. field" Number 86. Those data fields are specified by the ZKA but not SWIFT itself, and therefore it is noted where that field No. 86 comes into play.
|
|
|
|
|
Description of what this transaction is for, and how the Bank describes this transaction. Note: Every single string represents one line, and each line is going to be truncated to have at most 27 characters. According to HBCI Spec chapter IX.2.8, somewhere in these lines this might contain the equivalent transaction value in DEM vs. EUR or vice versa. Also, if the originalValue() and charge() above was unused but this in fact had a original value and charges, then that information might be contained somewhere in these description lines. (Good luck.) -- Verwendungszweck; fields 20-29 and 60-63 in field :86: Implements HBCI::AbstractTrans. |
|
Name of the other party -- fields 32 and 33 in field :86: Each single string (there are two strings allowed) is going to be truncated to have at most 27 characters. Implements HBCI::AbstractTrans. |
|
Reference string for this transaction given by the bank, if it has given one. Otherwise empty. -- Bankreferenz in :61: |
|
NOT IMPLEMENTED. If this transaction was in a different currency than your account is in, then this is the extra amount charged for currency exchange. Currently NOT IMPLEMENTED in the MT940 parser. -- Gebührenbetrag (charges) in :61: |
|
Reference string, if the customer (you) has specified one. (E.g. the cheque number.) Otherwise "NONREF". -- Kundenreferenz in :61: |
|
The date when the transaction was booked. In MT940 spec this has only four characters (no year), so we take the year from the valutaDate(). -- Buchungsdatum in :61: |
|
Description of what this transaction is for, and how the Bank describes this transaction. According to HBCI Spec chapter IX.2.8, somewhere in these lines this might contain the equivalent transaction value in DEM vs. EUR or vice versa. Also, if the originalValue() and charge() above was unused but this in fact had a original value and charges, then that information might be contained somewhere in these description lines. (Good luck.) -- Verwendungszweck; fields 20-29 and 60-63 in field :86: Implements HBCI::AbstractTrans. |
|
unique id of the transaction |
|
Compares this Transaction to the given one.
|
|
NOT IMPLEMENTED. If this transaction was in a different currency than your account is in, then this is the transaction value in the original currency. Otherwise zero. Currently NOT IMPLEMENTED in the MT940 parser. -- Ursprungsbetrag in :61: |
|
Account number of the other party -- Kontonummer; field 31 in field :86: Implements HBCI::AbstractTrans. |
|
Institute code (BLZ) of the other party's institute -- BLZ; field 30 in field :86: Implements HBCI::AbstractTrans. |
|
Country code (BLZ) of the other party's institute -- not in MT940/field :86: Implements HBCI::AbstractTrans. |
|
Name of the other party -- fields 32 and 33 in field :86: Implements HBCI::AbstractTrans. |
|
If the account of the other party has subaccounts which are distinguished by different suffixes, then this is that suffix of the other party. Otherwise it's empty. -- *not* in MT940 / field :86: Implements HBCI::AbstractTrans. |
|
Your account number; up to 23 characters. Note: possibly including the currency (yes, that's what MT940 says) -- Kontonummer in :25: Implements HBCI::AbstractTrans. |
|
bank code of your institute (BLZ or S.W.I.F.T. code) -- BLZ in :25: Implements HBCI::AbstractTrans. |
|
country code of your institute -- not in MT940 Implements HBCI::AbstractTrans. |
|
If your account has subaccounts which are distinguished by different suffixes, then this is that suffix. Otherwise it's empty. -- not in MT940 Implements HBCI::AbstractTrans. |
|
Primanoten-Number (no idea what this means) -- Primanoten-Nummer; field 10 in field :86: |
|
Reference string for this transaction given by the bank, if it has given one. Otherwise empty. -- Bankreferenz in :61: |
|
NOT IMPLEMENTED. If this transaction was in a different currency than your account is in, then this is the extra amount charged for currency exchange. Currently NOT IMPLEMENTED in the MT940 parser. -- Gebührenbetrag (charges) in :61: |
|
Reference string, if the customer (you) has specified one. (E.g. the cheque number.) Otherwise "NONREF". -- Kundenreferenz in :61: |
|
The date when the transaction was booked. In MT940 spec this has only four characters (no year), so we take the year from the valutaDate(). -- Buchungsdatum in :61: |
|
set unique id of the transaction |
|
NOT IMPLEMENTED. If this transaction was in a different currency than your account is in, then this is the transaction value in the original currency. Otherwise zero. Currently NOT IMPLEMENTED in the MT940 parser. -- Ursprungsbetrag in :61: |
|
Account number of the other party -- Kontonummer; field 31 in field :86: Implements HBCI::AbstractTrans. |
|
Institute code (BLZ) of the other party's institute -- BLZ; field 30 in field :86: Implements HBCI::AbstractTrans. |
|
Country code (BLZ) of the other party's institute -- not in MT940/field :86: Implements HBCI::AbstractTrans. |
|
If the account of the other party has subaccounts which are distinguished by different suffixes, then this is that suffix of the other party. Otherwise it's empty. -- *not* in MT940 / field :86: Implements HBCI::AbstractTrans. |
|
Your account number; up to 23 characters. Note: possibly including the currency (yes, that's what MT940 says) -- Kontonummer in :25: Implements HBCI::AbstractTrans. |
|
bank code of your institute (BLZ or S.W.I.F.T. code) -- BLZ in :25: Implements HBCI::AbstractTrans. |
|
country code of your institute -- not in MT940 Implements HBCI::AbstractTrans. |
|
If your account has subaccounts which are distinguished by different suffixes, then this is that suffix. Otherwise it's empty. -- not in MT940 Implements HBCI::AbstractTrans. |
|
Primanoten-Number (no idea what this means) -- Primanoten-Nummer; field 10 in field :86: |
|
A 3 digit numerical transaction code, defined for all kinds of different HBCI actions. -- Geschaeftsvorfallcode, first field in field :86: For a normal transfer you should set it to 51. For debit notes the values 05 or 06 may be used. For other values please refer to your credit institute. Implements HBCI::AbstractTrans. |
|
this is the transaction id that tells you more about the type of transaction (3 character code) -- Buchungsschluessel in :61: |
|
Transaction text (e.g. STANDING ORDER) -- Buchungstext; field 00 in field :86: |
|
The value of this transaction in the account's currency. -- Betrag in :61: Implements HBCI::AbstractTrans. |
|
A date "Valuta" when the transaction was (really?) executed -- Datum Valuta/Wertstellung in :61: |
|
A 3 digit numerical transaction code, defined for all kinds of different HBCI actions. -- Geschaeftsvorfallcode, first field in field :86: For a normal transfer you should set it to 51. For debit notes the values 05 or 06 may be used. For other values please refer to your credit institute. Implements HBCI::AbstractTrans. |
|
this is the transaction id that tells you more about the type of transaction (3 character code) -- Buchungsschluessel in :61: |
|
Transaction text (e.g. STANDING ORDER) -- Buchungstext; field 00 in field :86: |
|
The value of this transaction in the account's currency. -- Betrag in :61: Implements HBCI::AbstractTrans. |
|
A date "Valuta" when the transaction was (really?) executed -- Datum Valuta/Wertstellung in :61: |