feat: implement header parsing

This commit is contained in:
Jan Christian Grünhage 2024-08-11 12:29:14 +02:00
parent f8449250ec
commit 19b23b51ec
12 changed files with 728 additions and 14 deletions

159
Cargo.lock generated Normal file
View file

@ -0,0 +1,159 @@
# This file is automatically @generated by Cargo.
# It is not intended for manual editing.
version = 3
[[package]]
name = "csv"
version = "1.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe"
dependencies = [
"csv-core",
"itoa",
"ryu",
"serde",
]
[[package]]
name = "csv-core"
version = "0.1.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70"
dependencies = [
"memchr",
]
[[package]]
name = "datev-rs"
version = "0.1.0"
dependencies = [
"csv",
"serde",
"time",
]
[[package]]
name = "deranged"
version = "0.3.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4"
dependencies = [
"powerfmt",
"serde",
]
[[package]]
name = "itoa"
version = "1.0.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
[[package]]
name = "memchr"
version = "2.7.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"
[[package]]
name = "num-conv"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
[[package]]
name = "powerfmt"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391"
[[package]]
name = "proc-macro2"
version = "1.0.86"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77"
dependencies = [
"unicode-ident",
]
[[package]]
name = "quote"
version = "1.0.36"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7"
dependencies = [
"proc-macro2",
]
[[package]]
name = "ryu"
version = "1.0.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f"
[[package]]
name = "serde"
version = "1.0.205"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e33aedb1a7135da52b7c21791455563facbbcc43d0f0f66165b42c21b3dfb150"
dependencies = [
"serde_derive",
]
[[package]]
name = "serde_derive"
version = "1.0.205"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "692d6f5ac90220161d6774db30c662202721e64aed9058d2c394f451261420c1"
dependencies = [
"proc-macro2",
"quote",
"syn",
]
[[package]]
name = "syn"
version = "2.0.72"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dc4b9b9bf2add8093d3f2c0204471e951b2285580335de42f9d2534f3ae7a8af"
dependencies = [
"proc-macro2",
"quote",
"unicode-ident",
]
[[package]]
name = "time"
version = "0.3.36"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885"
dependencies = [
"deranged",
"itoa",
"num-conv",
"powerfmt",
"serde",
"time-core",
"time-macros",
]
[[package]]
name = "time-core"
version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
[[package]]
name = "time-macros"
version = "0.2.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf"
dependencies = [
"num-conv",
"time-core",
]
[[package]]
name = "unicode-ident"
version = "1.0.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"

View file

@ -4,3 +4,6 @@ version = "0.1.0"
edition = "2021" edition = "2021"
[dependencies] [dependencies]
csv = "1.3.0"
serde = { version = "1.0.205", features = ["derive"] }
time = { version = "0.3.36", features = ["formatting", "parsing", "serde"] }

427
src/header.rs Normal file
View file

