datev 0.7.0 → 0.10.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f8efa17940a9d716513b57a2e8173160faaff291782f714452dd28d586990aaf
4
- data.tar.gz: c75137f4461cad817b274db87b60f87e7353e7c4efe387ee7ababee760d0a05c
3
+ metadata.gz: fc3a25371802a71e53f9135817cd7d9e9ddf9454aaf63d6876d147f68701493c
4
+ data.tar.gz: dbd3d58ac876368057e8dfda3622a4579cb6f18885a7c316db40675aa9cdc7fe
5
5
  SHA512:
6
- metadata.gz: d85696dfa5c13eb1d785223b557ce176137f03494822004ca47c67637a6e00bfd6f45a54d0480e8353657269b5c27a3c0e6a2c677a35deba1a38484acb8b0d22
7
- data.tar.gz: d0925db39ac7b51f82e011160e24036df2db477acbe0fe25a1381390b345e377c488424d0509a1c3559672b7bc614b87fed8835bd07e1fc10ce6ced36557bb3d
6
+ metadata.gz: 11187f4a7cee8f70aa2fa41e40fd55f45118fbacb405e18c164fd0a5a6e2e102e6302a550ec8c81136de38fedb5e64809d1ae45b4df9672024d3960027e7cd05
7
+ data.tar.gz: 68c153e37818fc3f6dbb6fb6770a569eb82eec029ce3bb69f7c7d89dceae606b294a8a3d0c5927b6f33f6d47d5bfbc26c0bd21019ea2bac432b897b3f0a71a6b
@@ -0,0 +1,29 @@
1
+ name: CI
2
+
3
+ on: [push, pull_request]
4
+
5
+ jobs:
6
+ test:
7
+ strategy:
8
+ fail-fast: false
9
+ matrix:
10
+ ruby: [2.5, 2.6, 2.7]
11
+
12
+ runs-on: ubuntu-latest
13
+ name: Test against Ruby ${{ matrix.ruby }}
14
+
15
+ steps:
16
+ - uses: actions/checkout@v2
17
+
18
+ - name: Set up Ruby
19
+ uses: ruby/setup-ruby@v1
20
+ with:
21
+ ruby-version: ${{ matrix.ruby }}
22
+
23
+ - name: Install gems
24
+ run: |
25
+ gem install bundler
26
+ bundle install --jobs 4 --retry 3
27
+
28
+ - name: Run tests
29
+ run: bundle exec rspec
@@ -0,0 +1,3 @@
1
+ # Changelog
2
+
3
+ Please see the [GitHub "Releases" page](https://github.com/ledermann/datev/releases).
@@ -35,7 +35,7 @@ This code of conduct applies both within project spaces and in public spaces
35
35
  when an individual is representing the project or its community.
36
36
 
37
37
  Instances of abusive, harassing, or otherwise unacceptable behavior may be
38
- reported by contacting a project maintainer at mail@georg-ledermann.de. All
38
+ reported by contacting a project maintainer at georg@ledermann.dev. All
39
39
  complaints will be reviewed and investigated and will result in a response that
40
40
  is deemed necessary and appropriate to the circumstances. Maintainers are
41
41
  obligated to maintain confidentiality with regard to the reporter of an
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2016-2018 Georg Ledermann
3
+ Copyright (c) 2016-2020 Georg Ledermann
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
data/README.md CHANGED
@@ -2,9 +2,9 @@
2
2
 
3
3
  Ruby gem to export bookings and more to DATEV format as CSV file
4
4
 
5
- Supported DATEV Version: 5.1
5
+ Supported DATEV format: v7.0
6
6
 
7
- [![Build Status](https://travis-ci.org/ledermann/datev.svg?branch=master)](https://travis-ci.org/ledermann/datev)
7
+ [![Build Status](https://github.com/ledermann/datev/workflows/CI/badge.svg)](https://github.com/ledermann/datev/actions)
8
8
  [![Code Climate](https://codeclimate.com/github/ledermann/datev/badges/gpa.svg)](https://codeclimate.com/github/ledermann/datev)
9
9
  [![Coverage Status](https://coveralls.io/repos/github/ledermann/datev/badge.svg?branch=master)](https://coveralls.io/github/ledermann/datev?branch=master)
10
10
 
@@ -34,14 +34,14 @@ export = Datev::BookingExport.new(
34
34
  'Exportiert von' => 'Chief Accounting Officer',
35
35
  'Berater' => 1001,
36
36
  'Mandant' => 456,
37
- 'WJ-Beginn' => Date.new(2016,1,1),
38
- 'Datum vom' => Date.new(2016,6,1),
39
- 'Datum bis' => Date.new(2016,6,30),
37
+ 'WJ-Beginn' => Date.new(2018,1,1),
38
+ 'Datum vom' => Date.new(2018,2,1),
39
+ 'Datum bis' => Date.new(2018,2,28),
40
40
  'Bezeichnung' => 'Beispiel-Buchungen'
41
41
  ) # For available hash keys see /lib/datev/base/header.rb
42
42
 
43
43
  export << {
44
- 'Belegdatum' => Date.new(2016,6,21),
44
+ 'Belegdatum' => Date.new(2018,2,21),
45
45
  'Buchungstext' => 'Fachbuch: Controlling für Dummies',
46
46
  'Umsatz (ohne Soll/Haben-Kz)' => 24.95,
47
47
  'Soll/Haben-Kennzeichen' => 'H',
@@ -51,13 +51,13 @@ export << {
51
51
  } # For available hash keys see /lib/datev/base/booking.rb
52
52
 
53
53
  export << {
54
- 'Belegdatum' => Date.new(2016,6,22),
54
+ 'Belegdatum' => Date.new(2018,2,22),
55
55
  'Buchungstext' => 'Honorar FiBu-Seminar',
56
56
  'Umsatz (ohne Soll/Haben-Kz)' => 5950.00,
57
57
  'Soll/Haben-Kennzeichen' => 'S',
58
58
  'Konto' => 10000,
59
59
  'Gegenkonto (ohne BU-Schlüssel)' => 8400,
60
- 'Belegfeld 1' => 'RE201606-135'
60
+ 'Belegfeld 1' => 'RE201802-135'
61
61
  }
62
62
 
63
63
  export.to_file('EXTF_Buchungsstapel.csv')
@@ -7,7 +7,7 @@ Gem::Specification.new do |spec|
7
7
  spec.name = "datev"
8
8
  spec.version = Datev::VERSION
9
9
  spec.authors = ["Georg Ledermann"]
10
- spec.email = ["mail@georg-ledermann.de"]
10
+ spec.email = ["georg@ledermann.dev"]
11
11
 
12
12
  spec.summary = %q{Export booking data in DATEV format}
13
13
  spec.description = %q{Provides an easy way to create CSV files which can be imported into accounting applications}
@@ -18,7 +18,7 @@ Gem::Specification.new do |spec|
18
18
  spec.bindir = "exe"
19
19
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
20
20
  spec.require_paths = ["lib"]
21
- spec.required_ruby_version = '>= 2.2.0'
21
+ spec.required_ruby_version = '>= 2.3'
22
22
 
23
23
  spec.add_development_dependency "bundler"
24
24
  spec.add_development_dependency "rake"
@@ -1,4 +1,4 @@
1
- "EXTF";510;21;"Buchungsstapel";7;20160623152500000;;"XY";"Chief Accounting Officer";"";1001;456;20160101;4;20160601;20160630;"Beispiel-Buchungen";"";1;;0;"EUR";"";"";"";"";"";;;"";""
2
- Umsatz (ohne Soll/Haben-Kz);Soll/Haben-Kennzeichen;WKZ Umsatz;Kurs;Basisumsatz;WKZ Basisumsatz;Konto;Gegenkonto (ohne BU-Schl�ssel);BU-Schl�ssel;Belegdatum;Belegfeld 1;Belegfeld 2;Skonto;Buchungstext;Postensperre;Diverse Adressnummer;Gesch�ftspartnerbank;Sachverhalt;Zinssperre;Beleglink;Beleginfo � Art 1;Beleginfo � Inhalt 1;Beleginfo � Art 2;Beleginfo � Inhalt 2;Beleginfo � Art 3;Beleginfo � Inhalt 3;Beleginfo � Art 4;Beleginfo � Inhalt 4;Beleginfo � Art 5;Beleginfo � Inhalt 5;Beleginfo � Art 6;Beleginfo � Inhalt 6;Beleginfo � Art 7;Beleginfo � Inhalt 7;Beleginfo � Art 8;Beleginfo � Inhalt 8;KOST1 � Kostenstelle;KOST2 � Kostenstelle;Kost Menge;EU-Land u. USt-IdNr.;EU-Steuersatz;Abw. Versteuerungsart;Sachverhalt L+L;Funktionserg�nzung L+L;BU 49 Hauptfunktionstyp;BU 49 Hauptfunktionsnummer;BU 49 Funktionserg�nzung;Zusatzinformation � Art 1;Zusatzinformation � Inhalt 1;Zusatzinformation � Art 2;Zusatzinformation � Inhalt 2;Zusatzinformation � Art 3;Zusatzinformation � Inhalt 3;Zusatzinformation � Art 4;Zusatzinformation � Inhalt 4;Zusatzinformation � Art 5;Zusatzinformation � Inhalt 5;Zusatzinformation � Art 6;Zusatzinformation � Inhalt 6;Zusatzinformation � Art 7;Zusatzinformation � Inhalt 7;Zusatzinformation � Art 8;Zusatzinformation � Inhalt 8;Zusatzinformation � Art 9;Zusatzinformation � Inhalt 9;Zusatzinformation � Art 10;Zusatzinformation � Inhalt 10;Zusatzinformation � Art 11;Zusatzinformation � Inhalt 11;Zusatzinformation � Art 12;Zusatzinformation � Inhalt 12;Zusatzinformation � Art 13;Zusatzinformation � Inhalt 13;Zusatzinformation � Art 14;Zusatzinformation � Inhalt 14;Zusatzinformation � Art 15;Zusatzinformation � Inhalt 15;Zusatzinformation � Art 16;Zusatzinformation � Inhalt 16;Zusatzinformation � Art 17;Zusatzinformation � Inhalt 17;Zusatzinformation � Art 18;Zusatzinformation � Inhalt 18;Zusatzinformation � Art 19;Zusatzinformation � Inhalt 19;Zusatzinformation � Art 20;Zusatzinformation � Inhalt 20;St�ck;Gewicht;Zahlweise;Forderungsart;Veranlagungsjahr;Zugeordnete F�lligkeit;Skontotyp;Auftragsnummer;Buchungstyp;USt-Schl�ssel (Anzahlungen);EU-Mitgliedstaat (Anzahlungen);Sachverhalt L+L (Anzahlungen);EU-Steuersatz (Anzahlungen);Erl�skonto (Anzahlungen);Herkunft-Kz;Leerfeld;KOST-Datum;SEPA-Mandatsreferenz;Skontosperre;Gesellschaftername;Beteiligtennummer;Identifikationsnummer;Zeichnernummer;Postensperre bis;Bezeichnung;Kennzeichen;Festschreibung;Leistungsdatum;Datum Zuord.
3
- 24,95;"H";"";;;"";1200;4940;"8";2106;"";"";;"Fachbuch: Controlling f�r Dummies";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"";"";;"";;"";;"";"";;"";;;;
4
- 5950,00;"S";"";;;"";10000;8400;"";2206;"RE201606-135";"";;"Honorar FiBu-Seminar";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"";"";;"";;"";;"";"";;"";;;;
1
+ "EXTF";700;21;"Buchungsstapel";9;20180306102500000;;"XY";"Chief Accounting Officer";"";1001;456;20180101;4;20180201;20180228;"Beispiel-Buchungen";"";1;;0;"EUR";"";"";"";"";"";;;"";""
2
+ Umsatz (ohne Soll/Haben-Kz);Soll/Haben-Kennzeichen;WKZ Umsatz;Kurs;Basisumsatz;WKZ Basisumsatz;Konto;Gegenkonto (ohne BU-Schl�ssel);BU-Schl�ssel;Belegdatum;Belegfeld 1;Belegfeld 2;Skonto;Buchungstext;Postensperre;Diverse Adressnummer;Gesch�ftspartnerbank;Sachverhalt;Zinssperre;Beleglink;Beleginfo � Art 1;Beleginfo � Inhalt 1;Beleginfo � Art 2;Beleginfo � Inhalt 2;Beleginfo � Art 3;Beleginfo � Inhalt 3;Beleginfo � Art 4;Beleginfo � Inhalt 4;Beleginfo � Art 5;Beleginfo � Inhalt 5;Beleginfo � Art 6;Beleginfo � Inhalt 6;Beleginfo � Art 7;Beleginfo � Inhalt 7;Beleginfo � Art 8;Beleginfo � Inhalt 8;KOST1 � Kostenstelle;KOST2 � Kostenstelle;Kost Menge;EU-Land u. USt-IdNr.;EU-Steuersatz;Abw. Versteuerungsart;Sachverhalt L+L;Funktionserg�nzung L+L;BU 49 Hauptfunktionstyp;BU 49 Hauptfunktionsnummer;BU 49 Funktionserg�nzung;Zusatzinformation � Art 1;Zusatzinformation � Inhalt 1;Zusatzinformation � Art 2;Zusatzinformation � Inhalt 2;Zusatzinformation � Art 3;Zusatzinformation � Inhalt 3;Zusatzinformation � Art 4;Zusatzinformation � Inhalt 4;Zusatzinformation � Art 5;Zusatzinformation � Inhalt 5;Zusatzinformation � Art 6;Zusatzinformation � Inhalt 6;Zusatzinformation � Art 7;Zusatzinformation � Inhalt 7;Zusatzinformation � Art 8;Zusatzinformation � Inhalt 8;Zusatzinformation � Art 9;Zusatzinformation � Inhalt 9;Zusatzinformation � Art 10;Zusatzinformation � Inhalt 10;Zusatzinformation � Art 11;Zusatzinformation � Inhalt 11;Zusatzinformation � Art 12;Zusatzinformation � Inhalt 12;Zusatzinformation � Art 13;Zusatzinformation � Inhalt 13;Zusatzinformation � Art 14;Zusatzinformation � Inhalt 14;Zusatzinformation � Art 15;Zusatzinformation � Inhalt 15;Zusatzinformation � Art 16;Zusatzinformation � Inhalt 16;Zusatzinformation � Art 17;Zusatzinformation � Inhalt 17;Zusatzinformation � Art 18;Zusatzinformation � Inhalt 18;Zusatzinformation � Art 19;Zusatzinformation � Inhalt 19;Zusatzinformation � Art 20;Zusatzinformation � Inhalt 20;St�ck;Gewicht;Zahlweise;Forderungsart;Veranlagungsjahr;Zugeordnete F�lligkeit;Skontotyp;Auftragsnummer;Buchungstyp;USt-Schl�ssel (Anzahlungen);EU-Mitgliedstaat (Anzahlungen);Sachverhalt L+L (Anzahlungen);EU-Steuersatz (Anzahlungen);Erl�skonto (Anzahlungen);Herkunft-Kz;Leerfeld;KOST-Datum;SEPA-Mandatsreferenz;Skontosperre;Gesellschaftername;Beteiligtennummer;Identifikationsnummer;Zeichnernummer;Postensperre bis;Bezeichnung;Kennzeichen;Festschreibung;Leistungsdatum;Datum Zuord.;F�lligkeit;Generalumkehr;Steuersatz;Land
3
+ 24,95;"H";"";;;"";1200;4940;"8";2102;"";"";;"Fachbuch: Controlling f�r Dummies";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"";"";;"";;"";;"";"";;"";;;;;;"";;""
4
+ 5950,00;"S";"";;;"";10000;8400;"";2202;"RE201802-135";"";;"Honorar FiBu-Seminar";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"";"";;"";;"";;"";"";;"";;;;;;"";;""
@@ -1,4 +1,4 @@
1
- "EXTF";510;20;"Kontenbeschriftungen";2;20160623152500000;;"XY";"Chief Accounting Officer";"";1001;456;20160101;4;;;"Beispiel-Konten";"";;;;"";"";"";"";"";"";;;"";""
1
+ "EXTF";700;20;"Kontenbeschriftungen";2;20180223152500000;;"XY";"Chief Accounting Officer";"";1001;456;20180101;4;;;"Beispiel-Konten";"";;;;"";"";"";"";"";"";;;"";""
2
2
  Konto;Kontenbeschriftung;Sprach-ID
3
3
  400;"Betriebsausstattung";"de-DE"
4
4
  1000;"Kasse";"de-DE"
@@ -1,6 +1,6 @@
1
- "EXTF";510;16;"Debitoren/Kreditoren";4;20160623152500000;;"XY";"Chief Accounting Officer";"";1001;456;20160101;4;;;"Kunden und Lieferanten";"";;;;"";"";"";"";"";"";;;"";""
2
- Konto;Name (Adressatentyp Unternehmen);Unternehmensgegenstand;Name (Adressatentyp nat�rl. Person);Vorname (Adressatentyp nat�rl. Person);Name (Adressatentyp keine Angabe);Adressatentyp;Kurzbezeichnung;EU-Land;EU-USt-IdNr.;Anrede;Titel/Akad. Grad;Adelstitel;Namensvorsatz;Adressart;Stra�e;Postfach;Postleitzahl;Ort;Land;Versandzusatz;Adresszusatz;Abweichende Anrede;Abw. Zustellbezeichnung 1;Abw. Zustellbezeichnung 2;Kennz. Korrespondenzadresse;Adresse G�ltig von;Adresse G�ltig bis;Telefon;Bemerkung (Telefon);Telefon Gesch�ftsleitung;Bemerkung (Telefon GL);E-Mail;Bemerkung (E-Mail);Internet;Bemerkung (Internet);Fax;Bemerkung (Fax);Sonstige;Bemerkung (Sonstige);Bankleitzahl 1;Bankbezeichnung 1;Bankkonto-Nummer 1;L�nderkennzeichen 1;IBAN 1;Leerfeld 1;SWIFT-Code 1;Abw. Kontoinhaber 1;Kennz. Haupt-Bankverb. 1;Bankverb. 1 G�ltig von;Bankverb. 1 G�ltig bis;Bankleitzahl 2;Bankbezeichnung 2;Bankkonto-Nummer 2;L�nderkennzeichen 2;IBAN 2;Leerfeld 2;SWIFT-Code 2;Abw. Kontoinhaber 2;Kennz. Haupt-Bankverb. 2;Bankverb. 2 G�ltig von;Bankverb. 2 G�ltig bis;Bankleitzahl 3;Bankbezeichnung 3;Bankkonto-Nummer 3;L�nderkennzeichen 3;IBAN 3;Leerfeld 3;SWIFT-Code 3;Abw. Kontoinhaber 3;Kennz. Haupt-Bankverb. 3;Bankverb. 3 G�ltig von;Bankverb. 3 G�ltig bis;Bankleitzahl 4;Bankbezeichnung 4;Bankkonto-Nummer 4;L�nderkennzeichen 4;IBAN 4;Leerfeld 4;SWIFT-Code 4;Abw. Kontoinhaber 4;Kennz. Haupt-Bankverb. 4;Bankverb. 4 G�ltig von;Bankverb. 4 G�ltig bis;Bankleitzahl 5;Bankbezeichnung 5;Bankkonto-Nummer 5;L�nderkennzeichen 5;IBAN 5;Leerfeld 5;SWIFT-Code 5;Abw. Kontoinhaber 5;Kennz. Haupt-Bankverb. 5;Bankverb. 5 G�ltig von;Bankverb. 5 G�ltig bis;Leerfeld 11;Briefanrede;Gru�formel;Kundennummer;Steuernummer;Sprache;Ansprechpartner;Vertreter;Sachbearbeiter;Diverse-Konto;Ausgabeziel;W�hrungssteuerung;Kreditlimit (Debitor);Zahlungsbedingung;F�lligkeit in Tagen (Debitor);Skonto in Prozent (Debitor);Kreditoren-Ziel 1 (Tage);Kreditoren-Skonto 1 (%);Kreditoren-Ziel 2 (Tage);Kreditoren-Skonto 2 (%);Kreditoren-Ziel 3 Brutto (Tage);Kreditoren-Ziel 4 (Tage);Kreditoren-Skonto 4 (%);Kreditoren-Ziel 5 (Tage);Kreditoren-Skonto 5 (%);Mahnung;Kontoauszug;Mahntext;Mahntext 2;Mahntext 3;Kontoauszugstext;Mahnlimit Betrag;Mahnlimit %;Zinsberechnung;Mahnzinssatz 1;Mahnzinssatz 2;Mahnzinssatz 3;Lastschrift;Verfahren;Mandantenbank;Zahlungstr�ger;Indiv. Feld 1;Indiv. Feld 2;Indiv. Feld 3;Indiv. Feld 4;Indiv. Feld 5;Indiv. Feld 6;Indiv. Feld 7;Indiv. Feld 8;Indiv. Feld 9;Indiv. Feld 10;Indiv. Feld 11;Indiv. Feld 12;Indiv. Feld 13;Indiv. Feld 14;Indiv. Feld 15;Abweichende Anrede (Rechnungsadresse);Adressart (Rechnungsadresse);Stra�e (Rechnungsadresse);Postfach (Rechnungsadresse);Postleitzahl (Rechnungsadresse);Ort (Rechnungsadresse);Land (Rechnungsadresse);Versandzusatz (Rechnungsadresse);Adresszusatz (Rechnungsadresse);Abw. Zustellbezeichnung 1 (Rechnungsadresse);Abw. Zustellbezeichnung 2 (Rechnungsadresse);Adresse G�ltig von (Rechnungsadresse);Adresse G�ltig bis (Rechnungsadresse);Bankleitzahl 6;Bankbezeichnung 6;Bankkonto-Nummer 6;L�nderkennzeichen 6;IBAN 6;Leerfeld 6;SWIFT-Code 6;Abw. Kontoinhaber 6;Kennz. Haupt-Bankverb. 6;Bankverb. 6 G�ltig von;Bankverb. 6 G�ltig bis;Bankleitzahl 7;Bankbezeichnung 7;Bankkonto-Nummer 7;L�nderkennzeichen 7;IBAN 7;Leerfeld 7;SWIFT-Code 7;Abw. Kontoinhaber 7;Kennz. Haupt-Bankverb. 7;Bankverb. 7 G�ltig von;Bankverb. 7 G�ltig bis;Bankleitzahl 8;Bankbezeichnung 8;Bankkonto-Nummer 8;L�nderkennzeichen 8;IBAN 8;Leerfeld 8;SWIFT-Code 8;Abw. Kontoinhaber 8;Kennz. Haupt-Bankverb. 8;Bankverb. 8 G�ltig von;Bankverb. 8 G�ltig bis;Bankleitzahl 9;Bankbezeichnung 9;Bankkonto-Nummer 9;L�nderkennzeichen 9;IBAN 9;Leerfeld 9;SWIFT-Code 9;Abw. Kontoinhaber 9;Kennz. Haupt-Bankverb. 9;Bankverb. 9 G�ltig von;Bankverb. 9 G�ltig bis;Bankleitzahl 10;Bankbezeichnung 10;Bankkonto-Nummer 10;L�nderkennzeichen 10;IBAN 10;Leerfeld 10;SWIFT-Code 10;Abw. Kontoinhaber 10;Kennz. Haupt-Bankverb. 10;Bankverb. 10 G�ltig von;Bankverb. 10 G�ltig bis;Nummer Fremdsystem;Insolvent;SEPA-Mandatsreferenz 1;SEPA-Mandatsreferenz 2;SEPA-Mandatsreferenz 3;SEPA-Mandatsreferenz 4;SEPA-Mandatsreferenz 5;SEPA-Mandatsreferenz 6;SEPA-Mandatsreferenz 7;SEPA-Mandatsreferenz 8;SEPA-Mandatsreferenz 9;SEPA-Mandatsreferenz 10;Verkn�pftes OPOS-Konto;Mahnsperre bis;Lastschriftsperre bis;Zahlungssperre bis;Geb�hrenberechnung;Mahngeb�hr 1;Mahngeb�hr 2;Mahngeb�hr 3;Pauschalberechnung;Verzugspauschale 1;Verzugspauschale 2;Verzugspauschale 3
3
- 10000;"";"";"Mustermann";"Sabine";"";"1";"";"";"";"Frau";"Dr.";"";"";"STR";"Am Haagelspf�dchen 14";"";"50999";"K�ln";"DE";"";"";"";"";"";;;;"0221/1234567";"";"";"";"sabine@mustermann.de";"";"www.mustermann.de";"";"0221/1234568";"";"";"";"";"";"";"";"DE12500105170648489890";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;;"Sehr geehrte Frau Dr. Mustermann";"";"";"";1;"";"";"";;;;;;;;;;;;;;;;;;;;;;;;;;;;;"";"";;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";;"";"";"";"";"";"";"";"";"";"";;;;;;;;;;;;
4
- 70001;"Meyer GmbH";"";"";"";"";"2";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;;"";"";"";"";;"";"";"";;;;;;;;;;;;;;;;;;;;;;;;;;;;;"";"";;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";;"";"";"";"";"";"";"";"";"";"";;;;;;;;;;;;
5
- 70002;"Schulze GmbH";"";"";"";"";"2";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;;"";"";"";"";;"";"";"";;;;;;;;;;;;;;;;;;;;;;;;;;;;;"";"";;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";;"";"";"";"";"";"";"";"";"";"";;;;;;;;;;;;
6
- 70003;"Scary Kitten AG";"";"";"";"";"2";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;;"";"";"";"";;"";"";"";;;;;;;;;;;;;;;;;;;;;;;;;;;;;"";"";;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";;"";"";"";"";"";"";"";"";"";"";;;;;;;;;;;;
1
+ "EXTF";700;16;"Debitoren/Kreditoren";5;20180306102500000;;"XY";"Chief Accounting Officer";"";1001;456;20180101;4;;;"Kunden und Lieferanten";"";;;;"";"";"";"";"";"";;;"";""
2
+ Konto;Name (Adressatentyp Unternehmen);Unternehmensgegenstand;Name (Adressatentyp nat�rl. Person);Vorname (Adressatentyp nat�rl. Person);Name (Adressatentyp keine Angabe);Adressatentyp;Kurzbezeichnung;EU-Land;EU-USt-IdNr.;Anrede;Titel/Akad. Grad;Adelstitel;Namensvorsatz;Adressart;Stra�e;Postfach;Postleitzahl;Ort;Land;Versandzusatz;Adresszusatz;Abweichende Anrede;Abw. Zustellbezeichnung 1;Abw. Zustellbezeichnung 2;Kennz. Korrespondenzadresse;Adresse G�ltig von;Adresse G�ltig bis;Telefon;Bemerkung (Telefon);Telefon Gesch�ftsleitung;Bemerkung (Telefon GL);E-Mail;Bemerkung (E-Mail);Internet;Bemerkung (Internet);Fax;Bemerkung (Fax);Sonstige;Bemerkung (Sonstige);Bankleitzahl 1;Bankbezeichnung 1;Bankkonto-Nummer 1;L�nderkennzeichen 1;IBAN 1;Leerfeld 1;SWIFT-Code 1;Abw. Kontoinhaber 1;Kennz. Haupt-Bankverb. 1;Bankverb. 1 G�ltig von;Bankverb. 1 G�ltig bis;Bankleitzahl 2;Bankbezeichnung 2;Bankkonto-Nummer 2;L�nderkennzeichen 2;IBAN 2;Leerfeld 2;SWIFT-Code 2;Abw. Kontoinhaber 2;Kennz. Haupt-Bankverb. 2;Bankverb. 2 G�ltig von;Bankverb. 2 G�ltig bis;Bankleitzahl 3;Bankbezeichnung 3;Bankkonto-Nummer 3;L�nderkennzeichen 3;IBAN 3;Leerfeld 3;SWIFT-Code 3;Abw. Kontoinhaber 3;Kennz. Haupt-Bankverb. 3;Bankverb. 3 G�ltig von;Bankverb. 3 G�ltig bis;Bankleitzahl 4;Bankbezeichnung 4;Bankkonto-Nummer 4;L�nderkennzeichen 4;IBAN 4;Leerfeld 4;SWIFT-Code 4;Abw. Kontoinhaber 4;Kennz. Haupt-Bankverb. 4;Bankverb. 4 G�ltig von;Bankverb. 4 G�ltig bis;Bankleitzahl 5;Bankbezeichnung 5;Bankkonto-Nummer 5;L�nderkennzeichen 5;IBAN 5;Leerfeld 5;SWIFT-Code 5;Abw. Kontoinhaber 5;Kennz. Haupt-Bankverb. 5;Bankverb. 5 G�ltig von;Bankverb. 5 G�ltig bis;Leerfeld 11;Briefanrede;Gru�formel;Kundennummer;Steuernummer;Sprache;Ansprechpartner;Vertreter;Sachbearbeiter;Diverse-Konto;Ausgabeziel;W�hrungssteuerung;Kreditlimit (Debitor);Zahlungsbedingung;F�lligkeit in Tagen (Debitor);Skonto in Prozent (Debitor);Kreditoren-Ziel 1 (Tage);Kreditoren-Skonto 1 (%);Kreditoren-Ziel 2 (Tage);Kreditoren-Skonto 2 (%);Kreditoren-Ziel 3 Brutto (Tage);Kreditoren-Ziel 4 (Tage);Kreditoren-Skonto 4 (%);Kreditoren-Ziel 5 (Tage);Kreditoren-Skonto 5 (%);Mahnung;Kontoauszug;Mahntext;Mahntext 2;Mahntext 3;Kontoauszugstext;Mahnlimit Betrag;Mahnlimit %;Zinsberechnung;Mahnzinssatz 1;Mahnzinssatz 2;Mahnzinssatz 3;Lastschrift;Verfahren;Mandantenbank;Zahlungstr�ger;Indiv. Feld 1;Indiv. Feld 2;Indiv. Feld 3;Indiv. Feld 4;Indiv. Feld 5;Indiv. Feld 6;Indiv. Feld 7;Indiv. Feld 8;Indiv. Feld 9;Indiv. Feld 10;Indiv. Feld 11;Indiv. Feld 12;Indiv. Feld 13;Indiv. Feld 14;Indiv. Feld 15;Abweichende Anrede (Rechnungsadresse);Adressart (Rechnungsadresse);Stra�e (Rechnungsadresse);Postfach (Rechnungsadresse);Postleitzahl (Rechnungsadresse);Ort (Rechnungsadresse);Land (Rechnungsadresse);Versandzusatz (Rechnungsadresse);Adresszusatz (Rechnungsadresse);Abw. Zustellbezeichnung 1 (Rechnungsadresse);Abw. Zustellbezeichnung 2 (Rechnungsadresse);Adresse G�ltig von (Rechnungsadresse);Adresse G�ltig bis (Rechnungsadresse);Bankleitzahl 6;Bankbezeichnung 6;Bankkonto-Nummer 6;L�nderkennzeichen 6;IBAN 6;Leerfeld 6;SWIFT-Code 6;Abw. Kontoinhaber 6;Kennz. Haupt-Bankverb. 6;Bankverb. 6 G�ltig von;Bankverb. 6 G�ltig bis;Bankleitzahl 7;Bankbezeichnung 7;Bankkonto-Nummer 7;L�nderkennzeichen 7;IBAN 7;Leerfeld 7;SWIFT-Code 7;Abw. Kontoinhaber 7;Kennz. Haupt-Bankverb. 7;Bankverb. 7 G�ltig von;Bankverb. 7 G�ltig bis;Bankleitzahl 8;Bankbezeichnung 8;Bankkonto-Nummer 8;L�nderkennzeichen 8;IBAN 8;Leerfeld 8;SWIFT-Code 8;Abw. Kontoinhaber 8;Kennz. Haupt-Bankverb. 8;Bankverb. 8 G�ltig von;Bankverb. 8 G�ltig bis;Bankleitzahl 9;Bankbezeichnung 9;Bankkonto-Nummer 9;L�nderkennzeichen 9;IBAN 9;Leerfeld 9;SWIFT-Code 9;Abw. Kontoinhaber 9;Kennz. Haupt-Bankverb. 9;Bankverb. 9 G�ltig von;Bankverb. 9 G�ltig bis;Bankleitzahl 10;Bankbezeichnung 10;Bankkonto-Nummer 10;L�nderkennzeichen 10;IBAN 10;Leerfeld 10;SWIFT-Code 10;Abw. Kontoinhaber 10;Kennz. Haupt-Bankverb. 10;Bankverb. 10 G�ltig von;Bankverb. 10 G�ltig bis;Nummer Fremdsystem;Insolvent;SEPA-Mandatsreferenz 1;SEPA-Mandatsreferenz 2;SEPA-Mandatsreferenz 3;SEPA-Mandatsreferenz 4;SEPA-Mandatsreferenz 5;SEPA-Mandatsreferenz 6;SEPA-Mandatsreferenz 7;SEPA-Mandatsreferenz 8;SEPA-Mandatsreferenz 9;SEPA-Mandatsreferenz 10;Verkn�pftes OPOS-Konto;Mahnsperre bis;Lastschriftsperre bis;Zahlungssperre bis;Geb�hrenberechnung;Mahngeb�hr 1;Mahngeb�hr 2;Mahngeb�hr 3;Pauschalberechnung;Verzugspauschale 1;Verzugspauschale 2;Verzugspauschale 3;Alternativer Suchname;Status;Anschrift manuell ge�ndert (Korrespondenzadresse);Anschrift individuell (Korrespondenzadresse);Anschrift manuell ge�ndert (Rechnungsadresse);Anschrift individuell (Rechnungsadresse);Fristberechnung bei Debitor;Mahnfrist 1;Mahnfrist 2;Mahnfrist 3;Letzte Frist
3
+ 10000;"";"";"Mustermann";"Sabine";"";"1";"";"";"";"Frau";"Dr.";"";"";"STR";"Am Haagelspf�dchen 14";"";"50999";"K�ln";"DE";"";"";"";"";"";;;;"0221/1234567";"";"";"";"sabine@mustermann.de";"";"www.mustermann.de";"";"0221/1234568";"";"";"";"";"";"";"";"DE12500105170648489890";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;;"Sehr geehrte Frau Dr. Mustermann";"";"";"";1;"";"";"";;;;;;;;;;;;;;;;;;;;;;;;;;;;;"";"";;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";;"";"";"";"";"";"";"";"";"";"";;;;;;;;;;;;;"";;;"";;"";;;;;
4
+ 70001;"Meyer GmbH";"";"";"";"";"2";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;;"";"";"";"";;"";"";"";;;;;;;;;;;;;;;;;;;;;;;;;;;;;"";"";;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";;"";"";"";"";"";"";"";"";"";"";;;;;;;;;;;;;"";;;"";;"";;;;;
5
+ 70002;"Schulze GmbH";"";"";"";"";"2";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;;"";"";"";"";;"";"";"";;;;;;;;;;;;;;;;;;;;;;;;;;;;;"";"";;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";;"";"";"";"";"";"";"";"";"";"";;;;;;;;;;;;;"";;;"";;"";;;;;
6
+ 70003;"Scary Kitten AG";"";"";"";"";"2";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;;"";"";"";"";;"";"";"";;;;;;;;;;;;;;;;;;;;;;;;;;;;;"";"";;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";"";"";"";"";"";"";"";;;;"";;"";"";"";"";"";"";"";"";"";"";;;;;;;;;;;;;"";;;"";;"";;;;;
@@ -59,7 +59,7 @@ module Datev
59
59
  end
60
60
 
61
61
  # 9
62
- field 'BU-Schlüssel', :string, limit: 2
62
+ field 'BU-Schlüssel', :string, limit: 4
63
63
  # Steuerschlüssel und/oder Berichtigungsschlüssel
64
64
 
65
65
  # 10
@@ -67,13 +67,13 @@ module Datev
67
67
  # Achtung: Auch bei individueller Feldformatierung mit vierstelliger Jahreszahl wird immer in das aktuelle Wirtschaftsjahr importiert, wenn Tag und Monat des Datums im bebuchbaren Zeitraum liegen, da die Jahreszahl nicht berücksichtigt wird.
68
68
 
69
69
  # 11
70
- field 'Belegfeld 1', :string, limit: 12
70
+ field 'Belegfeld 1', :string, limit: 36, regex: %r{\A[a-zA-Z0-9\$\&\%\*\+\-\/]*\z}
71
71
  # Rechnungs-/Belegnummer
72
72
  # Das Belegfeld 1 ist der "Schlüssel" für die Verwaltung von Offenen Posten.
73
73
  # Bei einer Zahlung oder Gutschrift erfolgt nur dann ein OP-Ausgleich, wenn die Belegnummer mit dem Belegfeld 1 identisch ist.
74
74
 
75
75
  # 12
76
- field 'Belegfeld 2', :string, limit: 12
76
+ field 'Belegfeld 2', :string, limit: 12, regex: %r{\A[a-zA-Z0-9\$\&\%\*\+\-\/]*\z}
77
77
  # Belegnummer oder OPOS-Verarbeitungsinformationen
78
78
 
79
79
  # 13
@@ -122,9 +122,19 @@ module Datev
122
122
  # 20
123
123
  field 'Beleglink', :string, limit: 210
124
124
  # Link auf den Buchungsbeleg, der digital in einem Dokumenten-Management-System (z. B. DATEV Dokumentenablage, DATEV DMS classic) abgelegt wurde.
125
- # Beispiel für eine Beleg-ID eines Belegs aus DATEV Unternehmen online:
126
- # CB6A8F8F-099A-B3A9-2BAA-0CB64E299BA
127
- # (32 von 36 möglichen Zeichen)
125
+ # Der Beleglink hat folgenden Aufbau:
126
+ # 4-stelliges Kürzel für Dokumentenmanagementsystem (siehe unten)
127
+ # Leerzeichen
128
+ # Anführungszeichen
129
+ # Beleglink (GUID, Dateiname des Belegs), max. 36 Zeichen
130
+ # Schlusszeichen
131
+ # Beispiel für einen Beleglink aus Belege online:
132
+ # BEDI “CB6A8F8F-099A-B3A9-2BAA-0CB64E299BA”
133
+ # Das Kürzel bezeichnet das Quellsystem (Dokumentenmanagement), indem die digitalen Belege abgelegt sind.
134
+ # DATEV verwendet für seine Dokumentenmanagement-Systeme folgende Kürzel:
135
+ # Belegverwaltung online → BEDI
136
+ # DATEV DMS → DDMS
137
+ # Dokumentenablage → DDMS (vormals DORG)
128
138
 
129
139
  # 21 bis 36
130
140
  (1..8).each do |number|
@@ -337,5 +347,23 @@ module Datev
337
347
  # 116
338
348
  field 'Datum Zuord.', :date, format: '%d%m%Y'
339
349
  # Steuerperiode
350
+
351
+ # Neue Felder ab Programmversion 7.1
352
+
353
+ # 117
354
+ field 'Fälligkeit', :date, format: '%d%m%Y'
355
+ # OPOS Informationen
356
+
357
+ # 118
358
+ field 'Generalumkehr', :string, limit: 1
359
+ # 1 = Generalumkehr
360
+ # 0 = keine Generalumkehr
361
+
362
+ # 119
363
+ field 'Steuersatz', :decimal, precision: 4, scale: 2
364
+
365
+ # 120
366
+ field 'Land', :string, limit: 2
367
+ # Beispiel: DE für Deutschland
340
368
  end
341
369
  end
@@ -481,5 +481,38 @@ module Datev
481
481
  field "Verzugspauschale #{number}", :decimal, precision: 5, scale: 2
482
482
  # Beispiel: 12,12
483
483
  end
484
+
485
+ # 244
486
+ field 'Alternativer Suchname', :string, limit: 50
487
+
488
+ # 245
489
+ field 'Status', :integer, limit: 1
490
+
491
+ # 246
492
+ field 'Anschrift manuell geändert (Korrespondenzadresse)', :integer, limit: 1
493
+
494
+ # 247
495
+ field 'Anschrift individuell (Korrespondenzadresse)', :string, limit: 306
496
+
497
+ # 248
498
+ field 'Anschrift manuell geändert (Rechnungsadresse)', :integer, limit: 1
499
+
500
+ # 249
501
+ field 'Anschrift individuell (Rechnungsadresse)', :string, limit: 306
502
+
503
+ # 250
504
+ field 'Fristberechnung bei Debitor', :integer, limit: 1
505
+ # 0 = nein
506
+ # 1 = ja
507
+
508
+ # 251 bis 253
509
+ (1..3).each do |number|
510
+ field "Mahnfrist #{number}", :integer, limit: 3
511
+ # Mahnfristen in Tagen
512
+ end
513
+
514
+ # 254
515
+ field 'Letzte Frist', :integer, limit: 3
516
+ # Mahnfristen in Tagen
484
517
  end
485
518
  end
@@ -2,7 +2,7 @@ module Datev
2
2
  class AccountHeader < Header
3
3
  self.default_attributes = {
4
4
  'DATEV-Format-KZ' => 'EXTF',
5
- 'Versionsnummer' => 510,
5
+ 'Versionsnummer' => 700,
6
6
  'Datenkategorie' => 20,
7
7
  'Formatname' => 'Kontenbeschriftungen',
8
8
  'Formatversion' => 2,
@@ -2,10 +2,10 @@ module Datev
2
2
  class BookingHeader < Header
3
3
  self.default_attributes = {
4
4
  'DATEV-Format-KZ' => 'EXTF',
5
- 'Versionsnummer' => 510,
5
+ 'Versionsnummer' => 700,
6
6
  'Datenkategorie' => 21,
7
7
  'Formatname' => 'Buchungsstapel',
8
- 'Formatversion' => 7,
8
+ 'Formatversion' => 9,
9
9
  'Erzeugt am' => Time.now.utc,
10
10
  'Sachkontenlänge' => 4,
11
11
  'Bezeichnung' => 'Buchungen',
@@ -2,10 +2,10 @@ module Datev
2
2
  class ContactHeader < Header
3
3
  self.default_attributes = {
4
4
  'DATEV-Format-KZ' => 'EXTF',
5
- 'Versionsnummer' => 510,
5
+ 'Versionsnummer' => 700,
6
6
  'Datenkategorie' => 16,
7
7
  'Formatname' => 'Debitoren/Kreditoren',
8
- 'Formatversion' => 4,
8
+ 'Formatversion' => 5,
9
9
  'Erzeugt am' => Time.now.utc,
10
10
  'Sachkontenlänge' => 4
11
11
  }
@@ -4,12 +4,17 @@ module Datev
4
4
  options[:limit]
5
5
  end
6
6
 
7
+ def regex
8
+ options[:regex]
9
+ end
10
+
7
11
  def validate!(value)
8
12
  super
9
13
 
10
14
  if value
11
15
  raise ArgumentError.new("Value given for field '#{name}' is not a String") unless value.is_a?(String)
12
16
  raise ArgumentError.new("Value '#{value}' for field '#{name}' is too long") if limit && value.length > limit
17
+ raise ArgumentError.new("Value '#{value}' for field '#{name}' does not match regex") if regex && value !~ regex
13
18
  end
14
19
  end
15
20
 
@@ -1,3 +1,3 @@
1
1
  module Datev
2
- VERSION = "0.7.0"
2
+ VERSION = "0.10.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: datev
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Georg Ledermann
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-02-08 00:00:00.000000000 Z
11
+ date: 2020-06-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -83,14 +83,15 @@ dependencies:
83
83
  description: Provides an easy way to create CSV files which can be imported into accounting
84
84
  applications
85
85
  email:
86
- - mail@georg-ledermann.de
86
+ - georg@ledermann.dev
87
87
  executables: []
88
88
  extensions: []
89
89
  extra_rdoc_files: []
90
90
  files:
91
+ - ".github/workflows/push.yml"
91
92
  - ".gitignore"
92
93
  - ".rspec"
93
- - ".travis.yml"
94
+ - CHANGELOG.md
94
95
  - CODE_OF_CONDUCT.md
95
96
  - Gemfile
96
97
  - LICENSE.txt
@@ -126,7 +127,7 @@ homepage: https://github.com/ledermann/datev
126
127
  licenses:
127
128
  - MIT
128
129
  metadata: {}
129
- post_install_message:
130
+ post_install_message:
130
131
  rdoc_options: []
131
132
  require_paths:
132
133
  - lib
@@ -134,16 +135,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
134
135
  requirements:
135
136
  - - ">="
136
137
  - !ruby/object:Gem::Version
137
- version: 2.2.0
138
+ version: '2.3'
138
139
  required_rubygems_version: !ruby/object:Gem::Requirement
139
140
  requirements:
140
141
  - - ">="
141
142
  - !ruby/object:Gem::Version
142
143
  version: '0'
143
144
  requirements: []
144
- rubyforge_project:
145
- rubygems_version: 2.7.5
146
- signing_key:
145
+ rubygems_version: 3.1.4
146
+ signing_key:
147
147
  specification_version: 4
148
148
  summary: Export booking data in DATEV format
149
149
  test_files: []
@@ -1,10 +0,0 @@
1
- sudo: false
2
- language: ruby
3
- rvm:
4
- - 2.2.9
5
- - 2.3.6
6
- - 2.4.3
7
- - 2.5.0
8
- before_install:
9
- - gem update --system
10
- - gem update bundler