Buchungsdateien können sowohl im CSV-Format unter Verwendung einer Einleseschablone als auch im ASCII-Format mit vorgegebenem Format eingelesen werden.

Buchungsdatei im CSV-Format

Zum Einlesen einer Buchungsdatei im CSV Format ist die Angabe einer Einleseschablone notwendig.

Für diverse Standardformate wie Buchungen aus DATEV oder von PAYPAL gibt es bereits vorgefertigte Schablonen mit der Dateiendung .DEF im FIBU Verzeichnis. Ausgelieferte Schablonen werden mit jedem Update wieder mit dem Auslieferungszustand überschrieben und sollten daher vor einer individuellen Änderung auf einen neuen Dateinamen kopiert werden.

Zur Modifikation oder Neuschreibung einer Einleseschablone ist folgende Syntax zu beachten:

Folgende Parameter können definiert werden:

CODE [DOS|ANSI|UTF-8]
LINE [Startzeile]
LIMIT [SEPARATED BY   DELIMITED WITH ]
KONTOLAENGE [<Personenkontenlänge>]
INTEGER [EURO|CENT]
AUTO [=,=]
FIELDS  [UMSATZ=n,VORZ=n]  | [UMSATZ+VORZ=n] | [VORZ+UMSATZ=n] | [SOLL=n, HABEN=n],
        [BU=n, GEGKONTO=n] | [BU+GEGKONTO=n],
        [BELEG1=n],
        [BELEG2=n],
        [DATUM=n],
        [KONTO=n],
        [KOST1=n],
        [KOST2=n],
        [KSTMENGE=n],
        [SKONTO=n],
        [TEXT=n],
        [IDNR=n],
        [USTSATZ=n],
        [EURO=n],
        [WKZ=n],
        [KURS=n],
        [BGESID=n],
        [ZI=n]

CODE definiert, welcher Zeichensatz, DOS, ANSI oder UTF-8 , eingelesen wird. Ohne Angabe eines Zeichensatzes werden die Buchungen im DOS-Zeichensatz eingelesen.

LINE definiert die Startzeile der ersten einzulesenden Buchung. Ohne Angabe einer Startzeile werden die Buchungen ab der ersten Zeile eingelesen.

LIMIT gibt die Felder-Trennzeichen, z.B. Semikolon [SEPARATED BY ;] und die Begrenzungszeichen der Feldinhalte, z.B. Hochkomma [DELIMITED WITH „] an. Ohne Angaben der Trenn-, bzw. Begrenzungszeichen wird das Komma als Felder-Trennzeichen [SEPARATED BY ,] und kein Begrenzungszeichen der Feldinhalte angenommen.
Sollen Tabulatoren als Felder-Trennzeichen erkannt werden, so ist die Angabe SEPARATED BY CHR(9) zu hinterlegen.

KONTOLAENGE gibt die Kontenlänge der Personenkonten der einzulesenden Buchungen an. Zulässig sind die Angaben von 5 bis 9. Die einzulesende Kontenlänge darf jedoch nicht länger als die Personenkonten des aktuellen Mandanten sein. Ist die Personenkontenlänge der einzulesenden Buchungen die gleiche des aktuellen Mandanten, so braucht keine Angabe gemacht zu werden.

INTEGER gibt bei fehlendem Dezimalzeichen an, ob der Ganzzahlbetrag einen Cent- oder einen Eurobetrag darstellt. Möglich sind die Angaben CENT und EURO. Bei fehlender Angabe von INTEGER wird ein Ganzzahlbetrag als Eurobetrag eingelesen. Z.B. wird dann ein Umsatz von 8 als 8 Euro, bei Angabe INTEGER CENT wird 8 als 8 Cent interpretiert.

AUTO gibt eine Voreinstellung eines Feldes für jede einzulesende Buchungszeile vor. Die Zeile
AUTO KOST1=ABCD,KOST2=1000
vergibt z.B. in jeder Buchung als KOST1 die Kostenstelle ABCD und als KOST2 die Kostenstelle 1234.

FIELDS definiert die einzulesenden Felder. n gibt jeweils die Position des Feldes in der Buchungsdatei an. Die Felder Umsatz und Vorzeichen können als eigenständige oder zusammengefasste Felder in unterschiedlicher Reihenfolge gelesen werden. Das Vorzeichen kann in der Form +/- oder S/H angegeben werden. Die Felder BU (Berichtigungs- und Umsatzsteuerschlüssel) und Gegenkonto können ebenso einzeln oder zusammen gelesen werden.

Beispiel einer funktionsfähigen Einleseschablone:

CODE ANSI
LINE 1
LIMIT SEPARATED BY ;
FIELDS VORZ+UMSATZ=1,BU=2,GEGKONTO=3,BELEG1=4,BELEG2=5,DATUM=6,KONTO=7,TEXT=12,WKZ=15
KONTOLAENGE 5
INTEGER EURO

Buchungsdatei im ASCII-Format

Alle Dezimalwerte sind ohne Komma anzugeben; der Umrechnungskurs 13652340 wird beispielsweise als 13,652340 eingelesen.

Aufbau der ersten Zeile:
erste 20 Zeichen: Name des Buchungsvorlaufes

Kennzeichnung des erweiterten Formats:
Stellen 21 bis 25: *****
Stelle  50: Angabe der Sachkontenlänge (zulässige Werte von 4 bis 8)
Update:
Stelle  60: Angabe der Buchungstextlänge (keine Angabe – Text 30 Zeichen – oder 60)

Die Sachkontenlänge kann kleiner als die in der rodat-FIBU eingestellte Sachkontenlänge sein. In diesem Fall werden die eingelesenen Konten um die entsprechende Anzahl von Null-Zeichen aufgefüllt: z.B. übergebenes, vierstelliges Konto „4820“ in FIBU mit 6-stelligen Sachkonten wird automatisch als „4820 00“ eingelesen.

Position  Variable         Länge  zugelassene Werte
-----------------------------------------------------------------------------
1         Umsatz            12    1 bis 999999999999     (2 Nachkommastellen)
13        Vorzeichen        1     - oder +
14        BU                2     , und 0 bis 99
16        Gegenkonto        9     1 bis 999999999
25        Beleg1            12    alphanumerisch         (siehe unten)
37        Beleg1            12    alphanumerisch         (siehe unten)
49        Datum             4     1 bis 3112
53        Konto             9     1 bis 999999999
62        Kost1             8     alphanumerisch
70        Kost2             8     alphanumerisch
78        Skonto            10    1 bis 9999999999       (2 Nachkommastellen)
88        Text              30    alphanumerisch
118       IdNr              15    alphanumerisch
133       UStSatz           4     0 bis 9999             (2 Nachkommastellen)
137       Währungskennung   3     Zeichenfolge           (3 stellig)
140       Kostmenge         11    0 bis 99999999999      (2 Nachkommastellen)
151       Kurs              10    0 bis 999999999        (6 Nachkommastellen)
161       Zusatzinfo 13b    2     1 bis 16

Update:
bei Angabe der Länge des Buchungstextes (60) ab Spalte Text:

88        Text              60    alphanumerisch
148       IdNr              15    alphanumerisch
163       UStSatz           4     0 bis 9999             (2 Nachkommastellen)
167       Währungskennung   3     Zeichenfolge           (3 stellig)
170       Kostmenge         11    0 bis 99999999999      (2 Nachkommastellen)
181       Kurs              10    0 bis 999999999        (6 nachkommastellen)
191       Zusatzinfo 13b    2     1 bis 16