@ -0,0 +1,427 @@
use serde::{Deserialize, Serialize};
use time::{format_description, Date, PrimitiveDateTime};
#[derive(Debug, Serialize, Deserialize, PartialEq)]
pub enum Kennzeichen {
EXTF,
DTVF,
}
#[derive(Debug, Serialize, Deserialize, PartialEq)]
pub enum Format {
DebitorenKreditoren,
Sachkontenbeschriftungen,
Buchungsstapel,
Zahlungsbedingungen,
DiverseAdressen,
WiederkehrendeBuchungen,
}
impl Format {
pub fn get_kategorie(&self) -> u8 {
match self {
Format::DebitorenKreditoren => 16,
Format::Sachkontenbeschriftungen => 20,
Format::Buchungsstapel => 21,
Format::Zahlungsbedingungen => 46,
Format::DiverseAdressen => 48,
Format::WiederkehrendeBuchungen => 65,
}
}
pub fn get_name(&self) -> &'static str {
match self {
Format::DebitorenKreditoren => "Debitoren/Kreditoren",
Format::Sachkontenbeschriftungen => "Sachkontenbeschriftungen",
Format::Buchungsstapel => "Buchungsstapel",
Format::Zahlungsbedingungen => "Zahlungsbedingungen",
Format::DiverseAdressen => "Diverse Adressen",
Format::WiederkehrendeBuchungen => "Wiederkehrende Buchungen",
}
}
pub fn get_version(&self) -> u8 {
match self {
Format::DebitorenKreditoren => 5,
Format::Sachkontenbeschriftungen => 3,
Format::Buchungsstapel => 13,
Format::Zahlungsbedingungen => 2,
Format::DiverseAdressen => 2,
Format::WiederkehrendeBuchungen => 4,
}
}
}
impl TryFrom<u8> for Format {
type Error = &'static str;
fn try_from(value: u8) -> Result<Self, Self::Error> {
match value {
16 => Ok(Format::DebitorenKreditoren),
20 => Ok(Format::Sachkontenbeschriftungen),
21 => Ok(Format::Buchungsstapel),
46 => Ok(Format::Zahlungsbedingungen),
48 => Ok(Format::DiverseAdressen),
65 => Ok(Format::WiederkehrendeBuchungen),
_ => Err("Invalid format category"),
}
}
}
impl TryFrom<String> for Format {
type Error = &'static str;
fn try_from(value: String) -> Result<Self, Self::Error> {
match value.as_str() {
"Debitoren/Kreditoren" => Ok(Format::DebitorenKreditoren),
// Name laut Spec
"Sachkontenbeschriftungen" => Ok(Format::Sachkontenbeschriftungen),
// Name laut Musterdaten
"Kontenbeschriftungen" => Ok(Format::Sachkontenbeschriftungen),
"Buchungsstapel" => Ok(Format::Buchungsstapel),
"Zahlungsbedingungen" => Ok(Format::Zahlungsbedingungen),
"Diverse Adressen" => Ok(Format::DiverseAdressen),
"Wiederkehrende Buchungen" => Ok(Format::WiederkehrendeBuchungen),
_ => Err("Invalid format name"),
}
}
}
#[derive(Debug, Serialize, Deserialize)]
pub enum Buchungstyp {
Finanzbuchfuehrung = 1,
Jahresabschluss = 2,
}
impl TryFrom<u8> for Buchungstyp {
type Error = &'static str;
fn try_from(value: u8) -> Result<Self, Self::Error> {
match value {
1 => Ok(Buchungstyp::Finanzbuchfuehrung),
2 => Ok(Buchungstyp::Jahresabschluss),
_ => Err("Invalid value for Buchungstyp"),
}
}
}
#[derive(Debug, Serialize, Deserialize)]
pub enum Rechnungslegungszweck {
Unabhaengig = 0,
Steuerrecht = 30,
Kalkulatorik = 40,
Handelsrecht = 50,
IFRS = 64,
}
impl TryFrom<u8> for Rechnungslegungszweck {
type Error = &'static str;
fn try_from(value: u8) -> Result<Self, Self::Error> {
match value {
0 => Ok(Rechnungslegungszweck::Unabhaengig),
30 => Ok(Rechnungslegungszweck::Steuerrecht),
40 => Ok(Rechnungslegungszweck::Kalkulatorik),
50 => Ok(Rechnungslegungszweck::Handelsrecht),
64 => Ok(Rechnungslegungszweck::IFRS),
_ => Err("Invalid value for Rechnungslegungszweck"),
}
}
}
#[derive(Debug, Serialize, Deserialize)]
pub enum Festschreibung {
KeineFestschreibung = 0,
Festschreibung = 1,
}
impl TryFrom<u8> for Festschreibung {
type Error = &'static str;
fn try_from(value: u8) -> Result<Self, Self::Error> {
match value {
0 => Ok(Festschreibung::KeineFestschreibung),
1 => Ok(Festschreibung::Festschreibung),
_ => Err("Invalid value for Festschreibung"),
}
}
}
// Benutzerfreundliche Struktur für den DatevHeader
#[derive(Debug, Serialize, Deserialize)]
pub struct DatevHeader {
pub kennzeichen: Kennzeichen, // EXTF oder DTVF
pub format: Format, // Formatkategorie, -name, -version
pub erzeugt_am: PrimitiveDateTime, // Zeitstempel YYYYMMDDHHMMSSFFF
pub herkunft: Option<String>, // Herkunft, z.B. RE
pub exportiert_von: Option<String>, // Beispiel: Max Mustermann
pub importiert_von: Option<String>, // Beispiel: Admin
pub beraternummer: u32, // Bereich 1001-9999999
pub mandantennummer: u32, // Bereich 1-99999
pub wj_beginn: Date, // Wirtschafts-Jahresbeginn YYYYMMDD
pub sachkontenlaenge: u8, // 4-8
pub datum_von: Option<Date>, // Beginn der Periode YYYYMMDD
pub datum_bis: Option<Date>, // Ende der Periode YYYYMMDD
pub bezeichnung: Option<String>, // Beispiel: Rechnungsausgang 02/2024
pub diktatkuerzel: Option<String>, // Beispiel: MM
pub buchungstyp: Option<Buchungstyp>, // 1 = Finanzbuchführung, 2 = Jahresabschluss
pub rechnungslegungszweck: Option<Rechnungslegungszweck>, // 0, 30, 40, 50, 64
pub festschreibung: Option<Festschreibung>, // 0 = keine Festschreibung, 1 = Festschreibung
pub wkz: String, // Währungscode, z.B. EUR
pub sachkontenrahmen: Option<String>, // z.B. "03"
pub id_der_branchenloesung: Option<u16>, // max 4-stellige Zahl
pub anwendungsinformation: Option<String>, // z.B. 02/2024
}
// Struktur für die deserialisierte Darstellung des Headers (entspricht exakt dem CSV-Format)
#[derive(Debug, Serialize, Deserialize)]
pub struct DatevHeaderRaw {
pub kennzeichen: String, // EXTF oder DTVF als String
pub versionsnummer: u16, // 700
pub formatkategorie: u8, // z.B. 21
pub formatname: String, // z.B. "Buchungsstapel"
pub formatversion: u8, // z.B. 13
pub erzeugt_am: String, // YYYYMMDDHHMMSSFFF als String
pub importiert: Option<String>, // Leer
pub herkunft: Option<String>, // Herkunft, z.B. RE
pub exportiert_von: Option<String>, // Beispiel: Max Mustermann
pub importiert_von: Option<String>, // Beispiel: Admin
pub beraternummer: u32, // Bereich 1001-9999999
pub mandantennummer: u32, // Bereich 1-99999
pub wj_beginn: String, // YYYYMMDD als String
pub sachkontenlaenge: u8, // 4-8
pub datum_von: String, // YYYYMMDD als String
pub datum_bis: String, // YYYYMMDD als String
pub bezeichnung: Option<String>, // Beispiel: Rechnungsausgang 02/2024
pub diktatkuerzel: Option<String>, // Beispiel: MM
pub buchungstyp: Option<u8>, // 1 = Finanzbuchführung, 2 = Jahresabschluss
pub rechnungslegungszweck: Option<u8>, // 0, 30, 40, 50, 64
pub festschreibung: Option<u8>, // 0 = keine Festschreibung, 1 = Festschreibung
pub wkz: String, // Währungscode, z.B. EUR
pub reserviert_0: String,
pub derivatskennzeichen: String,
pub reserviert_1: String,
pub reserviert_2: String,
pub sachkontenrahmen: Option<String>, // z.B. "03"
pub id_der_branchenloesung: Option<u16>, // max 4-stellige Zahl
pub reserviert_3: String,
pub reserviert_4: String,
pub anwendungsinformation: Option<String>, // z.B. 02/2024
}
// Implementierung der Konvertierung von DatevHeader nach DatevHeaderRaw
impl From<DatevHeader> for DatevHeaderRaw {
fn from(header: DatevHeader) -> Self {
let datetime_format =
format_description::parse("[year][month][day][hour][minute][second][subsecond]")
.unwrap();
let date_format = format_description::parse("[year][month][day]").unwrap();
DatevHeaderRaw {
kennzeichen: match header.kennzeichen {
Kennzeichen::EXTF => "EXTF".to_string(),
Kennzeichen::DTVF => "DTVF".to_string(),
},
versionsnummer: 700, // Feststehender Wert
formatkategorie: header.format.get_kategorie(),
formatname: header.format.get_name().to_string(),
formatversion: header.format.get_version(),
erzeugt_am: header.erzeugt_am.format(&datetime_format).unwrap(),
importiert: None, // Entspricht der CSV-Spec
herkunft: header.herkunft,
exportiert_von: header.exportiert_von,
importiert_von: header.importiert_von,
beraternummer: header.beraternummer,
mandantennummer: header.mandantennummer,
wj_beginn: header.wj_beginn.format(&date_format).unwrap(),
sachkontenlaenge: header.sachkontenlaenge,
datum_von: header
.datum_von
.map(|val| val.format(&date_format).unwrap())
.unwrap_or_else(|| String::new()),
datum_bis: header
.datum_bis
.map(|val| val.format(&date_format).unwrap())
.unwrap_or_else(|| String::new()),
bezeichnung: header.bezeichnung,
diktatkuerzel: header.diktatkuerzel,
buchungstyp: header.buchungstyp.map(|val| val as u8),
rechnungslegungszweck: header.rechnungslegungszweck.map(|val| val as u8),
festschreibung: header.festschreibung.map(|val| val as u8),
wkz: header.wkz,
reserviert_0: String::new(),
derivatskennzeichen: String::new(),
reserviert_1: String::new(),
reserviert_2: String::new(),
sachkontenrahmen: header.sachkontenrahmen,
id_der_branchenloesung: header.id_der_branchenloesung,
reserviert_3: String::new(),
reserviert_4: String::new(),
anwendungsinformation: header.anwendungsinformation,
}
}
}
impl TryFrom<DatevHeaderRaw> for DatevHeader {
type Error = String;
fn try_from(raw: DatevHeaderRaw) -> Result<Self, Self::Error> {
let datetime_format =
format_description::parse("[year][month][day][hour][minute][second][subsecond]")
.unwrap();
let date_format = format_description::parse("[year][month][day]").unwrap();
let parse_date =
|date_string: &str, date_name: &'static str| -> Result<Option<Date>, String> {
Ok(if !date_string.is_empty() {
Some(Date::parse(date_string, &date_format).map_err(|_| {
format!("Invalid date format for {date_name}: {date_string}")
})?)
} else {
None
})
};
let erzeugt_am = PrimitiveDateTime::parse(&raw.erzeugt_am, &datetime_format)
.map_err(|_| "Invalid date format for erzeugt_am")?;
let wj_beginn = Date::parse(&raw.wj_beginn, &date_format)
.map_err(|_| format!("Invalid date format for wj_beginn"))?;
let datum_von = parse_date(&raw.datum_von, "datum_von")?;
let datum_bis = parse_date(&raw.datum_bis, "datum_bis")?;
let format = Format::try_from(raw.formatkategorie).and_then(|kategorie| {
Format::try_from(raw.formatname).and_then(|name| {
if kategorie == name {
Ok(kategorie)
} else {
Err("Mismatch between format category and name")
}
})
})?;
Ok(DatevHeader {
kennzeichen: match raw.kennzeichen.as_str() {
"EXTF" => Kennzeichen::EXTF,
"DTVF" => Kennzeichen::DTVF,
_ => return Err("Invalid value for kennzeichen".to_string()),
},
format,
erzeugt_am,
herkunft: raw.herkunft,
exportiert_von: raw.exportiert_von,
importiert_von: raw.importiert_von,
beraternummer: raw.beraternummer,
mandantennummer: raw.mandantennummer,
wj_beginn,
sachkontenlaenge: raw.sachkontenlaenge,
datum_von,
datum_bis,
bezeichnung: raw.bezeichnung,
diktatkuerzel: raw.diktatkuerzel,
buchungstyp: if let Some(buchungstyp) = raw.buchungstyp {
Some(
Buchungstyp::try_from(buchungstyp)
.map_err(|_| "Invalid value for buchungstyp")?,
)
} else {
None
},
rechnungslegungszweck: if let Some(rechnungslegungszweck) = raw.rechnungslegungszweck {
Some(
Rechnungslegungszweck::try_from(rechnungslegungszweck)
.map_err(|_| "Invalid value for rechnungslegungszweck")?,
)
} else {
None
},
festschreibung: if let Some(festschreibung) = raw.festschreibung {
Some(
Festschreibung::try_from(festschreibung)
.map_err(|_| "Invalid value for festschreibung")?,
)
} else {
None
},
wkz: raw.wkz,
sachkontenrahmen: raw.sachkontenrahmen,
id_der_branchenloesung: raw.id_der_branchenloesung,
anwendungsinformation: raw.anwendungsinformation,
})
}
}
#[cfg(test)]
mod tests {
use super::*;
use csv::ReaderBuilder;
use std::path::PathBuf;
fn read_first_row_from_csv(file_path: PathBuf) -> Result<DatevHeaderRaw, csv::Error> {
let mut rdr = ReaderBuilder::new()
.delimiter(b';')
.has_headers(false)
.from_path(file_path)?;
rdr.deserialize().next().unwrap()
}
#[test]
fn test_debitoren_kreditoren_stamm_conversion() {
let file_path = PathBuf::from("tests/data/EXTF_DebKred_Stamm.csv");
let raw_header: DatevHeaderRaw =
read_first_row_from_csv(file_path).expect("Failed to read CSV");
let header: DatevHeader =
DatevHeader::try_from(raw_header).expect("Conversion to DatevHeader failed");
assert_eq!(header.format, Format::DebitorenKreditoren);
}
#[test]
fn test_sachkontobeschriftungen_conversion() {
let file_path = PathBuf::from("tests/data/EXTF_Sachkontobeschriftungen.csv");
let raw_header: DatevHeaderRaw =
read_first_row_from_csv(file_path).expect("Failed to read CSV");
let header: DatevHeader =
DatevHeader::try_from(raw_header).expect("Conversion to DatevHeader failed");
assert_eq!(header.format, Format::Sachkontenbeschriftungen);
}
#[test]
fn test_buchungsstapel_conversion() {
let file_path = PathBuf::from("tests/data/EXTF_Buchungsstapel.csv");
let raw_header: DatevHeaderRaw =
read_first_row_from_csv(file_path).expect("Failed to read CSV");
let header: DatevHeader =
DatevHeader::try_from(raw_header).expect("Conversion to DatevHeader failed");
assert_eq!(header.format, Format::Buchungsstapel);
assert_eq!(header.kennzeichen, Kennzeichen::EXTF);
}
#[test]
fn test_div_adressen_conversion() {
let file_path = PathBuf::from("tests/data/EXTF_Div-Adressen.csv");
let raw_header: DatevHeaderRaw =
read_first_row_from_csv(file_path).expect("Failed to read CSV");
let header: DatevHeader =
DatevHeader::try_from(raw_header).expect("Conversion to DatevHeader failed");
assert_eq!(header.format, Format::DiverseAdressen);
}
#[test]
fn test_wiederkehrende_buchungen_conversion() {
let file_path = PathBuf::from("tests/data/EXTF_Wiederkehrende-Buchungen.csv");
let raw_header: DatevHeaderRaw =
read_first_row_from_csv(file_path).expect("Failed to read CSV");
let header: DatevHeader =
DatevHeader::try_from(raw_header).expect("Conversion to DatevHeader failed");
assert_eq!(header.format, Format::WiederkehrendeBuchungen);
}
#[test]
fn test_zahlungsbedingungen_conversion() {
let file_path = PathBuf::from("tests/data/EXTF_Zahlungsbedingungen.csv");
let raw_header: DatevHeaderRaw =
read_first_row_from_csv(file_path).expect("Failed to read CSV");
let header: DatevHeader =
DatevHeader::try_from(raw_header).expect("Conversion to DatevHeader failed");
assert_eq!(header.format, Format::Zahlungsbedingungen);
}
}

