Online Banking Tasks
[Online Banking]


Detailed Description

This group represents online banking tasks such as retrieving the balance, downloading transaction statements, issue transfers etc.


Modules

 Get Balance
 Get Transaction Statements
 Transfer Jobs
 Dated Transfers
 Standing Orders

Constructing, Destroying, Attaching

Actually this group does not contain a constructor since you never create an AB_JOB directly. You rather create a derived job (e.g. by using AB_JobGetBalance_new).

void AB_Job_free (AB_JOB *j)
void AB_Job_Attach (AB_JOB *j)

Informational Functions

GWEN_TYPE_UINT32 AB_Job_GetJobId (const AB_JOB *j)
const char * AB_Job_GetCreatedBy (const AB_JOB *j)
GWEN_DB_NODE * AB_Job_GetAppData (AB_JOB *j)
int AB_Job_CheckAvailability (AB_JOB *j)
AB_JOB_STATUS AB_Job_GetStatus (const AB_JOB *j)
const GWEN_TIME * AB_Job_GetLastStatusChange (const AB_JOB *j)
AB_JOB_TYPE AB_Job_GetType (const AB_JOB *j)
AB_ACCOUNTAB_Job_GetAccount (const AB_JOB *j)
const char * AB_Job_GetResultText (const AB_JOB *j)
const char * AB_Job_GetUsedTan (const AB_JOB *j)

Helper Functions

const char * AB_Job_Status2Char (AB_JOB_STATUS i)
AB_JOB_STATUS AB_Job_Char2Status (const char *s)
const char * AB_Job_Type2Char (AB_JOB_TYPE i)
AB_JOB_TYPE AB_Job_Char2Type (const char *s)
const char * AB_Job_Type2LocalChar (AB_JOB_TYPE i)

Logging Functions

AqBanking logs every activity on a job. These logs can be usefull when something went wrong. If a job performs without problems most of the logs are removed from the job because otherwise the jobs would fill up your disk space.

void AB_Job_Log (AB_JOB *j, AB_BANKING_LOGLEVEL ll, const char *who, const char *txt)
GWEN_STRINGLIST * AB_Job_GetLogs (const AB_JOB *j)

Typedefs

typedef AB_JOB AB_JOB

Enumerations

enum  AB_JOB_STATUS {
  AB_Job_StatusNew = 0, AB_Job_StatusUpdated, AB_Job_StatusEnqueued, AB_Job_StatusSent,
  AB_Job_StatusPending, AB_Job_StatusFinished, AB_Job_StatusError, AB_Job_StatusUnknown = 999
}
enum  AB_JOB_TYPE {
  AB_Job_TypeUnknown = 0, AB_Job_TypeGetBalance, AB_Job_TypeGetTransactions, AB_Job_TypeTransfer,
  AB_Job_TypeDebitNote, AB_Job_TypeEuTransfer, AB_Job_TypeGetStandingOrders, AB_Job_TypeGetDatedTransfers,
  AB_Job_TypeCreateStandingOrder, AB_Job_TypeModifyStandingOrder, AB_Job_TypeDeleteStandingOrder, AB_Job_TypeCreateDatedTransfer,
  AB_Job_TypeModifyDatedTransfer, AB_Job_TypeDeleteDatedTransfer, AB_Job_TypeInternalTransfer
}

Functions

void AB_Job_List2_FreeAll (AB_JOB_LIST2 *jl)


Typedef Documentation

typedef struct AB_JOB AB_JOB

Definition at line 102 of file aqbanking/job.h.


Enumeration Type Documentation

enum AB_JOB_STATUS

The status of a job.

Enumerator:
AB_Job_StatusNew  Job is new and not yet enqueued.
AB_Job_StatusUpdated  job has been updated by the backend and is still not yet enqueued.
AB_Job_StatusEnqueued  Job has been enqueued, i.e. it has not yet been sent, but will be sent at the next AB_BANKING_ExecuteQueue(). These jobs are stored in the "todo" directory.
AB_Job_StatusSent  Job has been sent, but there is not yet any response.
AB_Job_StatusPending  Job has been sent, and an answer has been received, so the Job has been successfully sent to the bank. However, the answer to this job said that the job is still pending at the bank server. This status is most likely used with transfer orders which are accepted by the bank server but checked (and possibly rejected) later. These jobs are stored in the "pending" directory.
AB_Job_StatusFinished  Job has been sent, a response has been received, and everything has been sucessfully executed. These jobs are stored in the "finished" directory.
AB_Job_StatusError  There was an error in jobs' execution. These jobs are stored in the "finished" directory. Jobs are never enqueued twice for execution, so if it has this status it will never be sent again.
AB_Job_StatusUnknown  Unknown status

