00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00017 #ifndef AQBANKING_BANKING_H
00018 #define AQBANKING_BANKING_H
00019
00020 #include <gwenhywfar/inherit.h>
00021 #include <gwenhywfar/types.h>
00022 #include <gwenhywfar/db.h>
00023 #include <gwenhywfar/stringlist.h>
00024 #include <gwenhywfar/plugindescr.h>
00025 #include <aqbanking/error.h>
00026 #include <aqbanking/version.h>
00027
00028
00029 #define AB_PM_LIBNAME "aqbanking"
00030 #define AB_PM_SYSCONFDIR "sysconfdir"
00031 #define AB_PM_DATADIR "datadir"
00032
00033
00034 #ifdef __cplusplus
00035 extern "C" {
00036 #endif
00037
00057
00062 #define AB_BANKING_EXTENSION_NONE 0x00000000
00063
00073 #define AB_BANKING_EXTENSION_NESTING_PROGRESS 0x00000001
00074
00083 #define AB_BANKING_PROGRESS_NONE 0xffffffff
00084
00091 #define AB_BANKING_PROGRESS_ONE 0xfffffffe
00092
00093
00097 typedef struct AB_BANKING AB_BANKING;
00098
00102 GWEN_INHERIT_FUNCTION_LIB_DEFS(AB_BANKING, AQBANKING_API)
00103
00104
00105
00106
00116
00117
00118
00125 #define AB_BANKING_INPUT_FLAGS_CONFIRM 0x00000001
00127 #define AB_BANKING_INPUT_FLAGS_SHOW 0x00000002
00128
00129 #define AB_BANKING_INPUT_FLAGS_NUMERIC 0x00000004
00130
00131 #define AB_BANKING_INPUT_FLAGS_RETRY 0x00000008
00132
00134 #define AB_BANKING_INPUT_FLAGS_ALLOW_DEFAULT 0x00000010
00135
00186 #define AB_BANKING_MSG_FLAGS_TYPE_MASK 0x07
00187
00188 #define AB_BANKING_MSG_FLAGS_TYPE_INFO 0
00189
00190 #define AB_BANKING_MSG_FLAGS_TYPE_IS_INFO(fl) \
00191 ((fl & AB_BANKING_MSG_FLAGS_TYPE_MASK)==AB_BANKING_MSG_FLAGS_TYPE_INFO)
00192
00194 #define AB_BANKING_MSG_FLAGS_TYPE_WARN 1
00195
00196 #define AB_BANKING_MSG_FLAGS_TYPE_IS_WARN(fl) \
00197 ((fl & AB_BANKING_MSG_FLAGS_TYPE_MASK)==AB_BANKING_MSG_FLAGS_TYPE_WARN)
00198
00200 #define AB_BANKING_MSG_FLAGS_TYPE_ERROR 2
00201
00202 #define AB_BANKING_MSG_FLAGS_TYPE_IS_ERROR \
00203 ((fl & AB_BANKING_MSG_FLAGS_TYPE_MASK)==AB_BANKING_MSG_FLAGS_TYPE_ERROR)
00204
00206 #define AB_BANKING_MSG_FLAGS_CONFIRM_B1 (1<<3)
00207
00208 #define AB_BANKING_MSG_FLAGS_CONFIRM_B2 (2<<3)
00209
00210 #define AB_BANKING_MSG_FLAGS_CONFIRM_B3 (3<<3)
00211
00212 #define AB_BANKING_MSG_FLAGS_CONFIRM_BUTTON(fl) ((fl & 0x3)>>3)
00213
00214
00236 #define AB_BANKING_MSG_FLAGS_SEVERITY_MASK (0x7<<5)
00237
00238 #define AB_BANKING_MSG_FLAGS_SEVERITY_NORMAL (0x0<<5)
00239 #define AB_BANKING_MSG_FLAGS_SEVERITY_IS_NORMAL(fl) \
00240 ((fl & AB_BANKING_MSG_FLAGS_SEVERITY_MASK)==\
00241 AB_BANKING_MSG_FLAGS_SEVERITY_NORMAL)
00242
00244 #define AB_BANKING_MSG_FLAGS_SEVERITY_DANGEROUS (0x1<<5)
00245 #define AB_BANKING_MSG_FLAGS_SEVERITY_IS_DANGEROUS(fl) \
00246 ((fl & AB_BANKING_MSG_FLAGS_SEVERITY_MASK)==\
00247 AB_BANKING_MSG_FLAGS_SEVERITY_DANGEROUS)
00248
00255
00261 #define AB_BANKING_SHOWBOX_FLAGS_BEEP 0x00000001
00262
00263
00273 typedef enum {
00275 AB_Banking_LogLevelPanic=0,
00277 AB_Banking_LogLevelEmergency,
00279 AB_Banking_LogLevelError,
00281 AB_Banking_LogLevelWarn,
00283 AB_Banking_LogLevelNotice,
00285 AB_Banking_LogLevelInfo,
00287 AB_Banking_LogLevelDebug,
00289 AB_Banking_LogLevelVerbous
00290 } AB_BANKING_LOGLEVEL;
00291
00292 #ifdef __cplusplus
00293 }
00294 #endif
00295
00296
00297 #include <aqbanking/job.h>
00298 #include <aqbanking/provider.h>
00299 #include <aqbanking/imexporter.h>
00300 #include <aqbanking/bankinfoplugin.h>
00301 #include <aqbanking/bankinfo.h>
00302 #include <aqbanking/country.h>
00303
00304
00305 #ifdef __cplusplus
00306 extern "C" {
00307 #endif
00308
00321 typedef int (*AB_BANKING_MESSAGEBOX_FN)(AB_BANKING *ab,
00322 GWEN_TYPE_UINT32 flags,
00323 const char *title,
00324 const char *text,
00325 const char *b1,
00326 const char *b2,
00327 const char *b3);
00328
00335 typedef int (*AB_BANKING_INPUTBOX_FN)(AB_BANKING *ab,
00336 GWEN_TYPE_UINT32 flags,
00337 const char *title,
00338 const char *text,
00339 char *buffer,
00340 int minLen,
00341 int maxLen);
00342
00349 typedef GWEN_TYPE_UINT32 (*AB_BANKING_SHOWBOX_FN)(AB_BANKING *ab,
00350 GWEN_TYPE_UINT32 flags,
00351 const char *title,
00352 const char *text);
00359 typedef void (*AB_BANKING_HIDEBOX_FN)(AB_BANKING *ab, GWEN_TYPE_UINT32 id);
00360
00367 typedef GWEN_TYPE_UINT32
00368 (*AB_BANKING_PROGRESS_START_FN)(AB_BANKING *ab,
00369 const char *title,
00370 const char *text,
00371 GWEN_TYPE_UINT32 total);
00372
00379 typedef int (*AB_BANKING_PROGRESS_ADVANCE_FN)(AB_BANKING *ab,
00380 GWEN_TYPE_UINT32 id,
00381 GWEN_TYPE_UINT32 progress);
00388 typedef int (*AB_BANKING_PROGRESS_LOG_FN)(AB_BANKING *ab,
00389 GWEN_TYPE_UINT32 id,
00390 AB_BANKING_LOGLEVEL level,
00391 const char *text);
00398 typedef int (*AB_BANKING_PROGRESS_END_FN)(AB_BANKING *ab,
00399 GWEN_TYPE_UINT32 id);
00400
00407 typedef int (*AB_BANKING_PRINT_FN)(AB_BANKING *ab,
00408 const char *docTitle,
00409 const char *docType,
00410 const char *descr,
00411 const char *text);
00412
00421 typedef enum {
00422 AB_Banking_PinStatusBad=-1,
00423 AB_Banking_PinStatusUnknown,
00424 AB_Banking_PinStatusOk
00425 } AB_BANKING_PINSTATUS;
00426
00427
00428 typedef enum {
00429 AB_Banking_TanStatusBad=-1,
00430 AB_Banking_TanStatusUnknown,
00431 AB_Banking_TanStatusUsed,
00432 AB_Banking_TanStatusUnused,
00433 } AB_BANKING_TANSTATUS;
00434
00435
00436 typedef int (*AB_BANKING_GETPIN_FN)(AB_BANKING *ab,
00437 GWEN_TYPE_UINT32 flags,
00438 const char *token,
00439 const char *title,
00440 const char *text,
00441 char *buffer,
00442 int minLen,
00443 int maxLen);
00444 typedef int (*AB_BANKING_SETPINSTATUS_FN)(AB_BANKING *ab,
00445 const char *token,
00446 const char *pin,
00447 AB_BANKING_PINSTATUS status);
00448
00449 typedef int (*AB_BANKING_GETTAN_FN)(AB_BANKING *ab,
00450 const char *token,
00451 const char *title,
00452 const char *text,
00453 char *buffer,
00454 int minLen,
00455 int maxLen);
00456
00457 typedef int (*AB_BANKING_SETTANSTATUS_FN)(AB_BANKING *ab,
00458 const char *token,
00459 const char *tan,
00460 AB_BANKING_TANSTATUS status);
00461
00462
00471
00515 AQBANKING_API
00516 AB_BANKING *AB_Banking_new(const char *appName, const char *dname);
00517
00527 AQBANKING_API
00528 AB_BANKING *AB_Banking_newExtended(const char *appName,
00529 const char *dname,
00530 GWEN_TYPE_UINT32 extensions);
00531
00532
00538 AQBANKING_API
00539 void AB_Banking_free(AB_BANKING *ab);
00540
00547 AQBANKING_API
00548 int AB_Banking_Init(AB_BANKING *ab);
00549
00556 AQBANKING_API
00557 int AB_Banking_Fini(AB_BANKING *ab);
00558
00565 int AB_Banking_Save(AB_BANKING *ab);
00566
00609
00613 AQBANKING_API
00614 const GWEN_STRINGLIST *AB_Banking_GetActiveProviders(const AB_BANKING *ab);
00615
00634 AQBANKING_API
00635 int AB_Banking_ActivateProvider(AB_BANKING *ab, const char *backend);
00636
00648 AQBANKING_API
00649 int AB_Banking_DeactivateProvider(AB_BANKING *ab, const char *backend);
00650
00651
00663 AQBANKING_API
00664 int AB_Banking_SuspendProvider(AB_BANKING *ab, const char *backend);
00665
00666
00673 AQBANKING_API
00674 int AB_Banking_IsProviderActive(AB_BANKING *ab, const char *backend);
00675
00676
00686 AQBANKING_API
00687 int AB_Banking_ResumeProvider(AB_BANKING *ab, const char *backend);
00688
00721 AQBANKING_API
00722 int AB_Banking_FindWizard(AB_BANKING *ab,
00723 const char *backend,
00724 const char *frontends,
00725 GWEN_BUFFER *pbuf);
00726
00730 AQBANKING_API AQBANKING_DEPRECATED
00731 int AB_Banking_GetWizardPath(AB_BANKING *ab,
00732 const char *backend,
00733 GWEN_BUFFER *pbuf);
00734
00735
00768 AQBANKING_API
00769 int AB_Banking_FindDebugger(AB_BANKING *ab,
00770 const char *backend,
00771 const char *frontends,
00772 GWEN_BUFFER *pbuf);
00773
00774
00789 AQBANKING_API
00790 const char *AB_Banking_GetAppName(const AB_BANKING *ab);
00791
00798 AQBANKING_API
00799 const char *AB_Banking_GetEscapedAppName(const AB_BANKING *ab);
00800
00808 AQBANKING_API
00809 GWEN_DB_NODE *AB_Banking_GetAppData(AB_BANKING *ab);
00810
00818 AQBANKING_API
00819 int AB_Banking_GetUserDataDir(const AB_BANKING *ab, GWEN_BUFFER *buf);
00820
00826 AQBANKING_API
00827 void AB_Banking_SetUserDataDir(AB_BANKING *ab, const char *s);
00828
00829
00841 AQBANKING_API
00842 int AB_Banking_GetAppUserDataDir(const AB_BANKING *ab, GWEN_BUFFER *buf);
00843
00852 AQBANKING_API
00853 int AB_Banking_GetSharedDataDir(const AB_BANKING *ab,
00854 const char *name,
00855 GWEN_BUFFER *buf);
00856
00866 AQBANKING_API
00867 void *AB_Banking_GetUserData(AB_BANKING *ab);
00868
00879 AQBANKING_API
00880 void AB_Banking_SetUserData(AB_BANKING *ab, void *user_data);
00881
00905 AQBANKING_API
00906 AB_ACCOUNT_LIST2 *AB_Banking_GetAccounts(const AB_BANKING *ab);
00907
00923 AQBANKING_API
00924 AB_ACCOUNT *AB_Banking_GetAccount(const AB_BANKING *ab,
00925 GWEN_TYPE_UINT32 uniqueId);
00926
00943 AQBANKING_API
00944 AB_ACCOUNT *AB_Banking_GetAccountByCodeAndNumber(const AB_BANKING *ab,
00945 const char *bankCode,
00946 const char *accountId);
00947
00964 AQBANKING_API
00965 GWEN_PLUGIN_DESCRIPTION_LIST2 *AB_Banking_GetProviderDescrs(AB_BANKING *ab);
00966
00967
00982 AQBANKING_API
00983 GWEN_PLUGIN_DESCRIPTION_LIST2 *AB_Banking_GetWizardDescrs(AB_BANKING *ab,
00984 const char *pn);
00985
00986
01001 AQBANKING_API
01002 GWEN_PLUGIN_DESCRIPTION_LIST2 *AB_Banking_GetDebuggerDescrs(AB_BANKING *ab,
01003 const char *pn);
01004
01014 AQBANKING_API
01015 GWEN_PLUGIN_DESCRIPTION_LIST2 *AB_Banking_GetImExporterDescrs(AB_BANKING *ab);
01016
01024 AQBANKING_API
01025 AB_IMEXPORTER *AB_Banking_GetImExporter(AB_BANKING *ab, const char *name);
01026
01059 AQBANKING_API
01060 GWEN_DB_NODE *AB_Banking_GetImExporterProfiles(AB_BANKING *ab,
01061 const char *name);
01118 AQBANKING_API
01119 int AB_Banking_EnqueueJob(AB_BANKING *ab, AB_JOB *j);
01120
01129 AQBANKING_API
01130 int AB_Banking_DequeueJob(AB_BANKING *ab, AB_JOB *j);
01131
01132
01142 AQBANKING_API
01143 int AB_Banking_DeferJob(AB_BANKING *ab, AB_JOB *j);
01144
01162 AQBANKING_API
01163 int AB_Banking_EnqueuePendingJobs(AB_BANKING *ab, int mineOnly);
01164
01197 AQBANKING_API
01198 int AB_Banking_ExecuteQueue(AB_BANKING *ab);
01199
01235 AQBANKING_API
01236 int AB_Banking_ExecuteJobList(AB_BANKING *ab, AB_JOB_LIST2 *jl2);
01237
01262 AQBANKING_API
01263 AB_JOB_LIST2 *AB_Banking_GetEnqueuedJobs(const AB_BANKING *ab);
01286
01298 AQBANKING_API
01299 AB_JOB_LIST2 *AB_Banking_GetFinishedJobs(AB_BANKING *ab);
01300
01306 AQBANKING_API
01307 int AB_Banking_DelFinishedJob(AB_BANKING *ab, AB_JOB *j);
01308
01324
01336 AQBANKING_API
01337 AB_JOB_LIST2 *AB_Banking_GetDeferredJobs(AB_BANKING *ab);
01338
01344 AQBANKING_API
01345 int AB_Banking_DelDeferredJob(AB_BANKING *ab, AB_JOB *j);
01346
01370
01386 AQBANKING_API
01387 AB_JOB_LIST2 *AB_Banking_GetPendingJobs(AB_BANKING *ab);
01388
01393 AQBANKING_API
01394 int AB_Banking_DelPendingJob(AB_BANKING *ab, AB_JOB *j);
01395
01409
01426 AQBANKING_API
01427 AB_JOB_LIST2 *AB_Banking_GetArchivedJobs(AB_BANKING *ab);
01428
01434 AQBANKING_API
01435 int AB_Banking_DelArchivedJob(AB_BANKING *ab, AB_JOB *j);
01436
01508 AQBANKING_API
01509 int AB_Banking_MessageBox(AB_BANKING *ab,
01510 GWEN_TYPE_UINT32 flags,
01511 const char *title,
01512 const char *text,
01513 const char *b1,
01514 const char *b2,
01515 const char *b3);
01516
01542 AQBANKING_API
01543 int AB_Banking_InputBox(AB_BANKING *ab,
01544 GWEN_TYPE_UINT32 flags,
01545 const char *title,
01546 const char *text,
01547 char *buffer,
01548 int minLen,
01549 int maxLen);
01550
01573 AQBANKING_API
01574 GWEN_TYPE_UINT32 AB_Banking_ShowBox(AB_BANKING *ab,
01575 GWEN_TYPE_UINT32 flags,
01576 const char *title,
01577 const char *text);
01578
01588 AQBANKING_API
01589 void AB_Banking_HideBox(AB_BANKING *ab, GWEN_TYPE_UINT32 id);
01590
01591
01623 AQBANKING_API
01624 GWEN_TYPE_UINT32 AB_Banking_ProgressStart(AB_BANKING *ab,
01625 const char *title,
01626 const char *text,
01627 GWEN_TYPE_UINT32 total);
01628
01650 AQBANKING_API
01651 int AB_Banking_ProgressAdvance(AB_BANKING *ab,
01652 GWEN_TYPE_UINT32 id,
01653 GWEN_TYPE_UINT32 progress);
01654
01666 AQBANKING_API
01667 int AB_Banking_ProgressLog(AB_BANKING *ab,
01668 GWEN_TYPE_UINT32 id,
01669 AB_BANKING_LOGLEVEL level,
01670 const char *text);
01671
01690 AQBANKING_API
01691 int AB_Banking_ProgressEnd(AB_BANKING *ab, GWEN_TYPE_UINT32 id);
01692
01693
01707 AQBANKING_API
01708 int AB_Banking_Print(AB_BANKING *ab,
01709 const char *docTitle,
01710 const char *docType,
01711 const char *descr,
01712 const char *text);
01713
01724
01725 AQBANKING_API
01726 void AB_Banking_SetMessageBoxFn(AB_BANKING *ab,
01727 AB_BANKING_MESSAGEBOX_FN f);
01728 AQBANKING_API
01729 void AB_Banking_SetInputBoxFn(AB_BANKING *ab,
01730 AB_BANKING_INPUTBOX_FN f);
01731 AQBANKING_API
01732 void AB_Banking_SetShowBoxFn(AB_BANKING *ab,
01733 AB_BANKING_SHOWBOX_FN f);
01734 AQBANKING_API
01735 void AB_Banking_SetHideBoxFn(AB_BANKING *ab,
01736 AB_BANKING_HIDEBOX_FN f);
01737
01738 AQBANKING_API
01739 void AB_Banking_SetProgressStartFn(AB_BANKING *ab,
01740 AB_BANKING_PROGRESS_START_FN f);
01741 AQBANKING_API
01742 void AB_Banking_SetProgressAdvanceFn(AB_BANKING *ab,
01743 AB_BANKING_PROGRESS_ADVANCE_FN f);
01744 AQBANKING_API
01745 void AB_Banking_SetProgressLogFn(AB_BANKING *ab,
01746 AB_BANKING_PROGRESS_LOG_FN f);
01747 AQBANKING_API
01748 void AB_Banking_SetProgressEndFn(AB_BANKING *ab,
01749 AB_BANKING_PROGRESS_END_FN f);
01750 AQBANKING_API
01751 void AB_Banking_SetPrintFn(AB_BANKING *ab,
01752 AB_BANKING_PRINT_FN f);
01753
01761
01784 AQBANKING_API
01785 int AB_Banking_GetPin(AB_BANKING *ab,
01786 GWEN_TYPE_UINT32 flags,
01787 const char *token,
01788 const char *title,
01789 const char *text,
01790 char *buffer,
01791 int minLen,
01792 int maxLen);
01793
01815 AQBANKING_API
01816 void AB_Banking_SetPinCacheEnabled(AB_BANKING *ab, int enabled);
01817
01823 AQBANKING_API
01824 int AB_Banking_GetPinCacheEnabled(const AB_BANKING *ab);
01825
01831 AQBANKING_API
01832 int AB_Banking_SetPinStatus(AB_BANKING *ab,
01833 const char *token,
01834 const char *pin,
01835 AB_BANKING_PINSTATUS status);
01836
01842 AQBANKING_API
01843 int AB_Banking_GetTan(AB_BANKING *ab,
01844 const char *token,
01845 const char *title,
01846 const char *text,
01847 char *buffer,
01848 int minLen,
01849 int maxLen);
01850
01856 AQBANKING_API
01857 int AB_Banking_SetTanStatus(AB_BANKING *ab,
01858 const char *token,
01859 const char *tan,
01860 AB_BANKING_TANSTATUS status);
01861
01867 AQBANKING_API
01868 int AB_Banking_GetAlwaysAskForCert(const AB_BANKING *ab);
01869
01875 AQBANKING_API
01876 void AB_Banking_SetAlwaysAskForCert(AB_BANKING *ab, int i);
01877
01886 AQBANKING_API
01887 void AB_Banking_SetGetPinFn(AB_BANKING *ab,
01888 AB_BANKING_GETPIN_FN f);
01889 AQBANKING_API
01890 void AB_Banking_SetSetPinStatusFn(AB_BANKING *ab,
01891 AB_BANKING_SETPINSTATUS_FN f);
01892
01893 AQBANKING_API
01894 void AB_Banking_SetGetTanFn(AB_BANKING *ab,
01895 AB_BANKING_GETTAN_FN f);
01896 AQBANKING_API
01897 void AB_Banking_SetSetTanStatusFn(AB_BANKING *ab,
01898 AB_BANKING_SETTANSTATUS_FN f);
01899
01922 AQBANKING_API
01923 AB_BANKINFO *AB_Banking_GetBankInfo(AB_BANKING *ab,
01924 const char *country,
01925 const char *branchId,
01926 const char *bankId);
01927
01942 AQBANKING_API
01943 int AB_Banking_GetBankInfoByTemplate(AB_BANKING *ab,
01944 const char *country,
01945 AB_BANKINFO *tbi,
01946 AB_BANKINFO_LIST2 *bl);
01947
01948
01959 AQBANKING_API
01960 AB_BANKINFO_CHECKRESULT
01961 AB_Banking_CheckAccount(AB_BANKING *ab,
01962 const char *country,
01963 const char *branchId,
01964 const char *bankId,
01965 const char *accountId);
01966
01973 AQBANKING_API
01974 int AB_Banking_CheckIban(const char *iban);
01975
01985
01992 AQBANKING_API
01993 const AB_COUNTRY *AB_Banking_FindCountryByName(AB_BANKING *ab,
01994 const char *name);
02001 AQBANKING_API
02002 const AB_COUNTRY *AB_Banking_FindCountryByLocalName(AB_BANKING *ab,
02003 const char *name);
02010 AQBANKING_API
02011 const AB_COUNTRY *AB_Banking_FindCountryByCode(AB_BANKING *ab,
02012 const char *code);
02013
02018 AQBANKING_API
02019 const AB_COUNTRY *AB_Banking_FindCountryByNumeric(AB_BANKING *ab,
02020 int numid);
02021
02030 AQBANKING_API
02031 AB_COUNTRY_CONSTLIST2 *AB_Banking_ListCountriesByName(AB_BANKING *ab,
02032 const char *name);
02041 AQBANKING_API
02042 AB_COUNTRY_CONSTLIST2 *AB_Banking_ListCountriesByLocalName(AB_BANKING *ab,
02043 const char *name);
02044
02045
02046
02052
02053
02054
02098
02099
02100
02110 AQBANKING_API
02111 int AB_Banking_RequestBalance(AB_BANKING *ab,
02112 const char *bankCode,
02113 const char *accountNumber);
02114
02122 AQBANKING_API
02123 int AB_Banking_RequestTransactions(AB_BANKING *ab,
02124 const char *bankCode,
02125 const char *accountNumber,
02126 const GWEN_TIME *firstDate,
02127 const GWEN_TIME *lastDate);
02128
02134 AQBANKING_API
02135 int AB_Banking_RequestStandingOrders(AB_BANKING *ab,
02136 const char *bankCode,
02137 const char *accountNumber);
02138
02145 AQBANKING_API
02146 int AB_Banking_RequestDatedTransfers(AB_BANKING *ab,
02147 const char *bankCode,
02148 const char *accountNumber);
02149
02150
02173 AQBANKING_API
02174 int AB_Banking_GatherResponses(AB_BANKING *ab,
02175 AB_IMEXPORTER_CONTEXT *ctx);
02200 AQBANKING_API
02201 void AB_Banking_SetAccountAlias(AB_BANKING *ab,
02202 AB_ACCOUNT *a, const char *alias);
02203
02220 AQBANKING_API
02221 AB_ACCOUNT *AB_Banking_GetAccountByAlias(AB_BANKING *ab,
02222 const char *alias);
02227
02228
02229
02230
02232
02233
02234 #ifdef __cplusplus
02235 }
02236 #endif
02237
02238
02239 #endif
02240
02241
02242
02243
02244
02245