View file

@ -1,14 +1 @@
pub fn add(left: u64, right: u64) -> u64 { mod header;
left + right
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn it_works() {
let result = add(2, 2);
assert_eq!(result, 4);
}
}

View file

@ -0,0 +1,56 @@
"EXTF";700;21;"Buchungsstapel";13;20240130140440439;;"RE";"";"";29098;55003;20240101;4;20240101;20240831;"Buchungsstapel";"WD";1;0;0;"EUR";;"";;;"03";;;"";""
Umsatz (ohne Soll/Haben-Kz);Soll/Haben-Kennzeichen;WKZ Umsatz;Kurs;Basis-Umsatz;WKZ Basis-Umsatz;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. UStID (Bestimmung);EU-Steuersatz (Bestimmung);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-Land (Anzahlungen);Sachverhalt L+L (Anzahlungen);EU-Steuersatz (Anzahlungen);Erlöskonto (Anzahlungen);Herkunft-Kz;Buchungs GUID;KOST-Datum;SEPA-Mandatsreferenz;Skontosperre;Gesellschaftername;Beteiligtennummer;Identifikationsnummer;Zeichnernummer;Postensperre bis;Bezeichnung SoBil-Sachverhalt;Kennzeichen SoBil-Buchung;Festschreibung;Leistungsdatum;Datum Zuord. Steuerperiode;Fälligkeit;Generalumkehr (GU);Steuersatz;Land;Abrechnungsreferenz;BVV-Position;EU-Land u. UStID (Ursprung);EU-Steuersatz (Ursprung);Abw. Skontokonto
100,18;"S";"";;;"";48400;8401;"";3101;"";"";;"Test Anzahlung";;"";1;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"50";"";;"";;"";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";2012;;1;"Projekt 4711";"AG";3;"";;;8070;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
10,00;"S";"";;;"";48220;8400;"";3103;"";"";;" "Normalabschr. immater. VermG" ";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"90";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
64083;"S";"";;;"";4400;85;"";3101;"";"";;"Normalabschreibung Gebäude";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"50";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
531,16;"S";"";;;"";4832;320;"";3101;"";"";;"Normalabschreibung Kfz";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"20";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
4979,65;"H";"";;;"";8400;30200;"";0902;"201802010";"";;"";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"202";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
11687,62;"H";"";;;"";8120;40000;"";0902;"201802011";"";;"";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"299";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
13968,83;"H";"";;;"";8125;40100;"";1602;"201802023";"";;"";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"299";"889";5;"DE133546770";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
11807,63;"H";"";;;"";8125;40100;"";1702;"201802024";"";;"";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"299";"";;"DE133546770";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
4120,51;"H";"";;;"";8405;30100;"";1702;"201802025";"";;"";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"201";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
16585,28;"H";"";;;"";8405;10200;"";1702;"201802026";"";;"";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"202";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
15301,67;"H";"";;;"";8400;10300;"";2002;"201802027";"";;"";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"201";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
7404,94;"H";"";;;"";8400;60391;"";2102;"201802028";"";;"";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"199";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
66976,12;"H";"";;;"";8407;10400;"";2202;"201802029";"";;"";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"201";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
118,55;"H";"";;;"";1000;1369;"";0202;"4";"";;"Test-Shop";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"Beleg fehlt";"Post";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
26,87;"H";"";;;"";1000;4930;"9";0102;"";"";;"Schreibwaren";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"90";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
460,00;"S";"";;;"";1000;1360;"";0702;"";"";;"Kasseneinlage";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
124,00;"H";"CHF";1,240402;100,00;"EUR";8120;20050;"";2702;"";"";;"Umsatz Schweiz";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
70,96;"H";"";;;"";1100;4530;"9";2702;"";"";;"Diesel";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"20";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
17107,00;"S";"";;;"";31100;8125;"";2702;"201202007";"";;"Ausland EU";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"520";"45";30;"ATU52409200";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";0;"";;;0;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
5856,00;"H";"";;;"";1100;980;"";2802;"";"";;"Gebäudeversicherung 03/12-02/13";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
70,27;"H";"";;;"";1100;4530;"9";2802;"";"";;"Benzin";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"20";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
1763,58;"H";"";;;"";1100;4580;"9";2802;"";"";;"Leasing Van";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"20";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
1190,00;"H";"";;;"";8050;10100;"3";1403;"AR1234";"";;"Aufteilung AR ohne Automatikkonto";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
700,00;"S";"";;;"";8050;8060;"";1403;"AR1234";"";;"Aufteilung auf Erlöskonto";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
300,00;"S";"";;;"";8050;8070;"";1403;"AR1234";"";;"Aufteilung auf Erlöskonto";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
1190,00;"H";"";;;"";8400;10100;"";1403;"AR2345";"";;"Aufteilung AR mit Automatikkonto";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
600,00;"S";"";;;"";8400;8401;"40";1403;"AR2345";"";;"Auftreilung auf Erlöskonto";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
400,00;"S";"";;;"";8400;8405;"40";1403;"AR2345";"";;"Auftreilung auf Erlöskonto";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
2500,00;"S";"";;;"";10100;8400;"";0103;"AR-78/13";"160318";;"Holzlieferung";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
2500,00;"S";"";;;"";1200;10100;"";0103;"AR-78/13";"";;"Bezahlung";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
119,00;"S";"";;;"";10100;8400;"";0103;"AR-456/13";"";;"Rechnung mit Skontogewährung";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
116,62;"S";"";;;"";1200;10100;"";0103;"AR-456/13";"";2,38;"Zahlung mit 2% Skonto";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
35,00;"S";"";;;"";10001;8400;"";0103;"AR-2013";"";;"falscher Debitor";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
35,00;"H";"";;;"";10001;8400;"20";0103;"AR-2013";"";;"Berichtigung";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
35,00;"S";"";;;"";10100;8400;"";0103;"AR-2013";"";;"richtiger Debitor";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
488,00;"H";"";;;"";980;4360;"";0101;"";"";;"Gebäudeversicherung";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"10";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"WK";"";;"";;"";;"";"";;"";;0;;;;"";;"";"";;"";;
102,80;"H";"GBP";0,830000;123,86;"EUR";1225;71000;"";0603;"659832";"";;"Duncen Test Ltd.";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"RE";"";;"";0;"";"";"";"";;"";;0;;;;"0";0,00;"";"";;"";;
1,51;"H";"";;;"";2661;71000;"";0603;"659832";"";;"Währungsumrechnungsdifferenz";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"99";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"RE";"";;"";0;"";"";"";"";;"";;0;;;;"0";0,00;"";"";;"";;
343,65;"H";"GBP";0,830000;414,04;"EUR";1225;71000;"";0603;"659833";"";;"Duncen Test Ltd.";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"RE";"";;"";0;"";"";"";"";;"";;0;;;;"0";0,00;"";"";;"";;
2,51;"H";"";;;"";2661;71000;"";0603;"659833";"";;"Währungsumrechnungsdifferenz";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"99";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"RE";"";;"";0;"";"";"";"";;"";;0;;;;"0";0,00;"";"";;"";;
2685,69;"H";"CHF";1,076000;2495,99;"EUR";8120;20200;"";1303;"20JJ03069";"";;"Schweizertest";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"299";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"RE";"";;"";0;"";"";"";"";;"";;0;;;;"0";0,00;"";"";;"";;
2847,33;"H";"CHF";1,072300;2655,35;"EUR";8120;20203;"";1403;"20JJ03070";"";;"Exempel Uhrmacher";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"299";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"RE";"";;"";0;"";"";"";"";;"";;0;;;;"0";0,00;"";"";;"";;
1612,12;"H";"CHF";1,069900;1506,80;"EUR";8120;20202;"";1603;"20JJ03071";"";;"Rübli-Test";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"299";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";;"";;;;"RE";"";;"";0;"";"";"";"";;"";;0;;;;"0";0,00;"";"";;"";;
119,00;"H";"";;;"";10001;8400;"";3005;"2345";"";;"Testleistungsdatum Ausgangsrechn. buchen nach Rechnungsdatum";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"30";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";0;"";;;0;"";"";;"";0;"";"";"";"";;"";;0;10052018;;;"";;"";"";;"";;
357,00;"H";"";;;"";70000;3400;"";2505;"ER234";"";;"Testleistungsdatum Eingangsrechn. buchen nach Rechnungsdatum";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"30";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";0;"";;;0;"";"";;"";0;"";"";"";"";;"";;0;12052018;25052018;;"";;"";"";;"";;
55,55;"H";"";;;"";10500;8050;"3";0203;"ar1111";"";;"Generalumkehr";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";0;"";;;0;"RE";"";;"";0;"";"";"";"";;"";;0;;;;"1";0,00;"";"";;"";;
100,00;"H";"";;;"";70010;4900;"501";3101;"363";"";;"501";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";1;190;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";0;"";;;0;"RE";"";;"";0;"";"";"";"";;"";;0;;;;"0";0,00;"";"";;"";;
100,00;"S";"";;;"";70010;4900;"501";3101;"363";"";;"501 GU";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";1;190;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";0;"";;;0;"RE";"";;"";0;"";"";"";"";;"";;0;;;;"1";0,00;"";"";;"";;
100,00;"H";"";;;"";70020;4900;"502";3101;"364";"";;"502";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";1;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";0;"";;;0;"RE";"";;"";0;"";"";"";"";;"";;0;;;;"0";0,00;"";"";;"";;
100,00;"S";"";;;"";70020;4900;"502";3101;"364";"";;"502 GU";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";1;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";0;"";;;0;"RE";"";;"";0;"";"";"";"";;"";;0;;;;"1";0,00;"";"";;"";;
100,00;"H";"";;;"";70030;4900;"6501";3101;"365";"";;"6501";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";1;190;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";0;"";;;0;"RE";"";;"";0;"";"";"";"";;"";;0;;;;"0";0,00;"";"";;"";;
100,00;"S";"";;;"";70030;4900;"6501";3101;"365";"";;"6501 GU";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";1;190;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";0;"";;;0;"RE";"";;"";0;"";"";"";"";;"";;0;;;;"1";0,00;"";"";;"";;
100,00;"H";"";;;"";70040;4900;"6502";3101;"366";"";;"6502";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";1;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";0;"";;;0;"RE";"";;"";0;"";"";"";"";;"";;0;;;;"0";0,00;"";"";;"";;
100,00;"S";"";;;"";70040;4900;"6502";3101;"366";"";;"6502 GU";;"";;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;"";1;;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;;"";;;;"";"";0;"";;;0;"RE";"";;"";0;"";"";"";"";;"";;0;;;;"1";0,00;"";"";;"";;
Can't render this file because it has a wrong number of fields in line 2.