Definition at line 112 of file aqbanking/job.h.

enum AB_JOB_TYPE

The type of the job, which also corresponds to its subclass of AB_JOB.

Enumerator:
AB_Job_TypeUnknown  unknown job
AB_Job_TypeGetBalance  retrieve the balance of an online account
AB_Job_TypeGetTransactions  retrieve transaction statements for an online account
AB_Job_TypeTransfer  issue a transfer
AB_Job_TypeDebitNote  issue a debit note (Lastschrift)
AB_Job_TypeEuTransfer  EU transfer (transfer within the EMU zone)
AB_Job_TypeGetStandingOrders  retrieve list of standing orders for an online account
AB_Job_TypeGetDatedTransfers  retrieve list of dated transfers for an online account
AB_Job_TypeCreateStandingOrder 
AB_Job_TypeModifyStandingOrder 
AB_Job_TypeDeleteStandingOrder 
AB_Job_TypeCreateDatedTransfer 
AB_Job_TypeModifyDatedTransfer 
AB_Job_TypeDeleteDatedTransfer 
AB_Job_TypeInternalTransfer 

Definition at line 145 of file aqbanking/job.h.


Function Documentation

void AB_Job_Attach ( AB_JOB j  ) 

AB_JOB_STATUS AB_Job_Char2Status ( const char *  s  ) 

Transforms the given string into a job status code.

AB_JOB_TYPE AB_Job_Char2Type ( const char *  s  ) 

Transforms the given string into a job type.

int AB_Job_CheckAvailability ( AB_JOB j  ) 

Not all jobs have to be supported by every backend. The application needs to know whether a job actually is supported, and this is done by calling this function. It returns the error code (see Error Codes) returned by the backend when asked to check for this job.

void AB_Job_free ( AB_JOB j  ) 

AB_ACCOUNT* AB_Job_GetAccount ( const AB_JOB j  ) 

Every job is linked to a single account to operate on.

GWEN_DB_NODE* AB_Job_GetAppData ( AB_JOB j  ) 

Returns a GWEN_DB_NODE which can be used to store/retrieve data for the currently running application. The group returned MUST NOT be freed ! AqBanking is able to separate and store the data for every application.

const char* AB_Job_GetCreatedBy ( const AB_JOB j  ) 

Returns the name of the application which created this job.

GWEN_TYPE_UINT32 AB_Job_GetJobId ( const AB_JOB j  ) 

Every created job gets an unique id. This allows any application to identify a specific job. However, unique ids are assigned when they get enqueued (i.e. by calling AB_Banking_EnqueueJob).

const GWEN_TIME* AB_Job_GetLastStatusChange ( const AB_JOB j  ) 

Returns the time when the status of this job changed last.

GWEN_STRINGLIST* AB_Job_GetLogs ( const AB_JOB j  ) 

Returns a string list containing the logs of the job. Each entry of that string list contains the date/time, loglevel, source and text. The caller becomes the owner of the returned object (if any), please call GWEN_StringList_free on it to avoid memory leaks.

const char* AB_Job_GetResultText ( const AB_JOB j  ) 

Returns a text result provided by the backend upon execution of this job. This should only be presented to the user when there is no other way to determine the result (e.g. no log etc).

AB_JOB_STATUS AB_Job_GetStatus ( const AB_JOB j  ) 

Returns the status of this job.

AB_JOB_TYPE AB_Job_GetType ( const AB_JOB j  ) 

Returns the job type.

const char* AB_Job_GetUsedTan ( const AB_JOB j  ) 

void AB_Job_List2_FreeAll ( AB_JOB_LIST2 jl  ) 

This function frees all jobs contained in the given list.

void AB_Job_Log ( AB_JOB j,
AB_BANKING_LOGLEVEL  ll,
const char *  who,
const char *  txt 
)

const char* AB_Job_Status2Char ( AB_JOB_STATUS  i  ) 

Transforms the given status code into a string.

const char* AB_Job_Type2Char ( AB_JOB_TYPE  i  ) 

Transforms the given job type into a string.

const char* AB_Job_Type2LocalChar ( AB_JOB_TYPE  i  ) 

Transforms the given job type into a localized string which can be presented to the user.


Generated on Wed Oct 18 16:17:28 2006 for aqbanking by  doxygen 1.4.7