-- ============================================================================
-- Copyright (C) 2026  ZUGFeRD Import Module
--
-- Datanorm-Artikeltabelle: Importierte Artikeldaten aus Datanorm-Dateien
-- ============================================================================

CREATE TABLE llx_importzugferd_datanorm (
    rowid               integer AUTO_INCREMENT PRIMARY KEY NOT NULL,
    fk_soc              integer NOT NULL,                       -- Lieferant
    article_number      varchar(128) NOT NULL,                  -- Artikelnummer (Typ A Feld 2)
    short_text1         varchar(255),                           -- Kurztext 1 (Typ A Feld 4)
    short_text2         varchar(255),                           -- Kurztext 2 (Typ A Feld 5)
    long_text           text,                                   -- Langtext (Typ B)
    ean                 varchar(32),                            -- EAN/GTIN (Typ A Feld 17)
    manufacturer_ref    varchar(128),                           -- Hersteller-Artikelnummer (Typ A Feld 15)
    manufacturer_name   varchar(128),                           -- Herstellername (Typ A Feld 16)
    unit_code           varchar(8),                             -- Mengeneinheit (Typ A Feld 6)
    price               double(24,8) DEFAULT 0,                 -- Listenpreis/Materialpreis (Typ P)
    price_unit          integer DEFAULT 1,                      -- Preiseinheit (Stück pro Preis) - konvertiert aus PE-Code
    price_unit_code     tinyint DEFAULT 0,                      -- Original PE-Code (0=1, 1=10, 2=100, 3=1000)
    price_type          tinyint DEFAULT 1,                      -- Preiskennzeichen (1=Brutto, 2=Netto)
    metal_surcharge     double(24,8) DEFAULT 0,                 -- Metallzuschlag/Kupferzuschlag (Typ P)
    vpe                 integer DEFAULT NULL,                   -- VPE aus B-Satz (Verpackungseinheit)
    discount_group      varchar(32),                            -- Rabattgruppe (Typ A Feld 8)
    product_group       varchar(64),                            -- Warengruppe (Typ A Feld 9)
    alt_unit            varchar(8),                             -- Alternative Mengeneinheit
    alt_unit_factor     double(10,4) DEFAULT 1,                 -- Umrechnungsfaktor
    weight              double(10,4),                           -- Gewicht in kg
    matchcode           varchar(128),                           -- Matchcode für Suche (Typ A Feld 3)
    datanorm_version    varchar(8),                             -- Datanorm Version (4.0, 5.0)
    action_code         char(1) DEFAULT 'N',                    -- Aktionscode (N=Neu, A=Ändern, L=Löschen)
    import_date         datetime NOT NULL,                      -- Importzeitpunkt
    active              tinyint DEFAULT 1,                      -- Aktiv/Inaktiv (0 bei action_code='L')
    date_creation       datetime NOT NULL,
    tms                 timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    fk_user_creat       integer,
    fk_user_modif       integer,
    entity              integer DEFAULT 1 NOT NULL
) ENGINE=innodb;