View file

@ -0,0 +1,6 @@
"EXTF";700;16;"Debitoren/Kreditoren";5;20240130140659583;;"RE";"";"";29098;55003;20240101;4;;;"";"";;;;"";;"";;;"03";;;"";""
Konto;Name (Adressattyp Unternehmen);Unternehmensgegenstand;Name (Adressattyp natürl. Person);Vorname (Adressattyp natürl. Person);Name (Adressattyp keine Angabe);Adressattyp;Kurzbezeichnung;EU-Land;EU-UStID;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 GL;Bemerkung (Telefon GL);E-Mail;Bemerkung (E-Mail);Internet;Bemerkung (Internet);Fax;Bemerkung (Fax);Sonstige;Bemerkung (Sonstige);Bankleitzahl 1;Bankbezeichnung 1;Bank-Kontonummer 1;Länderkennzeichen 1;IBAN-Nr. 1;Leerfeld;SWIFT-Code 1;Abw. Kontoinhaber 1;Kennz. Hauptbankverb. 1;Bankverb 1 Gültig von;Bankverb 1 Gültig bis;Bankleitzahl 2;Bankbezeichnung 2;Bank-Kontonummer 2;Länderkennzeichen 2;IBAN-Nr. 2;Leerfeld;SWIFT-Code 2;Abw. Kontoinhaber 2;Kennz. Hauptbankverb. 2;Bankverb 2 Gültig von;Bankverb 2 Gültig bis;Bankleitzahl 3;Bankbezeichnung 3;Bank-Kontonummer 3;Länderkennzeichen 3;IBAN-Nr. 3;Leerfeld;SWIFT-Code 3;Abw. Kontoinhaber 3;Kennz. Hauptbankverb. 3;Bankverb 3 Gültig von;Bankverb 3 Gültig bis;Bankleitzahl 4;Bankbezeichnung 4;Bank-Kontonummer 4;Länderkennzeichen 4;IBAN-Nr. 4;Leerfeld;SWIFT-Code 4;Abw. Kontoinhaber 4;Kennz. Hauptbankverb. 4;Bankverb 4 Gültig von;Bankverb 4 Gültig bis;Bankleitzahl 5;Bankbezeichnung 5;Bank-Kontonummer 5;Länderkennzeichen 5;IBAN-Nr. 5;Leerfeld;SWIFT-Code 5;Abw. Kontoinhaber 5;Kennz. Hauptbankverb. 5;Bankverb 5 Gültig von;Bankverb 5 Gültig bis;Leerfeld;Briefanrede;Grußformel;Kunden-/Lief.-Nr.;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 Tg.;Kreditoren-Skonto 1 %;Kreditoren-Ziel 2 Tg.;Kreditoren-Skonto 2 %;Kreditoren-Ziel 3 Brutto Tg.;Kreditoren-Ziel 4 Tg.;Kreditoren-Skonto 4 %;Kreditoren-Ziel 5 Tg.;Kreditoren-Skonto 5 %;Mahnung;Kontoauszug;Mahntext 1;Mahntext 2;Mahntext 3;Kontoauszugstext;Mahnlimit Betrag;Mahnlimit %;Zinsberechnung;Mahnzinssatz 1;Mahnzinssatz 2;Mahnzinssatz 3;Lastschrift;Leerfeld;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;Bank-Kontonummer 6;Länderkennzeichen 6;IBAN-Nr. 6;Leerfeld;SWIFT-Code 6;Abw. Kontoinhaber 6;Kennz. Hauptbankverb. 6;Bankverb 6 Gültig von;Bankverb 6 Gültig bis;Bankleitzahl 7;Bankbezeichnung 7;Bank-Kontonummer 7;Länderkennzeichen 7;IBAN-Nr. 7;Leerfeld;SWIFT-Code 7;Abw. Kontoinhaber 7;Kennz. Hauptbankverb. 7;Bankverb 7 Gültig von;Bankverb 7 Gültig bis;Bankleitzahl 8;Bankbezeichnung 8;Bank-Kontonummer 8;Länderkennzeichen 8;IBAN-Nr. 8;Leerfeld;SWIFT-Code 8;Abw. Kontoinhaber 8;Kennz. Hauptbankverb. 8;Bankverb 8 Gültig von;Bankverb 8 Gültig bis;Bankleitzahl 9;Bankbezeichnung 9;Bank-Kontonummer 9;Länderkennzeichen 9;IBAN-Nr. 9;Leerfeld;SWIFT-Code 9;Abw. Kontoinhaber 9;Kennz. Hauptbankverb. 9;Bankverb 9 Gültig von;Bankverb 9 Gültig bis;Bankleitzahl 10;Bankbezeichnung 10;Bank-Kontonummer 10;Länderkennzeichen 10;IBAN-Nr. 10;Leerfeld;SWIFT-Code 10;Abw. Kontoinhaber 10;Kennz. Hauptbankverb. 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;Pauschalenberechnung;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
10000;"Möbel Testgruber";"Schreinerei";"";"";"";"2";"Möbel Testgrube";"DE";"133546770";"Firma";"";"";"";"STR";"Nelkenteststraße 125";"";"90482";"Nürnberg";"";"";"";"Firma";"";"";1;01012012;;"";"";"";"";"";"";"";"";"";"";"";"";"50090500";"Sparda-Bank Hessen";"2345678";"DE";"DE49100102220002222222";"";"GENODEF1S12";"Herr Testmüller";"1";01012012;01012022;"50090500";"Sparda-Bank Hessen";"2345678";"DE";"DE49100102220002222222";"";"GENODEF1S12";"Herr Testmüller";"0";01012012;01012020;"50090500";"Sparda-Bank Hessen";"2345678";"DE";"DE49100102220002222222";"";"GENODEF1S12";"Herr Testmüller";"0";01012012;01012020;"50090500";"Sparda-Bank Hessen";"2345678";"DE";"DE49100102220002222222";"";"GENODEF1S12";"Herr Testmüller";"0";01012012;01012020;"50090500";"Sparda-Bank Hessen";"2345678";"DE";"DE49100102220002222222";"";"GENODEF1S12";"Herr Testmüller";"0";01012012;01012020;"";"Sehr geehrte Frau";"Hallo";"KDN 12345";"DE776655";"1";"Frau Huber";"Herr Schmid";"Frau Tester";;;"";0;0;0;0,00;0;0,00;0;0,00;0;0;0,00;0;0,00;7;;;;;;23,30;20,25;1;10,50;11,11;12,12;"7";"1";1;"9";"ind. Feld";"";"";"";"";"";"";"";"";"";"";"individuelle Beschriftung";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";0;"1234-AB-56787";"";"";"";"";"";"";"";"";"778259637";;03122018;02122018;01122018;1;5,1;5,2;5,3;1;0,9;0,2;0,5;"";1;0;"";1;"";;;;;
20000;"Einrichtungshaus Muster";"Möbelhaus";"";"";"";"2";"Muster";"";"";"Firma";"";"";"";"STR";"Feldgasse 15";"";"90409";"Nürnberg";"";"";"";"Firma";"";"";1;01012012;;"";"";"";"";"";"";"";"";"";"";"";"";"50090500";"Sparda-Bank Hessen";"2345678";"DE";"DE49100102220002222222";"";"GENODEF1S12";"Herr Testmüller";"1";01012012;01012023;"50090500";"Sparda-Bank Hessen";"2345678";"DE";"DE49100102220002222222";"";"GENODEF1S12";"Herr Testmüller";"0";01012012;01012023;"50090500";"Sparda-Bank Hessen";"2345678";"DE";"DE49100102220002222222";"";"GENODEF1S12";"Herr Testmüller";"0";01012012;01012023;"50090500";"Sparda-Bank Hessen";"2345678";"DE";"DE49100102220002222222";"";"GENODEF1S12";"Herr Testmüller";"0";01012012;01012023;"50090500";"Sparda-Bank Hessen";"2345678";"DE";"DE49100102220002222222";"";"GENODEF1S12";"Herr Testmüller";"0";01012012;01012023;"";"Sehr geehrte Frau";"Hallo";"KDN 12345";"DE776655";"1";"Frau Huber";"Herr Schmid";"Frau Tester";;;"";0;0;0;0,00;0;0,00;0;0,00;0;0;0,00;0;0,00;7;;;;;;23,30;;;;;;"";"";0;"";"";"";"";"";"";"";"";"";"";"";"";"individuelle Beschriftung";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";0;"";"";"";"";"";"";"";"";"";"";;03122018;02122018;01122018;1;5,1;5,2;5,3;1;0,9;0,2;0,5;"";;;"";;"";;;;;
30000;"";"";"Mustermeier";"Hans";"";"1";"";"";"";"Herr";"";"";"";"STR";"Musterweg 14b";"";"90489";"Nürnberg";"";"";"";"Firma";"";"";1;01012012;;"";"";"";"";"";"";"";"";"";"";"";"";"50090500";"Sparda-Bank Hessen";"2345678";"DE";"DE49100102220002222222";"";"GENODEF1S12";"Herr Testmüller";"1";01012012;01012024;"50090500";"Sparda-Bank Hessen";"2345678";"DE";"DE49100102220002222222";"";"GENODEF1S12";"Herr Testmüller";"0";01012012;01012023;"50090500";"Sparda-Bank Hessen";"2345678";"DE";"DE49100102220002222222";"";"GENODEF1S12";"Herr Testmüller";"0";01012012;01012023;"50090500";"Sparda-Bank Hessen";"2345678";"DE";"DE49100102220002222222";"";"GENODEF1S12";"Herr Testmüller";"0";01012012;01012023;"50090500";"Sparda-Bank Hessen";"2345678";"DE";"DE49100102220002222222";"";"GENODEF1S12";"Herr Testmüller";"0";01012012;01012023;"";"Sehr geehrte Frau";"Hallo";"KDN 12345";"DE776655";"1";"Frau Huber";"Herr Schmid";"Frau Tester";;;"";0;0;0;0,00;0;0,00;0;0,00;0;0;0,00;0;0,00;7;;;;;;23,30;;;;;;"";"";0;"";"";"";"";"";"";"";"";"";"";"";"";"individuelle Beschriftung";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";0;"";"";"";"";"";"";"";"";"";"";;;;;1;5,1;5,2;5,3;1;0,9;0,2;0,5;"";;;"";;"";;;;;
40000;"";"";"Testhuber";"Susanne";"";"1";"";"";"";"Frau";"";"";"";"STR";"Beispielstr. 56";"";"90512";"Nürnberg";"";"";"";"Firma";"";"";1;01012012;;"";"";"";"";"";"";"";"";"";"";"";"";"50090500";"Sparda-Bank Hessen";"2345678";"DE";"DE49100102220002222222";"";"GENODEF1S12";"Herr Testmüller";"1";01012012;01012025;"50090500";"Sparda-Bank Hessen";"2345678";"DE";"DE49100102220002222222";"";"GENODEF1S12";"Herr Testmüller";"0";01012012;01012023;"50090500";"Sparda-Bank Hessen";"2345678";"DE";"DE49100102220002222222";"";"GENODEF1S12";"Herr Testmüller";"0";01012012;01012023;"50090500";"Sparda-Bank Hessen";"2345678";"DE";"DE49100102220002222222";"";"GENODEF1S12";"Herr Testmüller";"0";01012012;01012023;"50090500";"Sparda-Bank Hessen";"2345678";"DE";"DE49100102220002222222";"";"GENODEF1S12";"Herr Testmüller";"0";01012012;01012023;"";"Sehr geehrte Frau";"Hallo";"KDN 12345";"DE776655";"1";"Frau Huber";"Herr Schmid";"Frau Tester";;;"";0;0;0;0,00;0;0,00;0;0,00;0;0;0,00;0;0,00;7;;;;;;23,30;;;;;;"";"";0;"";"";"";"";"";"";"";"";"";"";"";"";"individuelle Beschriftung";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";0;"";"";"";"";"";"";"";"";"";"";;;;;1;5,1;5,2;5,3;1;0,9;0,2;0,5;"";;;"";;"";;;;;
Can't render this file because it has a wrong number of fields in line 2.

