@@ -44,12 +44,12 @@ public String getLabel()
4444
4545 private void addDepositTransaction ()
4646 {
47- DocumentType type = new DocumentType ("(Einzahlung|Deposit|Avis de versement) 3a " );
47+ DocumentType type = new DocumentType ("(Einzahlung|Deposit|Avis de versement) (3a|VIAC Invest) " );
4848 this .addDocumentTyp (type );
4949
5050 Transaction <AccountTransaction > pdfTransaction = new Transaction <>();
5151
52- Block firstRelevantLine = new Block ("^(Einzahlung|Deposit|Avis de versement) 3a $" );
52+ Block firstRelevantLine = new Block ("^(Einzahlung|Deposit|Avis de versement) (3a|VIAC Invest) $" );
5353 type .addBlock (firstRelevantLine );
5454 firstRelevantLine .set (pdfTransaction );
5555
@@ -66,7 +66,7 @@ private void addDepositTransaction()
6666 // Gutschrift: Valuta 15.01.2019 CHF 2'150.00
6767 // @formatter:on
6868 .section ("date" , "amount" , "currency" ) //
69- .find ("(Einzahlung|Deposit|Versement|Avis de versement) 3a " ) //
69+ .find ("(Einzahlung|Deposit|Versement|Avis de versement) (3a|VIAC Invest) " ) //
7070 .match ("^(Gutschrift: Valuta|Credit: Value date|Montant cr.dit.: Valeur) (?<date>[\\ d]{2}\\ .[\\ d]{2}\\ .[\\ d]{4}) (?<currency>[\\ w]{3}) (?<amount>[\\ .,'\\ d]+)$" ) //
7171 .assign ((t , v ) -> {
7272 t .setDateTime (asDate (v .get ("date" )));
@@ -87,13 +87,13 @@ private void addDepositTransaction()
8787 private void addBuySellTransaction ()
8888 {
8989 DocumentType type = new DocumentType ("(B.rsenabrechnung|Exchange Settlement|Op.ration de bourse) " //
90- + "\\ - (Kauf|Zeichnung|Verkauf|R.cknahme|Buy|Sell|Achat|Vente)" );
90+ + "\\ - (Kauf|Zeichnung|Verkauf|R.cknahme|Buy|Subscription| Sell|Redemption |Achat|Vente)" );
9191 this .addDocumentTyp (type );
9292
9393 Transaction <BuySellEntry > pdfTransaction = new Transaction <>();
9494
9595 Block firstRelevantLine = new Block ("^(B.rsenabrechnung|Exchange Settlement|Op.ration de bourse) " //
96- + "\\ - (Kauf|Zeichnung|Verkauf|R.cknahme|Buy|Sell|Achat|Vente).*$" );
96+ + "\\ - (Kauf|Zeichnung|Verkauf|R.cknahme|Buy|Subscription| Sell|Redemption |Achat|Vente).*$" );
9797 type .addBlock (firstRelevantLine );
9898 firstRelevantLine .set (pdfTransaction );
9999
@@ -108,11 +108,12 @@ private void addBuySellTransaction()
108108 // Is type --> "Verkauf" change from BUY to SELL
109109 .section ("type" ).optional () //
110110 .match ("^(B.rsenabrechnung|Exchange Settlement|Op.ration de bourse) " //
111- + "\\ - (?<type>(Kauf|Zeichnung|Verkauf|R.cknahme|Buy|Sell|Achat|Vente)).*$" ) //
111+ + "\\ - (?<type>(Kauf|Zeichnung|Verkauf|R.cknahme|Buy|Subscription| Sell|Redemption |Achat|Vente)).*$" ) //
112112 .assign ((t , v ) -> {
113113 if ("Verkauf" .equals (v .get ("type" )) //
114114 || "Rücknahme" .equals (v .get ("type" )) //
115115 || "Sell" .equals (v .get ("type" )) //
116+ || "Redemption" .equals (v .get ("type" )) //
116117 || "Vente" .equals (v .get ("type" )))
117118 t .setType (PortfolioTransaction .Type .SELL );
118119 })
@@ -124,7 +125,7 @@ private void addBuySellTransaction()
124125 // Kurs: USD 262.51
125126 // @formatter:on
126127 .section ("isin" , "name" , "currency" ) //
127- .find ("(Order|Ordre): (Kauf|Zeichnung|Verkauf|R.cknahme|Buy|Sell|Achat|Vente)" ) //
128+ .find ("(Order|Ordre): (Kauf|Zeichnung|Verkauf|R.cknahme|Buy|Subscription| Sell|Redemption |Achat|Vente)" ) //
128129 .match ("^[\\ .,\\ d]+ (Anteile|Qty|Ant|units|Qt.|Quantit.|parts|actions)?(?<name>.*)$" ) //
129130 .match ("^ISIN: (?<isin>[A-Z]{2}[A-Z0-9]{9}[0-9])$" ) //
130131 .match ("^(Kurs|Price|Cours): (?<currency>[\\ w]{3}) .*$" ) //
@@ -135,7 +136,7 @@ private void addBuySellTransaction()
135136 // 0.027 units Swisscanto Pacific ex Japan
136137 // @formatter:on
137138 .section ("shares" ) //
138- .find ("(Order|Ordre): (Kauf|Zeichnung|Verkauf|R.cknahme|Buy|Sell|Achat|Vente)" ) //
139+ .find ("(Order|Ordre): (Kauf|Zeichnung|Verkauf|R.cknahme|Buy|Subscription| Sell|Redemption |Achat|Vente)" ) //
139140 .match ("^(?<shares>[\\ .,\\ d]+) (Anteile|Qty|Ant|units|Qt.|Quantit.|parts|actions)?(?<name>.*)$" ) //
140141 .assign ((t , v ) -> t .setShares (asShares (v .get ("shares" ))))
141142
@@ -209,7 +210,7 @@ private void addInterestTransaction()
209210 .match ("^(Am|On|Nous avons cr.dit. le) ?" //
210211 + "(?<date>[\\ d]{2}\\ .[\\ d]{2}\\ .[\\ d]{4}) " //
211212 + "(haben wir (Ihrem Konto|Ihnen) gutgeschrieben|we have credited (you|your account)|les int.r.ts suivants):$" ) //
212- .match ("^(Zinsgutschrift|Interest credit|Int.r.ts cr.diteurs): (?<currency>[\\ w]{3}) (?<amount>[\\ .,'\\ d]+)$" ) //
213+ .match ("^(Zinsgutschrift|Interest credit|Interest amount| Int.r.ts cr.diteurs): (?<currency>[\\ w]{3}) (?<amount>[\\ .,'\\ d]+)$" ) //
213214 .assign ((t , v ) -> {
214215 t .setDateTime (asDate (v .get ("date" )));
215216 t .setAmount (asAmount (v .get ("amount" )));
0 commit comments