datev 0.6.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/.travis.yml +7 -5
- data/LICENSE.txt +1 -1
- data/README.md +15 -3
- data/Rakefile +1 -1
- data/bin/console +1 -0
- data/datev.gemspec +1 -1
- data/examples/EXTF_Buchungsstapel.csv +1 -1
- data/lib/datev/base/account.rb +3 -3
- data/lib/datev/base/booking.rb +60 -60
- data/lib/datev/base/contact.rb +105 -105
- data/lib/datev/base/header.rb +20 -20
- data/lib/datev/export.rb +1 -1
- data/lib/datev/version.rb +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: f8efa17940a9d716513b57a2e8173160faaff291782f714452dd28d586990aaf
|
4
|
+
data.tar.gz: c75137f4461cad817b274db87b60f87e7353e7c4efe387ee7ababee760d0a05c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d85696dfa5c13eb1d785223b557ce176137f03494822004ca47c67637a6e00bfd6f45a54d0480e8353657269b5c27a3c0e6a2c677a35deba1a38484acb8b0d22
|
7
|
+
data.tar.gz: d0925db39ac7b51f82e011160e24036df2db477acbe0fe25a1381390b345e377c488424d0509a1c3559672b7bc614b87fed8835bd07e1fc10ce6ced36557bb3d
|
data/.travis.yml
CHANGED
data/LICENSE.txt
CHANGED
data/README.md
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
# Datev
|
2
2
|
|
3
|
-
Ruby gem
|
3
|
+
Ruby gem to export bookings and more to DATEV format as CSV file
|
4
|
+
|
5
|
+
Supported DATEV Version: 5.1
|
4
6
|
|
5
7
|
[](https://travis-ci.org/ledermann/datev)
|
6
8
|
[](https://codeclimate.com/github/ledermann/datev)
|
@@ -24,6 +26,8 @@ Or install it yourself as:
|
|
24
26
|
|
25
27
|
## Usage
|
26
28
|
|
29
|
+
To export bookings, you need an BookingExport instance with an array of records. Example:
|
30
|
+
|
27
31
|
```ruby
|
28
32
|
export = Datev::BookingExport.new(
|
29
33
|
'Herkunft' => 'XY',
|
@@ -34,7 +38,7 @@ export = Datev::BookingExport.new(
|
|
34
38
|
'Datum vom' => Date.new(2016,6,1),
|
35
39
|
'Datum bis' => Date.new(2016,6,30),
|
36
40
|
'Bezeichnung' => 'Beispiel-Buchungen'
|
37
|
-
) # For available hash keys see /lib/datev/header.rb
|
41
|
+
) # For available hash keys see /lib/datev/base/header.rb
|
38
42
|
|
39
43
|
export << {
|
40
44
|
'Belegdatum' => Date.new(2016,6,21),
|
@@ -44,7 +48,7 @@ export << {
|
|
44
48
|
'Konto' => 1200,
|
45
49
|
'Gegenkonto (ohne BU-Schlüssel)' => 4940,
|
46
50
|
'BU-Schlüssel' => '8'
|
47
|
-
} # For available hash keys see /lib/datev/booking.rb
|
51
|
+
} # For available hash keys see /lib/datev/base/booking.rb
|
48
52
|
|
49
53
|
export << {
|
50
54
|
'Belegdatum' => Date.new(2016,6,22),
|
@@ -61,6 +65,14 @@ export.to_file('EXTF_Buchungsstapel.csv')
|
|
61
65
|
|
62
66
|
Result: [CSV file](examples/EXTF_Buchungsstapel.csv)
|
63
67
|
|
68
|
+
All records are validated against the defined schema.
|
69
|
+
|
70
|
+
Beside bookings, some other exports are available, too:
|
71
|
+
|
72
|
+
* `AccountExport` ("Kontenbeschriftungen")
|
73
|
+
* `ContactExport` ("Stammdaten")
|
74
|
+
|
75
|
+
|
64
76
|
## Development
|
65
77
|
|
66
78
|
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
data/Rakefile
CHANGED
data/bin/console
CHANGED
data/datev.gemspec
CHANGED
@@ -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.
|
21
|
+
spec.required_ruby_version = '>= 2.2.0'
|
22
22
|
|
23
23
|
spec.add_development_dependency "bundler"
|
24
24
|
spec.add_development_dependency "rake"
|
@@ -1,4 +1,4 @@
|
|
1
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 � Inhalt 1;Zusatzinformation � Art
|
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
3
|
24,95;"H";"";;;"";1200;4940;"8";2106;"";"";;"Fachbuch: Controlling f�r Dummies";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"";"";;"";;"";;"";"";;"";;;;
|
4
4
|
5950,00;"S";"";;;"";10000;8400;"";2206;"RE201606-135";"";;"Honorar FiBu-Seminar";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"";"";;"";;"";;"";"";;"";;;;
|
data/lib/datev/base/account.rb
CHANGED
@@ -3,15 +3,15 @@ module Datev
|
|
3
3
|
# http://www.datev.de/dnlexom/client/app/index.html#/document/1036228/D103622800011
|
4
4
|
|
5
5
|
# 1
|
6
|
-
field 'Konto', :integer, :
|
6
|
+
field 'Konto', :integer, limit: 8, required: true
|
7
7
|
# Sachkontennummer (max. 8-stellig).
|
8
8
|
|
9
9
|
# 2
|
10
|
-
field 'Kontenbeschriftung', :string, :
|
10
|
+
field 'Kontenbeschriftung', :string, limit: 40
|
11
11
|
# Beschriftung des Sachkontos
|
12
12
|
|
13
13
|
# 3
|
14
|
-
field 'Sprach-ID', :string, :
|
14
|
+
field 'Sprach-ID', :string, limit: 5
|
15
15
|
# Sprach-ID der Kontenbeschriftung
|
16
16
|
# de-DE = Deutsch
|
17
17
|
# en-GB = Englisch
|
data/lib/datev/base/booking.rb
CHANGED
@@ -3,39 +3,39 @@ module Datev
|
|
3
3
|
# http://www.datev.de/dnlexom/client/app/index.html#/document/1036228/D103622800010
|
4
4
|
|
5
5
|
# 1
|
6
|
-
field 'Umsatz (ohne Soll/Haben-Kz)', :decimal, :
|
6
|
+
field 'Umsatz (ohne Soll/Haben-Kz)', :decimal, precision: 12, scale: 2, required: true
|
7
7
|
# Beispiel: 1234567890,12
|
8
8
|
# Muss immer ein positiver Wert sein
|
9
9
|
|
10
10
|
# 2
|
11
|
-
field 'Soll/Haben-Kennzeichen', :string, :
|
11
|
+
field 'Soll/Haben-Kennzeichen', :string, limit: 1, required: true
|
12
12
|
# Die Soll-/Haben-Kennzeichnung des Umsatzes bezieht sich auf das Konto, das im Feld Konto angegeben wird:
|
13
13
|
# S = Soll
|
14
14
|
# H = Haben
|
15
15
|
|
16
16
|
# 3
|
17
|
-
field 'WKZ Umsatz', :string, :
|
17
|
+
field 'WKZ Umsatz', :string, limit: 3
|
18
18
|
# Dreistelliger ISO-Code der Währung (Dok.-Nr. 1080170); gibt an, welche Währung dem Betrag zugrunde liegt.
|
19
19
|
# Wenn kein Wert angegeben ist, wird das WKZ aus dem Header übernommen.
|
20
20
|
|
21
21
|
# 4
|
22
|
-
field 'Kurs', :decimal, :
|
22
|
+
field 'Kurs', :decimal, precision: 10, scale: 6
|
23
23
|
# Der Fremdwährungskurs bestimmt, wie der angegebene Umsatz, der in Fremdwährung übergeben wird, in die Basiswährung umzurechnen ist, wenn es sich um ein Nicht-EWU-Land handelt.
|
24
24
|
# Beispiel: 1123,123456
|
25
25
|
# Achtung: Der Wert 0 ist unzulässig.
|
26
26
|
|
27
27
|
# 5
|
28
|
-
field 'Basisumsatz', :decimal, :
|
28
|
+
field 'Basisumsatz', :decimal, precision: 12, scale: 2
|
29
29
|
# Wenn das Feld Basisumsatz verwendet wird, muss auch das Feld WKZ Basisumsatz gefüllt werden.
|
30
30
|
# Beispiel: 1123123123,12
|
31
31
|
|
32
32
|
# 6
|
33
|
-
field 'WKZ Basisumsatz', :string, :
|
33
|
+
field 'WKZ Basisumsatz', :string, limit: 3
|
34
34
|
# Währungskennzeichen der hinterlegten Basiswährung. Wenn das Feld WKZ Basisumsatz verwendet wird, muss auch das Feld Basisumsatz verwendet werden.
|
35
35
|
# ISO-Code beachten (siehe Dok.-Nr.1080170)
|
36
36
|
|
37
37
|
# 7
|
38
|
-
field 'Konto', :integer, :
|
38
|
+
field 'Konto', :integer, limit: 9, required: true do
|
39
39
|
# Sach- oder Personen-Kontonummer
|
40
40
|
# Darf max. 8- bzw. max. 9-stellig sein (abhängig von der Information im Header)
|
41
41
|
# Die Personenkontenlänge darf nur 1 Stelle länger sein als die definierte Sachkontennummernlänge.
|
@@ -47,7 +47,7 @@ module Datev
|
|
47
47
|
end
|
48
48
|
|
49
49
|
# 8
|
50
|
-
field 'Gegenkonto (ohne BU-Schlüssel)', :integer, :
|
50
|
+
field 'Gegenkonto (ohne BU-Schlüssel)', :integer, limit: 9, required: true do
|
51
51
|
# Sach- oder Personen-Kontonummer
|
52
52
|
# Darf max. 8- bzw. max. 9-stellig sein (abhängig von der Information im Header)
|
53
53
|
# Die Personenkontenlänge darf nur 1 Stelle länger sein als die definierte Sachkontennummernlänge.
|
@@ -59,32 +59,32 @@ module Datev
|
|
59
59
|
end
|
60
60
|
|
61
61
|
# 9
|
62
|
-
field 'BU-Schlüssel', :string, :
|
62
|
+
field 'BU-Schlüssel', :string, limit: 2
|
63
63
|
# Steuerschlüssel und/oder Berichtigungsschlüssel
|
64
64
|
|
65
65
|
# 10
|
66
|
-
field 'Belegdatum', :date, :
|
66
|
+
field 'Belegdatum', :date, format: '%d%m', required: true
|
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, :
|
70
|
+
field 'Belegfeld 1', :string, limit: 12
|
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, :
|
76
|
+
field 'Belegfeld 2', :string, limit: 12
|
77
77
|
# Belegnummer oder OPOS-Verarbeitungsinformationen
|
78
78
|
|
79
79
|
# 13
|
80
|
-
field 'Skonto', :decimal, :
|
80
|
+
field 'Skonto', :decimal, precision: 10, scale: 2
|
81
81
|
# Skonto-Betrag/-Abzug
|
82
82
|
# Nur bei Zahlungen zulässig.
|
83
83
|
# Beispiel 12123123,12
|
84
84
|
# Achtung: Der Wert 0 ist unzulässig.
|
85
85
|
|
86
86
|
# 14
|
87
|
-
field 'Buchungstext', :string, :
|
87
|
+
field 'Buchungstext', :string, limit: 60
|
88
88
|
|
89
89
|
# 15
|
90
90
|
field 'Postensperre', :boolean
|
@@ -95,17 +95,17 @@ module Datev
|
|
95
95
|
# Nur in Verbindung mit einer Rechnungsbuchung und Personenkonto (OPOS) relevant.
|
96
96
|
|
97
97
|
# 16
|
98
|
-
field 'Diverse Adressnummer', :string, :
|
98
|
+
field 'Diverse Adressnummer', :string, limit: 9
|
99
99
|
# Adressnummer einer diversen Adresse
|
100
100
|
# Nur in Verbindung mit OPOS relevant.
|
101
101
|
|
102
102
|
# 17
|
103
|
-
field 'Geschäftspartnerbank', :integer, :
|
103
|
+
field 'Geschäftspartnerbank', :integer, limit: 3
|
104
104
|
# Wenn für eine Lastschrift oder Überweisung eine bestimmte Bank des Geschäftspartners genutzt werden soll.
|
105
105
|
# Nur in Verbindung mit OPOS relevant.
|
106
106
|
|
107
107
|
# 18
|
108
|
-
field 'Sachverhalt', :integer, :
|
108
|
+
field 'Sachverhalt', :integer, limit: 2
|
109
109
|
# Der Sachverhalt wird in Rechnungswesen pro verwendet, um Buchungen/Posten als Mahnzins/Mahngebühr zu identifizieren.
|
110
110
|
# Für diese Posten werden z. B. beim Erstellen von Mahnungen keine Mahnzinsen berechnet.
|
111
111
|
# 31 = Mahnzins
|
@@ -120,7 +120,7 @@ module Datev
|
|
120
120
|
# 1 = Zinssperre
|
121
121
|
|
122
122
|
# 20
|
123
|
-
field 'Beleglink', :string, :
|
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
125
|
# Beispiel für eine Beleg-ID eines Belegs aus DATEV Unternehmen online:
|
126
126
|
# CB6A8F8F-099A-B3A9-2BAA-0CB64E299BA
|
@@ -128,8 +128,8 @@ module Datev
|
|
128
128
|
|
129
129
|
# 21 bis 36
|
130
130
|
(1..8).each do |number|
|
131
|
-
field "Beleginfo – Art #{number}", :string, :
|
132
|
-
field "Beleginfo – Inhalt #{number}", :string, :
|
131
|
+
field "Beleginfo – Art #{number}", :string, limit: 20
|
132
|
+
field "Beleginfo – Inhalt #{number}", :string, limit: 210
|
133
133
|
end
|
134
134
|
# Bei einem ASCII-Format, das aus einem DATEV pro-Rechnungswesen-Programm erstellt wurde, können diese Felder Informationen aus einem Beleg (z. B. einem elektronischen Kontoumsatz) enthalten.
|
135
135
|
# Wenn die Feldlänge eines Beleginfo-Inhalts-Felds überschritten wird, wird die Information im nächsten Beleginfo-Feld weitergeführt.
|
@@ -142,32 +142,32 @@ module Datev
|
|
142
142
|
# Buchungsspezifische Inhalte zu den oben genannten Informationsarten
|
143
143
|
|
144
144
|
# 37
|
145
|
-
field 'KOST1 – Kostenstelle', :string, :
|
145
|
+
field 'KOST1 – Kostenstelle', :string, limit: 8
|
146
146
|
# Über KOST1 erfolgt die Zuordnung des Geschäftsvorfalls für die anschließende Kostenrechnung.
|
147
147
|
|
148
148
|
# 38
|
149
|
-
field 'KOST2 – Kostenstelle', :string, :
|
149
|
+
field 'KOST2 – Kostenstelle', :string, limit: 8
|
150
150
|
# Über KOST2 erfolgt die Zuordnung des Geschäftsvorfalls für die anschließende Kostenrechnung.
|
151
151
|
|
152
152
|
# 39
|
153
|
-
field 'Kost Menge', :decimal, :
|
153
|
+
field 'Kost Menge', :decimal, precision: 11, scale: 2
|
154
154
|
# Im KOST-Mengenfeld wird die Wertgabe zu einer bestimmten Bezugsgröße für eine Kostenstelle erfasst. Diese Bezugsgröße kann z. B. kg, g, cm, m, % sein. Die Bezugsgröße ist definiert in den Kostenrechnungs-Stammdaten.
|
155
155
|
# Beispiel: 123123123,12
|
156
156
|
|
157
157
|
# 40
|
158
|
-
field 'EU-Land u. USt-IdNr.', :string, :
|
158
|
+
field 'EU-Land u. USt-IdNr.', :string, limit: 15
|
159
159
|
# Die USt-IdNr. besteht aus:
|
160
160
|
# 2-stelligen Länderkürzel (siehe Dok.-Nr. 1080169; Ausnahme Griechenland: Das Länderkürzel lautet EL)
|
161
161
|
# 13-stelliger USt-IdNr.
|
162
162
|
|
163
163
|
# 41
|
164
|
-
field 'EU-Steuersatz', :decimal, :
|
164
|
+
field 'EU-Steuersatz', :decimal, precision: 4, scale: 2
|
165
165
|
# Nur für entsprechende EU-Buchungen:
|
166
166
|
# Der im EU-Bestimmungsland gültige Steuersatz.
|
167
167
|
# Beispiel: 12,12
|
168
168
|
|
169
169
|
# 42
|
170
|
-
field 'Abw. Versteuerungsart', :string, :
|
170
|
+
field 'Abw. Versteuerungsart', :string, limit: 1
|
171
171
|
# Für Buchungen, die in einer von der Mandantenstammdaten-Schlüsselung abweichenden Umsatzsteuerart verarbeitet werden sollen, kann die abweichende Versteuerungsart im Buchungssatz übergeben werden:
|
172
172
|
# I = Ist-Versteuerung
|
173
173
|
# K = keine Umsatzsteuerrechnung
|
@@ -175,31 +175,31 @@ module Datev
|
|
175
175
|
# S = Soll-Versteuerung
|
176
176
|
|
177
177
|
# 43
|
178
|
-
field 'Sachverhalt L+L', :integer, :
|
178
|
+
field 'Sachverhalt L+L', :integer, limit: 3
|
179
179
|
# Sachverhalte gem. § 13b Abs. 1 Satz 1 Nrn. 1.ff UStG
|
180
180
|
# Achtung: Der Wert 0 ist unzulässig.
|
181
181
|
# (siehe Dok.-Nr. 1034915)
|
182
182
|
|
183
183
|
# 44
|
184
|
-
field 'Funktionsergänzung L+L', :integer, :
|
184
|
+
field 'Funktionsergänzung L+L', :integer, limit: 3
|
185
185
|
# Steuersatz/Funktion zum L+L-Sachverhalt
|
186
186
|
# Achtung: Der Wert 0 ist unzulässig.
|
187
187
|
# (siehe Dok.-Nr. 1034915)
|
188
188
|
|
189
189
|
# 45
|
190
|
-
field 'BU 49 Hauptfunktionstyp', :integer, :
|
190
|
+
field 'BU 49 Hauptfunktionstyp', :integer, limit: 1
|
191
191
|
# Bei Verwendung des BU-Schlüssels 49 für "andere Steuersätze" muss der steuerliche Sachverhalt mitgegeben werden.
|
192
192
|
|
193
193
|
# 46
|
194
|
-
field 'BU 49 Hauptfunktionsnummer', :integer, :
|
194
|
+
field 'BU 49 Hauptfunktionsnummer', :integer, limit: 2
|
195
195
|
|
196
196
|
# 47
|
197
|
-
field 'BU 49 Funktionsergänzung', :integer, :
|
197
|
+
field 'BU 49 Funktionsergänzung', :integer, limit: 3
|
198
198
|
|
199
199
|
# 48 bis 87
|
200
200
|
(1..20).each do |number|
|
201
|
-
field "Zusatzinformation –
|
202
|
-
field "Zusatzinformation –
|
201
|
+
field "Zusatzinformation – Art #{number}", :string, limit: 20
|
202
|
+
field "Zusatzinformation – Inhalt #{number}", :string, limit: 210
|
203
203
|
end
|
204
204
|
# Zusatzinformationen, die zu Buchungssätzen erfasst werden können.
|
205
205
|
# Diese Zusatzinformationen besitzen den Charakter eines Notizzettels und können frei erfasst werden.
|
@@ -210,42 +210,42 @@ module Datev
|
|
210
210
|
# Informationsinhalt: Buchungsspezifische Inhalte zu den oben genannten Informationsarten.
|
211
211
|
|
212
212
|
# 88
|
213
|
-
field 'Stück', :integer, :
|
213
|
+
field 'Stück', :integer, limit: 8
|
214
214
|
# Wirkt sich nur bei Sachverhalt mit SKR14 Land- und Forstwirtschaft aus, für andere SKR werden die Felder beim Import/Export überlesen bzw. leer exportiert.
|
215
215
|
|
216
216
|
# 89
|
217
|
-
field 'Gewicht', :decimal, :
|
217
|
+
field 'Gewicht', :decimal, limit: 10, scale: 2
|
218
218
|
|
219
219
|
# 90
|
220
|
-
field 'Zahlweise', :integer, :
|
220
|
+
field 'Zahlweise', :integer, limit: 2
|
221
221
|
# OPOS-Informationen kommunal
|
222
222
|
# 1 = Lastschrift
|
223
223
|
# 2 = Mahnung
|
224
224
|
# 3 = Zahlung
|
225
225
|
|
226
226
|
# 91
|
227
|
-
field 'Forderungsart', :string, :
|
227
|
+
field 'Forderungsart', :string, limit: 10
|
228
228
|
# OPOS-Informationen kommunal
|
229
229
|
|
230
230
|
# 92
|
231
|
-
field 'Veranlagungsjahr', :date, :
|
231
|
+
field 'Veranlagungsjahr', :date, format: '%Y'
|
232
232
|
# OPOS-Informationen kommunal
|
233
233
|
|
234
234
|
# 93
|
235
|
-
field 'Zugeordnete Fälligkeit', :date, :
|
235
|
+
field 'Zugeordnete Fälligkeit', :date, format: '%d%m%Y'
|
236
236
|
# OPOS-Informationen kommunal
|
237
237
|
|
238
238
|
# 94
|
239
|
-
field 'Skontotyp', :integer, :
|
239
|
+
field 'Skontotyp', :integer, limit: 1
|
240
240
|
# 1 = Einkauf von Waren
|
241
241
|
# 2 = Erwerb von Roh-Hilfs- und Betriebsstoffen
|
242
242
|
|
243
243
|
# 95
|
244
|
-
field 'Auftragsnummer', :string, :
|
244
|
+
field 'Auftragsnummer', :string, limit: 30
|
245
245
|
# Allgemeine Bezeichnung, des Auftrags/Projekts
|
246
246
|
|
247
247
|
# 96
|
248
|
-
field 'Buchungstyp', :string, :
|
248
|
+
field 'Buchungstyp', :string, limit: 2
|
249
249
|
# AA = Angeforderte Anzahlung/Abschlagsrechnung
|
250
250
|
# AG = Erhaltene Anzahlung (Geldeingang)
|
251
251
|
# AV = Erhaltene Anzahlung (Verbindlichkeit)
|
@@ -255,44 +255,44 @@ module Datev
|
|
255
255
|
# SO = Sonstige
|
256
256
|
|
257
257
|
# 97
|
258
|
-
field 'USt-Schlüssel (Anzahlungen)', :integer, :
|
258
|
+
field 'USt-Schlüssel (Anzahlungen)', :integer, limit: 2
|
259
259
|
# USt-Schlüssel der späteren Schlussrechnung
|
260
260
|
|
261
261
|
# 98
|
262
|
-
field 'EU-Mitgliedstaat (Anzahlungen)', :string, :
|
262
|
+
field 'EU-Mitgliedstaat (Anzahlungen)', :string, limit: 2
|
263
263
|
# EU-Mitgliedstaat der späteren Schlussrechnung
|
264
264
|
# (siehe Dok.-Nr. 1080169)
|
265
265
|
|
266
266
|
# 99
|
267
|
-
field 'Sachverhalt L+L (Anzahlungen)', :integer, :
|
267
|
+
field 'Sachverhalt L+L (Anzahlungen)', :integer, limit: 3
|
268
268
|
# L+L-Sachverhalt der späteren Schlussrechnung
|
269
269
|
# Sachverhalte gem. § 13b Abs. 1 Satz 1 Nrn. 1.-5. UStG
|
270
270
|
# Achtung: Der Wert 0 ist unzulässig.
|
271
271
|
|
272
272
|
# 100
|
273
|
-
field 'EU-Steuersatz (Anzahlungen)', :decimal, :
|
273
|
+
field 'EU-Steuersatz (Anzahlungen)', :decimal, precision: 4, scale: 2
|
274
274
|
# EU-Steuersatz der späteren Schlussrechnung
|
275
275
|
# Nur für entsprechende EU-Buchungen: Der im EU-Bestimmungsland gültige Steuersatz.
|
276
276
|
# Beispiel: 12,12
|
277
277
|
|
278
278
|
# 101
|
279
|
-
field 'Erlöskonto (Anzahlungen)', :integer, :
|
279
|
+
field 'Erlöskonto (Anzahlungen)', :integer, limit: 9
|
280
280
|
# Erlöskonto der späteren Schlussrechnung
|
281
281
|
|
282
282
|
# 102
|
283
|
-
field 'Herkunft-Kz', :string, :
|
283
|
+
field 'Herkunft-Kz', :string, limit: 2
|
284
284
|
# Wird beim Import durch SV (Stapelverarbeitung) ersetzt.
|
285
285
|
|
286
286
|
# 103
|
287
|
-
field 'Leerfeld', :string, :
|
287
|
+
field 'Leerfeld', :string, limit: 36
|
288
288
|
# Wird von DATEV verwendet.
|
289
289
|
|
290
290
|
# 104
|
291
|
-
field 'KOST-Datum', :date, :
|
291
|
+
field 'KOST-Datum', :date, format: '%d%m%Y'
|
292
292
|
# Format TTMMJJJJ
|
293
293
|
|
294
294
|
# 105
|
295
|
-
field 'SEPA-Mandatsreferenz', :string, :
|
295
|
+
field 'SEPA-Mandatsreferenz', :string, limit: 35
|
296
296
|
# Vom Zahlungsempfänger individuell vergebenes Kennzeichen eines Mandats (z. B. Rechnungs- oder Kundennummer).
|
297
297
|
|
298
298
|
# 106
|
@@ -301,26 +301,26 @@ module Datev
|
|
301
301
|
# 1 = Skontosperre
|
302
302
|
|
303
303
|
# 107
|
304
|
-
field 'Gesellschaftername', :string, :
|
304
|
+
field 'Gesellschaftername', :string, limit: 76
|
305
305
|
|
306
306
|
# 108
|
307
|
-
field 'Beteiligtennummer', :integer, :
|
307
|
+
field 'Beteiligtennummer', :integer, limit: 4
|
308
308
|
|
309
309
|
# 109
|
310
|
-
field 'Identifikationsnummer', :string, :
|
310
|
+
field 'Identifikationsnummer', :string, limit: 11
|
311
311
|
|
312
312
|
# 110
|
313
|
-
field 'Zeichnernummer', :string, :
|
313
|
+
field 'Zeichnernummer', :string, limit: 20
|
314
314
|
|
315
315
|
# 111
|
316
|
-
field 'Postensperre bis', :date, :
|
316
|
+
field 'Postensperre bis', :date, format: '%d%m%Y'
|
317
317
|
|
318
318
|
# 112
|
319
|
-
field 'Bezeichnung', :string, :
|
319
|
+
field 'Bezeichnung', :string, limit: 30
|
320
320
|
# SoBil-Sachverhalt
|
321
321
|
|
322
322
|
# 113
|
323
|
-
field 'Kennzeichen', :integer, :
|
323
|
+
field 'Kennzeichen', :integer, limit: 2
|
324
324
|
# SoBil-Buchung
|
325
325
|
|
326
326
|
# 114
|
@@ -332,10 +332,10 @@ module Datev
|
|
332
332
|
# Ab Jahreswechselversion 2016/2017 gilt das auch bei Inhalt = leer.
|
333
333
|
|
334
334
|
# 115
|
335
|
-
field 'Leistungsdatum', :date, :
|
335
|
+
field 'Leistungsdatum', :date, format: '%d%m%Y'
|
336
336
|
|
337
337
|
# 116
|
338
|
-
field 'Datum Zuord.', :date, :
|
338
|
+
field 'Datum Zuord.', :date, format: '%d%m%Y'
|
339
339
|
# Steuerperiode
|
340
340
|
end
|
341
341
|
end
|
data/lib/datev/base/contact.rb
CHANGED
@@ -1,23 +1,23 @@
|
|
1
1
|
module Datev
|
2
2
|
class Contact < Base
|
3
3
|
def self.bank_account(number)
|
4
|
-
field "Bankleitzahl #{number}", :string, :
|
4
|
+
field "Bankleitzahl #{number}", :string, limit: 8
|
5
5
|
|
6
|
-
field "Bankbezeichnung #{number}", :string, :
|
6
|
+
field "Bankbezeichnung #{number}", :string, limit: 30
|
7
7
|
|
8
|
-
field "Bankkonto-Nummer #{number}", :string, :
|
8
|
+
field "Bankkonto-Nummer #{number}", :string, limit: 10
|
9
9
|
|
10
|
-
field "Länderkennzeichen #{number}", :string, :
|
10
|
+
field "Länderkennzeichen #{number}", :string, limit: 2
|
11
11
|
# ISO-Code beachten (siehe Dok.-Nr. 1080169)
|
12
12
|
|
13
|
-
field "IBAN #{number}", :string, :
|
13
|
+
field "IBAN #{number}", :string, limit: 34
|
14
14
|
|
15
|
-
field "Leerfeld #{number}", :string, :
|
15
|
+
field "Leerfeld #{number}", :string, limit: 1
|
16
16
|
|
17
|
-
field "SWIFT-Code #{number}", :string, :
|
17
|
+
field "SWIFT-Code #{number}", :string, limit: 11
|
18
18
|
# Beachten Sie, dass für Zahlung und Lastschriften bis zur Installation der Programm-DVD DATEV pro 8.3 (Januar 2015) BLZ und/oder BIC noch erforderlich sind.
|
19
19
|
|
20
|
-
field "Abw. Kontoinhaber #{number}", :string, :
|
20
|
+
field "Abw. Kontoinhaber #{number}", :string, limit: 70
|
21
21
|
|
22
22
|
field "Kennz. Haupt-Bankverb. #{number}", :boolean
|
23
23
|
# Kennzeichnung als Haupt-Bankverbindung
|
@@ -25,45 +25,45 @@ module Datev
|
|
25
25
|
# 0 = Nein
|
26
26
|
# Nur eine Bankverbindung eines Debitoren oder Kreditoren kann als Haupt-Bankverbindung gekennzeichnet werden.
|
27
27
|
|
28
|
-
field "Bankverb. #{number} Gültig von", :date, :
|
29
|
-
field "Bankverb. #{number} Gültig bis", :date, :
|
28
|
+
field "Bankverb. #{number} Gültig von", :date, format: '%d%m%Y'
|
29
|
+
field "Bankverb. #{number} Gültig bis", :date, format: '%d%m%Y'
|
30
30
|
end
|
31
31
|
|
32
32
|
# http://www.datev.de/dnlexom/client/app/index.html#/document/1036228/D103622800012
|
33
33
|
|
34
34
|
# 1
|
35
|
-
field 'Konto', :integer, :
|
35
|
+
field 'Konto', :integer, limit: 9, required: true
|
36
36
|
# Personen-Kontonummer (abhängig von der Information im Header)
|
37
37
|
# Sachkontennummernlänge + 1 = Personenkontenlänge
|
38
38
|
|
39
39
|
# 2
|
40
|
-
field 'Name (Adressatentyp Unternehmen)', :string, :
|
40
|
+
field 'Name (Adressatentyp Unternehmen)', :string, limit: 50
|
41
41
|
# Beim Import werden die Felder in der Datenbank gefüllt, auch wenn sie nicht dem Adressatentyp aus Feld 7 entsprechen. Das kann zu ungewollten Effekten im Programm führen. Bitte übergeben Sie nur die zum Adressatentyp passenden Felder.
|
42
42
|
|
43
43
|
# 3
|
44
|
-
field 'Unternehmensgegenstand', :string, :
|
44
|
+
field 'Unternehmensgegenstand', :string, limit: 50
|
45
45
|
|
46
46
|
# 4
|
47
|
-
field 'Name (Adressatentyp natürl. Person)', :string, :
|
47
|
+
field 'Name (Adressatentyp natürl. Person)', :string, limit: 30
|
48
48
|
|
49
49
|
# 5
|
50
|
-
field 'Vorname (Adressatentyp natürl. Person)', :string, :
|
50
|
+
field 'Vorname (Adressatentyp natürl. Person)', :string, limit: 30
|
51
51
|
|
52
52
|
# 6
|
53
|
-
field 'Name (Adressatentyp keine Angabe)', :string, :
|
53
|
+
field 'Name (Adressatentyp keine Angabe)', :string, limit: 50
|
54
54
|
|
55
55
|
# 7
|
56
|
-
field 'Adressatentyp', :string, :
|
56
|
+
field 'Adressatentyp', :string, limit: 1
|
57
57
|
# 0 = keine Angabe
|
58
58
|
# 1 = natürliche Person
|
59
59
|
# 2 = Unternehmen
|
60
60
|
# Standardwert = Unternehmen
|
61
61
|
|
62
62
|
# 8
|
63
|
-
field 'Kurzbezeichnung', :string, :
|
63
|
+
field 'Kurzbezeichnung', :string, limit: 15
|
64
64
|
|
65
65
|
# 9
|
66
|
-
field 'EU-Land', :string, :
|
66
|
+
field 'EU-Land', :string, limit: 2
|
67
67
|
# Die USt-IdNr. besteht aus
|
68
68
|
# 2-stelligen Länderkürzel
|
69
69
|
# (siehe Dok.-Nr. 1080169; Ausnahme Griechenland: Das Länderkürzel lautet EL)
|
@@ -71,114 +71,114 @@ module Datev
|
|
71
71
|
# Beachten Sie bitte, dass kein Leerzeichen zwischen diesen beiden Eingabewerten sein darf.
|
72
72
|
|
73
73
|
# 10
|
74
|
-
field 'EU-USt-IdNr.', :string, :
|
74
|
+
field 'EU-USt-IdNr.', :string, limit: 13
|
75
75
|
|
76
76
|
# 11
|
77
|
-
field 'Anrede', :string, :
|
77
|
+
field 'Anrede', :string, limit: 30
|
78
78
|
|
79
79
|
# 12
|
80
|
-
field 'Titel/Akad. Grad', :string, :
|
80
|
+
field 'Titel/Akad. Grad', :string, limit: 25
|
81
81
|
# Nur bei Adressatentyp "natürliche Person" relevant.
|
82
82
|
# Wird der Titel/Akad.Grad bei einem Adressatentyp "Unternehmen" übergeben, wird der Wert in den Datenbestand übernommen, ist aber an der Oberfläche nicht sichtbar.
|
83
83
|
|
84
84
|
# 13
|
85
|
-
field 'Adelstitel', :string, :
|
85
|
+
field 'Adelstitel', :string, limit: 15
|
86
86
|
# Nur bei Adressatentyp "natürliche Person" relevant.
|
87
87
|
# Wird der Adelstitel bei einem Adressatentyp "Unternehmen" übergeben, wird der Wert in den Datenbestand übernommen, ist aber an der Oberfläche nicht sichtbar.
|
88
88
|
|
89
89
|
# 14
|
90
|
-
field 'Namensvorsatz', :string, :
|
90
|
+
field 'Namensvorsatz', :string, limit: 14
|
91
91
|
# Nur bei Adressatentyp "natürliche Person" relevant.
|
92
92
|
# Wird der Namensvorsatz bei einem Adressatentyp "Unternehmen" übergeben, wird der Wert in den Datenbestand übernommen, ist aber an der Oberfläche nicht sichtbar.
|
93
93
|
|
94
94
|
# 15
|
95
|
-
field 'Adressart', :string, :
|
95
|
+
field 'Adressart', :string, limit: 3
|
96
96
|
# STR = Straße
|
97
97
|
# PF = Postfach
|
98
98
|
# GK = Großkunde
|
99
99
|
# Wird die Adressart nicht übergeben, wird sie automatisch in Abhängigkeit zu den übergebenen Feldern (Straße oder Postfach) gesetzt.
|
100
100
|
|
101
101
|
# 16
|
102
|
-
field 'Straße', :string, :
|
102
|
+
field 'Straße', :string, limit: 36
|
103
103
|
# Wird sowohl eine Straße als auch ein Postfach übergeben, werden beide Werte in den Datenbestand übernommen; auf der Visitenkarte in den Debitoren-/Kreditoren-Stammdaten wird die Postfachadresse angezeigt.
|
104
104
|
|
105
105
|
#17
|
106
|
-
field 'Postfach', :string, :
|
106
|
+
field 'Postfach', :string, limit: 10
|
107
107
|
|
108
108
|
# 18
|
109
|
-
field 'Postleitzahl', :string, :
|
109
|
+
field 'Postleitzahl', :string, limit: 10
|
110
110
|
|
111
111
|
# 19
|
112
|
-
field 'Ort', :string, :
|
112
|
+
field 'Ort', :string, limit: 30
|
113
113
|
|
114
114
|
# 20
|
115
|
-
field 'Land', :string, :
|
115
|
+
field 'Land', :string, limit: 2
|
116
116
|
# ISO-Code beachten! (Dok.-Nr. 1080169)
|
117
117
|
|
118
118
|
# 21
|
119
|
-
field 'Versandzusatz', :string, :
|
119
|
+
field 'Versandzusatz', :string, limit: 50
|
120
120
|
|
121
121
|
# 22
|
122
|
-
field 'Adresszusatz', :string, :
|
122
|
+
field 'Adresszusatz', :string, limit: 36
|
123
123
|
# Beispiel: z. Hd. Herrn Mustermann
|
124
124
|
|
125
125
|
# 23
|
126
|
-
field 'Abweichende Anrede', :string, :
|
126
|
+
field 'Abweichende Anrede', :string, limit: 30
|
127
127
|
# Es kann ein beliebiger individueller Text verwendet werden.
|
128
128
|
|
129
129
|
# 24
|
130
|
-
field 'Abw. Zustellbezeichnung 1', :string, :
|
130
|
+
field 'Abw. Zustellbezeichnung 1', :string, limit: 50
|
131
131
|
|
132
132
|
# 25
|
133
|
-
field 'Abw. Zustellbezeichnung 2', :string, :
|
133
|
+
field 'Abw. Zustellbezeichnung 2', :string, limit: 36
|
134
134
|
|
135
135
|
# 26
|
136
136
|
field 'Kennz. Korrespondenzadresse', :boolean
|
137
137
|
# 1= Kennzeichnung Korrespondenzadresse
|
138
138
|
|
139
139
|
# 27
|
140
|
-
field 'Adresse Gültig von', :date, :
|
140
|
+
field 'Adresse Gültig von', :date, format: '%d%m%Y'
|
141
141
|
|
142
142
|
# 28
|
143
|
-
field 'Adresse Gültig bis', :date, :
|
143
|
+
field 'Adresse Gültig bis', :date, format: '%d%m%Y'
|
144
144
|
|
145
145
|
# 29
|
146
|
-
field 'Telefon', :string, :
|
146
|
+
field 'Telefon', :string, limit: 60
|
147
147
|
# Standard-Telefonnummer
|
148
148
|
|
149
149
|
# 30
|
150
|
-
field 'Bemerkung (Telefon)', :string, :
|
150
|
+
field 'Bemerkung (Telefon)', :string, limit: 40
|
151
151
|
|
152
152
|
# 31
|
153
|
-
field 'Telefon Geschäftsleitung', :string, :
|
153
|
+
field 'Telefon Geschäftsleitung', :string, limit: 60
|
154
154
|
# Geschäftsleitungs-Telefonnummer
|
155
155
|
|
156
156
|
# 32
|
157
|
-
field 'Bemerkung (Telefon GL)', :string, :
|
157
|
+
field 'Bemerkung (Telefon GL)', :string, limit: 40
|
158
158
|
|
159
159
|
# 33
|
160
|
-
field 'E-Mail', :string, :
|
160
|
+
field 'E-Mail', :string, limit: 60
|
161
161
|
|
162
162
|
# 34
|
163
|
-
field 'Bemerkung (E-Mail)', :string, :
|
163
|
+
field 'Bemerkung (E-Mail)', :string, limit: 40
|
164
164
|
|
165
165
|
# 35
|
166
|
-
field 'Internet', :string, :
|
166
|
+
field 'Internet', :string, limit: 60
|
167
167
|
|
168
168
|
# 36
|
169
|
-
field 'Bemerkung (Internet)', :string, :
|
169
|
+
field 'Bemerkung (Internet)', :string, limit: 40
|
170
170
|
|
171
171
|
# 37
|
172
|
-
field 'Fax', :string, :
|
172
|
+
field 'Fax', :string, limit: 60
|
173
173
|
|
174
174
|
# 38
|
175
|
-
field 'Bemerkung (Fax)', :string, :
|
175
|
+
field 'Bemerkung (Fax)', :string, limit: 40
|
176
176
|
|
177
177
|
# 39
|
178
|
-
field 'Sonstige', :string, :
|
178
|
+
field 'Sonstige', :string, limit: 60
|
179
179
|
|
180
180
|
# 40
|
181
|
-
field 'Bemerkung (Sonstige)', :string, :
|
181
|
+
field 'Bemerkung (Sonstige)', :string, limit: 40
|
182
182
|
|
183
183
|
# 41 bis 95
|
184
184
|
(1..5).each do |number|
|
@@ -186,23 +186,23 @@ module Datev
|
|
186
186
|
end
|
187
187
|
|
188
188
|
# 96
|
189
|
-
field 'Leerfeld 11', :integer, :
|
189
|
+
field 'Leerfeld 11', :integer, limit: 3
|
190
190
|
|
191
191
|
# 97
|
192
|
-
field 'Briefanrede', :string, :
|
192
|
+
field 'Briefanrede', :string, limit: 100
|
193
193
|
|
194
194
|
# 98
|
195
|
-
field 'Grußformel', :string, :
|
195
|
+
field 'Grußformel', :string, limit: 50
|
196
196
|
|
197
197
|
# 99
|
198
|
-
field 'Kundennummer', :string, :
|
198
|
+
field 'Kundennummer', :string, limit: 15
|
199
199
|
# Kann nicht geändert werden, wenn zentralisierte Geschäftspartner verwendet werden.
|
200
200
|
|
201
201
|
# 100
|
202
|
-
field 'Steuernummer', :string, :
|
202
|
+
field 'Steuernummer', :string, limit: 20
|
203
203
|
|
204
204
|
# 101
|
205
|
-
field 'Sprache', :integer, :
|
205
|
+
field 'Sprache', :integer, limit: 2
|
206
206
|
# 1 = Deutsch
|
207
207
|
# 4 = Französisch
|
208
208
|
# 5 = Englisch
|
@@ -210,13 +210,13 @@ module Datev
|
|
210
210
|
# 19 = Italienisch
|
211
211
|
|
212
212
|
# 102
|
213
|
-
field 'Ansprechpartner', :string, :
|
213
|
+
field 'Ansprechpartner', :string, limit: 40
|
214
214
|
|
215
215
|
# 103
|
216
|
-
field 'Vertreter', :string, :
|
216
|
+
field 'Vertreter', :string, limit: 40
|
217
217
|
|
218
218
|
# 104
|
219
|
-
field 'Sachbearbeiter', :string, :
|
219
|
+
field 'Sachbearbeiter', :string, limit: 40
|
220
220
|
|
221
221
|
# 105
|
222
222
|
field 'Diverse-Konto', :boolean
|
@@ -224,50 +224,50 @@ module Datev
|
|
224
224
|
# 1 = Ja
|
225
225
|
|
226
226
|
# 106
|
227
|
-
field 'Ausgabeziel', :integer, :
|
227
|
+
field 'Ausgabeziel', :integer, limit: 1
|
228
228
|
# 1 = Druck
|
229
229
|
# 2 = Telefax
|
230
230
|
# 3 = E-Mail
|
231
231
|
|
232
232
|
# 107
|
233
|
-
field 'Währungssteuerung', :integer, :
|
233
|
+
field 'Währungssteuerung', :integer, limit: 1
|
234
234
|
# 0 = Zahlungen in Eingabewährung
|
235
235
|
# 2 = Ausgabe in EUR
|
236
236
|
|
237
237
|
# 108
|
238
|
-
field 'Kreditlimit (Debitor)', :integer, :
|
238
|
+
field 'Kreditlimit (Debitor)', :integer, limit: 10
|
239
239
|
# Nur für Debitoren gültig
|
240
240
|
# Beispiel: 1.123.123.123
|
241
241
|
|
242
242
|
# 109
|
243
|
-
field 'Zahlungsbedingung', :integer, :
|
243
|
+
field 'Zahlungsbedingung', :integer, limit: 3
|
244
244
|
# Eine gespeicherte Zahlungsbedingung kann hier einem Geschäftspartner zugeordnet werden.
|
245
245
|
|
246
246
|
# 110
|
247
|
-
field 'Fälligkeit in Tagen (Debitor)', :integer, :
|
247
|
+
field 'Fälligkeit in Tagen (Debitor)', :integer, limit: 3
|
248
248
|
# Nur für Debitoren gültig
|
249
249
|
|
250
250
|
# 111
|
251
|
-
field 'Skonto in Prozent (Debitor)', :decimal, :
|
251
|
+
field 'Skonto in Prozent (Debitor)', :decimal, precision: 4, scale: 2
|
252
252
|
# Nur für Debitoren gültig
|
253
253
|
# Beispiel: 12,12
|
254
254
|
|
255
255
|
# 112 bis 120
|
256
256
|
(1..5).each do |number|
|
257
257
|
if 3 == number
|
258
|
-
field "Kreditoren-Ziel #{number} Brutto (Tage)", :integer, :
|
258
|
+
field "Kreditoren-Ziel #{number} Brutto (Tage)", :integer, limit: 3
|
259
259
|
else
|
260
|
-
field "Kreditoren-Ziel #{number} (Tage)", :integer, :
|
260
|
+
field "Kreditoren-Ziel #{number} (Tage)", :integer, limit: 2
|
261
261
|
# Nur für Kreditoren gültig
|
262
262
|
|
263
|
-
field "Kreditoren-Skonto #{number} (%)", :decimal, :
|
263
|
+
field "Kreditoren-Skonto #{number} (%)", :decimal, precision: 4, scale: 2
|
264
264
|
# Nur für Kreditoren gültig
|
265
265
|
# Beispiel: 12,12
|
266
266
|
end
|
267
267
|
end
|
268
268
|
|
269
269
|
# 121
|
270
|
-
field 'Mahnung', :integer, :
|
270
|
+
field 'Mahnung', :integer, limit: 1
|
271
271
|
# 0 = Keine Angaben
|
272
272
|
# 1 = 1. Mahnung
|
273
273
|
# 2 = 2. Mahnung
|
@@ -279,34 +279,34 @@ module Datev
|
|
279
279
|
# 9 = keine Mahnung
|
280
280
|
|
281
281
|
# 122
|
282
|
-
field 'Kontoauszug', :integer, :
|
282
|
+
field 'Kontoauszug', :integer, limit: 1
|
283
283
|
# 1 = Kontoauszug für alle Posten
|
284
284
|
# 2 = Auszug nur dann, wenn ein Posten mahnfähig ist
|
285
285
|
# 3 = Auszug für alle mahnfälligen Posten
|
286
286
|
# 9 = kein Kontoauszug
|
287
287
|
|
288
|
-
field 'Mahntext', :integer, :
|
288
|
+
field 'Mahntext', :integer, limit: 1
|
289
289
|
# Leer = keinen Mahntext ausgewählt
|
290
290
|
# 1 = Textgruppe 1
|
291
291
|
# ...
|
292
292
|
# 9 = Textgruppe 9
|
293
293
|
|
294
294
|
# 124
|
295
|
-
field 'Mahntext 2', :integer, :
|
295
|
+
field 'Mahntext 2', :integer, limit: 1
|
296
296
|
# Leer = keinen Mahntext ausgewählt
|
297
297
|
# 1 = Textgruppe 1
|
298
298
|
# ...
|
299
299
|
# 9 = Textgruppe 9
|
300
300
|
|
301
301
|
# 125
|
302
|
-
field 'Mahntext 3', :integer, :
|
302
|
+
field 'Mahntext 3', :integer, limit: 1
|
303
303
|
# Leer = keinen Mahntext ausgewählt
|
304
304
|
# 1 = Textgruppe 1
|
305
305
|
# ...
|
306
306
|
# 9 = Textgruppe 9
|
307
307
|
|
308
308
|
# 126
|
309
|
-
field 'Kontoauszugstext', :integer, :
|
309
|
+
field 'Kontoauszugstext', :integer, limit: 1
|
310
310
|
# Leer = kein Kontoauszugstext ausgewählt
|
311
311
|
# 1 = Kontoauszugstext 1
|
312
312
|
# ...
|
@@ -314,15 +314,15 @@ module Datev
|
|
314
314
|
# 9 = Kein Kontoauszugstext
|
315
315
|
|
316
316
|
# 127
|
317
|
-
field 'Mahnlimit Betrag', :decimal, :
|
317
|
+
field 'Mahnlimit Betrag', :decimal, precision: 7, scale: 2
|
318
318
|
# Beispiel: 12.123,12
|
319
319
|
|
320
320
|
# 128
|
321
|
-
field 'Mahnlimit %', :decimal, :
|
321
|
+
field 'Mahnlimit %', :decimal, precision: 4, scale: 2
|
322
322
|
# Beispiel: 12,12
|
323
323
|
|
324
324
|
# 129
|
325
|
-
field 'Zinsberechnung', :integer, :
|
325
|
+
field 'Zinsberechnung', :integer, limit: 1
|
326
326
|
# 0 = MPD-Schlüsselung gilt
|
327
327
|
# 1 = Fester Zinssatz
|
328
328
|
# 2 = Zinssatz über Staffel
|
@@ -330,12 +330,12 @@ module Datev
|
|
330
330
|
|
331
331
|
# 130 - 132
|
332
332
|
(1..3).each do |number|
|
333
|
-
field "Mahnzinssatz #{number}", :decimal, :
|
333
|
+
field "Mahnzinssatz #{number}", :decimal, precision: 4, scale: 2
|
334
334
|
# Beispiel: 12,12
|
335
335
|
end
|
336
336
|
|
337
337
|
# 133
|
338
|
-
field 'Lastschrift', :string, :
|
338
|
+
field 'Lastschrift', :string, limit: 1
|
339
339
|
# Leer bzw. 0 = keine Angaben, es gilt die MPD-Schlüsselung
|
340
340
|
# 1 = Einzellastschrift mit einer Rechnung
|
341
341
|
# 2 = Einzellastschrift mit mehreren Rechnungen
|
@@ -348,16 +348,16 @@ module Datev
|
|
348
348
|
# 9 = kein Lastschriftverfahren bei diesem Debitor
|
349
349
|
|
350
350
|
# 134
|
351
|
-
field 'Verfahren', :string, :
|
351
|
+
field 'Verfahren', :string, limit: 1
|
352
352
|
# 0 = Einzugsermächtigung
|
353
353
|
# 1 = Abbuchungsverfahren
|
354
354
|
|
355
355
|
# 135
|
356
|
-
field 'Mandantenbank', :integer, :
|
356
|
+
field 'Mandantenbank', :integer, limit: 4
|
357
357
|
# Zuordnung der gespeicherten Mandantenbank, die für das Lastschriftverfahren verwendet werden soll.
|
358
358
|
|
359
359
|
# 136
|
360
|
-
field 'Zahlungsträger', :string, :
|
360
|
+
field 'Zahlungsträger', :string, limit: 1
|
361
361
|
# Leer bzw. 0 = keine Angaben, es gilt die MPD-Schlüsselung
|
362
362
|
# 1 = Einzelüberweisung mit einer Rechnung
|
363
363
|
# 2 = Einzelüberweisung mit mehreren Rechnungen
|
@@ -371,57 +371,57 @@ module Datev
|
|
371
371
|
|
372
372
|
# 137 bis 151
|
373
373
|
(1..15).each do |number|
|
374
|
-
field "Indiv. Feld #{number}", :string, :
|
374
|
+
field "Indiv. Feld #{number}", :string, limit: 40
|
375
375
|
|
376
376
|
# 11 bis 15 wird derzeit nicht übernommen
|
377
377
|
end
|
378
378
|
|
379
379
|
# 152
|
380
|
-
field 'Abweichende Anrede (Rechnungsadresse)', :string, :
|
380
|
+
field 'Abweichende Anrede (Rechnungsadresse)', :string, limit: 30
|
381
381
|
# Es kann ein beliebiger individueller Text verwendet werden.
|
382
382
|
|
383
383
|
# 153
|
384
|
-
field 'Adressart (Rechnungsadresse)', :string, :
|
384
|
+
field 'Adressart (Rechnungsadresse)', :string, limit: 3
|
385
385
|
# STR = Straße
|
386
386
|
# PF = Postfach
|
387
387
|
# GK = Großkunde
|
388
388
|
# Wird die Adressart nicht übergeben, wird sie automatisch in Abhängigkeit zu den übergebenen Feldern (Straße oder Postfach) gesetzt.
|
389
389
|
|
390
390
|
# 154
|
391
|
-
field 'Straße (Rechnungsadresse)', :string, :
|
391
|
+
field 'Straße (Rechnungsadresse)', :string, limit: 36
|
392
392
|
# Wird sowohl eine Straße als auch ein Postfach übergeben, werden beide Werte in den Datenbestand übernommen; auf der Visitenkarte in den Debitoren-/Kreditoren-Stammdaten wird die Postfachadresse angezeigt.
|
393
393
|
|
394
394
|
# 155
|
395
|
-
field 'Postfach (Rechnungsadresse)', :string, :
|
395
|
+
field 'Postfach (Rechnungsadresse)', :string, limit: 10
|
396
396
|
|
397
397
|
# 156
|
398
|
-
field 'Postleitzahl (Rechnungsadresse)', :string, :
|
398
|
+
field 'Postleitzahl (Rechnungsadresse)', :string, limit: 10
|
399
399
|
|
400
400
|
# 157
|
401
|
-
field 'Ort (Rechnungsadresse)', :string, :
|
401
|
+
field 'Ort (Rechnungsadresse)', :string, limit: 30
|
402
402
|
|
403
403
|
# 158
|
404
|
-
field 'Land (Rechnungsadresse)', :string, :
|
404
|
+
field 'Land (Rechnungsadresse)', :string, limit: 2
|
405
405
|
# ISO-Code beachten (siehe Dok.-Nr. 1080169)
|
406
406
|
|
407
407
|
# 159
|
408
|
-
field 'Versandzusatz (Rechnungsadresse)', :string, :
|
408
|
+
field 'Versandzusatz (Rechnungsadresse)', :string, limit: 50
|
409
409
|
|
410
410
|
# 160
|
411
|
-
field 'Adresszusatz (Rechnungsadresse)', :string, :
|
411
|
+
field 'Adresszusatz (Rechnungsadresse)', :string, limit: 36
|
412
412
|
# Beispiel: z. Hd. Herrn Mustermann
|
413
413
|
|
414
414
|
# 161
|
415
|
-
field 'Abw. Zustellbezeichnung 1 (Rechnungsadresse)', :string, :
|
415
|
+
field 'Abw. Zustellbezeichnung 1 (Rechnungsadresse)', :string, limit: 50
|
416
416
|
|
417
417
|
# 162
|
418
|
-
field 'Abw. Zustellbezeichnung 2 (Rechnungsadresse)', :string, :
|
418
|
+
field 'Abw. Zustellbezeichnung 2 (Rechnungsadresse)', :string, limit: 36
|
419
419
|
|
420
420
|
# 163
|
421
|
-
field 'Adresse Gültig von (Rechnungsadresse)', :date, :
|
421
|
+
field 'Adresse Gültig von (Rechnungsadresse)', :date, format: '%d%m%Y'
|
422
422
|
|
423
423
|
# 164
|
424
|
-
field 'Adresse Gültig bis (Rechnungsadresse)', :date, :
|
424
|
+
field 'Adresse Gültig bis (Rechnungsadresse)', :date, format: '%d%m%Y'
|
425
425
|
|
426
426
|
# 165 bis 219
|
427
427
|
(6..10).each do |number|
|
@@ -429,7 +429,7 @@ module Datev
|
|
429
429
|
end
|
430
430
|
|
431
431
|
# 220
|
432
|
-
field 'Nummer Fremdsystem', :string, :
|
432
|
+
field 'Nummer Fremdsystem', :string, limit: 15
|
433
433
|
# Achtung: Wird bei Verwendung zentralisierter Geschäftspartner von DATEV überschrieben.
|
434
434
|
|
435
435
|
# 221
|
@@ -439,46 +439,46 @@ module Datev
|
|
439
439
|
|
440
440
|
# 222 bis 231
|
441
441
|
(1..10).each do |number|
|
442
|
-
field "SEPA-Mandatsreferenz #{number}", :string, :
|
442
|
+
field "SEPA-Mandatsreferenz #{number}", :string, limit: 35
|
443
443
|
# Sie können im Feld Mandatsreferenz dem Geschäftspartner je Bank eine Mandatsreferenz eintragen. Für eine korrekte Verwendung muss in der SEPA-Mandatsverwaltung die Mandatsreferenz für den Lastschriftteilnehmer vorhanden sein.
|
444
444
|
end
|
445
445
|
|
446
446
|
# 232
|
447
|
-
field 'Verknüpftes OPOS-Konto', :integer, :
|
447
|
+
field 'Verknüpftes OPOS-Konto', :integer, limit: 9
|
448
448
|
# Sie können für den Geschäftspartner das korrespondierende Konto (im Kreditorenbereich) erfassen, wenn es sich bei dem Geschäftspartner sowohl um einen Kunden als auch um einen Lieferanten handelt.
|
449
449
|
|
450
450
|
# --- Erweiterungen zur Jahreswechselversion 2015/2016
|
451
451
|
|
452
452
|
# 233
|
453
|
-
field 'Mahnsperre bis', :date, :
|
453
|
+
field 'Mahnsperre bis', :date, format: '%d%m%Y'
|
454
454
|
|
455
455
|
# 234
|
456
|
-
field 'Lastschriftsperre bis', :date, :
|
456
|
+
field 'Lastschriftsperre bis', :date, format: '%d%m%Y'
|
457
457
|
|
458
458
|
# 235
|
459
|
-
field 'Zahlungssperre bis', :date, :
|
459
|
+
field 'Zahlungssperre bis', :date, format: '%d%m%Y'
|
460
460
|
|
461
461
|
# 236
|
462
|
-
field 'Gebührenberechnung', :integer, :
|
462
|
+
field 'Gebührenberechnung', :integer, limit: 1
|
463
463
|
# 0 = MPD-Schlüsselung gilt
|
464
464
|
# 1 = Mahngebühr berechnen
|
465
465
|
# 9 = Keine Berechnung für diesen Debitor
|
466
466
|
|
467
467
|
# 237 bis 239
|
468
468
|
(1..3).each do |number|
|
469
|
-
field "Mahngebühr #{number}", :decimal, :
|
469
|
+
field "Mahngebühr #{number}", :decimal, precision: 4, scale: 2
|
470
470
|
# Beispiel: 12,12
|
471
471
|
end
|
472
472
|
|
473
473
|
# 240
|
474
|
-
field 'Pauschalberechnung', :integer, :
|
474
|
+
field 'Pauschalberechnung', :integer, limit: 1
|
475
475
|
# 0 = MPD-Schlüsselung gilt
|
476
476
|
# 1 = Verzugspauschale berechnen
|
477
477
|
# 9 = Keine Berechnung für diesen Debitor
|
478
478
|
|
479
479
|
# 241 bis 243
|
480
480
|
(1..3).each do |number|
|
481
|
-
field "Verzugspauschale #{number}", :decimal, :
|
481
|
+
field "Verzugspauschale #{number}", :decimal, precision: 5, scale: 2
|
482
482
|
# Beispiel: 12,12
|
483
483
|
end
|
484
484
|
end
|
data/lib/datev/base/header.rb
CHANGED
@@ -1,16 +1,16 @@
|
|
1
1
|
module Datev
|
2
2
|
class Header < Base
|
3
3
|
# 1
|
4
|
-
field 'DATEV-Format-KZ', :string, :
|
4
|
+
field 'DATEV-Format-KZ', :string, limit: 4
|
5
5
|
# vom Datev angegeben
|
6
6
|
# EXTF = für Datei-Formate, die von externen Programmen erstellt wurden
|
7
7
|
|
8
8
|
# 2
|
9
|
-
field 'Versionsnummer', :integer, :
|
9
|
+
field 'Versionsnummer', :integer, limit: 3
|
10
10
|
# entspricht der zugrundeliegenden Versionsnummer des Scnittstellen-Entwicklungsleitfadens
|
11
11
|
|
12
12
|
# 3
|
13
|
-
field 'Datenkategorie', :integer, :
|
13
|
+
field 'Datenkategorie', :integer, limit: 2
|
14
14
|
# vom Datev angegeben
|
15
15
|
|
16
16
|
# 4
|
@@ -18,65 +18,65 @@ module Datev
|
|
18
18
|
# vom Datev angegeben
|
19
19
|
|
20
20
|
# 5
|
21
|
-
field 'Formatversion', :integer, :
|
21
|
+
field 'Formatversion', :integer, limit: 3
|
22
22
|
# vom Datev angegeben
|
23
23
|
|
24
24
|
# 6
|
25
|
-
field 'Erzeugt am', :date, :
|
25
|
+
field 'Erzeugt am', :date, format: '%Y%m%d%H%M%S%L'
|
26
26
|
|
27
27
|
# 7
|
28
28
|
field 'Importiert', :date
|
29
29
|
# Darf nicht gefüllt werden, durch Import gesetzt.
|
30
30
|
|
31
31
|
# 8
|
32
|
-
field 'Herkunft', :string, :
|
32
|
+
field 'Herkunft', :string, limit: 2
|
33
33
|
# Herkunfts-Kennzeichen
|
34
34
|
# Beim Import wird das Herkunfts-Kennzeichen durch „SV“ (= Stapelverarbeitung) ersetzt.
|
35
35
|
|
36
36
|
# 9
|
37
|
-
field 'Exportiert von', :string, :
|
37
|
+
field 'Exportiert von', :string, limit: 25
|
38
38
|
# Benutzername
|
39
39
|
|
40
40
|
# 10
|
41
|
-
field 'Importiert von', :string, :
|
41
|
+
field 'Importiert von', :string, limit: 10
|
42
42
|
# Darf nicht gefüllt werden, durch Import gesetzt.
|
43
43
|
|
44
44
|
# 11
|
45
|
-
field 'Berater', :integer, :
|
45
|
+
field 'Berater', :integer, limit: 7, minimum: 1001
|
46
46
|
# Beraternummer
|
47
47
|
|
48
48
|
# 12
|
49
|
-
field 'Mandant', :integer, :
|
49
|
+
field 'Mandant', :integer, limit: 5
|
50
50
|
# Mandantennummer
|
51
51
|
|
52
52
|
# 13
|
53
|
-
field 'WJ-Beginn', :date, :
|
53
|
+
field 'WJ-Beginn', :date, format: '%Y%m%d'
|
54
54
|
# Wirtschaftsjahresbeginn
|
55
55
|
|
56
56
|
# 14
|
57
|
-
field 'Sachkontenlänge', :integer, :
|
57
|
+
field 'Sachkontenlänge', :integer, limit: 1
|
58
58
|
# Kleinste Sachkontenlänge = 4, Grösste Sachkontenlänge = 8
|
59
59
|
|
60
60
|
# 15
|
61
|
-
field 'Datum vom', :date, :
|
61
|
+
field 'Datum vom', :date, format: '%Y%m%d'
|
62
62
|
|
63
63
|
# 16
|
64
|
-
field 'Datum bis', :date, :
|
64
|
+
field 'Datum bis', :date, format: '%Y%m%d'
|
65
65
|
|
66
66
|
# 17
|
67
|
-
field 'Bezeichnung', :string, :
|
67
|
+
field 'Bezeichnung', :string, limit: 30
|
68
68
|
# Bezeichnung des Buchungsstapels
|
69
69
|
|
70
70
|
# 18
|
71
|
-
field 'Diktatkürzel', :string, :
|
71
|
+
field 'Diktatkürzel', :string, limit: 2
|
72
72
|
# Diktatkürzel Beispiel MM = Max Mustermann
|
73
73
|
|
74
74
|
# 19
|
75
|
-
field 'Buchungstyp', :integer, :
|
75
|
+
field 'Buchungstyp', :integer, limit: 1
|
76
76
|
# 1 = Finanzbuchhaltung, 2 = Jahresabschluss
|
77
77
|
|
78
78
|
# 20
|
79
|
-
field 'Rechnungslegungszweck' , :integer, :
|
79
|
+
field 'Rechnungslegungszweck' , :integer, limit: 2
|
80
80
|
# 0 oder leer = Rechnungslegungszweckunabhängig
|
81
81
|
|
82
82
|
# 21
|
@@ -86,7 +86,7 @@ module Datev
|
|
86
86
|
# 1 = Festschreibung
|
87
87
|
|
88
88
|
# 22
|
89
|
-
field 'WKZ', :string, :
|
89
|
+
field 'WKZ', :string, limit: 3
|
90
90
|
# Währungskennzeichen
|
91
91
|
|
92
92
|
# 23
|
@@ -114,7 +114,7 @@ module Datev
|
|
114
114
|
field 'reserviert 5', :string
|
115
115
|
|
116
116
|
# 31
|
117
|
-
field 'Anwendungsinformation', :string, :
|
117
|
+
field 'Anwendungsinformation', :string, limit: 16
|
118
118
|
# Verarbeitungskennzeichen der abgebenden Anwendung => Bsp. '9/2016'
|
119
119
|
end
|
120
120
|
end
|
data/lib/datev/export.rb
CHANGED
data/lib/datev/version.rb
CHANGED
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.
|
4
|
+
version: 0.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Georg Ledermann
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-02-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -134,7 +134,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
134
134
|
requirements:
|
135
135
|
- - ">="
|
136
136
|
- !ruby/object:Gem::Version
|
137
|
-
version: 2.
|
137
|
+
version: 2.2.0
|
138
138
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
139
139
|
requirements:
|
140
140
|
- - ">="
|
@@ -142,7 +142,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
142
142
|
version: '0'
|
143
143
|
requirements: []
|
144
144
|
rubyforge_project:
|
145
|
-
rubygems_version: 2.
|
145
|
+
rubygems_version: 2.7.5
|
146
146
|
signing_key:
|
147
147
|
specification_version: 4
|
148
148
|
summary: Export booking data in DATEV format
|