View file

@ -0,0 +1,5 @@
"EXTF";700;48;"Diverse Adressen";2;20240118132115652;;"RE";"Admin";"";29098;55003;20240101;4;;;"";"";;;;"";;"AW";;"";03;;"";"";
Adressnummer;Konto;Anrede;Name (Adressattyp Unternehmen);Unternehmensgegenstand;Kurzbezeichnung;Name (Adressattyp natürl. Person);Vorname (Adressattyp natürl. Person);Name (Adressattyp keine Angabe);Adressattyp;Titel/Akad. Grad;Adelstitel;Namensvorsatz;Abweichende Anrede;Adressart;Straße;Postfach;Postleitzahl;Ort;Land;Versandzusatz;Adresszusatz;Abw. Zustellbezeichnung 1;Abw. Zustellbezeichnung 2;Kennz. Korrespondenzadresse;Adresse Gültig von;Adresse Gültig bis;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);Telefon;Bemerkung (Telefon);Telefon GL;Bemerkung (Telefon GL);E-Mail;Bemerkung (E-Mail);Internet;Bemerkung (Internet);Fax;Bemerkung (Fax);Sonstige;Bemerkung (Sonstige);Bankleitzahl 1;Bankbezeichnung 1;Bank-Kontonummer 1;Länderkennzeichen 1;IBAN-Nr. 1;Leerfeld;SWIFT-Code 1;Abw. Kontoinhaber 1;Kennz. Hauptbankverb. 1;Bankverb 1 Gültig von;Bankverb 1 Gültig bis;Bankleitzahl 2;Bankbezeichnung 2;Bank-Kontonummer 2;Länderkennzeichen 2;IBAN-Nr. 2;Leerfeld;SWIFT-Code 2;Abw. Kontoinhaber 2;Kennz. Hauptbankverb. 2;Bankverb 2 Gültig von;Bankverb 2 Gültig bis;Bankleitzahl 3;Bankbezeichnung 3;Bank-Kontonummer 3;Länderkennzeichen 3;IBAN-Nr. 3;Leerfeld;SWIFT-Code 3;Abw. Kontoinhaber 3;Kennz. Hauptbankverb. 3;Bankverb 3 Gültig von;Bankverb 3 Gültig bis;Bankleitzahl 4;Bankbezeichnung 4;Bank-Kontonummer 4;Länderkennzeichen 4;IBAN-Nr. 4;Leerfeld;SWIFT-Code 4;Abw. Kontoinhaber 4;Kennz. Hauptbankverb. 4;Bankverb 4 Gültig von;Bankverb 4 Gültig bis;Bankleitzahl 5;Bankbezeichnung 5;Bank-Kontonummer 5;Länderkennzeichen 5;IBAN-Nr. 5;Leerfeld;SWIFT-Code 5;Abw. Kontoinhaber 5;Kennz. Hauptbankverb. 5;Bankverb 5 Gültig von;Bankverb 5 Gültig bis;Bankleitzahl 6;Bankbezeichnung 6;Bank-Kontonummer 6;Länderkennzeichen 6;IBAN-Nr. 6;Leerfeld;SWIFT-Code 6;Abw. Kontoinhaber 6;Kennz. Hauptbankverb. 6;Bankverb 6 Gültig von;Bankverb 6 Gültig bis;Bankleitzahl 7;Bankbezeichnung 7;Bank-Kontonummer 7;Länderkennzeichen 7;IBAN-Nr. 7;Leerfeld;SWIFT-Code 7;Abw. Kontoinhaber 7;Kennz. Hauptbankverb. 7;Bankverb 7 Gültig von;Bankverb 7 Gültig bis;Bankleitzahl 8;Bankbezeichnung 8;Bank-Kontonummer 8;Länderkennzeichen 8;IBAN-Nr. 8;Leerfeld;SWIFT-Code 8;Abw. Kontoinhaber 8;Kennz. Hauptbankverb. 8;Bankverb 8 Gültig von;Bankverb 8 Gültig bis;Bankleitzahl 9;Bankbezeichnung 9;Bank-Kontonummer 9;Länderkennzeichen 9;IBAN-Nr. 9;Leerfeld;SWIFT-Code 9;Abw. Kontoinhaber 9;Kennz. Hauptbankverb. 9;Bankverb 9 Gültig von;Bankverb 9 Gültig bis;Bankleitzahl 10;Bankbezeichnung 10;Bank-Kontonummer 10;Länderkennzeichen 10;IBAN-Nr. 10;Leerfeld;SWIFT-Code 10;Abw. Kontoinhaber 10;Kennz. Hauptbankverb. 10;Bankverb 10 Gültig von;Bankverb 10 Gültig bis;Kundennummer;Ansprechpartner;Vertreter;Sachbearbeiter;Briefanrede;Grußformel;Sprache;Ausgabeziel;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;Mandatsreferenz 1;Mandatsreferenz 2;Mandatsreferenz 3;Mandatsreferenz 4;Mandatsreferenz 5;Mandatsreferenz 6;Mandatsreferenz 7;Mandatsreferenz 8;Mandatsreferenz 9;Mandatsreferenz 10;Nummer Fremdsystem
"DIV500";30000;"Firma";"Testmöbel GmbH";"";"Testmöbel GmbH";"";"";"";"2";"";"";"";"";"STR";"Feldweg 28";"";"90409";"Nürnberg";"DE";"";"";"";"";1;;;"";"";"";"";"";"";"";"";"";"";"";;;"+49 911 12345678";"";"+49 911 12345678";"";"test@testmöbel.de";"";"www.testmöbel.de";"";"+49 911 987654321";"";"";"";"76069512";"Raiffbk Knoblauchsland";"1122334455";"DE";"";"0";"GENODEF1N08";"Herr Muster";"1";01012013;31122023;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"KDN 75";"Herr Müllermuster";"Frau Mustermann";"Herr Testmann";"";"Mit freundlichen Grüßen";1;3;"kein Muster";"Beispiel";"Testeingabe";"";"";"";"";"";"";"Muster vorhanden";"";"";"";"";"";"";"";"";"";"";""
"DIV600";30000;"Herrn";"";"";"Mustermann";"Mustermann";"";"";"1";"Dr.";"Baron";"zu";"";"STR";"Musterweg 5";"";"90000";"Nürnberg";"DE";"Nicht nachsenden";"";"";"";1;;;"";"";"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";""
"DIV700";30000;"Frau";"";"";"Testmann, Elke";"Testmann";"Elke";"";"1";"";"Landgräfin";"von und zu";"";"STR";"Wiesenweg 125";"";"90600";"Fürth";"DE";"Bei Umzug bitte mit neuer Anschrift zurück";"";"";"";1;;;"";"";"";"";"";"";"";"";"";"";"";;;"+49 911 505050";"immer erreichbar";"+49 911 505050";"immer erreichbar";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"76000000";"BBk Nürnberg";"998877";"DE";"DE83760000000000998877";"1";"MARKDEF1760";"Frau Beispiel";"1";01012013;12122023;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"";"";"";"";;;"";"";"";"";"";"Mit den besten Empfehlungen";4;1;"nur zum Test";"nur als Beispiel";"";"nur als Beispiel";"";"nur als Beispiel";"nur zum Test";"nur zum Test";"";"nur als Beispiel";"";"";"";"";"";"";"";"";"";"";""
Can't render this file because it has a wrong number of fields in line 2.

