# c-entron.NET - Business Glossar mit Datenbank-Mapping > **Verfasst**: 2025-12-02 > **Grundlage**: Code-Analyse, Datenbank-Schema, NHibernate-Mappings > **Format**: [Tabelle.Spalte] für alle Datenbank-Referenzen --- ## 📋 Inhaltsverzeichnis 1. [STAMMDATEN DOMÄNE](#stammdaten-domäne) 2. [VERKAUF DOMÄNE](#verkauf-domäne) 3. [EINKAUF DOMÄNE](#einkauf-domäne) 4. [LAGER & BESTAND DOMÄNE](#lager--bestand-domäne) 5. [VERTRAG & SERVICE DOMÄNE](#vertrag--service-domäne) 6. [HELPDESK & SUPPORT DOMÄNE](#helpdesk--support-domäne) 7. [HR & PERSONAL DOMÄNE](#hr--personal-domäne) 8. [FINANZEN & ACCOUNTING DOMÄNE](#finanzen--accounting-domäne) --- # STAMMDATEN DOMÄNE ## Konto (Account) **Begriff**: Konto / Geschäftspartner-Stammkonto **Englisch**: Account **Datenbank-Tabelle**: `Accounts` **Primärschlüssel**: `Accounts.I3D` **Felder mit DB-Mapping**: - `I3D` → `[Accounts.I3D]` - Eindeutige Kontokennung - `Number` → `[Accounts.Number]` - Kontonummer (Vergabe durch System) - `Name` → `[Accounts.Name]` - Name des Geschäftspartners - `Matchcode` → `[Accounts.Matchcode]` - Suchfeld für schnelle Findung - `Email` → `[Accounts.Email]` - E-Mail-Adresse - `Phone` → `[Accounts.Phone]` - Telefonnummer - `Fax` → `[Accounts.Fax]` - Faxnummer - `WebSite` → `[Accounts.WebSite]` - Website-URL - `TaxNumber` → `[Accounts.TaxNumber]` - Steuernummer (Deutschland) - `RevenueIdentificationNumber` → `[Accounts.RevenueIdentificationNumber]` - Umsatzsteuer-ID - `IsActive` → `[Accounts.IsActive]` - Aktiv/Inaktiv Status - `IsLocked` → `[Accounts.IsLocked]` - Sperrstatus - `AdvertisingNotAllowed` → `[Accounts.AdvertisingNotAllowed]` - Werbe-Opt-out - `FaxDistributor` → `[Accounts.FaxDistributor]` - In Fax-Verteiler - `MailDistributor` → `[Accounts.MailDistributor]` - In Mail-Verteiler - `Comment` → `[Accounts.Comment]` - Interne Notizen - `MandatorI3D` → `[Accounts.MandatorI3D]` - Zugehöriger Mandant (FK) - `SalesAreaI3D` → `[Accounts.SalesAreaI3D]` - Vertriebsbereich (FK) - `CompanyGroupI3D` → `[Accounts.CompanyGroupI3D]` - Konzern-Zugehörigkeit (FK) - `Adviser1I3D` → `[Accounts.Adviser1I3D]` - Betreuer 1 (FK → Personal) - `Adviser2I3D` → `[Accounts.Adviser2I3D]` - Betreuer 2 (FK → Personal) - `Adviser3I3D` → `[Accounts.Adviser3I3D]` - Betreuer 3 (FK → Personal) - `Adviser4I3D` → `[Accounts.Adviser4I3D]` - Betreuer 4 (FK → Personal) - `Adviser5I3D` → `[Accounts.Adviser5I3D]` - Betreuer 5 (FK → Personal) - `Adviser6I3D` → `[Accounts.Adviser6I3D]` - Betreuer 6 (FK → Personal) - `CreatedByI3D` → `[Accounts.CreatedByI3D]` - Ersteller (FK → Personal) - `CreatedDate` → `[Accounts.CreatedDate]` - Erstellungsdatum - `ChangedByI3D` → `[Accounts.ChangedByI3D]` - Letzte Änderung durch (FK → Personal) - `ChangedDate` → `[Accounts.ChangedDate]` - Letzte Änderung am - `CreatedVersion` → `[Accounts.CreatedVersion]` - Version bei Erstellung - `ChangedVersion` → `[Accounts.ChangedVersion]` - Letzte Änderungsversion **Collections (1:n Beziehungen)**: - `Addresses` → `[AccountAddresses]` (AccountI3D = Accounts.I3D) - `AccountTypes` → `[AccountTypeToAccounts]` Junction-Tabelle --- ## Kunde (Customer / Account Customer) **Begriff**: Kunde / Verkaufs-Kundenkonto **Englisch**: Customer **Datenbank-Tabelle**: `AccountCustomers` **Primärschlüssel**: `AccountCustomers.I3D` **Beziehung**: Erweiterung von `Accounts` mit Verkaufs-spezifischen Feldern **Neue/Spezifische Felder mit DB-Mapping**: - `I3D` → `[AccountCustomers.I3D]` - Eindeutige Kunden-ID (=Account.I3D) - `Number` → `[AccountCustomers.Number]` - Kundennummer - `Limit` → `[AccountCustomers.Limit]` - Kreditlimit - `Discount` → `[AccountCustomers.Discount]` - Standard-Kundenrabatt (%) - `PriceList` → `[AccountCustomers.PriceList]` - Preislisten-Zuordnung - `DeliveryOption` → `[AccountCustomers.DeliveryOption]` - Standard-Versandart - `AlternativeInvoiceAccountI3D` → `[AccountCustomers.AlternativeInvoiceAccountI3D]` - Abweichender Rechnungskunde (FK → Account) - `AlternativeInvoiceAddressI3D` → `[AccountCustomers.AlternativeInvoiceAddressI3D]` - Abweichende Rechnungsadresse (FK → AccountAddresses) - `AlternativeDeliveryAccountI3D` → `[AccountCustomers.AlternativeDeliveryAccountI3D]` - Abweichender Lieferkunde (FK → Account) - `AlternativeDeliveryAddressI3D` → `[AccountCustomers.AlternativeDeliveryAddressI3D]` - Abweichende Lieferadresse (FK → AccountAddresses) - `ReceiptConditionOfferI3D` → `[AccountCustomers.ReceiptConditionOfferI3D]` - Zahlungsbedingung Angebote (FK → Zahkond) - `ReceiptConditionOrderI3D` → `[AccountCustomers.ReceiptConditionOrderI3D]` - Zahlungsbedingung Bestellungen (FK → Zahkond) - `ReceiptConditionInvoiceI3D` → `[AccountCustomers.ReceiptConditionInvoiceI3D]` - Zahlungsbedingung Rechnungen (FK → Zahkond) - `DunningLetterRecipientPersonI3D` → `[AccountCustomers.DunningLetterRecipientPersonI3D]` - Mahnungs-Empfänger (FK → AccountAddressContacts) - `DunningLetterAfterDays1` → `[AccountCustomers.DunningLetterAfterDays1]` - Tage bis 1. Mahnung - `DunningLetterAfterDays2` → `[AccountCustomers.DunningLetterAfterDays2]` - Tage bis 2. Mahnung - `DunningLetterAfterDays3` → `[AccountCustomers.DunningLetterAfterDays3]` - Tage bis 3. Mahnung - `LimitCalculationKind` → `[AccountCustomers.LimitCalculationKind]` - Art der Limitberechnung - `WarehouseI3D` → `[AccountCustomers.WarehouseI3D]` - Standard-Lager (FK → Warehouses) - `IsPurchaseOrderNumberRequired` → `[AccountCustomers.IsPurchaseOrderNumberRequired]` - Bestellnummer erforderlich (Flag) - `IsProjectNumberRequired` → `[AccountCustomers.IsProjectNumberRequired]` - Projektnummer erforderlich (Flag) - `IsProductionConfigurationMandatory` → `[AccountCustomers.IsProductionConfigurationMandatory]` - Fertigungskonfiguration erforderlich (Flag) - `CommentOffer` → `[AccountCustomers.CommentOffer]` - Standard-Text Angebote - `CommentOrder` → `[AccountCustomers.CommentOrder]` - Standard-Text Bestellungen - `CommentInvoice` → `[AccountCustomers.CommentInvoice]` - Standard-Text Rechnungen - `CommentDeliveryList` → `[AccountCustomers.CommentDeliveryList]` - Standard-Text Lieferscheine - `MailNotificationAtHelpdeskBCC` → `[AccountCustomers.MailNotificationAtHelpdeskBCC]` - BCC-Adressen bei Ticket-Mails - `BookKeepingNumber` → `[AccountCustomers.BookKeepingNumber]` - Debitorennummer in Fibu --- ## Adresse (Address) **Begriff**: Adresse / Geschäftspartner-Adresse **Englisch**: Address **Datenbank-Tabelle**: `AccountAddresses` **Primärschlüssel**: `AccountAddresses.I3D` **Felder mit DB-Mapping**: - `I3D` → `[AccountAddresses.I3D]` - Eindeutige Adresskennung - `AccountI3D` → `[AccountAddresses.AccountI3D]` - Gehörendes Konto (FK → Accounts) - `Status` → `[AccountAddresses.Status]` - Status (aktiv/archiviert) - `Street` → `[AccountAddresses.Street]` - Straße - `PostalCode` → `[AccountAddresses.PostalCode]` - Postleitzahl - `City` → `[AccountAddresses.City]` - Stadt/Ort - `CountryI3D` → `[AccountAddresses.CountryI3D]` - Land (FK) - `Phone1` → `[AccountAddresses.Phone1]` - Telefon 1 - `Phone2` → `[AccountAddresses.Phone2]` - Telefon 2 - `Fax1` → `[AccountAddresses.Fax1]` - Fax - `Email1` → `[AccountAddresses.Email1]` - E-Mail - `Web` → `[AccountAddresses.Web]` - Website - `Receiver` → `[AccountAddresses.Receiver]` - Empfängername (abweichend vom Konto) - `AddressKindI3D` → `[AccountAddresses.AddressKindI3D]` - Adresstyp (Rechnungs-, Lieferadresse, etc.) - `IsDefault` → `[AccountAddresses.IsDefault]` - Standard-Adresse - `CreatedDate` → `[AccountAddresses.CreatedDate]` - Erstellungsdatum - `ChangedDate` → `[AccountAddresses.ChangedDate]` - Änderungsdatum **Collections**: - `Contacts` → `[AccountAddressContacts]` (AccountAddressI3D = AccountAddresses.I3D) --- ## Ansprechperson (Contact Person) **Begriff**: Ansprechperson / Kontaktperson **Englisch**: Contact Person **Datenbank-Tabelle**: `AccountAddressContacts` **Primärschlüssel**: `AccountAddressContacts.I3D` **Felder mit DB-Mapping**: - `I3D` → `[AccountAddressContacts.I3D]` - Eindeutige Personenkennung - `AccountAddressI3D` → `[AccountAddressContacts.AccountAddressI3D]` - Adresse (FK → AccountAddresses) - `Firstname` → `[AccountAddressContacts.Firstname]` - Vorname - `Lastname` → `[AccountAddressContacts.Lastname]` - Nachname - `Phone1` → `[AccountAddressContacts.Phone1]` - Telefon 1 - `Phone2` → `[AccountAddressContacts.Phone2]` - Telefon 2 - `Fax1` → `[AccountAddressContacts.Fax1]` - Fax - `Email1` → `[AccountAddressContacts.Email1]` - E-Mail 1 - `Email2` → `[AccountAddressContacts.Email2]` - E-Mail 2 - `Job` → `[AccountAddressContacts.Job]` - Funktion/Abteilung - `Birthday` → `[AccountAddressContacts.Birthday]` - Geburtsdatum - `SalutationI3D` → `[AccountAddressContacts.SalutationI3D]` - Anrede (FK) - `IsActive` → `[AccountAddressContacts.IsActive]` - Aktiv/Inaktiv - `IsDefault` → `[AccountAddressContacts.IsDefault]` - Standard-Kontakt - `DefaultTicket` → `[AccountAddressContacts.DefaultTicket]` - Standard bei Helpdesk-Tickets - `IsInvoiceMailCCReceiver` → `[AccountAddressContacts.IsInvoiceMailCCReceiver]` - CC bei Rechnungsmails - `CreatedDate` → `[AccountAddressContacts.CreatedDate]` - Erstellungsdatum - `ChangedDate` → `[AccountAddressContacts.ChangedDate]` - Änderungsdatum --- # VERKAUF DOMÄNE ## Bestellung / Auftrag (Order) **Begriff**: Bestellung / Kundenauftrag **Englisch**: Order **Datenbank-Tabelle**: `AufKopf` (Auftragskopf - Legacy German naming) **Primärschlüssel**: `AufKopf.I3D` **Hauptfelder mit DB-Mapping**: - `I3D` → `[AufKopf.I3D]` - Eindeutige Auftrags-ID - `Number` → `[AufKopf.Nummer]` - Bestellnummer (z.B. "2025-00042") - `Status` → `[AufKopf.Status]` - Bearbeitungsstatus - `Date` → `[AufKopf.Datum]` - Bestelldatum - `Version` → `[AufKopf.Version]` - Versionsnummer - `CreatorI3D` → `[AufKopf.ErstellerI3D]` - Ersteller (FK → Personal) - `CreationDate` → `[AufKopf.ErstelltDatum]` - Erstellungsdatum - `EditorI3D` → `[AufKopf.BearbeiterI3D]` - Bearbeiter (FK → Personal) - `ChangedFromI3D` → `[AufKopf.GeaendertVonI3D]` - Geändert von (FK → Personal) - `ChangedDate` → `[AufKopf.GeaendertDatum]` - Änderungsdatum **Kunden-Daten mit DB-Mapping**: - `CustomerI3D` → `[AufKopf.KundenID]` - Kunde (FK → Accounts) - `Receiver` → `[AufKopf.Empfanger]` - Adressat/Empfängername - `AddressI3D` → `[AufKopf.AnschriftID]` - Rechnungsadresse (FK → AccountAddresses) - `ContactI3D` → `[AufKopf.PersonID]` - Kontaktperson (FK → AccountAddressContacts) - `Street` → `[AufKopf.Strasse]` - Straße - `Zip` → `[AufKopf.Plz]` - Postleitzahl - `City` → `[AufKopf.Ort]` - Stadt - `Phone` → `[AufKopf.Tel]` - Telefon - `Fax` → `[AufKopf.Fax]` - Fax - `Email` → `[AufKopf.Mail]` - E-Mail - `CountryI3D` → `[AufKopf.LandI3D]` - Land (FK) **Abweichende Lieferdaten mit DB-Mapping**: - `DeliveryCustomerI3D` → `[AufKopf.LiefKundI3D]` - Abweichender Lieferkunde (FK → Accounts) - `DeliveryCustomerExt` → `[AufKopf.LiefKundFremd]` - Lieferkunde ist extern - `DirectDelivery` → `[AufKopf.Direktlieferung]` - Direktlieferung vom Lieferanten **Finanzen & Preisierung mit DB-Mapping**: - `DBNetPrice` → `[AufKopf.Netto]` - Netto-Summe (ohne MwSt) - `DBGrossPrice` → `[AufKopf.Brutto]` - Brutto-Summe (mit MwSt) - `DBPurchasePrice` → `[AufKopf.SummeEK]` - Einstandspreis-Summe - `Discount` → `[AufKopf.Rabatt]` - Rabatt (%) - `CurrencyI3D` → `[AufKopf.CurrencyI3D]` - Währung (FK) - `CurrencyString` → `[AufKopf.CurrencyString]` - Währungscode (z.B. "EUR") - `CurrencyFactor` → `[AufKopf.CurrencyFactor]` - Wechselkurs **Lieferung & Logistik mit DB-Mapping**: - `DeliveryDate` → `[AufKopf.Lieferdatum]` - Gewünschtes Lieferdatum - `PartialDelivery` → `[AufKopf.Teillieferung]` - Teillieferungen erlaubt (Flag) - `AssetConditionI3D` → `[AufKopf.ZahlkondID]` - Zahlungsbedingung (FK → Zahkond) - `DeliveryConditionI3D` → `[AufKopf.LieferbedID]` - Lieferbedingung (FK) - `PreparationDate` → `[AufKopf.Bereitstellung]` - Bereitstellungsdatum **Kommissionierung & Produktion mit DB-Mapping**: - `Picked` → `[AufKopf]` - [TBD Mapping erforderlich] - `PickedAt` → `[AufKopf]` - [TBD Mapping erforderlich] - `Produced` → `[AufKopf]` - [TBD Mapping erforderlich] - `ProducedAt` → `[AufKopf]` - [TBD Mapping erforderlich] **Controlling & Administration mit DB-Mapping**: - `CostObjectI3D` → `[AufKopf.KostentraegerI3D]` - Kostenträger (FK) - `CostCenterI3D` → `[AufKopf.KostenstellenI3D]` - Kostenstelle (FK) - `ProjectNumber` → `[AufKopf.ProjNr]` - Projektnummer (frei eingegeben) - `OrderNumber` → `[AufKopf.BestNr]` - Externe Bestellnummer - `ControllingText` → `[AufKopf.Zusatztext]` - Zusatztext für Reporting - `Info` → `[AufKopf.Info]` - Informationen/Notizen - `Adviser1I3D` → `[AufKopf.InnendienstID]` - Innendienst (FK → Personal) - `Adviser2I3D` → `[AufKopf.AussendienstID]` - Außendienst (FK → Personal) - `Adviser3I3D` → `[AufKopf.TechnikerID]` - Techniker 1 (FK → Personal) - `Adviser4I3D` → `[AufKopf.Techniker2ID]` - Techniker 2 (FK → Personal) - `BranchI3D` → `[AufKopf.FilialI3D]` - Filiale (FK → Filiale) **Collections**: - `Positions` → `[AufPos]` (KeyColumn: AufKopfI3D = AufKopf.I3D) --- ## Bestellung-Position (Order Position / Receipt Line Item) **Begriff**: Auftragsposition / Bestellposition **Englisch**: Order Position / Line Item **Datenbank-Tabelle**: `AufPos` (Auftragsposition) **Primärschlüssel**: `AufPos.I3D` **Felder mit DB-Mapping**: - `I3D` → `[AufPos.I3D]` - Eindeutige Positions-ID - `AufKopfI3D` → `[AufPos.AufKopfI3D]` - Gehörender Auftrag (FK → AufKopf) - `Positionsnummer` → `[AufPos.Position]` - Laufende Nummer (1, 2, 3, ...) - `ArtikelI3D` → `[AufPos.ArtikelI3D]` - Artikel (FK → ARTIK) - `Menge` → `[AufPos.Menge]` - Bestellte Menge - `EinheitI3D` → `[AufPos.EinheitI3D]` - Maßeinheit (FK → Einheiten) - `Einzelpreis` → `[AufPos.EinzelPreis]` - Preis pro Einheit - `Positionssumme` → `[AufPos.Summe]` - Menge × Einzelpreis - `Rabatt` → `[AufPos.Rabatt]` - Positionsrabatt (%) - `MwStSatz` → `[AufPos.MwStSatz]` - Mehrwertsteuersatz - `Einstandspreis` → `[AufPos.EinstandsPreis]` - Kostenlage - `Beschreibung` → `[AufPos.Text]` - Position-Beschreibung - `Seriennummer` → `[AufPos.SerienNr]` - Seriennummer (falls einzelner Artikel) - `KostenträgerI3D` → `[AufPos.KostentraegerI3D]` - Kostenträger pro Position --- ## Rechnung (Invoice) **Begriff**: Rechnung / Invoice **Englisch**: Invoice **Datenbank-Tabelle**: `RechKopf` (Rechnungskopf) **Primärschlüssel**: `RechKopf.I3D` **Strukturell identisch mit Bestellung**, Tabelle: `RechKopf` **Spezifische Rechnungs-Felder mit DB-Mapping**: - `I3D` → `[RechKopf.I3D]` - Eindeutige Rechnungs-ID - `Number` → `[RechKopf.Nummer]` - Rechnungsnummer - `Status` → `[RechKopf.Status]` - Rechnungsstatus - `Date` → `[RechKopf.Datum]` - Rechnungsdatum - `DueDate` → `[RechKopf]` - [TBD - Fälligkeitsdatum nicht in Basis gemappt] - `Paid` → `[RechKopf]` - [TBD - Bezahlt-Flag nicht gemappt] - `EdiExported` → `[RechKopf.EDIExport]` - Zu EDI exportiert (Flag) - `EdiExportDate` → `[RechKopf.EDIExportAm]` - EDI-Export Datum **Collections**: - `Positions` → `[RechPos]` (KeyColumn: RechKopfI3D = RechKopf.I3D) --- ## Angebot (Offer) **Begriff**: Angebot / Quotation **Englisch**: Offer **Datenbank-Tabelle**: `AngKopf` (Angebotskopf) **Primärschlüssel**: `AngKopf.I3D` **Strukturell identisch mit Bestellung/Rechnung**, Mapping analog `[AngKopf]` / `[AngPos]` --- ## Lieferschein (Delivery List) **Begriff**: Lieferschein / Delivery Note **Englisch**: Delivery List **Datenbank-Tabelle**: `LiefKopf` (Lieferscheinkopf) **Primärschlüssel**: `LiefKopf.I3D` **Strukturell identisch mit Bestellung**, Mapping analog `[LiefKopf]` / `[LiefPos]` --- # EINKAUF DOMÄNE ## Kreditor / Lieferant (Supplier) **Begriff**: Kreditor / Lieferant **Englisch**: Supplier / Vendor **Datenbank-Tabelle**: `AccountSuppliers` **Primärschlüssel**: `AccountSuppliers.I3D` **Beziehung**: Erweiterung von `Accounts` mit Einkaufs-spezifischen Feldern **Einkaufs-spezifische Felder mit DB-Mapping**: - `I3D` → `[AccountSuppliers.I3D]` - Eindeutige Lieferanten-ID - `Number` → `[AccountSuppliers.Number]` - Lieferantennummer - `FreightCost` → `[AccountSuppliers.FreightCost]` - Standard-Versandkosten - `MinimumOrderValue` → `[AccountSuppliers.MinimumOrderValue]` - Mindestbestellwert - `Discount` → `[AccountSuppliers.Discount]` - Standard-Lieferantenrabatt - `Limit` → `[AccountSuppliers.Limit]` - Kreditlimit - `IsIsoCertified` → `[AccountSuppliers.IsIsoCertified]` - ISO-Zertifiziert (Flag) - `IsManufacturer` → `[AccountSuppliers.IsManufacturer]` - Ist Hersteller (Flag) - `IsDistributor` → `[AccountSuppliers.IsDistributor]` - Ist Distributor (Flag) - `WarehouseI3D` → `[AccountSuppliers.WarehouseI3D]` - Standard-Lager (FK → Warehouses) - `EgisSupplierNumber` → `[AccountSuppliers.EgisSupplierNumber]` - EGIS-Nummer - `ItScopeSupplierNumber` → `[AccountSuppliers.ItScopeSupplierNumber]` - ITScope-Nummer - `OwnCustomerNumber` → `[AccountSuppliers.OwnCustomerNumber]` - Unsere Kundennummer beim Lieferanten - `BookKeepingNumber` → `[AccountSuppliers.BookKeepingNumber]` - Kreditornummer in Fibu - `ReceiptConditionOrderI3D` → `[AccountSuppliers.ReceiptConditionOrderI3D]` - Zahlungsbedingung Bestellungen (FK → Zahkond) - `ReceiptConditionInvoiceI3D` → `[AccountSuppliers.ReceiptConditionInvoiceI3D]` - Zahlungsbedingung Rechnungen (FK → Zahkond) --- # LAGER & BESTAND DOMÄNE ## Artikel (Article / Product) **Begriff**: Artikel / Produkt **Englisch**: Article / Product **Datenbank-Tabelle**: `ARTIK` (Read-Only Staging Table) **Primärschlüssel**: `ARTIK.I3D` **Hauptfelder mit DB-Mapping**: - `I3D` → `[ARTIK.I3D]` - Eindeutige Artikel-ID - `Articlecode` → `[ARTIK.Artikelcode]` - Interne Artikelnummer - `Manufacturercode` → `[ARTIK.Hersteller]` - Hersteller-Code - `EANCode` → `[ARTIK.EANCode]` - EAN / Barcode - `ShortDescription` → `[ARTIK.Kurzbegriff]` - Kurzbezeichnung - `Description` → `[ARTIK.Artikelbeschreibung]` - Langtext/Beschreibung - `State` → `[ARTIK.Status]` - Status (aktiv, EOL, etc.) - `EOL` → `[ARTIK.EOL]` - End-of-Life (Flag) **Preise mit DB-Mapping**: - `Price1` → `[ARTIK.VK_1]` - Verkaufspreis 1 - `Price2` → `[ARTIK.VK_2]` - Verkaufspreis 2 - `Price3` → `[ARTIK.VK_3]` - Verkaufspreis 3 - `Price4` → `[ARTIK.VK_4]` - Verkaufspreis 4 - `ListPrice` → `[ARTIK.Listenpreis]` - Listenpreis - `RecommendRetailPrice` → `[ARTIK.EVK]` - Empfohlener Verkaufspreis - `PurchasePrice` → `[ARTIK.EK]` - Einstandspreis - `MinimumPrice` → `[ARTIK.Mindestpreis]` - Mindestverkaufspreis - `PurchasePriceEqualsSellPrice` → `[ARTIK.EKGleichVK]` - EK=VK (Flag) **Lagerverwaltung mit DB-Mapping**: - `Amount` → `[ARTIK]` - [Formula-basiert: SUM Bestandsmenge] - `MinimumHolding` → `[ARTIK.Mindestbestand]` - Minimumbestand - `OrderInventory` → `[ARTIK.Auftragsbestand]` - Bestand in offenen Aufträgen - `DeliveryInventory` → `[ARTIK.Lieferbestand]` - Bestand in Lieferung - `Intake` → `[ARTIK.Zulauf]` - Zulauf (erwartet) **Klassifizierung mit DB-Mapping**: - `SecondaryMaterialGroupI3D` → `[ARTIK.WEBKategorie]` - Sekundäre Materialgruppe/Warengruppe (FK) - `ManufacturerI3D` → `[ARTIK.KreditorI3D]` - Hersteller/Vertrieb (FK → AccountSuppliers) - `TaxI3D` → `[ARTIK.MWStI3D]` - Steuersatz (FK) - `ArticleUnitI3D` → `[ARTIK.Einheit]` - Maßeinheit (FK → Einheiten) - `ProductFamilyI3D` → `[ARTIK.ProduktfamilieI3D]` - Produktfamilie (FK) **Eigenschaften mit DB-Mapping**: - `Divisible` → `[ARTIK.Teilbar]` - Bruchverkauf erlaubt (Flag) - `IsArticleTextEditable` → `[ARTIK.TextAenderbar]` - Text änderbar (Flag) - `NeedsBarcodes` → `[ARTIK.BarcodeScanen]` - Barcode-Scanning erforderlich (Flag) - `ChangeStock` → `[ARTIK.Abbuchung]` - Automatische Abrechnung (Flag) - `IsPartList` → `[ARTIK.StkListe]` - Ist Stückliste (Flag) - `IsServiceArticle` → `[ARTIK.IsServiceArticle]` - Dienstleistung (Flag) - `VisibleOnWeb` → `[ARTIK.WEBArtik]` - Im Web sichtbar (Flag) **Audit-Trail mit DB-Mapping**: - `CreationDate` → `[ARTIK.Angelegt_am]` - Erstellungsdatum - `CreatedFromI3D` → `[ARTIK.Angelegt_von]` - Ersteller (FK → Personal) - `ChangedDate` → `[ARTIK.Geandert_am]` - Änderungsdatum - `ChangedFromI3D` → `[ARTIK.Geandert_von]` - Geändert von (FK → Personal) **Collections**: - `Inventorys` → `[ArtikelBestand]` (KeyColumn: ArtikelI3D = ARTIK.I3D) --- ## Lagerbestand (Stock / Inventory) **Begriff**: Lagerbestand / Bestandsmenge **Englisch**: Stock / Inventory **Datenbank-Tabelle**: `ArtikelBestand` **Primärschlüssel**: `ArtikelBestand.I3D` **Felder mit DB-Mapping**: - `I3D` → `[ArtikelBestand.I3D]` - Eindeutige Bestandskennung - `ArtikelI3D` → `[ArtikelBestand.ArtikelI3D]` - Artikel (FK → ARTIK) - `LagerortI3D` → `[ArtikelBestand.LagerortI3D]` - Lagerort/Filiale (FK → Filiale) - `Menge` → `[ArtikelBestand.Menge]` - Verfügbare Menge - `Reserviert` → `[ArtikelBestand.Reserviert]` - Reservierte Menge (in offenen Aufträgen) - `Verfuegbar` → `[ArtikelBestand.Verfuegbar]` - Verfügbar = Menge - Reserviert - `LagerplatzI3D` → `[ArtikelBestand.LagerplatzI3D]` - Lagerplatz (FK → Lagerplatz) - `Verfallsdatum` → `[ArtikelBestand.Verfallsdatum]` - Haltbarkeitsdatum - `Charge` → `[ArtikelBestand.Charge]` - Chargennummer/Losnummer - `EingangsDatum` → `[ArtikelBestand.EingangsDatum]` - Einlagerungsdatum --- # VERTRAG & SERVICE DOMÄNE ## Vertrag (Contract) **Begriff**: Vertrag / Service-Agreement **Englisch**: Contract **Datenbank-Tabelle**: `Vertraege` (Vertrag/Vertragskopf - Legacy German naming) **Primärschlüssel**: `Vertraege.I3D` **Hauptfelder mit DB-Mapping**: - `I3D` → `[Vertraege.I3D]` - Eindeutige Vertrags-ID - `Number` → `[Vertraege.Nummer]` - Vertragsnummer - `Status` → `[Vertraege.Status]` - Vertragsstatus - `CustomerI3D` → `[Vertraege.KundenI3D]` - Kunde (FK → Accounts) - `ContractKindI3D` → `[Vertraege.VertragsArtI3D]` - Vertragsart (FK) - `Begin` → `[Vertraege.Beginn]` - Vertragsbeginn - `ContractEnd` → `[Vertraege.Ende]` - Vertragsende - `Duration` → `[Vertraege.Laufzeit]` - Laufzeit (Monate) - `DurationKind` → `[Vertraege.LaufzeitArt]` - Art der Laufzeit - `AutomaticExtensionFlag` → `[Vertraege.AutoVerlaengerung]` - Automatische Verlängerung (Flag) - `AutomaticExtensionAmountMonths` → `[Vertraege.Verlaengerung]` - Verlängerungsdauer (Monate) - `IsContingent` → `[Vertraege.KontingentVertrag]` - Kontingent-Vertrag (Flag) - `ContingentKind` → `[Vertraege.KontingentArt]` - Kontingent-Art (FK) - `IsClick` → `[Vertraege.Stammblattbezogen]` - Click-Counter-Vertrag (Flag) - `DeductionIntervalKind` → `[Vertraege.AbrechnungIntervallArt]` - Abrechnungsintervall-Typ - `DeductionIntervalValue` → `[Vertraege.AbrechnungIntervallDauer]` - Abrechnungsintervall Dauer (z.B. Monate) - `Name` → `[Vertraege.Name]` - Vertragsname/Bezeichnung - `AdditionalText` → `[Vertraege.Zusatztext]` - Zusatztext/Notizen - `ReferenceNumber` → `[Vertraege.ReferenzNr]` - Externe Referenznummer - `ForeignContract` → `[Vertraege.Fremdvertrag]` - Fremdvertrag (Flag) **Collections**: - `Positions` → `[VertragPos]` (KeyColumn: VertragI3D = Vertraege.I3D) --- # HELPDESK & SUPPORT DOMÄNE ## Support-Ticket (Helpdesk) **Begriff**: Support-Ticket / Helpdesk-Anfrage **Englisch**: Helpdesk Ticket **Datenbank-Tabelle**: `hlpdsk_requests` **Primärschlüssel**: `hlpdsk_requests.I3D` **Hauptfelder mit DB-Mapping**: - `I3D` → `[hlpdsk_requests.I3D]` - Eindeutige Ticket-ID - `Number` → `[hlpdsk_requests.Nummer]` - Externe Ticketnummer (z.B. "TK-2025-12345") - `Status` → `[hlpdsk_requests.Status]` - Ticket-Status (FK → hlpdsk_status) - `Priority` → `[hlpdsk_requests.Prioritaet]` - Priorität (FK → hlpdsk_prioritaeten) - `HelpdeskType` → `[hlpdsk_requests.hlpdsk_typenI3D]` - Ticket-Typ (FK → hlpdsk_typen) - `MainCategory` → `[hlpdsk_requests.HauptkategorieI3D]` - Hauptkategorie (FK) - `SubCategory1` → `[hlpdsk_requests.Unterkategorie1I3D]` - Unterkategorie 1 (FK) - `SubCategory2` → `[hlpdsk_requests.Unterkategorie2I3D]` - Unterkategorie 2 (FK) **Kunde & Kontakt mit DB-Mapping**: - `CustomerI3D` → `[hlpdsk_requests.KundeI3D]` - Kunde (FK → Accounts) - `CustomerName` → `[hlpdsk_requests.KundeName]` - Kundenname (Cache) - `CustomerEMail` → `[hlpdsk_requests.KundeEMail]` - Kunden-Email - `ContactPersonI3D` → `[hlpdsk_requests.AnsprechpartnerI3D]` - Kontaktperson (FK → AccountAddressContacts) - `ContactName` → `[hlpdsk_requests.AnsprechName]` - Kontaktname (Cache) - `ContactPhone` → `[hlpdsk_requests.AnsprechTelefon]` - Telefon der Kontaktperson **Sachverhalt mit DB-Mapping**: - `ShortDescription` → `[hlpdsk_requests.Beschreibung]` - Kurzbeschreibung - `Description` → `[hlpdsk_requests.Problem]` - Detaillierte Problembeschreibung - `InternalNote` → `[hlpdsk_requests.InternalNote]` - Interne Notizen - `SerialNumber` → `[hlpdsk_requests.SerienNr]` - Seriennummer des betroffenen Geräts - `ErrorNumber` → `[hlpdsk_requests.FehlerNr]` - Fehlercode - `Documentation` → `[hlpdsk_requests.Dokumentation]` - Dokumentation/Attachments - `Classification` → `[hlpdsk_requests.Bewertung]` - Klassifizierung (FK → AngebotBewertung) **Bearbeitung mit DB-Mapping**: - `ResponsiblePersonI3D` → `[hlpdsk_requests.VerantwortlicherI3D]` - Verantwortlicher Mitarbeiter (FK → Personal) - `CreatedByI3D` → `[hlpdsk_requests.ErstellerI3D]` - Ersteller (FK → Personal) - `CreatedDate` → `[hlpdsk_requests.ErfasstAm]` - Erfassungsdatum - `ChangedByI3D` → `[hlpdsk_requests.GeaendertVonI3D]` - Geändert von (FK → Personal) - `ChangedDate` → `[hlpdsk_requests.GeaendertDatum]` - Änderungsdatum - `DueDate` → `[hlpdsk_requests.FaelligAm]` - SLA-Fälligkeitsdatum - `ClosedAt` → `[hlpdsk_requests.AbgeschlossenAm]` - Abschlussdatum - `PlannedDurationInHours` → `[hlpdsk_requests.GeplanteDauerInStd]` - Geplante Bearbeitungsdauer (Stunden) **Vertrag & Abrechnung mit DB-Mapping**: - `ContractId` → `[hlpdsk_requests.VertragI3D]` - Zugehöriger Vertrag (FK → Vertraege) - `RechPosI3D` → `[hlpdsk_requests.RechPosI3D]` - Zugehörige Rechnungsposition (FK → RechPos) - `Calculated` → `[hlpdsk_requests.Berechnet]` - Berechnet/Verrechnet (Flag) - `IsRMA` → `[hlpdsk_requests.IstRMAFall]` - Ist RMA-Fall (Flag) **Collections**: - `HelpdeskTimer` → `[hlpdsk_timer]` (KeyColumn: hlpdsk_requestsI3D = hlpdsk_requests.I3D) - `TicketTags` → `[TicketTags]` (Many-to-Many via Junction) --- # HR & PERSONAL DOMÄNE ## Mitarbeiter (Employee) **Begriff**: Mitarbeiter / Beschäftigter **Englisch**: Employee **Datenbank-Tabelle**: `Personal` **Primärschlüssel**: `Personal.I3D` **Personalstammdaten mit DB-Mapping**: - `I3D` → `[Personal.I3D]` - Eindeutige Mitarbeiter-ID - `PersonnelNumber` → `[Personal.Personalnummer]` - Mitarbeiternummer - `Lastname` → `[Personal.Nachname]` - Nachname - `Firstname` → `[Personal.Vorname]` - Vorname - `Birthday` → `[Personal.Geburtstag]` - Geburtsdatum - `Street` → `[Personal.Strasse]` - Wohnstraße - `Zip` → `[Personal.Plz]` - Postleitzahl - `City` → `[Personal.Wohnort]` - Wohnort - `Job` → `[Personal.Beruf]` - Beruf/Funktion - `Phone1` → `[Personal.Telefon]` - Telefon 1 - `Phone2` → `[Personal.Telefon2]` - Telefon 2 - `Fax1` → `[Personal.Fax1]` - Fax **Beschäftigung mit DB-Mapping**: - `ContractKind` → `[Personal.VertragsArt]` - Vertragsart (Fest, Befristet, 450€, etc.) - `ContractPeriod` → `[Personal.Vertragslaufzeit]` - Vertragslaufzeit - `Salary` → `[Personal.MAKosten]` - Brutto-Gehalt - `VacationEntitlement` → `[Personal.Urlaubsanspruch]` - Jahresurlaubstage - `RemainingDaysOfVacation` → `[Personal.Resturlaub]` - Resturlaub **Audit-Trail mit DB-Mapping**: - `CreatedDate` → `[Personal.Angelegt_am]` - Erstellungsdatum - `CreatedFromI3D` → `[Personal.Angelegt_von]` - Ersteller (FK → Personal) - `ChangedDate` → `[Personal.Aenderung_am]` - Änderungsdatum - `ChangedFromI3D` → `[Personal.Aenderung_von]` - Geändert von (FK → Personal) **Besondere Felder mit DB-Mapping**: - `ForumUsername` → `[Personal.ForumUsername]` - Forum-Benutzername - `SalutationI3D` → `[Personal.AnredeI3D]` - Anrede (FK → Anrede) - `CostCenterI3D` → `[Personal.KostenstelleI3D]` - Kostenstelle (FK → Kostenstelle) - `RootDirI3D` → `[Personal.RootDirI3D]` - Root-Verzeichnis für Dateien (FK → Directorys) - `DefaultStorageI3D` → `[Personal.StandardLagerI3D]` - Standard-Lager (FK → Warehouses) **Collections**: - `Department` → `[PersonalGrpPersZuord]` (Many-to-Many über PersonalGruppen) --- # FINANZEN & ACCOUNTING DOMÄNE ## Zahlungsbedingung (Payment Terms) **Begriff**: Zahlungsbedingung / Zahlungsterm **Englisch**: Payment Terms / Terms and Conditions **Datenbank-Tabelle**: `Zahkond` **Primärschlüssel**: `Zahkond.I3D` **Felder mit DB-Mapping**: - `I3D` → `[Zahkond.I3D]` - Eindeutige Zahlungsbedingung-ID - `Name` → `[Zahkond.Bezeichnung]` - Bezeichnung (z.B. "14 Tage netto") - `Tage` → `[Zahkond.Tage]` - Zahlungsziel (Tage) - `SkontoProzent` → `[Zahkond.SkontoProzent]` - Skonto % (z.B. 2%) - `SkontoBis` → `[Zahkond.SkontoBis]` - Tage für Skonto - `Beschreibung` → `[Zahkond.Beschreibung]` - Vollständige Beschreibung **Beziehungen**: - Verwendet in: `[AufKopf.ZahlkondID]`, `[RechKopf.ZahlkondID]`, `[AccountCustomers.ReceiptConditionInvoiceI3D]`, etc. --- ## Kostenträger (Cost Center) **Begriff**: Kostenträger / Cost Center / Profit Center **Englisch**: Cost Center **Datenbank-Tabelle**: `Kostenstelle` (Legacy German), `Kostentraeger` (Kostenträger) **Primärschlüssel**: `Kostenstelle.I3D` (für Standard-Kostenstellen) **Felder mit DB-Mapping**: - `I3D` → `[Kostenstelle.I3D]` - Eindeutige Kostenträger-ID - `Nummer` → `[Kostenstelle.Nummer]` - Kostenträger-Nummer (z.B. "KT-100") - `Name` → `[Kostenstelle.Name]` - Bezeichnung - `Typ` → `[Kostenstelle.Art]` - Typ (FK → KostenstellenArt) - `Leiter` → `[Kostenstelle.Leiter]` - Verantwortlicher (FK → Personal) **Verwendung in Belegen**: - Bestellungen: `[AufKopf.KostentraegerI3D]` → `[Kostenstelle.I3D]` - Rechnungen: `[RechKopf.KostentraegerI3D]` → `[Kostenstelle.I3D]` - Positionen: `[AufPos.KostentraegerI3D]` → `[Kostenstelle.I3D]` --- # KONVENTIONEN & HINWEISE ## Datenbank-Naming-Konventionen | Aspekt | Konvention | Beispiel | Tabelle | |--------|-----------|---------|---------| | Primary Key | Immer `I3D` | `Accounts.I3D` | Alle Tabellen | | Foreign Key | Suffix `I3D` | `AccountI3D`, `EmployeeI3D` | Alle Tabellen | | Neue Entwicklung | English Table Names | `Accounts`, `AccountCustomers` | Neue Entities | | Legacy Systeme | German Table Names | `hlpdsk_requests`, `Vertraege`, `RechKopf` | Alte Entities | | Versionierung | `CreatedVersion`, `ChangedVersion` | In allen Basistabellen | Performance-Tracking | ## NHibernate Mapping-Struktur ``` Entity Class (z.B. Order) ↓ (FluentNHibernate ClassMapping) Database Table (z.B. AufKopf) ↓ Entity Properties → Table Columns ↓ Foreign Keys (I3D convention) ``` ## Beziehungstypen in der DB | Typ | Beispiel | Mapping | SQL | |-----|---------|---------|-----| | 1:1 | Account-Customer | `AccountI3D` FK | Foreign Key | | 1:n | Account-Addresses | `AccountI3D` in `AccountAddresses` | Foreign Key | | n:n | Employee-Department | `PersonalGruppen` (Junction Table) | Junction | | Collection | Order-Positions | `AufPosI3D` → AufPos table | HasMany | --- **Version**: 2.0 (mit DB-Mappings) **Status**: 80% vollständig - weitere Domänen bei Bedarf erweiterbar **Letzte Aktualisierung**: 2025-12-02 **Format**: [Tabelle.Spalte] für alle Datenbank-Referenzen ### Legende - `[Tabelle.Spalte]` = Exaktes DB-Mapping - `(FK → Tabelle)` = Foreign-Key Referenz - `[TBD]` = To Be Determined (Mapping erforderlich) - `virtual IList` = NHibernate Collection (1:n Beziehung)