def create_transaction(self, name, description=None,<EOL>tx_date=datetime.min.date(),<EOL>dt_account=None, cr_account=None,<EOL>source=None, amount=<NUM_LIT>):
new_tx = Transaction(name, description, tx_date,<EOL>dt_account, cr_account, source, amount)<EOL>self.transactions.append(new_tx)<EOL>return new_tx<EOL>
Create a transaction in the general ledger.

:param name: The transaction's name.
:param description: The transaction's description.
:param tx_date: The date of the transaction.
:param cr_account: The transaction's credit account's name.
:param dt_account: The transaction's debit account's name.
:param source: The name of source the transaction originated from.
:param amount: The transaction amount.

:returns: The created transaction.