View file

@ -0,0 +1,3 @@
"EXTF";700;66;"Natural-Stapel";2;20210511085305999;;"NA";"t03995a";"";29098;55314;20210101;7;;;"";"";;;0;"";;"KP";;;"14";1401;;"";""
Textschlüssel;Art;Stück;Gewicht;Beleg;Datum;An/für Textschlüssel;Text;Entnahmekonto;Gesellschaftername;Beteiligtennummer;Identifikationsnummer;Zeichnernummer;Herkunft-Kz;Abschlussnummer
339;2;0;450,00;"";2802;0;"Milch";0;"";"";"";"";"NA";0
Can't render this file because it has a wrong number of fields in line 2.

View file

@ -0,0 +1,54 @@
"EXTF";700;20;"Kontenbeschriftungen";3;20240729103107277;;"RE";"Admin";"";29098;55003;20240101;4;;;"";"";;;;"";;"";;"";;;"";"";
Konto;Kontobeschriftung;SprachId;Kontenbeschriftung lang
691;"Teilzahlungskredit Citan Kastenwagen";"de-DE";"Teilzahlungskredit Citan Kastenwagen"
692;"Darlehen Masterwood CNC";"de-DE";"Darlehen Masterwood CNC"
694;"Teilzahlungskredit VW Crafter";"de-DE";"Teilzahlungskredit VW Crafter"
695;"Ratenkredit Tesla Elektrofahrzeug";"de-DE";"Ratenkredit Tesla Elektrofahrzeug"
696;"Darlehen Schleifmustermühle 25";"de-DE";"Darlehen Schleifmustermühle 25"
697;"Darlehen Finanzierung Verleimpresse";"de-DE";"Darlehen Finanzierung Verleimpresse"
1010;"Kasse Werkstatt";"de-DE";"Kasse Werkstatt"
1100;"Aareal Bank München";"de-DE";"Aareal Bank München"
1200;"Aareal Bank Frankfurt";"de-DE";"Aareal Bank Frankfurt"
1201;"Bayern LB Nürnberg";"de-DE";"Bayern LB Nürnberg"
1205;"Deutsche Bank Nürnberg CHF";"de-DE";"Deutsche Bank Nürnberg CHF"
1206;"Deutsche Bank ZV";"de-DE";""
1225;"Kanadische Dollar Bank";"de-DE";"Kanadische Dollar Bank"
1230;"Evenord-Bank Nürnberg";"de-DE";"Evenord-Bank Nürnberg"
1250;"Deutsche Bank";"de-DE";"Deutsche Bank"
1290;"Tagesgeldkonto Noris Bank";"de-DE";"Tagesgeldkonto Noris Bank"
1361;"Nachträglicher OP-Ausgleich";"de-DE";"Nachträglicher OP-Ausgleich"
1369;"Unklare Posten";"de-DE";"Unklare Posten"
1591;"Abziehbare VorSt. aus innerg. Verbringen";"de-DE";""
1726;"USt aus innerg. Verbringen";"de-DE";""
3030;"Einkauf Holz/Furniere 19% VSt";"de-DE";"Einkauf Holz/Furniere 19% VSt"
3031;"Einkauf Spanplatten 19% VSt";"de-DE";"Einkauf Spanplatten 19% VSt"
3032;"Einkauf Farben und Lacke 19% VSt";"de-DE";"Einkauf Farben und Lacke 19% VSt"
3033;"Einkauf beschichtete Platten 19% VSt";"de-DE";"Einkauf beschichtete Platten 19% VSt"
3039;"Einkauf sonstige RHB-Stoffe 19% VSt";"de-DE";"Einkauf sonstige RHB-Stoffe 19% VSt"
3400;"Wareneingang Edelholz 19% VSt";"de-DE";"Wareneingang Edelholz 19% VSt"
3401;"Wareneingang Sonstiges 19% VSt";"de-DE";"Wareneingang Sonstiges 19% VSt"
3570;"Verrechnungskonto EU-Verbringung";"de-DE";""
3571;"Stfreie innerg. Verbringung Ursprung D";"de-DE";""
3572;"Innerg. Verbringungserwerb (Polen)";"de-DE";""
3955;"Bestandsveränderungen";"de-DE";"Bestandsveränderungen"
3961;"Bestandsveränd. Furniere";"de-DE";"Bestandsveränd. Furniere"
3962;"Bestandsveränd. Spanplatten";"de-DE";"Bestandsveränd. Spanplatten"
3963;"Bestandsveränd. Farben und Lacke";"de-DE";"Bestandsveränd. Farben und Lacke"
3964;"Bestandsveränd. beschichtete Platten";"de-DE";"Bestandsveränd. beschichtete Platten"
3971;"Bestand Holz/Furniere";"de-DE";"Bestand Holz/Furniere"
3972;"Bestand Spanplatten";"de-DE";"Bestand Spanplatten"
3973;"Bestand Farben und Lacke";"de-DE";"Bestand Farben und Lacke"
3974;"Bestand beschichtete Platten";"de-DE";"Bestand beschichtete Platten"
3975;"Sonstiger Bestand";"de-DE";"Sonstiger Bestand"
3976;"Bestand Roh-, Hilfs-und Betriebsstoffe";"de-DE";"Bestand Roh-, Hilfs-und Betriebsstoffe"
4901;"Getränke für Getränkeautomat";"de-DE";"Getränke für Getränkeautomat"
4921;"Mobilfunk";"de-DE";"Mobilfunk"
8400;"Erlöse Küchen 19% USt";"de-DE";"Erlöse Küchen 19% USt"
8401;"Erlöse Dächer 19% USt";"de-DE";"Erlöse Dächer 19% USt"
8402;"Erlöse Projekt Bautester 19% USt";"de-DE";"Erlöse Projekt Bautester 19% USt"
8403;"Erlöse Außenanlagen 19% USt";"de-DE";"Erlöse Außenanlagen 19% USt"
8405;"Erlöse Fenster/Türen/Böden 19% USt";"de-DE";"Erlöse Fenster/Türen/Böden 19% USt"
8406;"Erlöse Sonstiges 19% USt";"de-DE";"Erlöse Sonstiges 19% USt"
8407;"Erlöse Edelhölzer 19% USt";"de-DE";"Erlöse Edelhölzer 19% USt"
8601;"Geldwerter Vorteil 50% Elektrofahrzeug";"de-DE";"Geldwerter Vorteil 50% Elektrofahrzeug"
8602;"Erlöskorrektur 8601";"de-DE";"Erlöskorrektur 8601"
Can't render this file because it has a wrong number of fields in line 2.

