1 /**********************************************************
2  * This file has been automatically created by "typemaker2"
3  * from the file "transaction.xml".
4  * Please do not edit this file, all changes will be lost.
5  * Better edit the mentioned source file instead.
6  **********************************************************/
7 
8 #ifndef AB_TRANSACTION_TRANSACTION_H
9 #define AB_TRANSACTION_TRANSACTION_H
10 
11 
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15 
16 /** @page P_AB_TRANSACTION Structure AB_TRANSACTION
17 <p>This page describes the properties of AB_TRANSACTION.</p>
18 
19 
20 
21 <h1>AB_TRANSACTION</h1>
22 
23 This type contains all important information about transactions. All text fields are in UTF-8.
24 
25 
26 @anchor AB_TRANSACTION_memo
27 <h2>memo</h2>
28 
29 User-defined memo.
30 <p>Set this property with @ref AB_Transaction_SetMemo(), get it with @ref AB_Transaction_GetMemo().</p>
31 
32 
33 @anchor AB_TRANSACTION_hash
34 <h2>hash</h2>
35 
36 <p>Set this property with @ref AB_Transaction_SetHash(), get it with @ref AB_Transaction_GetHash().</p>
37 
38 
39 <h2>Type, Command, Status</h2>
40 
41 
42 
43 @anchor AB_TRANSACTION_type
44 <h3>type</h3>
45 
46 <p>Set this property with @ref AB_Transaction_SetType(), get it with @ref AB_Transaction_GetType().</p>
47 
48 
49 @anchor AB_TRANSACTION_subType
50 <h3>subType</h3>
51 
52 <p>Set this property with @ref AB_Transaction_SetSubType(), get it with @ref AB_Transaction_GetSubType().</p>
53 
54 
55 @anchor AB_TRANSACTION_command
56 <h3>command</h3>
57 
58 <p>Set this property with @ref AB_Transaction_SetCommand(), get it with @ref AB_Transaction_GetCommand().</p>
59 
60 
61 @anchor AB_TRANSACTION_status
62 <h3>status</h3>
63 
64 <p>Set this property with @ref AB_Transaction_SetStatus(), get it with @ref AB_Transaction_GetStatus().</p>
65 
66 
67 @anchor AB_TRANSACTION_uniqueAccountId
68 <h3>uniqueAccountId</h3>
69 
70 This is a unique id of the local account for banking commands.
71 <p>Set this property with @ref AB_Transaction_SetUniqueAccountId(), get it with @ref AB_Transaction_GetUniqueAccountId().</p>
72 
73 
74 <h2>Identifiers</h2>
75 
76 
77 
78 @anchor AB_TRANSACTION_uniqueId
79 <h3>uniqueId</h3>
80 
81 This is a unique id assigned by the application. However, when adding a transaction to a job (like JobTransfer) this id is assigned by AqBanking to make sure that this id is unique across all applications.
82 <p>Set this property with @ref AB_Transaction_SetUniqueId(), get it with @ref AB_Transaction_GetUniqueId().</p>
83 
84 
85 @anchor AB_TRANSACTION_refUniqueId
86 <h3>refUniqueId</h3>
87 
88 This id is used in splits to refer to the transaction id the split belongs to. It is also used internally by backends when on job is linked to another one.
89 <p>Set this property with @ref AB_Transaction_SetRefUniqueId(), get it with @ref AB_Transaction_GetRefUniqueId().</p>
90 
91 
92 @anchor AB_TRANSACTION_idForApplication
93 <h3>idForApplication</h3>
94 
95 This is an id assigned by the application only. This id is never changed by AqBanking.
96 <p>Set this property with @ref AB_Transaction_SetIdForApplication(), get it with @ref AB_Transaction_GetIdForApplication().</p>
97 
98 
99 @anchor AB_TRANSACTION_stringIdForApplication
100 <h3>stringIdForApplication</h3>
101 
102 This is an id assigned by the application only. This id is never changed by AqBanking.
103 <p>Set this property with @ref AB_Transaction_SetStringIdForApplication(), get it with @ref AB_Transaction_GetStringIdForApplication().</p>
104 
105 
106 @anchor AB_TRANSACTION_sessionId
107 <h3>sessionId</h3>
108 
109 This id can be used by applications, e.g. to group jobs into sessions.
110 <p>Set this property with @ref AB_Transaction_SetSessionId(), get it with @ref AB_Transaction_GetSessionId().</p>
111 
112 
113 @anchor AB_TRANSACTION_groupId
114 <h3>groupId</h3>
115 
116 This id is assigned by a backend when sending multiple transfer jobs in one backend request (e.g. AqHBCI uses DTAUS files when sending multi-transfer requests; in this case every transfer which goes into the same DTAUS file receives the same group id).
117 <p>Set this property with @ref AB_Transaction_SetGroupId(), get it with @ref AB_Transaction_GetGroupId().</p>
118 
119 
120 @anchor AB_TRANSACTION_fiId
121 <h3>fiId</h3>
122 
123 <p>This id is assigned by the bank. As for the moment only OFX servers actually do assign unique ids to statements.</p>
124 
125 <p>However, HBCI servers at least assign unique ids to standing orders and dated transfers.</p>
126 
127 <p>Set this property with @ref AB_Transaction_SetFiId(), get it with @ref AB_Transaction_GetFiId().</p>
128 
129 
130 <h2>Local Account Specification</h2>
131 
132 <p>Properties of this group specify the local account to be used for this transaction.</p>
133 
134 <p>Accounts are usually specified in one of two ways:</p>
135 
136 <ul>
137 <li>SEPA: IBAN and BIC</li>
138 <li>non-SEPA: Bank account and Account number</li>
139 </ul>
140 
141 
142 
143 @anchor AB_TRANSACTION_localName
144 <h3>localName</h3>
145 
146 <p>Set this property with @ref AB_Transaction_SetLocalName(), get it with @ref AB_Transaction_GetLocalName().</p>
147 
148 
149 <h3>SEPA</h3>
150 
151 
152 
153 @anchor AB_TRANSACTION_localIban
154 <h4>localIban</h4>
155 
156 <p>Set this property with @ref AB_Transaction_SetLocalIban(), get it with @ref AB_Transaction_GetLocalIban().</p>
157 
158 
159 @anchor AB_TRANSACTION_localBic
160 <h4>localBic</h4>
161 
162 <p>Set this property with @ref AB_Transaction_SetLocalBic(), get it with @ref AB_Transaction_GetLocalBic().</p>
163 
164 
165 <h3>Non-SEPA</h3>
166 
167 
168 
169 @anchor AB_TRANSACTION_localCountry
170 <h4>localCountry</h4>
171 
172 <p>Set this property with @ref AB_Transaction_SetLocalCountry(), get it with @ref AB_Transaction_GetLocalCountry().</p>
173 
174 
175 @anchor AB_TRANSACTION_localBankCode
176 <h4>localBankCode</h4>
177 
178 <p>Set this property with @ref AB_Transaction_SetLocalBankCode(), get it with @ref AB_Transaction_GetLocalBankCode().</p>
179 
180 
181 @anchor AB_TRANSACTION_localBranchId
182 <h4>localBranchId</h4>
183 
184 This is the branch id of the local bank (OFX only)
185 <p>Set this property with @ref AB_Transaction_SetLocalBranchId(), get it with @ref AB_Transaction_GetLocalBranchId().</p>
186 
187 
188 @anchor AB_TRANSACTION_localAccountNumber
189 <h4>localAccountNumber</h4>
190 
191 <p>Set this property with @ref AB_Transaction_SetLocalAccountNumber(), get it with @ref AB_Transaction_GetLocalAccountNumber().</p>
192 
193 
194 @anchor AB_TRANSACTION_localSuffix
195 <h4>localSuffix</h4>
196 
197 If your account has subaccounts which are distinguished by different suffixes, then this is that suffix. Otherwise it's empty. (HBCI only)
198 <p>Set this property with @ref AB_Transaction_SetLocalSuffix(), get it with @ref AB_Transaction_GetLocalSuffix().</p>
199 
200 
201 <h2>Remote Account Specification</h2>
202 
203 <p>Properties of this group specify the remote account to be used for this transaction.</p>
204 
205 
206 
207 @anchor AB_TRANSACTION_remoteCountry
208 <h3>remoteCountry</h3>
209 
210 <p>Set this property with @ref AB_Transaction_SetRemoteCountry(), get it with @ref AB_Transaction_GetRemoteCountry().</p>
211 
212 
213 @anchor AB_TRANSACTION_remoteBankCode
214 <h3>remoteBankCode</h3>
215 
216 <p>Set this property with @ref AB_Transaction_SetRemoteBankCode(), get it with @ref AB_Transaction_GetRemoteBankCode().</p>
217 
218 
219 @anchor AB_TRANSACTION_remoteBranchId
220 <h3>remoteBranchId</h3>
221 
222 This is the branch id of the remote bank (OFX only)
223 <p>Set this property with @ref AB_Transaction_SetRemoteBranchId(), get it with @ref AB_Transaction_GetRemoteBranchId().</p>
224 
225 
226 @anchor AB_TRANSACTION_remoteAccountNumber
227 <h3>remoteAccountNumber</h3>
228 
229 <p>Set this property with @ref AB_Transaction_SetRemoteAccountNumber(), get it with @ref AB_Transaction_GetRemoteAccountNumber().</p>
230 
231 
232 @anchor AB_TRANSACTION_remoteSuffix
233 <h3>remoteSuffix</h3>
234 
235 Same as localSuffix, except for remote account (HBCI only).
236 <p>Set this property with @ref AB_Transaction_SetRemoteSuffix(), get it with @ref AB_Transaction_GetRemoteSuffix().</p>
237 
238 
239 @anchor AB_TRANSACTION_remoteIban
240 <h3>remoteIban</h3>
241 
242 <p>Set this property with @ref AB_Transaction_SetRemoteIban(), get it with @ref AB_Transaction_GetRemoteIban().</p>
243 
244 
245 @anchor AB_TRANSACTION_remoteBic
246 <h3>remoteBic</h3>
247 
248 <p>Set this property with @ref AB_Transaction_SetRemoteBic(), get it with @ref AB_Transaction_GetRemoteBic().</p>
249 
250 
251 @anchor AB_TRANSACTION_remoteName
252 <h3>remoteName</h3>
253 
254 <p>Set this property with @ref AB_Transaction_SetRemoteName(), get it with @ref AB_Transaction_GetRemoteName().</p>
255 
256 
257 <h2>Dates</h2>
258 
259 
260 
261 @anchor AB_TRANSACTION_date
262 <h3>date</h3>
263 
264 <p>Set this property with @ref AB_Transaction_SetDate(), get it with @ref AB_Transaction_GetDate().</p>
265 
266 
267 @anchor AB_TRANSACTION_valutaDate
268 <h3>valutaDate</h3>
269 
270 <p>Set this property with @ref AB_Transaction_SetValutaDate(), get it with @ref AB_Transaction_GetValutaDate().</p>
271 
272 
273 <h2>Amount</h2>
274 
275 
276 
277 @anchor AB_TRANSACTION_value
278 <h3>value</h3>
279 
280 <p>Set this property with @ref AB_Transaction_SetValue(), get it with @ref AB_Transaction_GetValue().</p>
281 
282 
283 @anchor AB_TRANSACTION_fees
284 <h3>fees</h3>
285 
286 <p>Set this property with @ref AB_Transaction_SetFees(), get it with @ref AB_Transaction_GetFees().</p>
287 
288 
289 <h2>Info Texts and Codes</h2>
290 
291 
292 
293 @anchor AB_TRANSACTION_transactionCode
294 <h3>transactionCode</h3>
295 
296 A 3 digit numerical transaction code, defined for all kinds of different actions. (Geschaeftsvorfallcode)
297 <p>Set this property with @ref AB_Transaction_SetTransactionCode(), get it with @ref AB_Transaction_GetTransactionCode().</p>
298 
299 
300 @anchor AB_TRANSACTION_transactionText
301 <h3>transactionText</h3>
302 
303 Transaction text (e.g. STANDING ORDER) (Buchungstext)
304 <p>Set this property with @ref AB_Transaction_SetTransactionText(), get it with @ref AB_Transaction_GetTransactionText().</p>
305 
306 
307 @anchor AB_TRANSACTION_transactionKey
308 <h3>transactionKey</h3>
309 
310 this is the transaction id that tells you more about the type of transaction (3 character code) (Buchungsschluessel) (HBCI only)
311 <p>Set this property with @ref AB_Transaction_SetTransactionKey(), get it with @ref AB_Transaction_GetTransactionKey().</p>
312 
313 
314 @anchor AB_TRANSACTION_textKey
315 <h3>textKey</h3>
316 
317 <p>A numerical transaction code, defined for all kinds of different actions. (Textschluessel)</p>
318 
319 <p>For a normal transfer you should set it to 51. For debit notes the values 04 or 05 may be used. For other values please refer to your credit institute. (HBCI only)</p>
320 
321 <p>Set this property with @ref AB_Transaction_SetTextKey(), get it with @ref AB_Transaction_GetTextKey().</p>
322 
323 
324 @anchor AB_TRANSACTION_primanota
325 <h3>primanota</h3>
326 
327 Used for SEPA transfers.
328 <p>Set this property with @ref AB_Transaction_SetPrimanota(), get it with @ref AB_Transaction_GetPrimanota().</p>
329 
330 
331 @anchor AB_TRANSACTION_purpose
332 <h3>purpose</h3>
333 
334 A list of purpose lines, separated by newline characters.
335 <p>Set this property with @ref AB_Transaction_SetPurpose(), get it with @ref AB_Transaction_GetPurpose().</p>
336 
337 
338 @anchor AB_TRANSACTION_category
339 <h3>category</h3>
340 
341 A list of categories assigned to this transaction, separated by newline characters.
342 <p>Set this property with @ref AB_Transaction_SetCategory(), get it with @ref AB_Transaction_GetCategory().</p>
343 
344 
345 <h2>References</h2>
346 
347 
348 
349 @anchor AB_TRANSACTION_customerReference
350 <h3>customerReference</h3>
351 
352 Reference string, if the customer (you) has specified one. (E.g. the cheque number.) Otherwise "NONREF" or empty (Kundenreferenz)
353 <p>Set this property with @ref AB_Transaction_SetCustomerReference(), get it with @ref AB_Transaction_GetCustomerReference().</p>
354 
355 
356 @anchor AB_TRANSACTION_bankReference
357 <h3>bankReference</h3>
358 
359 Reference string for this transaction given by the bank, if it has given one. Otherwise empty. (Bankreferenz)
360 <p>Set this property with @ref AB_Transaction_SetBankReference(), get it with @ref AB_Transaction_GetBankReference().</p>
361 
362 
363 <h2>Additional Data for SEPA Transactions</h2>
364 
365 <p>These properties are only used in SEPA statements or transactions.</p>
366 
367 
368 
369 @anchor AB_TRANSACTION_endToEndReference
370 <h3>endToEndReference</h3>
371 
372 This is a reference provided by the issuer of a SEPA transfer.
373 <p>Set this property with @ref AB_Transaction_SetEndToEndReference(), get it with @ref AB_Transaction_GetEndToEndReference().</p>
374 
375 
376 @anchor AB_TRANSACTION_ultimateCreditor
377 <h3>ultimateCreditor</h3>
378 
379 "Abweichender Empfaenger" (ABWE+).
380 <p>Set this property with @ref AB_Transaction_SetUltimateCreditor(), get it with @ref AB_Transaction_GetUltimateCreditor().</p>
381 
382 
383 @anchor AB_TRANSACTION_ultimateDebtor
384 <h3>ultimateDebtor</h3>
385 
386 "Abweichender Auftraggeber" (ABWA+).
387 <p>Set this property with @ref AB_Transaction_SetUltimateDebtor(), get it with @ref AB_Transaction_GetUltimateDebtor().</p>
388 
389 
390 @anchor AB_TRANSACTION_charge
391 <h3>charge</h3>
392 
393 <p>Set this property with @ref AB_Transaction_SetCharge(), get it with @ref AB_Transaction_GetCharge().</p>
394 
395 
396 <h3>Additional Data for SEPA Debit Notes</h3>
397 
398 <p>These properties are only used in SEPA statements or transactions.</p>
399 
400 
401 
402 @anchor AB_TRANSACTION_creditorSchemeId
403 <h4>creditorSchemeId</h4>
404 
405 Creditor Scheme Identification" ("Glaeubiger-ID", assigned by Deutsche Bundesbank).
406 <p>Set this property with @ref AB_Transaction_SetCreditorSchemeId(), get it with @ref AB_Transaction_GetCreditorSchemeId().</p>
407 
408 
409 @anchor AB_TRANSACTION_originatorId
410 <h4>originatorId</h4>
411 
412 <p>Set this property with @ref AB_Transaction_SetOriginatorId(), get it with @ref AB_Transaction_GetOriginatorId().</p>
413 
414 
415 @anchor AB_TRANSACTION_mandateId
416 <h4>mandateId</h4>
417 
418 SEPA Direct debit mandate id.
419 <p>Set this property with @ref AB_Transaction_SetMandateId(), get it with @ref AB_Transaction_GetMandateId().</p>
420 
421 
422 @anchor AB_TRANSACTION_mandateDate
423 <h4>mandateDate</h4>
424 
425 Issue date of the direct debit mandate.
426 <p>Set this property with @ref AB_Transaction_SetMandateDate(), get it with @ref AB_Transaction_GetMandateDate().</p>
427 
428 
429 @anchor AB_TRANSACTION_mandateDebitorName
430 <h4>mandateDebitorName</h4>
431 
432 Debitor name for direct debit mandate if given by the debitor.
433 <p>Set this property with @ref AB_Transaction_SetMandateDebitorName(), get it with @ref AB_Transaction_GetMandateDebitorName().</p>
434 
435 
436 @anchor AB_TRANSACTION_originalCreditorSchemeId
437 <h4>originalCreditorSchemeId</h4>
438 
439 Original value for "Creditor Scheme Identification", in case that value changed over time.
440 <p>Set this property with @ref AB_Transaction_SetOriginalCreditorSchemeId(), get it with @ref AB_Transaction_GetOriginalCreditorSchemeId().</p>
441 
442 
443 @anchor AB_TRANSACTION_originalMandateId
444 <h4>originalMandateId</h4>
445 
446 Original SEPA Direct debit mandate id, in case that changed over time.
447 <p>Set this property with @ref AB_Transaction_SetOriginalMandateId(), get it with @ref AB_Transaction_GetOriginalMandateId().</p>
448 
449 
450 @anchor AB_TRANSACTION_originalCreditorName
451 <h4>originalCreditorName</h4>
452 
453 Original SEPA Direct debit creditor name, in case that changed over time.
454 <p>Set this property with @ref AB_Transaction_SetOriginalCreditorName(), get it with @ref AB_Transaction_GetOriginalCreditorName().</p>
455 
456 
457 @anchor AB_TRANSACTION_sequence
458 <h4>sequence</h4>
459 
460 <p>Set this property with @ref AB_Transaction_SetSequence(), get it with @ref AB_Transaction_GetSequence().</p>
461 
462 
463 <h2>Additional Information for Foreign Transfers</h2>
464 
465 <p>This group contains information which is used with transfers to other countries in the world. It is used by backends and applications but not by AqBanking itself.</p>
466 
467 
468 
469 @anchor AB_TRANSACTION_remoteAddrStreet
470 <h3>remoteAddrStreet</h3>
471 
472 Street and number.
473 <p>Set this property with @ref AB_Transaction_SetRemoteAddrStreet(), get it with @ref AB_Transaction_GetRemoteAddrStreet().</p>
474 
475 
476 @anchor AB_TRANSACTION_remoteAddrZipcode
477 <h3>remoteAddrZipcode</h3>
478 
479 Zipcode.
480 <p>Set this property with @ref AB_Transaction_SetRemoteAddrZipcode(), get it with @ref AB_Transaction_GetRemoteAddrZipcode().</p>
481 
482 
483 @anchor AB_TRANSACTION_remoteAddrCity
484 <h3>remoteAddrCity</h3>
485 
486 City.
487 <p>Set this property with @ref AB_Transaction_SetRemoteAddrCity(), get it with @ref AB_Transaction_GetRemoteAddrCity().</p>
488 
489 
490 @anchor AB_TRANSACTION_remoteAddrPhone
491 <h3>remoteAddrPhone</h3>
492 
493 Phone number.
494 <p>Set this property with @ref AB_Transaction_SetRemoteAddrPhone(), get it with @ref AB_Transaction_GetRemoteAddrPhone().</p>
495 
496 
497 <h2>Additional Data for Standing Orders</h2>
498 
499 <p>These properties are used with standing orders, i.e. orders which are regularily repeated by the bank.</p>
500 
501 
502 
503 @anchor AB_TRANSACTION_period
504 <h3>period</h3>
505 
506 <p>Set this property with @ref AB_Transaction_SetPeriod(), get it with @ref AB_Transaction_GetPeriod().</p>
507 
508 
509 @anchor AB_TRANSACTION_cycle
510 <h3>cycle</h3>
511 
512 The standing order is executed every
513 <i>cycle</i>
514 
515 x
516 <i>period</i>
517 
518 . So if
519 <i>period</i>
520 
521 is
522 <i>weekly</i>
523 
524 and
525 <i>cycle</i>
526 
527 is
528 <i>2</i>
529 
530 then the standing order is executed every 2 weeks.
531 <p>Set this property with @ref AB_Transaction_SetCycle(), get it with @ref AB_Transaction_GetCycle().</p>
532 
533 
534 @anchor AB_TRANSACTION_executionDay
535 <h3>executionDay</h3>
536 
537 The execution day. The meaning of this variable depends on the content of
538 <i>period</i>
539 
540 :
541 <ul>
542 <li>
543 monthly: day of the month (starting with<i>1</i>
544 )</li>
545 <li>
546 weekly: day of the week (starting with<i>1</i>
547 =Monday)</li>
548 </ul>
549 
550 <p>Set this property with @ref AB_Transaction_SetExecutionDay(), get it with @ref AB_Transaction_GetExecutionDay().</p>
551 
552 
553 @anchor AB_TRANSACTION_firstDate
554 <h3>firstDate</h3>
555 
556 For standing orders this is the first date the transaction is to be executed. For jobs which use date span parameters this is the first date (e.g. "get statements from FIRSTDATE to LASTDATE)"
557 <p>Set this property with @ref AB_Transaction_SetFirstDate(), get it with @ref AB_Transaction_GetFirstDate().</p>
558 
559 
560 @anchor AB_TRANSACTION_lastDate
561 <h3>lastDate</h3>
562 
563 For standing orders this is the last date the transaction is to be executed. For jobs which use date span parameters this is the last date (e.g. "get statements from FIRSTDATE to LASTDATE)"
564 <p>Set this property with @ref AB_Transaction_SetLastDate(), get it with @ref AB_Transaction_GetLastDate().</p>
565 
566 
567 @anchor AB_TRANSACTION_nextDate
568 <h3>nextDate</h3>
569 
570 For standing orders this is the next date the transaction is executed.
571 <p>Set this property with @ref AB_Transaction_SetNextDate(), get it with @ref AB_Transaction_GetNextDate().</p>
572 
573 
574 <h2>Additional Data for Securites</h2>
575 
576 <p>These properties are used with securities.</p>
577 
578 
579 
580 @anchor AB_TRANSACTION_unitId
581 <h3>unitId</h3>
582 
583 Unique id of the security within the namespace. This field is also used with accounts.
584 <p>Set this property with @ref AB_Transaction_SetUnitId(), get it with @ref AB_Transaction_GetUnitId().</p>
585 
586 
587 @anchor AB_TRANSACTION_unitIdNameSpace
588 <h3>unitIdNameSpace</h3>
589 
590 Namespace for name (e.g. CUSIP for North America)
591 <p>Set this property with @ref AB_Transaction_SetUnitIdNameSpace(), get it with @ref AB_Transaction_GetUnitIdNameSpace().</p>
592 
593 
594 @anchor AB_TRANSACTION_tickerSymbol
595 <h3>tickerSymbol</h3>
596 
597 Unique id of the security within the namespace.
598 <p>Set this property with @ref AB_Transaction_SetTickerSymbol(), get it with @ref AB_Transaction_GetTickerSymbol().</p>
599 
600 
601 @anchor AB_TRANSACTION_units
602 <h3>units</h3>
603 
604 <p>Set this property with @ref AB_Transaction_SetUnits(), get it with @ref AB_Transaction_GetUnits().</p>
605 
606 
607 @anchor AB_TRANSACTION_unitPriceValue
608 <h3>unitPriceValue</h3>
609 
610 <p>Set this property with @ref AB_Transaction_SetUnitPriceValue(), get it with @ref AB_Transaction_GetUnitPriceValue().</p>
611 
612 
613 @anchor AB_TRANSACTION_unitPriceDate
614 <h3>unitPriceDate</h3>
615 
616 Date of the unit price.
617 <p>Set this property with @ref AB_Transaction_SetUnitPriceDate(), get it with @ref AB_Transaction_GetUnitPriceDate().</p>
618 
619 
620 @anchor AB_TRANSACTION_commissionValue
621 <h3>commissionValue</h3>
622 
623 <p>Set this property with @ref AB_Transaction_SetCommissionValue(), get it with @ref AB_Transaction_GetCommissionValue().</p>
624 
625 */
626 
627 /* needed system headers */
628 #include <gwenhywfar/types.h>
629 #include <gwenhywfar/list1.h>
630 #include <gwenhywfar/list2.h>
631 #include <gwenhywfar/db.h>
632 #include <gwenhywfar/xml.h>
633 
634 /* pre-headers */
635 #include <aqbanking/error.h>
636 #include <aqbanking/types/value.h>
637 #include <gwenhywfar/gwendate.h>
638 #include <gwenhywfar/mdigest.h>
639 #include <gwenhywfar/text.h>
640 #include <gwenhywfar/buffer.h>
641 #include <gwenhywfar/db.h>
642 #include <gwenhywfar/debug.h>
643 
644 typedef struct AB_TRANSACTION AB_TRANSACTION;
645 GWEN_LIST_FUNCTION_LIB_DEFS(AB_TRANSACTION, AB_Transaction, AQBANKING_API)
646 GWEN_LIST2_FUNCTION_LIB_DEFS(AB_TRANSACTION, AB_Transaction, AQBANKING_API)
647 GWEN_CONSTLIST2_FUNCTION_LIB_DEFS(AB_TRANSACTION, AB_Transaction, AQBANKING_API)
648 
649 
650 
651 typedef enum {
652   AB_Transaction_TypeUnknown = -1,
653   AB_Transaction_TypeNone = 0,
654   AB_Transaction_TypeStatement = 128,
655   AB_Transaction_TypeNotedStatement,
656   AB_Transaction_TypeTransfer = 256,
657   AB_Transaction_TypeDebitNote,
658   AB_Transaction_TypeStandingOrder,
659   AB_Transaction_TypeInternalTransfer,
660   AB_Transaction_TypeBrokerage,
661   AB_Transaction_TypeTransaction = 2048,
662   AB_Transaction_TypeSplit
663 } AB_TRANSACTION_TYPE;
664 
665 
666 typedef enum {
667   AB_Transaction_SubTypeUnknown = -1,
668   AB_Transaction_SubTypeNone = 0,
669   AB_Transaction_SubTypeStandard,
670   AB_Transaction_SubTypeCheck,
671   AB_Transaction_SubTypeBookedDebitNote,
672   AB_Transaction_SubTypeDrawnDebitNote,
673   AB_Transaction_SubTypeStandingOrder,
674   AB_Transaction_SubTypeLoan,
675   AB_Transaction_SubTypeEuStandard,
676   AB_Transaction_SubTypeEuASAP,
677   AB_Transaction_SubTypeBuy,
678   AB_Transaction_SubTypeSell,
679   AB_Transaction_SubTypeReinvest,
680   AB_Transaction_SubTypeDividend
681 } AB_TRANSACTION_SUBTYPE;
682 
683 
684 typedef enum {
685   AB_Transaction_CommandUnknown = -1,
686   AB_Transaction_CommandNone = 0,
687   AB_Transaction_CommandGetBalance,
688   AB_Transaction_CommandGetTransactions,
689   AB_Transaction_CommandGetStandingOrders,
690   AB_Transaction_CommandGetDatedTransfers,
691   AB_Transaction_CommandSepaGetStandingOrders,
692   AB_Transaction_CommandLoadCellPhone,
693   AB_Transaction_CommandGetEStatements,
694   AB_Transaction_CommandTransfer = 512,
695   AB_Transaction_CommandDebitNote,
696   AB_Transaction_CommandCreateStandingOrder,
697   AB_Transaction_CommandModifyStandingOrder,
698   AB_Transaction_CommandDeleteStandingOrder,
699   AB_Transaction_CommandCreateDatedTransfer,
700   AB_Transaction_CommandModifyDatedTransfer,
701   AB_Transaction_CommandDeleteDatedTransfer,
702   AB_Transaction_CommandInternalTransfer,
703   AB_Transaction_CommandGetDepot,
704   AB_Transaction_CommandSepaTransfer = 1536,
705   AB_Transaction_CommandSepaDebitNote,
706   AB_Transaction_CommandSepaFlashDebitNote,
707   AB_Transaction_CommandSepaCreateStandingOrder,
708   AB_Transaction_CommandSepaModifyStandingOrder,
709   AB_Transaction_CommandSepaDeleteStandingOrder,
710   AB_Transaction_CommandSepaCreateDatedTransfer,
711   AB_Transaction_CommandSepaModifyDatedTransfer,
712   AB_Transaction_CommandSepaDeleteDatedTransfer,
713   AB_Transaction_CommandSepaInternalTransfer
714 } AB_TRANSACTION_COMMAND;
715 
716 
717 typedef enum {
718   AB_Transaction_StatusUnknown = -1,
719   AB_Transaction_StatusNone = 0,
720   AB_Transaction_StatusEnqueued,
721   AB_Transaction_StatusSending,
722   AB_Transaction_StatusSent,
723   AB_Transaction_StatusAccepted,
724   AB_Transaction_StatusRejected,
725   AB_Transaction_StatusPending,
726   AB_Transaction_StatusAutoReconciled,
727   AB_Transaction_StatusManuallyReconciled,
728   AB_Transaction_StatusRevoked,
729   AB_Transaction_StatusAborted,
730   AB_Transaction_StatusError
731 } AB_TRANSACTION_STATUS;
732 
733 
734 typedef enum {
735   AB_Transaction_PeriodUnknown = -1,
736   AB_Transaction_PeriodNone = 0,
737   AB_Transaction_PeriodMonthly,
738   AB_Transaction_PeriodWeekly
739 } AB_TRANSACTION_PERIOD;
740 
741 
742 typedef enum {
743   AB_Transaction_ChargeUnknown = -1,
744   AB_Transaction_ChargeNobody = 0,
745   AB_Transaction_ChargeLocal,
746   AB_Transaction_ChargeRemote,
747   AB_Transaction_ChargeShare
748 } AB_TRANSACTION_CHARGE;
749 
750 
751 typedef enum {
752   AB_Transaction_SequenceUnknown = -1,
753   AB_Transaction_SequenceOnce = 0,
754   AB_Transaction_SequenceFirst,
755   AB_Transaction_SequenceFollowing,
756   AB_Transaction_SequenceFinal
757 } AB_TRANSACTION_SEQUENCE;
758 
759 
760 /* post-headers */
761 
762 
763 AQBANKING_API AB_TRANSACTION_TYPE AB_Transaction_Type_fromString(const char *p_s);
764 
765 AQBANKING_API AB_TRANSACTION_SUBTYPE AB_Transaction_SubType_fromString(const char *p_s);
766 
767 AQBANKING_API AB_TRANSACTION_COMMAND AB_Transaction_Command_fromString(const char *p_s);
768 
769 AQBANKING_API AB_TRANSACTION_STATUS AB_Transaction_Status_fromString(const char *p_s);
770 
771 AQBANKING_API AB_TRANSACTION_PERIOD AB_Transaction_Period_fromString(const char *p_s);
772 
773 AQBANKING_API AB_TRANSACTION_CHARGE AB_Transaction_Charge_fromString(const char *p_s);
774 
775 AQBANKING_API AB_TRANSACTION_SEQUENCE AB_Transaction_Sequence_fromString(const char *p_s);
776 
777 AQBANKING_API const char *AB_Transaction_Type_toString(AB_TRANSACTION_TYPE p_i);
778 
779 AQBANKING_API const char *AB_Transaction_SubType_toString(AB_TRANSACTION_SUBTYPE p_i);
780 
781 AQBANKING_API const char *AB_Transaction_Command_toString(AB_TRANSACTION_COMMAND p_i);
782 
783 AQBANKING_API const char *AB_Transaction_Status_toString(AB_TRANSACTION_STATUS p_i);
784 
785 AQBANKING_API const char *AB_Transaction_Period_toString(AB_TRANSACTION_PERIOD p_i);
786 
787 AQBANKING_API const char *AB_Transaction_Charge_toString(AB_TRANSACTION_CHARGE p_i);
788 
789 AQBANKING_API const char *AB_Transaction_Sequence_toString(AB_TRANSACTION_SEQUENCE p_i);
790 
791 /** Constructor. */
792 AQBANKING_API AB_TRANSACTION *AB_Transaction_new(void);
793 
794 /** Destructor. */
795 AQBANKING_API void AB_Transaction_free(AB_TRANSACTION *p_struct);
796 
797 AQBANKING_API void AB_Transaction_Attach(AB_TRANSACTION *p_struct);
798 
799 AQBANKING_API AB_TRANSACTION *AB_Transaction_dup(const AB_TRANSACTION *p_struct);
800 
801 AQBANKING_API AB_TRANSACTION *AB_Transaction_copy(AB_TRANSACTION *p_struct, const AB_TRANSACTION *p_src);
802 
803 /** Getter.
804  * Use this function to get the member "type" (see @ref AB_TRANSACTION_type)
805 */
806 AQBANKING_API AB_TRANSACTION_TYPE AB_Transaction_GetType(const AB_TRANSACTION *p_struct);
807 
808 /** Getter.
809  * Use this function to get the member "subType" (see @ref AB_TRANSACTION_subType)
810 */
811 AQBANKING_API AB_TRANSACTION_SUBTYPE AB_Transaction_GetSubType(const AB_TRANSACTION *p_struct);
812 
813 /** Getter.
814  * Use this function to get the member "command" (see @ref AB_TRANSACTION_command)
815 */
816 AQBANKING_API AB_TRANSACTION_COMMAND AB_Transaction_GetCommand(const AB_TRANSACTION *p_struct);
817 
818 /** Getter.
819  * Use this function to get the member "status" (see @ref AB_TRANSACTION_status)
820 */
821 AQBANKING_API AB_TRANSACTION_STATUS AB_Transaction_GetStatus(const AB_TRANSACTION *p_struct);
822 
823 /** Getter.
824  * Use this function to get the member "uniqueAccountId" (see @ref AB_TRANSACTION_uniqueAccountId)
825 */
826 AQBANKING_API uint32_t AB_Transaction_GetUniqueAccountId(const AB_TRANSACTION *p_struct);
827 
828 /** Getter.
829  * Use this function to get the member "uniqueId" (see @ref AB_TRANSACTION_uniqueId)
830 */
831 AQBANKING_API uint32_t AB_Transaction_GetUniqueId(const AB_TRANSACTION *p_struct);
832 
833 /** Getter.
834  * Use this function to get the member "refUniqueId" (see @ref AB_TRANSACTION_refUniqueId)
835 */
836 AQBANKING_API uint32_t AB_Transaction_GetRefUniqueId(const AB_TRANSACTION *p_struct);
837 
838 /** Getter.
839  * Use this function to get the member "idForApplication" (see @ref AB_TRANSACTION_idForApplication)
840 */
841 AQBANKING_API uint32_t AB_Transaction_GetIdForApplication(const AB_TRANSACTION *p_struct);
842 
843 /** Getter.
844  * Use this function to get the member "stringIdForApplication" (see @ref AB_TRANSACTION_stringIdForApplication)
845 */
846 AQBANKING_API const char *AB_Transaction_GetStringIdForApplication(const AB_TRANSACTION *p_struct);
847 
848 /** Getter.
849  * Use this function to get the member "sessionId" (see @ref AB_TRANSACTION_sessionId)
850 */
851 AQBANKING_API uint32_t AB_Transaction_GetSessionId(const AB_TRANSACTION *p_struct);
852 
853 /** Getter.
854  * Use this function to get the member "groupId" (see @ref AB_TRANSACTION_groupId)
855 */
856 AQBANKING_API uint32_t AB_Transaction_GetGroupId(const AB_TRANSACTION *p_struct);
857 
858 /** Getter.
859  * Use this function to get the member "fiId" (see @ref AB_TRANSACTION_fiId)
860 */
861 AQBANKING_API const char *AB_Transaction_GetFiId(const AB_TRANSACTION *p_struct);
862 
863 /** Getter.
864  * Use this function to get the member "localIban" (see @ref AB_TRANSACTION_localIban)
865 */
866 AQBANKING_API const char *AB_Transaction_GetLocalIban(const AB_TRANSACTION *p_struct);
867 
868 /** Getter.
869  * Use this function to get the member "localBic" (see @ref AB_TRANSACTION_localBic)
870 */
871 AQBANKING_API const char *AB_Transaction_GetLocalBic(const AB_TRANSACTION *p_struct);
872 
873 /** Getter.
874  * Use this function to get the member "localCountry" (see @ref AB_TRANSACTION_localCountry)
875 */
876 AQBANKING_API const char *AB_Transaction_GetLocalCountry(const AB_TRANSACTION *p_struct);
877 
878 /** Getter.
879  * Use this function to get the member "localBankCode" (see @ref AB_TRANSACTION_localBankCode)
880 */
881 AQBANKING_API const char *AB_Transaction_GetLocalBankCode(const AB_TRANSACTION *p_struct);
882 
883 /** Getter.
884  * Use this function to get the member "localBranchId" (see @ref AB_TRANSACTION_localBranchId)
885 */
886 AQBANKING_API const char *AB_Transaction_GetLocalBranchId(const AB_TRANSACTION *p_struct);
887 
888 /** Getter.
889  * Use this function to get the member "localAccountNumber" (see @ref AB_TRANSACTION_localAccountNumber)
890 */
891 AQBANKING_API const char *AB_Transaction_GetLocalAccountNumber(const AB_TRANSACTION *p_struct);
892 
893 /** Getter.
894  * Use this function to get the member "localSuffix" (see @ref AB_TRANSACTION_localSuffix)
895 */
896 AQBANKING_API const char *AB_Transaction_GetLocalSuffix(const AB_TRANSACTION *p_struct);
897 
898 /** Getter.
899  * Use this function to get the member "localName" (see @ref AB_TRANSACTION_localName)
900 */
901 AQBANKING_API const char *AB_Transaction_GetLocalName(const AB_TRANSACTION *p_struct);
902 
903 /** Getter.
904  * Use this function to get the member "remoteCountry" (see @ref AB_TRANSACTION_remoteCountry)
905 */
906 AQBANKING_API const char *AB_Transaction_GetRemoteCountry(const AB_TRANSACTION *p_struct);
907 
908 /** Getter.
909  * Use this function to get the member "remoteBankCode" (see @ref AB_TRANSACTION_remoteBankCode)
910 */
911 AQBANKING_API const char *AB_Transaction_GetRemoteBankCode(const AB_TRANSACTION *p_struct);
912 
913 /** Getter.
914  * Use this function to get the member "remoteBranchId" (see @ref AB_TRANSACTION_remoteBranchId)
915 */
916 AQBANKING_API const char *AB_Transaction_GetRemoteBranchId(const AB_TRANSACTION *p_struct);
917 
918 /** Getter.
919  * Use this function to get the member "remoteAccountNumber" (see @ref AB_TRANSACTION_remoteAccountNumber)
920 */
921 AQBANKING_API const char *AB_Transaction_GetRemoteAccountNumber(const AB_TRANSACTION *p_struct);
922 
923 /** Getter.
924  * Use this function to get the member "remoteSuffix" (see @ref AB_TRANSACTION_remoteSuffix)
925 */
926 AQBANKING_API const char *AB_Transaction_GetRemoteSuffix(const AB_TRANSACTION *p_struct);
927 
928 /** Getter.
929  * Use this function to get the member "remoteIban" (see @ref AB_TRANSACTION_remoteIban)
930 */
931 AQBANKING_API const char *AB_Transaction_GetRemoteIban(const AB_TRANSACTION *p_struct);
932 
933 /** Getter.
934  * Use this function to get the member "remoteBic" (see @ref AB_TRANSACTION_remoteBic)
935 */
936 AQBANKING_API const char *AB_Transaction_GetRemoteBic(const AB_TRANSACTION *p_struct);
937 
938 /** Getter.
939  * Use this function to get the member "remoteName" (see @ref AB_TRANSACTION_remoteName)
940 */
941 AQBANKING_API const char *AB_Transaction_GetRemoteName(const AB_TRANSACTION *p_struct);
942 
943 /** Getter.
944  * Use this function to get the member "date" (see @ref AB_TRANSACTION_date)
945 */
946 AQBANKING_API const GWEN_DATE *AB_Transaction_GetDate(const AB_TRANSACTION *p_struct);
947 
948 /** Getter.
949  * Use this function to get the member "valutaDate" (see @ref AB_TRANSACTION_valutaDate)
950 */
951 AQBANKING_API const GWEN_DATE *AB_Transaction_GetValutaDate(const AB_TRANSACTION *p_struct);
952 
953 /** Getter.
954  * Use this function to get the member "value" (see @ref AB_TRANSACTION_value)
955 */
956 AQBANKING_API const AB_VALUE *AB_Transaction_GetValue(const AB_TRANSACTION *p_struct);
957 
958 /** Getter.
959  * Use this function to get the member "fees" (see @ref AB_TRANSACTION_fees)
960 */
961 AQBANKING_API const AB_VALUE *AB_Transaction_GetFees(const AB_TRANSACTION *p_struct);
962 
963 /** Getter.
964  * Use this function to get the member "transactionCode" (see @ref AB_TRANSACTION_transactionCode)
965 */
966 AQBANKING_API int AB_Transaction_GetTransactionCode(const AB_TRANSACTION *p_struct);
967 
968 /** Getter.
969  * Use this function to get the member "transactionText" (see @ref AB_TRANSACTION_transactionText)
970 */
971 AQBANKING_API const char *AB_Transaction_GetTransactionText(const AB_TRANSACTION *p_struct);
972 
973 /** Getter.
974  * Use this function to get the member "transactionKey" (see @ref AB_TRANSACTION_transactionKey)
975 */
976 AQBANKING_API const char *AB_Transaction_GetTransactionKey(const AB_TRANSACTION *p_struct);
977 
978 /** Getter.
979  * Use this function to get the member "textKey" (see @ref AB_TRANSACTION_textKey)
980 */
981 AQBANKING_API int AB_Transaction_GetTextKey(const AB_TRANSACTION *p_struct);
982 
983 /** Getter.
984  * Use this function to get the member "primanota" (see @ref AB_TRANSACTION_primanota)
985 */
986 AQBANKING_API const char *AB_Transaction_GetPrimanota(const AB_TRANSACTION *p_struct);
987 
988 /** Getter.
989  * Use this function to get the member "purpose" (see @ref AB_TRANSACTION_purpose)
990 */
991 AQBANKING_API const char *AB_Transaction_GetPurpose(const AB_TRANSACTION *p_struct);
992 
993 /** Getter.
994  * Use this function to get the member "category" (see @ref AB_TRANSACTION_category)
995 */
996 AQBANKING_API const char *AB_Transaction_GetCategory(const AB_TRANSACTION *p_struct);
997 
998 /** Getter.
999  * Use this function to get the member "customerReference" (see @ref AB_TRANSACTION_customerReference)
1000 */
1001 AQBANKING_API const char *AB_Transaction_GetCustomerReference(const AB_TRANSACTION *p_struct);
1002 
1003 /** Getter.
1004  * Use this function to get the member "bankReference" (see @ref AB_TRANSACTION_bankReference)
1005 */
1006 AQBANKING_API const char *AB_Transaction_GetBankReference(const AB_TRANSACTION *p_struct);
1007 
1008 /** Getter.
1009  * Use this function to get the member "endToEndReference" (see @ref AB_TRANSACTION_endToEndReference)
1010 */
1011 AQBANKING_API const char *AB_Transaction_GetEndToEndReference(const AB_TRANSACTION *p_struct);
1012 
1013 /** Getter.
1014  * Use this function to get the member "ultimateCreditor" (see @ref AB_TRANSACTION_ultimateCreditor)
1015 */
1016 AQBANKING_API const char *AB_Transaction_GetUltimateCreditor(const AB_TRANSACTION *p_struct);
1017 
1018 /** Getter.
1019  * Use this function to get the member "ultimateDebtor" (see @ref AB_TRANSACTION_ultimateDebtor)
1020 */
1021 AQBANKING_API const char *AB_Transaction_GetUltimateDebtor(const AB_TRANSACTION *p_struct);
1022 
1023 /** Getter.
1024  * Use this function to get the member "creditorSchemeId" (see @ref AB_TRANSACTION_creditorSchemeId)
1025 */
1026 AQBANKING_API const char *AB_Transaction_GetCreditorSchemeId(const AB_TRANSACTION *p_struct);
1027 
1028 /** Getter.
1029  * Use this function to get the member "originatorId" (see @ref AB_TRANSACTION_originatorId)
1030 */
1031 AQBANKING_API const char *AB_Transaction_GetOriginatorId(const AB_TRANSACTION *p_struct);
1032 
1033 /** Getter.
1034  * Use this function to get the member "mandateId" (see @ref AB_TRANSACTION_mandateId)
1035 */
1036 AQBANKING_API const char *AB_Transaction_GetMandateId(const AB_TRANSACTION *p_struct);
1037 
1038 /** Getter.
1039  * Use this function to get the member "mandateDate" (see @ref AB_TRANSACTION_mandateDate)
1040 */
1041 AQBANKING_API const GWEN_DATE *AB_Transaction_GetMandateDate(const AB_TRANSACTION *p_struct);
1042 
1043 /** Getter.
1044  * Use this function to get the member "mandateDebitorName" (see @ref AB_TRANSACTION_mandateDebitorName)
1045 */
1046 AQBANKING_API const char *AB_Transaction_GetMandateDebitorName(const AB_TRANSACTION *p_struct);
1047 
1048 /** Getter.
1049  * Use this function to get the member "originalCreditorSchemeId" (see @ref AB_TRANSACTION_originalCreditorSchemeId)
1050 */
1051 AQBANKING_API const char *AB_Transaction_GetOriginalCreditorSchemeId(const AB_TRANSACTION *p_struct);
1052 
1053 /** Getter.
1054  * Use this function to get the member "originalMandateId" (see @ref AB_TRANSACTION_originalMandateId)
1055 */
1056 AQBANKING_API const char *AB_Transaction_GetOriginalMandateId(const AB_TRANSACTION *p_struct);
1057 
1058 /** Getter.
1059  * Use this function to get the member "originalCreditorName" (see @ref AB_TRANSACTION_originalCreditorName)
1060 */
1061 AQBANKING_API const char *AB_Transaction_GetOriginalCreditorName(const AB_TRANSACTION *p_struct);
1062 
1063 /** Getter.
1064  * Use this function to get the member "sequence" (see @ref AB_TRANSACTION_sequence)
1065 */
1066 AQBANKING_API AB_TRANSACTION_SEQUENCE AB_Transaction_GetSequence(const AB_TRANSACTION *p_struct);
1067 
1068 /** Getter.
1069  * Use this function to get the member "charge" (see @ref AB_TRANSACTION_charge)
1070 */
1071 AQBANKING_API AB_TRANSACTION_CHARGE AB_Transaction_GetCharge(const AB_TRANSACTION *p_struct);
1072 
1073 /** Getter.
1074  * Use this function to get the member "remoteAddrStreet" (see @ref AB_TRANSACTION_remoteAddrStreet)
1075 */
1076 AQBANKING_API const char *AB_Transaction_GetRemoteAddrStreet(const AB_TRANSACTION *p_struct);
1077 
1078 /** Getter.
1079  * Use this function to get the member "remoteAddrZipcode" (see @ref AB_TRANSACTION_remoteAddrZipcode)
1080 */
1081 AQBANKING_API const char *AB_Transaction_GetRemoteAddrZipcode(const AB_TRANSACTION *p_struct);
1082 
1083 /** Getter.
1084  * Use this function to get the member "remoteAddrCity" (see @ref AB_TRANSACTION_remoteAddrCity)
1085 */
1086 AQBANKING_API const char *AB_Transaction_GetRemoteAddrCity(const AB_TRANSACTION *p_struct);
1087 
1088 /** Getter.
1089  * Use this function to get the member "remoteAddrPhone" (see @ref AB_TRANSACTION_remoteAddrPhone)
1090 */
1091 AQBANKING_API const char *AB_Transaction_GetRemoteAddrPhone(const AB_TRANSACTION *p_struct);
1092 
1093 /** Getter.
1094  * Use this function to get the member "period" (see @ref AB_TRANSACTION_period)
1095 */
1096 AQBANKING_API AB_TRANSACTION_PERIOD AB_Transaction_GetPeriod(const AB_TRANSACTION *p_struct);
1097 
1098 /** Getter.
1099  * Use this function to get the member "cycle" (see @ref AB_TRANSACTION_cycle)
1100 */
1101 AQBANKING_API uint32_t AB_Transaction_GetCycle(const AB_TRANSACTION *p_struct);
1102 
1103 /** Getter.
1104  * Use this function to get the member "executionDay" (see @ref AB_TRANSACTION_executionDay)
1105 */
1106 AQBANKING_API uint32_t AB_Transaction_GetExecutionDay(const AB_TRANSACTION *p_struct);
1107 
1108 /** Getter.
1109  * Use this function to get the member "firstDate" (see @ref AB_TRANSACTION_firstDate)
1110 */
1111 AQBANKING_API const GWEN_DATE *AB_Transaction_GetFirstDate(const AB_TRANSACTION *p_struct);
1112 
1113 /** Getter.
1114  * Use this function to get the member "lastDate" (see @ref AB_TRANSACTION_lastDate)
1115 */
1116 AQBANKING_API const GWEN_DATE *AB_Transaction_GetLastDate(const AB_TRANSACTION *p_struct);
1117 
1118 /** Getter.
1119  * Use this function to get the member "nextDate" (see @ref AB_TRANSACTION_nextDate)
1120 */
1121 AQBANKING_API const GWEN_DATE *AB_Transaction_GetNextDate(const AB_TRANSACTION *p_struct);
1122 
1123 /** Getter.
1124  * Use this function to get the member "unitId" (see @ref AB_TRANSACTION_unitId)
1125 */
1126 AQBANKING_API const char *AB_Transaction_GetUnitId(const AB_TRANSACTION *p_struct);
1127 
1128 /** Getter.
1129  * Use this function to get the member "unitIdNameSpace" (see @ref AB_TRANSACTION_unitIdNameSpace)
1130 */
1131 AQBANKING_API const char *AB_Transaction_GetUnitIdNameSpace(const AB_TRANSACTION *p_struct);
1132 
1133 /** Getter.
1134  * Use this function to get the member "tickerSymbol" (see @ref AB_TRANSACTION_tickerSymbol)
1135 */
1136 AQBANKING_API const char *AB_Transaction_GetTickerSymbol(const AB_TRANSACTION *p_struct);
1137 
1138 /** Getter.
1139  * Use this function to get the member "units" (see @ref AB_TRANSACTION_units)
1140 */
1141 AQBANKING_API const AB_VALUE *AB_Transaction_GetUnits(const AB_TRANSACTION *p_struct);
1142 
1143 /** Getter.
1144  * Use this function to get the member "unitPriceValue" (see @ref AB_TRANSACTION_unitPriceValue)
1145 */
1146 AQBANKING_API const AB_VALUE *AB_Transaction_GetUnitPriceValue(const AB_TRANSACTION *p_struct);
1147 
1148 /** Getter.
1149  * Use this function to get the member "unitPriceDate" (see @ref AB_TRANSACTION_unitPriceDate)
1150 */
1151 AQBANKING_API const GWEN_DATE *AB_Transaction_GetUnitPriceDate(const AB_TRANSACTION *p_struct);
1152 
1153 /** Getter.
1154  * Use this function to get the member "commissionValue" (see @ref AB_TRANSACTION_commissionValue)
1155 */
1156 AQBANKING_API const AB_VALUE *AB_Transaction_GetCommissionValue(const AB_TRANSACTION *p_struct);
1157 
1158 /** Getter.
1159  * Use this function to get the member "memo" (see @ref AB_TRANSACTION_memo)
1160 */
1161 AQBANKING_API const char *AB_Transaction_GetMemo(const AB_TRANSACTION *p_struct);
1162 
1163 /** Getter.
1164  * Use this function to get the member "hash" (see @ref AB_TRANSACTION_hash)
1165 */
1166 AQBANKING_API const char *AB_Transaction_GetHash(const AB_TRANSACTION *p_struct);
1167 
1168 /** Setter.
1169  * Use this function to set the member "type" (see @ref AB_TRANSACTION_type)
1170 */
1171 AQBANKING_API void AB_Transaction_SetType(AB_TRANSACTION *p_struct, AB_TRANSACTION_TYPE  p_src);
1172 
1173 /** Setter.
1174  * Use this function to set the member "subType" (see @ref AB_TRANSACTION_subType)
1175 */
1176 AQBANKING_API void AB_Transaction_SetSubType(AB_TRANSACTION *p_struct, AB_TRANSACTION_SUBTYPE  p_src);
1177 
1178 /** Setter.
1179  * Use this function to set the member "command" (see @ref AB_TRANSACTION_command)
1180 */
1181 AQBANKING_API void AB_Transaction_SetCommand(AB_TRANSACTION *p_struct, AB_TRANSACTION_COMMAND  p_src);
1182 
1183 /** Setter.
1184  * Use this function to set the member "status" (see @ref AB_TRANSACTION_status)
1185 */
1186 AQBANKING_API void AB_Transaction_SetStatus(AB_TRANSACTION *p_struct, AB_TRANSACTION_STATUS  p_src);
1187 
1188 /** Setter.
1189  * Use this function to set the member "uniqueAccountId" (see @ref AB_TRANSACTION_uniqueAccountId)
1190 */
1191 AQBANKING_API void AB_Transaction_SetUniqueAccountId(AB_TRANSACTION *p_struct, uint32_t p_src);
1192 
1193 /** Setter.
1194  * Use this function to set the member "uniqueId" (see @ref AB_TRANSACTION_uniqueId)
1195 */
1196 AQBANKING_API void AB_Transaction_SetUniqueId(AB_TRANSACTION *p_struct, uint32_t p_src);
1197 
1198 /** Setter.
1199  * Use this function to set the member "refUniqueId" (see @ref AB_TRANSACTION_refUniqueId)
1200 */
1201 AQBANKING_API void AB_Transaction_SetRefUniqueId(AB_TRANSACTION *p_struct, uint32_t p_src);
1202 
1203 /** Setter.
1204  * Use this function to set the member "idForApplication" (see @ref AB_TRANSACTION_idForApplication)
1205 */
1206 AQBANKING_API void AB_Transaction_SetIdForApplication(AB_TRANSACTION *p_struct, uint32_t p_src);
1207 
1208 /** Setter.
1209  * Use this function to set the member "stringIdForApplication" (see @ref AB_TRANSACTION_stringIdForApplication)
1210 */
1211 AQBANKING_API void AB_Transaction_SetStringIdForApplication(AB_TRANSACTION *p_struct, const char *p_src);
1212 
1213 /** Setter.
1214  * Use this function to set the member "sessionId" (see @ref AB_TRANSACTION_sessionId)
1215 */
1216 AQBANKING_API void AB_Transaction_SetSessionId(AB_TRANSACTION *p_struct, uint32_t p_src);
1217 
1218 /** Setter.
1219  * Use this function to set the member "groupId" (see @ref AB_TRANSACTION_groupId)
1220 */
1221 AQBANKING_API void AB_Transaction_SetGroupId(AB_TRANSACTION *p_struct, uint32_t p_src);
1222 
1223 /** Setter.
1224  * Use this function to set the member "fiId" (see @ref AB_TRANSACTION_fiId)
1225 */
1226 AQBANKING_API void AB_Transaction_SetFiId(AB_TRANSACTION *p_struct, const char *p_src);
1227 
1228 /** Setter.
1229  * Use this function to set the member "localIban" (see @ref AB_TRANSACTION_localIban)
1230 */
1231 AQBANKING_API void AB_Transaction_SetLocalIban(AB_TRANSACTION *p_struct, const char *p_src);
1232 
1233 /** Setter.
1234  * Use this function to set the member "localBic" (see @ref AB_TRANSACTION_localBic)
1235 */
1236 AQBANKING_API void AB_Transaction_SetLocalBic(AB_TRANSACTION *p_struct, const char *p_src);
1237 
1238 /** Setter.
1239  * Use this function to set the member "localCountry" (see @ref AB_TRANSACTION_localCountry)
1240 */
1241 AQBANKING_API void AB_Transaction_SetLocalCountry(AB_TRANSACTION *p_struct, const char *p_src);
1242 
1243 /** Setter.
1244  * Use this function to set the member "localBankCode" (see @ref AB_TRANSACTION_localBankCode)
1245 */
1246 AQBANKING_API void AB_Transaction_SetLocalBankCode(AB_TRANSACTION *p_struct, const char *p_src);
1247 
1248 /** Setter.
1249  * Use this function to set the member "localBranchId" (see @ref AB_TRANSACTION_localBranchId)
1250 */
1251 AQBANKING_API void AB_Transaction_SetLocalBranchId(AB_TRANSACTION *p_struct, const char *p_src);
1252 
1253 /** Setter.
1254  * Use this function to set the member "localAccountNumber" (see @ref AB_TRANSACTION_localAccountNumber)
1255 */
1256 AQBANKING_API void AB_Transaction_SetLocalAccountNumber(AB_TRANSACTION *p_struct, const char *p_src);
1257 
1258 /** Setter.
1259  * Use this function to set the member "localSuffix" (see @ref AB_TRANSACTION_localSuffix)
1260 */
1261 AQBANKING_API void AB_Transaction_SetLocalSuffix(AB_TRANSACTION *p_struct, const char *p_src);
1262 
1263 /** Setter.
1264  * Use this function to set the member "localName" (see @ref AB_TRANSACTION_localName)
1265 */
1266 AQBANKING_API void AB_Transaction_SetLocalName(AB_TRANSACTION *p_struct, const char *p_src);
1267 
1268 /** Setter.
1269  * Use this function to set the member "remoteCountry" (see @ref AB_TRANSACTION_remoteCountry)
1270 */
1271 AQBANKING_API void AB_Transaction_SetRemoteCountry(AB_TRANSACTION *p_struct, const char *p_src);
1272 
1273 /** Setter.
1274  * Use this function to set the member "remoteBankCode" (see @ref AB_TRANSACTION_remoteBankCode)
1275 */
1276 AQBANKING_API void AB_Transaction_SetRemoteBankCode(AB_TRANSACTION *p_struct, const char *p_src);
1277 
1278 /** Setter.
1279  * Use this function to set the member "remoteBranchId" (see @ref AB_TRANSACTION_remoteBranchId)
1280 */
1281 AQBANKING_API void AB_Transaction_SetRemoteBranchId(AB_TRANSACTION *p_struct, const char *p_src);
1282 
1283 /** Setter.
1284  * Use this function to set the member "remoteAccountNumber" (see @ref AB_TRANSACTION_remoteAccountNumber)
1285 */
1286 AQBANKING_API void AB_Transaction_SetRemoteAccountNumber(AB_TRANSACTION *p_struct, const char *p_src);
1287 
1288 /** Setter.
1289  * Use this function to set the member "remoteSuffix" (see @ref AB_TRANSACTION_remoteSuffix)
1290 */
1291 AQBANKING_API void AB_Transaction_SetRemoteSuffix(AB_TRANSACTION *p_struct, const char *p_src);
1292 
1293 /** Setter.
1294  * Use this function to set the member "remoteIban" (see @ref AB_TRANSACTION_remoteIban)
1295 */
1296 AQBANKING_API void AB_Transaction_SetRemoteIban(AB_TRANSACTION *p_struct, const char *p_src);
1297 
1298 /** Setter.
1299  * Use this function to set the member "remoteBic" (see @ref AB_TRANSACTION_remoteBic)
1300 */
1301 AQBANKING_API void AB_Transaction_SetRemoteBic(AB_TRANSACTION *p_struct, const char *p_src);
1302 
1303 /** Setter.
1304  * Use this function to set the member "remoteName" (see @ref AB_TRANSACTION_remoteName)
1305 */
1306 AQBANKING_API void AB_Transaction_SetRemoteName(AB_TRANSACTION *p_struct, const char *p_src);
1307 
1308 /** Setter.
1309  * Use this function to set the member "date" (see @ref AB_TRANSACTION_date)
1310 */
1311 AQBANKING_API void AB_Transaction_SetDate(AB_TRANSACTION *p_struct, const GWEN_DATE *p_src);
1312 
1313 /** Setter.
1314  * Use this function to set the member "valutaDate" (see @ref AB_TRANSACTION_valutaDate)
1315 */
1316 AQBANKING_API void AB_Transaction_SetValutaDate(AB_TRANSACTION *p_struct, const GWEN_DATE *p_src);
1317 
1318 /** Setter.
1319  * Use this function to set the member "value" (see @ref AB_TRANSACTION_value)
1320 */
1321 AQBANKING_API void AB_Transaction_SetValue(AB_TRANSACTION *p_struct, const AB_VALUE *p_src);
1322 
1323 /** Setter.
1324  * Use this function to set the member "fees" (see @ref AB_TRANSACTION_fees)
1325 */
1326 AQBANKING_API void AB_Transaction_SetFees(AB_TRANSACTION *p_struct, const AB_VALUE *p_src);
1327 
1328 /** Setter.
1329  * Use this function to set the member "transactionCode" (see @ref AB_TRANSACTION_transactionCode)
1330 */
1331 AQBANKING_API void AB_Transaction_SetTransactionCode(AB_TRANSACTION *p_struct, int p_src);
1332 
1333 /** Setter.
1334  * Use this function to set the member "transactionText" (see @ref AB_TRANSACTION_transactionText)
1335 */
1336 AQBANKING_API void AB_Transaction_SetTransactionText(AB_TRANSACTION *p_struct, const char *p_src);
1337 
1338 /** Setter.
1339  * Use this function to set the member "transactionKey" (see @ref AB_TRANSACTION_transactionKey)
1340 */
1341 AQBANKING_API void AB_Transaction_SetTransactionKey(AB_TRANSACTION *p_struct, const char *p_src);
1342 
1343 /** Setter.
1344  * Use this function to set the member "textKey" (see @ref AB_TRANSACTION_textKey)
1345 */
1346 AQBANKING_API void AB_Transaction_SetTextKey(AB_TRANSACTION *p_struct, int p_src);
1347 
1348 /** Setter.
1349  * Use this function to set the member "primanota" (see @ref AB_TRANSACTION_primanota)
1350 */
1351 AQBANKING_API void AB_Transaction_SetPrimanota(AB_TRANSACTION *p_struct, const char *p_src);
1352 
1353 /** Setter.
1354  * Use this function to set the member "purpose" (see @ref AB_TRANSACTION_purpose)
1355 */
1356 AQBANKING_API void AB_Transaction_SetPurpose(AB_TRANSACTION *p_struct, const char *p_src);
1357 
1358 /** Setter.
1359  * Use this function to set the member "category" (see @ref AB_TRANSACTION_category)
1360 */
1361 AQBANKING_API void AB_Transaction_SetCategory(AB_TRANSACTION *p_struct, const char *p_src);
1362 
1363 /** Setter.
1364  * Use this function to set the member "customerReference" (see @ref AB_TRANSACTION_customerReference)
1365 */
1366 AQBANKING_API void AB_Transaction_SetCustomerReference(AB_TRANSACTION *p_struct, const char *p_src);
1367 
1368 /** Setter.
1369  * Use this function to set the member "bankReference" (see @ref AB_TRANSACTION_bankReference)
1370 */
1371 AQBANKING_API void AB_Transaction_SetBankReference(AB_TRANSACTION *p_struct, const char *p_src);
1372 
1373 /** Setter.
1374  * Use this function to set the member "endToEndReference" (see @ref AB_TRANSACTION_endToEndReference)
1375 */
1376 AQBANKING_API void AB_Transaction_SetEndToEndReference(AB_TRANSACTION *p_struct, const char *p_src);
1377 
1378 /** Setter.
1379  * Use this function to set the member "ultimateCreditor" (see @ref AB_TRANSACTION_ultimateCreditor)
1380 */
1381 AQBANKING_API void AB_Transaction_SetUltimateCreditor(AB_TRANSACTION *p_struct, const char *p_src);
1382 
1383 /** Setter.
1384  * Use this function to set the member "ultimateDebtor" (see @ref AB_TRANSACTION_ultimateDebtor)
1385 */
1386 AQBANKING_API void AB_Transaction_SetUltimateDebtor(AB_TRANSACTION *p_struct, const char *p_src);
1387 
1388 /** Setter.
1389  * Use this function to set the member "creditorSchemeId" (see @ref AB_TRANSACTION_creditorSchemeId)
1390 */
1391 AQBANKING_API void AB_Transaction_SetCreditorSchemeId(AB_TRANSACTION *p_struct, const char *p_src);
1392 
1393 /** Setter.
1394  * Use this function to set the member "originatorId" (see @ref AB_TRANSACTION_originatorId)
1395 */
1396 AQBANKING_API void AB_Transaction_SetOriginatorId(AB_TRANSACTION *p_struct, const char *p_src);
1397 
1398 /** Setter.
1399  * Use this function to set the member "mandateId" (see @ref AB_TRANSACTION_mandateId)
1400 */
1401 AQBANKING_API void AB_Transaction_SetMandateId(AB_TRANSACTION *p_struct, const char *p_src);
1402 
1403 /** Setter.
1404  * Use this function to set the member "mandateDate" (see @ref AB_TRANSACTION_mandateDate)
1405 */
1406 AQBANKING_API void AB_Transaction_SetMandateDate(AB_TRANSACTION *p_struct, const GWEN_DATE *p_src);
1407 
1408 /** Setter.
1409  * Use this function to set the member "mandateDebitorName" (see @ref AB_TRANSACTION_mandateDebitorName)
1410 */
1411 AQBANKING_API void AB_Transaction_SetMandateDebitorName(AB_TRANSACTION *p_struct, const char *p_src);
1412 
1413 /** Setter.
1414  * Use this function to set the member "originalCreditorSchemeId" (see @ref AB_TRANSACTION_originalCreditorSchemeId)
1415 */
1416 AQBANKING_API void AB_Transaction_SetOriginalCreditorSchemeId(AB_TRANSACTION *p_struct, const char *p_src);
1417 
1418 /** Setter.
1419  * Use this function to set the member "originalMandateId" (see @ref AB_TRANSACTION_originalMandateId)
1420 */
1421 AQBANKING_API void AB_Transaction_SetOriginalMandateId(AB_TRANSACTION *p_struct, const char *p_src);
1422 
1423 /** Setter.
1424  * Use this function to set the member "originalCreditorName" (see @ref AB_TRANSACTION_originalCreditorName)
1425 */
1426 AQBANKING_API void AB_Transaction_SetOriginalCreditorName(AB_TRANSACTION *p_struct, const char *p_src);
1427 
1428 /** Setter.
1429  * Use this function to set the member "sequence" (see @ref AB_TRANSACTION_sequence)
1430 */
1431 AQBANKING_API void AB_Transaction_SetSequence(AB_TRANSACTION *p_struct, AB_TRANSACTION_SEQUENCE  p_src);
1432 
1433 /** Setter.
1434  * Use this function to set the member "charge" (see @ref AB_TRANSACTION_charge)
1435 */
1436 AQBANKING_API void AB_Transaction_SetCharge(AB_TRANSACTION *p_struct, AB_TRANSACTION_CHARGE  p_src);
1437 
1438 /** Setter.
1439  * Use this function to set the member "remoteAddrStreet" (see @ref AB_TRANSACTION_remoteAddrStreet)
1440 */
1441 AQBANKING_API void AB_Transaction_SetRemoteAddrStreet(AB_TRANSACTION *p_struct, const char *p_src);
1442 
1443 /** Setter.
1444  * Use this function to set the member "remoteAddrZipcode" (see @ref AB_TRANSACTION_remoteAddrZipcode)
1445 */
1446 AQBANKING_API void AB_Transaction_SetRemoteAddrZipcode(AB_TRANSACTION *p_struct, const char *p_src);
1447 
1448 /** Setter.
1449  * Use this function to set the member "remoteAddrCity" (see @ref AB_TRANSACTION_remoteAddrCity)
1450 */
1451 AQBANKING_API void AB_Transaction_SetRemoteAddrCity(AB_TRANSACTION *p_struct, const char *p_src);
1452 
1453 /** Setter.
1454  * Use this function to set the member "remoteAddrPhone" (see @ref AB_TRANSACTION_remoteAddrPhone)
1455 */
1456 AQBANKING_API void AB_Transaction_SetRemoteAddrPhone(AB_TRANSACTION *p_struct, const char *p_src);
1457 
1458 /** Setter.
1459  * Use this function to set the member "period" (see @ref AB_TRANSACTION_period)
1460 */
1461 AQBANKING_API void AB_Transaction_SetPeriod(AB_TRANSACTION *p_struct, AB_TRANSACTION_PERIOD  p_src);
1462 
1463 /** Setter.
1464  * Use this function to set the member "cycle" (see @ref AB_TRANSACTION_cycle)
1465 */
1466 AQBANKING_API void AB_Transaction_SetCycle(AB_TRANSACTION *p_struct, uint32_t p_src);
1467 
1468 /** Setter.
1469  * Use this function to set the member "executionDay" (see @ref AB_TRANSACTION_executionDay)
1470 */
1471 AQBANKING_API void AB_Transaction_SetExecutionDay(AB_TRANSACTION *p_struct, uint32_t p_src);
1472 
1473 /** Setter.
1474  * Use this function to set the member "firstDate" (see @ref AB_TRANSACTION_firstDate)
1475 */
1476 AQBANKING_API void AB_Transaction_SetFirstDate(AB_TRANSACTION *p_struct, const GWEN_DATE *p_src);
1477 
1478 /** Setter.
1479  * Use this function to set the member "lastDate" (see @ref AB_TRANSACTION_lastDate)
1480 */
1481 AQBANKING_API void AB_Transaction_SetLastDate(AB_TRANSACTION *p_struct, const GWEN_DATE *p_src);
1482 
1483 /** Setter.
1484  * Use this function to set the member "nextDate" (see @ref AB_TRANSACTION_nextDate)
1485 */
1486 AQBANKING_API void AB_Transaction_SetNextDate(AB_TRANSACTION *p_struct, const GWEN_DATE *p_src);
1487 
1488 /** Setter.
1489  * Use this function to set the member "unitId" (see @ref AB_TRANSACTION_unitId)
1490 */
1491 AQBANKING_API void AB_Transaction_SetUnitId(AB_TRANSACTION *p_struct, const char *p_src);
1492 
1493 /** Setter.
1494  * Use this function to set the member "unitIdNameSpace" (see @ref AB_TRANSACTION_unitIdNameSpace)
1495 */
1496 AQBANKING_API void AB_Transaction_SetUnitIdNameSpace(AB_TRANSACTION *p_struct, const char *p_src);
1497 
1498 /** Setter.
1499  * Use this function to set the member "tickerSymbol" (see @ref AB_TRANSACTION_tickerSymbol)
1500 */
1501 AQBANKING_API void AB_Transaction_SetTickerSymbol(AB_TRANSACTION *p_struct, const char *p_src);
1502 
1503 /** Setter.
1504  * Use this function to set the member "units" (see @ref AB_TRANSACTION_units)
1505 */
1506 AQBANKING_API void AB_Transaction_SetUnits(AB_TRANSACTION *p_struct, const AB_VALUE *p_src);
1507 
1508 /** Setter.
1509  * Use this function to set the member "unitPriceValue" (see @ref AB_TRANSACTION_unitPriceValue)
1510 */
1511 AQBANKING_API void AB_Transaction_SetUnitPriceValue(AB_TRANSACTION *p_struct, const AB_VALUE *p_src);
1512 
1513 /** Setter.
1514  * Use this function to set the member "unitPriceDate" (see @ref AB_TRANSACTION_unitPriceDate)
1515 */
1516 AQBANKING_API void AB_Transaction_SetUnitPriceDate(AB_TRANSACTION *p_struct, const GWEN_DATE *p_src);
1517 
1518 /** Setter.
1519  * Use this function to set the member "commissionValue" (see @ref AB_TRANSACTION_commissionValue)
1520 */
1521 AQBANKING_API void AB_Transaction_SetCommissionValue(AB_TRANSACTION *p_struct, const AB_VALUE *p_src);
1522 
1523 /** Setter.
1524  * Use this function to set the member "memo" (see @ref AB_TRANSACTION_memo)
1525 */
1526 AQBANKING_API void AB_Transaction_SetMemo(AB_TRANSACTION *p_struct, const char *p_src);
1527 
1528 /** Setter.
1529  * Use this function to set the member "hash" (see @ref AB_TRANSACTION_hash)
1530 */
1531 AQBANKING_API void AB_Transaction_SetHash(AB_TRANSACTION *p_struct, const char *p_src);
1532 
1533 /* list1 functions */
1534 AQBANKING_API AB_TRANSACTION_LIST *AB_Transaction_List_dup(const AB_TRANSACTION_LIST *p_src);
1535 
1536 AQBANKING_API void AB_Transaction_ReadDb(AB_TRANSACTION *p_struct, GWEN_DB_NODE *p_db);
1537 
1538 AQBANKING_API int AB_Transaction_WriteDb(const AB_TRANSACTION *p_struct, GWEN_DB_NODE *p_db);
1539 
1540 AQBANKING_API AB_TRANSACTION *AB_Transaction_fromDb(GWEN_DB_NODE *p_db);
1541 
1542 AQBANKING_API int AB_Transaction_toDb(const AB_TRANSACTION *p_struct, GWEN_DB_NODE *p_db);
1543 
1544 AQBANKING_API void AB_Transaction_ReadXml(AB_TRANSACTION *p_struct, GWEN_XMLNODE *p_db);
1545 
1546 AQBANKING_API void AB_Transaction_WriteXml(const AB_TRANSACTION *p_struct, GWEN_XMLNODE *p_db);
1547 
1548 AQBANKING_API void AB_Transaction_toXml(const AB_TRANSACTION *p_struct, GWEN_XMLNODE *p_db);
1549 
1550 AQBANKING_API AB_TRANSACTION *AB_Transaction_fromXml(GWEN_XMLNODE *p_db);
1551 
1552 AQBANKING_API AB_TRANSACTION *AB_Transaction_List_GetByUniqueId(const AB_TRANSACTION_LIST *p_list, uint32_t p_cmp);
1553 
1554 AQBANKING_API AB_TRANSACTION *AB_Transaction_List_GetByIdForApplication(const AB_TRANSACTION_LIST *p_list,
1555                                                                         uint32_t p_cmp);
1556 
1557 AQBANKING_API AB_TRANSACTION *AB_Transaction_List_GetByStringIdForApplication(const AB_TRANSACTION_LIST *p_list,
1558                                                                               const char *p_cmp);
1559 
1560 AQBANKING_API void AB_Transaction_toHashString(const AB_TRANSACTION *p_struct, GWEN_BUFFER *p_buffer);
1561 
1562 AQBANKING_API int AB_Transaction_GenerateHash(AB_TRANSACTION *st);
1563 /**
1564  * Check whether a transaction matches the given type and command.
1565  *
1566  * @return 1 if match, 0 otherwise
1567  * @param tl pointer to the list to search
1568  * @param ty transaction type, if 0 then this is not checked
1569  * @param cmd command, if -1 then any non-zero command matches, if 0 then this is not checked
1570  */
1571 AQBANKING_API int AB_Transaction_MatchTypeAndCommand(const AB_TRANSACTION *t, int ty, int cmd);
1572 /**
1573  * Find first transaction in a list which matches the given type and command.
1574  *
1575  * @return Entry matching the description (or NULL if none)
1576  * @param tl pointer to the list to search
1577  * @param ty transaction type, if 0 then this is not checked
1578  * @param cmd command, if -1 then any non-zero command matches, if 0 then this is not checked
1579  */
1580 AQBANKING_API AB_TRANSACTION *AB_Transaction_List_FindFirstByType(const AB_TRANSACTION_LIST *tl, int ty, int cmd);
1581 /**
1582  * Find next transaction in a list which matches the given type and command.
1583  *
1584  * @return Entry matching the description (or NULL if none)
1585  * @param t pointer to the previous match (as returned by AB_Transaction_List_FindFirstByType)
1586  * @param ty transaction type, if 0 then this is not checked
1587  * @param cmd command, if -1 then any non-zero command matches, if 0 then this is not checked
1588  */
1589 AQBANKING_API AB_TRANSACTION *AB_Transaction_List_FindNextByType(const AB_TRANSACTION *t, int ty, int cmd);
1590 /**
1591  * Remove matching transactions from the given list
1592  *
1593  * @return Number of transactions removed from the list
1594  * @param tl pointer to the list to search
1595  * @param ty transaction type, if 0 then this is not checked
1596  * @param cmd command, if -1 then any non-zero command matches, if 0 then this is not checked
1597  */
1598 AQBANKING_API int AB_Transaction_List_RemoveByType(AB_TRANSACTION_LIST *tl, int ty, int cmd);
1599 /**
1600  * Keep matching transactions in the given list and delete others.
1601  *
1602  * @return Number of transactions removed from the list
1603  * @param tl pointer to the list to search
1604  * @param ty transaction type, if 0 then this is not checked
1605  * @param cmd command, if -1 then any non-zero command matches, if 0 then this is not checked
1606  */
1607 AQBANKING_API int AB_Transaction_List_KeepByType(AB_TRANSACTION_LIST *tl, int ty, int cmd);
1608 AQBANKING_API int AB_Transaction_List_CountByType(const AB_TRANSACTION_LIST *tl, int ty, int cmd);
1609 /**
1610  * Definition of the callback function for @ref AB_Transaction_List_ForEachByType().
1611  */
1612 typedef const AB_TRANSACTION *(AB_TRANSACTION_LIST_FOREACHBYTYPE_CB)(const AB_TRANSACTION *element, void *user_data);
1613 /**
1614  * Call the given callback function for every entry of the list which matches the given type and command.
1615  *
1616  * @return Entry matching the description (or NULL if none)
1617  * @param fn callback function to be called for every element of the given list
1618  * @param user_data user data forwarded to the callback function
1619  * @param tl pointer to the list to search
1620  * @param ty transaction type, if 0 then this is not checked
1621  * @param cmd command, if -1 then any non-zero command matches, if 0 then this is not checked
1622  */
1623 AQBANKING_API const AB_TRANSACTION *AB_Transaction_List_ForEachByType(const AB_TRANSACTION_LIST *tl,
1624                                                                       AB_TRANSACTION_LIST_FOREACHBYTYPE_CB fn, void *user_data, int ty, int cmd);
1625 AQBANKING_API AB_TRANSACTION *AB_Transaction_List_FindName(const AB_TRANSACTION_LIST *tl, int ty, const char *ns,
1626                                                            const char *n);
1627 AQBANKING_API int AB_Transaction_List_WriteDb(const AB_TRANSACTION_LIST *tl, GWEN_DB_NODE *db);
1628 AQBANKING_API int AB_Transaction_List_ReadDb(AB_TRANSACTION_LIST *tl, GWEN_DB_NODE *db);
1629 AQBANKING_API void AB_Transaction_AddPurposeLine(AB_TRANSACTION *t, const char *s);
1630 AQBANKING_API void AB_Transaction_SetPurposeFromStringList(AB_TRANSACTION *t, const GWEN_STRINGLIST *sl);
1631 /**
1632  * The purpose fields may contain multiple purpose lines separated by a NEWLINE character (10).
1633  * If you need the old behaviour of previous versions you can use this function to get a string list
1634  * representation of the purpose lines.
1635  *
1636  * If the purpose field is empty NULL is returned (no empty list is ever returned).
1637  *
1638  * The caller is responsible for freeing the object returned, if any.
1639  *
1640  * @return stringlist (NULL if empty)
1641  * @param t transaction object
1642  */
1643 AQBANKING_API GWEN_STRINGLIST *AB_Transaction_GetPurposeAsStringList(const AB_TRANSACTION *t);
1644 AQBANKING_API void AB_Transaction_AddCategory(AB_TRANSACTION *t, const char *s);
1645 AQBANKING_API void AB_Transaction_SetCategoryFromStringList(AB_TRANSACTION *t, const GWEN_STRINGLIST *sl);
1646 AQBANKING_API int AB_Transaction_List2_freeAll(AB_TRANSACTION_LIST2 *tl);
1647 /* end-headers */
1648 
1649 
1650 #ifdef __cplusplus
1651 }
1652 #endif
1653 
1654 #endif
1655 
1656