[Gnucash-changes] Add support for HBCI internal bank transfers.
Christian Stimming
cstim at cvs.gnucash.org
Sat Sep 10 05:51:48 EDT 2005
Log Message:
-----------
Add support for HBCI internal bank transfers.
Committed only to gnome2-branch so that it will arrive in HEAD
at the final gnome2->HEAD merge.
2005-09-10 Christian Stimming <stimming at tuhh.de>
* src/import-export/hbci/dialog-hbcitrans.[hc]: Add support for
"internal bank transfers" as supported by latest aqbanking. If
aqbanking >= 1.6.1 is available, it will automatically be compiled
in, otherwise ifdef'd out.
Tags:
----
gnucash-gnome2-dev
Modified Files:
--------------
gnucash:
ChangeLog
gnucash/src/import-export/hbci:
dialog-hbcitrans.c
dialog-hbcitrans.h
gnc-hbci-transfer.c
gnc-plugin-hbci.c
Revision Data
-------------
Index: ChangeLog
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/ChangeLog,v
retrieving revision 1.1487.2.282
retrieving revision 1.1487.2.283
diff -LChangeLog -LChangeLog -u -r1.1487.2.282 -r1.1487.2.283
--- ChangeLog
+++ ChangeLog
@@ -1,3 +1,10 @@
+2005-09-10 Christian Stimming <stimming at tuhh.de>
+
+ * src/import-export/hbci/dialog-hbcitrans.[hc]: Add support for
+ "internal bank transfers" as supported by latest aqbanking. If
+ aqbanking >= 1.6.1 is available, it will automatically be compiled
+ in, otherwise ifdef'd out.
+
2005-09-08 David Hampton <hampton at employees.org>
* lib/libc/Makefile.am:
Index: dialog-hbcitrans.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/import-export/hbci/dialog-hbcitrans.h,v
retrieving revision 1.3.4.4
retrieving revision 1.3.4.5
diff -Lsrc/import-export/hbci/dialog-hbcitrans.h -Lsrc/import-export/hbci/dialog-hbcitrans.h -u -r1.3.4.4 -r1.3.4.5
--- src/import-export/hbci/dialog-hbcitrans.h
+++ src/import-export/hbci/dialog-hbcitrans.h
@@ -39,7 +39,8 @@
typedef enum GNC_HBCI_Transtype {
SINGLE_TRANSFER = 0,
- SINGLE_DEBITNOTE
+ SINGLE_DEBITNOTE,
+ SINGLE_INTERNAL_TRANSFER
} GNC_HBCI_Transtype;
Index: gnc-hbci-transfer.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/import-export/hbci/gnc-hbci-transfer.c,v
retrieving revision 1.7.4.8
retrieving revision 1.7.4.9
diff -Lsrc/import-export/hbci/gnc-hbci-transfer.c -Lsrc/import-export/hbci/gnc-hbci-transfer.c -u -r1.7.4.8 -r1.7.4.9
--- src/import-export/hbci/gnc-hbci-transfer.c
+++ src/import-export/hbci/gnc-hbci-transfer.c
@@ -232,6 +232,8 @@
switch (trans_type) {
case SINGLE_DEBITNOTE:
gnc_xfer_dialog_set_title (transdialog, _("Online HBCI Direct Debit Note"));
+ case SINGLE_INTERNAL_TRANSFER:
+ gnc_xfer_dialog_set_title (transdialog, _("Online HBCI Bank-Internal Transfer"));
case SINGLE_TRANSFER:
default:
gnc_xfer_dialog_set_title (transdialog, _("Online HBCI Transaction"));
Index: dialog-hbcitrans.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/import-export/hbci/dialog-hbcitrans.c,v
retrieving revision 1.9.4.14
retrieving revision 1.9.4.15
diff -Lsrc/import-export/hbci/dialog-hbcitrans.c -Lsrc/import-export/hbci/dialog-hbcitrans.c -u -r1.9.4.14 -r1.9.4.15
--- src/import-export/hbci/dialog-hbcitrans.c
+++ src/import-export/hbci/dialog-hbcitrans.c
@@ -31,6 +31,14 @@
#include <aqbanking/account.h>
#include <aqbanking/jobsingletransfer.h>
#include <aqbanking/jobsingledebitnote.h>
+#if ((AQBANKING_VERSION_MAJOR > 1) || \
+ ((AQBANKING_VERSION_MAJOR == 1) && \
+ ((AQBANKING_VERSION_MINOR > 6) || \
+ ((AQBANKING_VERSION_MINOR == 6) && \
+ ((AQBANKING_VERSION_PATCHLEVEL > 0) || \
+ (AQBANKING_VERSION_BUILD > 2))))))
+# include <aqbanking/jobinternaltransfer.h>
+#endif
#include <iconv.h>
#include "dialog-utils.h"
@@ -338,6 +346,7 @@
the labels accordingly. */
switch (trans_type) {
case SINGLE_TRANSFER:
+ case SINGLE_INTERNAL_TRANSFER:
/* all labels are already set */
break;
case SINGLE_DEBITNOTE:
@@ -703,6 +712,16 @@
case SINGLE_DEBITNOTE:
job = AB_JobSingleDebitNote_new(h_acc);
break;
+ case SINGLE_INTERNAL_TRANSFER:
+#if ((AQBANKING_VERSION_MAJOR > 1) || \
+ ((AQBANKING_VERSION_MAJOR == 1) && \
+ ((AQBANKING_VERSION_MINOR > 6) || \
+ ((AQBANKING_VERSION_MINOR == 6) && \
+ ((AQBANKING_VERSION_PATCHLEVEL > 0) || \
+ (AQBANKING_VERSION_BUILD > 2))))))
+ job = AB_JobInternalTransfer_new(h_acc);
+ break;
+#endif
default:
case SINGLE_TRANSFER:
job = AB_JobSingleTransfer_new(h_acc);
@@ -716,6 +735,16 @@
case SINGLE_DEBITNOTE:
AB_JobSingleDebitNote_SetTransaction(job, td->hbci_trans);
break;
+ case SINGLE_INTERNAL_TRANSFER:
+#if ((AQBANKING_VERSION_MAJOR > 1) || \
+ ((AQBANKING_VERSION_MAJOR == 1) && \
+ ((AQBANKING_VERSION_MINOR > 6) || \
+ ((AQBANKING_VERSION_MINOR == 6) && \
+ ((AQBANKING_VERSION_PATCHLEVEL > 0) || \
+ (AQBANKING_VERSION_BUILD > 2))))))
+ AB_JobInternalTransfer_SetTransaction(job, td->hbci_trans);
+ break;
+#endif
default:
case SINGLE_TRANSFER:
AB_JobSingleTransfer_SetTransaction(job, td->hbci_trans);
Index: gnc-plugin-hbci.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/import-export/hbci/Attic/gnc-plugin-hbci.c,v
retrieving revision 1.1.2.6
retrieving revision 1.1.2.7
diff -Lsrc/import-export/hbci/gnc-plugin-hbci.c -Lsrc/import-export/hbci/gnc-plugin-hbci.c -u -r1.1.2.6 -r1.1.2.7
--- src/import-export/hbci/gnc-plugin-hbci.c
+++ src/import-export/hbci/gnc-plugin-hbci.c
@@ -64,6 +64,14 @@
static void gnc_plugin_hbci_cmd_get_balance (GtkAction *action, GncMainWindowActionData *data);
static void gnc_plugin_hbci_cmd_get_transactions (GtkAction *action, GncMainWindowActionData *data);
static void gnc_plugin_hbci_cmd_issue_transaction (GtkAction *action, GncMainWindowActionData *data);
+#if ((AQBANKING_VERSION_MAJOR > 1) || \
+ ((AQBANKING_VERSION_MAJOR == 1) && \
+ ((AQBANKING_VERSION_MINOR > 6) || \
+ ((AQBANKING_VERSION_MINOR == 6) && \
+ ((AQBANKING_VERSION_PATCHLEVEL > 0) || \
+ (AQBANKING_VERSION_BUILD > 2))))))
+static void gnc_plugin_hbci_cmd_issue_inttransaction (GtkAction *action, GncMainWindowActionData *data);
+#endif
static void gnc_plugin_hbci_cmd_issue_direct_debit (GtkAction *action, GncMainWindowActionData *data);
@@ -84,9 +92,19 @@
{ "HbciGetTransAction", NULL, N_("HBCI Get _Transactions"), NULL,
N_("Get the transactions online through HBCI"),
G_CALLBACK (gnc_plugin_hbci_cmd_get_transactions) },
- { "HbciIssueTransAction", NULL, N_("HBCI _Issue Transactions"), NULL,
+ { "HbciIssueTransAction", NULL, N_("HBCI _Issue Transaction"), NULL,
N_("Issue a new transaction online through HBCI"),
G_CALLBACK (gnc_plugin_hbci_cmd_issue_transaction) },
+#if ((AQBANKING_VERSION_MAJOR > 1) || \
+ ((AQBANKING_VERSION_MAJOR == 1) && \
+ ((AQBANKING_VERSION_MINOR > 6) || \
+ ((AQBANKING_VERSION_MINOR == 6) && \
+ ((AQBANKING_VERSION_PATCHLEVEL > 0) || \
+ (AQBANKING_VERSION_BUILD > 2))))))
+ { "HbciIssueIntTransAction", NULL, N_("HBCI Issue Internal Transaction"), NULL,
+ N_("Issue a new bank-internal transaction online through HBCI"),
+ G_CALLBACK (gnc_plugin_hbci_cmd_issue_inttransaction) },
+#endif
{ "HbciIssueDirectDebitAction", NULL, N_("HBCI Issue _Direct Debit"), NULL,
N_("Issue a new direct debit note online through HBCI"),
G_CALLBACK (gnc_plugin_hbci_cmd_issue_direct_debit) },
@@ -433,6 +451,30 @@
LEAVE(" ");
}
+#if ((AQBANKING_VERSION_MAJOR > 1) || \
+ ((AQBANKING_VERSION_MAJOR == 1) && \
+ ((AQBANKING_VERSION_MINOR > 6) || \
+ ((AQBANKING_VERSION_MINOR == 6) && \
+ ((AQBANKING_VERSION_PATCHLEVEL > 0) || \
+ (AQBANKING_VERSION_BUILD > 2))))))
+static void
+gnc_plugin_hbci_cmd_issue_inttransaction (GtkAction *action,
+ GncMainWindowActionData *data)
+{
+ Account *account;
+
+ ENTER("action %p, main window data %p", action, data);
+ account = main_window_to_account(data->window);
+ if (account == NULL) {
+ LEAVE("no account");
+ return;
+ }
+
+ gnc_hbci_maketrans(GTK_WIDGET(data->window), account, SINGLE_INTERNAL_TRANSFER);
+ LEAVE(" ");
+}
+#endif
+
static void
gnc_plugin_hbci_cmd_issue_direct_debit (GtkAction *action,
GncMainWindowActionData *data)
More information about the gnucash-changes
mailing list