View file

@ -0,0 +1,4 @@
"EXTF";700;65;"Wiederkehrende Buchungen";4;20240118094256087;;"WK";"Admin";"";29098;55003;20240101;4;;;"";"";;;;"";;"KP";"";;3;"";"";;
B1;WKZ (Umsatz);Umsatz (ohne Soll/Haben-Kz);Soll/Haben-Kennzeichen;Kurs;Basis-Umsatz;WKZ Basis-Umsatz;BU-Schlüssel;Gegenkonto (ohne BU-Schlüssel);Belegfeld1;Belegfeld2;Beginndatum;Kontonummer;Stück;Gewicht;KOST1-Kostenstelle;KOST2-Kostenstelle;KOST-Menge;Skonto;Buchungstext;Postensperre;Diverse Adressnummer;Geschäftspartnerbank;Sachverhalt;Zinssperre;Beleglink;EU-Land u. UStId (Bestimmung);EU-Steuersatz (Bestimmung);Leerfeld;Sachverhalt 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;Zahlweise;Forderungsart;Veranlagungsjahr;Zugeordnete Fälligkeit;Zuletzt per;Nächste Fälligkeit;Enddatum;Zeitintervallart;Zeitabstand;Wochentag;Monat;Ordnungszahl Tag im Monat;Ordnungszahl Wochentag;EndeTyp;Gesellschaftername;Beteiligtennummer;Identifikationsnummer;Zeichnernummer;SEPA-Mandatsreferenz;Postensperre bis;KOST-Datum;Bezeichnung SoBil-Sachverhalt;Kennzeichen SoBil-Buchung;Generalumkehr (GU);Steuersatz;Land;EU-Land u. UStID (Ursprung);EU-Steuersatz (Ursprung)
2;"";488,00;"H";;;"";"";4360;"";"";01032020;980;;;"10";"";;;"Gebäudeversicherung";;"";;;;"";"";;"";;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;;01032020;01042020;01022025;"MON";1;;;1;;2;"";;"";"";"";;;"";;"";;"";"";
2;"";333,52;"H";;;"";"";4360;"";"";31082019;980;;;"10";"";;;"Brandversicherung";;"";;;;"";"";;"";;;;;"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";;"";;;01032019;01042019;01082024;"MON";1;;;1;;2;"";;"";"";"";;;"";;"";;"DE";"";
Can't render this file because it has a wrong number of fields in line 2.

