-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathSparkasse_CSV-CAMT.txt
90 lines (73 loc) · 2.88 KB
/
Sparkasse_CSV-CAMT.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
' ---------------------------------------------------------------------------------
' Importdefinition für Sparkasse CSV-CAMT-Umsatzdateien
' Auslieferung: Version 14.2.0
' Importeinstellungen:
' Quelle : Textdatei (*)
' Trennzeichen für Felder : Semikolon
' Trennzeichen für Datensätze: LF
' Zeichensatz für : IsoLatin1 (Windows)
' Text in Anführungszeichen : Doppelt"
' ---------------------------------------------------------------------------------
' Aktionen nur im ersten Durchlauf ausführen: Variablen deklarieren
if ( NOT HasVariable("zeile") )
dim zeile as number
endif
' Die Umsatzdaten beginnen erst ab Zeile 2, die Zeile davor verwerfen
set zeile to zeile + 1
if ( zeile < 2 )
set Vorlage_Zeile_OK to FALSE
exit
endif
' Abbrechen, wenn nicht mindestens 17 Felder in Importdatei vorhanden sind
if ( NOT HasVariable("Spalte_017") )
beep
msgBox("Fehler beim Lesen der Sparkassen-Sparkasse CSV-CAMT-Exportatei (Ungültiges Datensatzformat)!")
set Vorlage_Import_OK to FALSE
exit
endif
' Nur Zeilen mit echten Buchungsbeträgen importieren
if ( Spalte_015 = "" OR Spalte_015 = "0,00")
set Vorlage_Zeile_OK to FALSE
exit
endif
' ---------------------------------------------------------------------------------
' Importfelder den Datenfeldern zuordnen
' ---------------------------------------------------------------------------------
' Datum (Wertstellungdatum verwenden)
set Vorlage_Datum to TextToDate(Spalte_002)
' Text
if ( Spalte_012 <> "" )
set Vorlage_Text to ReplaceAll(Spalte_012, " ", "")
endif
if ( Spalte_005 <> "" )
set Vorlage_Text to IfThen(Vorlage_Text = "", Spalte_005, Vorlage_Text + ": " + ReplaceAll(Spalte_005," ", ""))
endif
if ( Spalte_004 <> "" )
set Vorlage_Text to IfThen(Vorlage_Text = "", Spalte_004, Vorlage_Text + ": " + ReplaceAll(Spalte_004," ", ""))
endif
' Betrag
set Vorlage_Betrag to FTextToNumber(Spalte_015)
' Referenz
if(Spalte_007 <> "")
set Vorlage_Referenz to "Mandat: " + Spalte_007
elseif (Spalte_008 <> "")
set Vorlage_Referenz to Spalte_008
elseif (Spalte_009 <> "")
set Vorlage_Referenz to "Sammler: " + Spalte_009
elseif (Spalte_010 <> "")
set Vorlage_Referenz to Spalte_009
elseif (Spalte_011 <> "")
set Vorlage_Referenz to "Auslageners.: " + Spalte_011
endif
' Notizen
if (Spalte_006 <> "")
set Vorlage_Notizen to "Gläubiger: " + Spalte_006
endif
' Nummernkreis
set Vorlage_Nummernkreis to "Standard"
' ---------------------------------------------------------------------------------
' Optional: Belegvervollständigung
' ---------------------------------------------------------------------------------
' Debitoren-/Kreditorenkonto bei gefundenem OP zuweisen
set Vorlage_Konto to GetKontoDebitor(Vorlage_Text, Vorlage_Betrag)
set Vorlage_Konto to IfThen(Vorlage_Konto = "", GetKontoKreditor(Vorlage_Text, Vorlage_Betrag), Vorlage_Konto)