Hallo,
ich habe mal eine etwas grundsätzliche Frage zum Datenaustausch zwischen Applikationen, deren Datenbestand getrennt gepflegt wird. (historisch bedingt) Es gibt zwei Systeme A und B. Beide enthalten Artikeldaten. Beim Artikel gibt es u.a Hersteller, Steuer und Frachtgruppen.
Nun erzeugt A einen ArtikelDatensatz der den Herstellernamen im Klartext enthält. B empfängt diesen Datensatz. Kennt B den Herstellernamen wird es kein Problem geben. Kennt es ihn nicht, kann er entweder automatisch angelegt werden oder der Datensatz wird abgelehnt. Prima Sache. Bemerkt nun jemand in A z.B. einen Schreibfehler im Herstellernamen und korrigiert ihn, ist das dann für B ein neuer Hersteller. Bei automatischer Anlage hat B dann sowas wie ID1: Aple, ID2 :Apple. Oder B lehnt solange alle DS ab, bis der Hersteller angelegt / umbenannt wurde. Ausserdem kann es Probleme bei der Stringübertragung geben - unterschiedliche Betriebsysteme, dumme proprietäre Anwendungen etc - villeicht wird der String nicht immer sauber erkannt.
Erzeugt A hingegen einen Code für den Hersteller Apple, ist die Übertragung unabhängig von den Umständen ziemlich gesichert. Herstller 1 ist dann Apple, auch wenn wir alle mal russisch sprechen sollten. Allerdings muss dann dafür wieder eine in A und B zu pflegende Mappingtable existieren, oder eine an zentraler Stelle, wo sich die Applikationen (kann ja auch mal noch C dazukommen) bedienen. Mal abgesehen davon, dass ein proprietäres System diese Möglichkeit nicht so ohne weiters bietet, muss auch diese Tables wieder händisch gepflegt werden......
Nun bin ich am abwägen, welche Variante geeigneter wäre.... Ausprägung oder Key ...... Hat einer vielleicht noch eine andere Idee dafür auf Lager?
Mit freundlichen Grüßen
Jens Puruckherr