View file

@ -0,0 +1,7 @@
"EXTF";700;46;"Zahlungsbedingungen";2;20240118092951894;;"RE";"";"";29098;55003;20240101;4;;;"";"";;;;"";;"";;;"04";;;"";""
Nummer;Bezeichnung;Fälligkeitstyp;Skonto 1%;Skonto 1 Tage;Skonto 2 %;Skonto 2 Tage;Fällig Tage;Rechnung bis / Zeitraum 1;Skonto1 Datum / Zeitraum 1;Skonto 1 Monat / Zeitraum 1;Skonto 2 Datum / Zeitraum 1;Skonto 2 Monat / Zeitraum 1;Fällig Datum / Zeitraum 1;Fällig Monat / Zeitraum 1;Rechnung bis / Zeitraum 2;Skonto1 Datum / Zeitraum 2;Skonto 1 Monat / Zeitraum 2;Skonto 2 Datum / Zeitraum 2;Skonto 2 Monat / Zeitraum 2;Fällig Datum / Zeitraum 2;Fällig Monat / Zeitraum 2;Rechnung bis / Zeitraum 3;Skonto1 Datum / Zeitraum 3;Skonto1 Monat / Zeitraum 3;Skonto 2 Datum / Zeitraum 3;Skonto 2 Monat / Zeitraum 3;Fällig Datum / Zeitraum 3;Fällig Monat / Zeitraum 3;Leerfeld;Verwendung
10;"30 Tage 2,0%; 60 Tage netto";1;2200;30;;0;60;;;0;;0;;0;;;0;;0;;0;;;0;;0;;0;"";0
11;"5 Tage 3,0%; 10 Tage 2,0%; 30 Tage netto";1;300;5;200;10;30;;;0;;0;;0;;;0;;0;;0;;;0;;0;;0;"";0
12;"10 Tage 3,0%; 20 Tage netto";1;300;10;000;0;20;;;0;;0;;0;;;0;;0;;0;;;0;;0;;0;"";0
13;"14 Tage netto";1;000;0;000;0;14;;;0;;0;;0;;;0;;0;;0;;;0;;0;;0;"";0
14;"mit 3 Fälligkeitszeiträumen";2;300;0;000;0;0;10;20;0;;0;31;0;20;31;0;;0;10;1;31;10;1;;0;20;1;"";0
1 EXTF 700 46 Zahlungsbedingungen 2 20240118092951894 RE 29098 55003 20240101 4 04
2 Nummer Bezeichnung Fälligkeitstyp Skonto 1% Skonto 1 Tage Skonto 2 % Skonto 2 Tage Fällig Tage Rechnung bis / Zeitraum 1 Skonto1 Datum / Zeitraum 1 Skonto 1 Monat / Zeitraum 1 Skonto 2 Datum / Zeitraum 1 Skonto 2 Monat / Zeitraum 1 Fällig Datum / Zeitraum 1 Fällig Monat / Zeitraum 1 Rechnung bis / Zeitraum 2 Skonto1 Datum / Zeitraum 2 Skonto 1 Monat / Zeitraum 2 Skonto 2 Datum / Zeitraum 2 Skonto 2 Monat / Zeitraum 2 Fällig Datum / Zeitraum 2 Fällig Monat / Zeitraum 2 Rechnung bis / Zeitraum 3 Skonto1 Datum / Zeitraum 3 Skonto1 Monat / Zeitraum 3 Skonto 2 Datum / Zeitraum 3 Skonto 2 Monat / Zeitraum 3 Fällig Datum / Zeitraum 3 Fällig Monat / Zeitraum 3 Leerfeld Verwendung
3 10 30 Tage 2,0%; 60 Tage netto 1 2200 30 0 60 0 0 0 0 0 0 0 0 0 0
4 11 5 Tage 3,0%; 10 Tage 2,0%; 30 Tage netto 1 300 5 200 10 30 0 0 0 0 0 0 0 0 0 0
5 12 10 Tage 3,0%; 20 Tage netto 1 300 10 000 0 20 0 0 0 0 0 0 0 0 0 0
6 13 14 Tage netto 1 000 0 000 0 14 0 0 0 0 0 0 0 0 0 0
7 14 mit 3 Fälligkeitszeiträumen 2 300 0 000 0 0 10 20 0 0 31 0 20 31 0 0 10 1 31 10 1 0 20 1 0

3
tests/data/README.md Normal file
View file

@ -0,0 +1,3 @@
# Test Data Sources
Test files are taken from https://developer.datev.de/datev/platform/de/dtvf/samplefiles.