Mandantenabhängige Z-Tabelle

Alles Rund um SAP®.
6 Beiträge • Seite 1 von 1
6 Beiträge Seite 1 von 1

Mandantenabhängige Z-Tabelle

Beitrag von dkast (Specialist / 108 / 7 / 1 ) » 30.06.2020 15:46
Hallo,

einer meiner Vorgänger hat bei uns im System eine wichtige Tabelle ohne Mandanten angelegt. Diese Tabelle wird nun schon seit Jahren gefüllt. Gibt es eine möglichkeit den Mandanten zum Schlüssel hinzuzufügen und die Daten zu erhalten? Ein erster kurzer Test hat die Tabelle geleert.

Vielen Dank für eure Vorschläge.


Re: Mandantenabhängige Z-Tabelle

Beitrag von DeathAndPain (Top Expert / 1386 / 148 / 324 ) » 30.06.2020 15:55
Na ja, wenn Du den Schlüssel änderst, können die Daten nicht wirklich erhalten bleiben, denn bei jeder Tabellenzeile identifiziert der Schlüssel ja genau diese Zeile. Die Zeilen, die eure Tabelle jetzt enthält, kann es dann also nicht mehr geben.

Deine Optionen:
  • Neue Tabelle anders nennen (oder temporäre, andern benamte Schattentabelle verwenden) und dann mit einem kleinen selbst geschriebenen Programm die Daten umkopieren
  • Daten per SE16 in eine Excel-Tabelle runterladen, Tabelle ändern, Daten wieder hochladen. Wenn das im Produktivsystem ein Rechteproblem ergibt, kannst Du das auch im Entwicklungssystem machen und anschließend den gesamten Tabelleninhalt in einen Transportauftrag aufnehmen. Alternativ kannst Du die Daten auch per LSMW zurückspielen, wenn ihr jemanden habt, der damit umgehen kann und die Tabelle das zulässt.

Re: Mandantenabhängige Z-Tabelle

Beitrag von a-dead-trousers (Top Expert / 3458 / 106 / 894 ) » 01.07.2020 08:19
Eine neue Spalte (auch im Schlüssel) hinzuzufügen sollte eigentlich kein Problem darstellen. Das Entferenen einer Spalte ist da schon problematischer, weil es dann zu einer Schlüsselverletzung beim Tabellenumsetzer kommen kann.

Im konkreten Fall mit dem Mandantenfeld kommt eine Spezialität in SAP zum Tragen die man berücksichtigen muss. Ich glaube nämlich nicht, dass die Tabelle bei dem "ersten Test" geleert wurde. Viel eher dürften die Einträge z.B. in der SE16 einfach nur nicht mehr angezeigt werden, weil sie nicht mehr zum aktuellen Mandanten gehören sondern zum Mandanten ' ' (drei Leerzeichen).
Mach mal ein SELECT mit CLIENT SPECIFIED auf die Tabelle und du dürftest sehen, dass die Einträge alle noch vorhanden sind.

Um jetzt das Problem zu umgehen gibt es zwei Möglichkeiten:
1) Ein Report wie D&P bereits vorgeschalgen hat, der die Einträge nach der Umsetzung von Mandanten ' ' in den aktuellen Mandanten kopiert.
2) Die Spalte nicht mit dem Datentyp CLNT definieren, sondern mit einem anderen Datentyp (z.B. das Datenelement MANDANT). Das hebelt das Mandantenkonzept der SAP aus und man kann dann von allen Mandanten aus, alle Einträge einsehen und bearbeiten. Das muss man aber dann bei allen Abfragen mit SELECT auch immer berücksichtigen. Einträge mit ' ' könnte man dann z.B. als "mandantenübergreifend" interpretieren.
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.07
Basis: 7.40

Re: Mandantenabhängige Z-Tabelle

Beitrag von gtoXX (Specialist / 149 / 31 / 22 ) » 04.07.2020 02:02
a-dead-trousers hat geschrieben:
01.07.2020 08:19

2) Die Spalte nicht mit dem Datentyp CLNT definieren, sondern mit einem anderen Datentyp (z.B. das Datenelement MANDANT). Das hebelt das Mandantenkonzept der SAP aus und man kann dann von allen Mandanten aus, alle Einträge einsehen und bearbeiten. Das muss man aber dann bei allen Abfragen mit SELECT auch immer berücksichtigen. Einträge mit ' ' könnte man dann z.B. als "mandantenübergreifend" interpretieren.
Dieser Empfehlung sollte man schon aus Auditing Gründen nicht folgen. Mal von unberechenbaren Nebeneffekten abgesehen. Es handelt sich dann immer noch nicht um eine Mandantenabhängige Tabelle.

----

Alternativ : Ein DB Admin kann das ganze auch in ein paar Minuten erledigen.

Folgende Benutzer bedankten sich beim Autor gtoXX für den Beitrag (Insgesamt 2):
a-dead-trousersDeathAndPain

"Code lügt nicht ^^"

Re: Mandantenabhängige Z-Tabelle

Beitrag von a-dead-trousers (Top Expert / 3458 / 106 / 894 ) » 04.07.2020 19:27
gtoXX hat geschrieben:
04.07.2020 02:02
Dieser Empfehlung sollte man schon aus Auditing Gründen nicht folgen.
Guter Einwand.
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.07
Basis: 7.40

Re: Mandantenabhängige Z-Tabelle

Beitrag von Shortcut IT (ForumUser / 7 / 1 / 1 ) » 05.07.2020 19:06
Hallo,
interessantes Thema. Ich habe das gerade mal auf meinem Testsystem nachgestellt, und nach Ergänzung eines MANDT-Feldes (an 1. Position) und Umsetzung der Tabelle mit der SE14 habe ich nun Daten für _alle_ Mandanten des Systems, d.h. aus jedem vorher mandantenlosen Datensatz hat die Umsetzung 3 Datensätze erzeugt (bei 3 Mandanten: 000, 001, 100).
Gut möglich, dass das konkrete Verhalten von der verwendeten Datenbank und/oder vom SAP-Release abhängig ist (bei mir: Sybase ASE 16.0.02.06 / SAP_BASIS 752).

Folgende Benutzer bedankten sich beim Autor Shortcut IT für den Beitrag:
gtoXX


Seite 1 von 1

Aktuelle Forenbeiträge

Upload Dateitypen - Content ermitteln
vor 9 Stunden von STDIN 1 / 15
Best Practice IDOC Typen
Gestern von Basler84 1 / 127

Vergleichbare Themen

Mandantenabhängige Farbgebung?
von Nunki » 09.05.2006 17:08
Mandantenabhängige Nutzung von modifizierten Dokumentationen
von Ben2408 » 21.06.2019 11:49
Join über Tabelle trotz Pool/Cluster Tabelle
von em.tie » 04.12.2006 18:38
Inhalt einer internen Tabelle in eine transparente Tabelle?
von Gast » 19.10.2004 14:23