Variante in beliebigem Mandanten anlegen

Getting started ... Alles für einen gelungenen Start.
9 Beiträge • Seite 1 von 1
9 Beiträge Seite 1 von 1

Variante in beliebigem Mandanten anlegen

Beitrag von Danny Winn (ForumUser / 10 / 3 / 0 ) »
Hallo Forum, :-)

ich habe die Aufgabe mandantenübergreifend (leere) Varianten anzulegen. Es handelt sich um sehr viele Varianten, Mandanten und SAP-Systeme, also schreibe ich hierfür aktuell einen ABAP-Report um das Ganze zu automatisieren.

Funktionsbaustein

Code: Alles auswählen.

RS_CREATE_VARIANT

kommt nicht in Frage, da er Varianten ausschließlich im selben Mandanten anlegen kann, also versuche ich das Anlegen von Varianten auf Tabellenebene umzusetzen. O.G. FuBa sowie Variantenerzeugen in TA SE38 füllt beim Anlegen einer Variante folgende 3 Tabellen:
VARI (Variantenspeicher)
VARID (Variantenkatalog)
VARIT (Varit)
Wenn ich die drei o.g. Tabellen via ABAP fülle, kann ich die neu angelegten Varianten via SE38 im Varianten-Auswahlfeld des Reports sehen.

Damit man sich die Variante dann auch komplett ansehen kann, muss in der Tabelle VARI das Feld CLUSTD (Inhalte der Variante) beliefert werden. Es handelt sich hierbei um den Datentyp LRAW. Ich konnte bisher (auch nicht anhand bestehender Funktionsbausteine) herausfinden, wie man dieses Feld korrekt beliefert. Bleibt es leer (Initialwert), dann verursacht TA SE38 beim Doppelklick auf die Variante einen Dump "CONNE_ILLEGAL_TRANSPORT_HEADER" beim Versuch das CLUSTD-Feld der zu interpretieren.

Um einen Tipp wäre ich sehr dankbar.

Aktueller Code siehe Anhang.

Gruß
Danny Winn

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: Variante in beliebigem Mandanten anlegen

Beitrag von a-dead-trousers (Top Expert / 4399 / 223 / 1182 ) »
hi!

Erstell dir doch einfach einen RFC-fähigen Baustein mit denselben Parametern wie RS_CREATE_VARIANT. Dieser ruft dann intern nur den SAP Baustein auf.
Dann brauchst du nur noch für jeden Mandanten / jedes System eine RFC-Destination anlegen und schon kannst du ganz einfach die Varianten hin und her kopieren.

In den Cluster-Tabellen selbst herumzufuhrwerken halte ich für keine Gute Idee weil die Daten hier über die SAP-eigenen Befehle IMPORT und EXPORT abgelegt werden. Um Daten zu verändern musst du also den exakten EXPORT Aufruf finden um den entsprechenden IMPORT Aufruf nachzubauen um die Daten wieder lesbar zu bekommen.

lg ADT

Folgende Benutzer bedankten sich beim Autor a-dead-trousers für den Beitrag:
Danny Winn

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.18
Basis: 7.50

Re: Variante in beliebigem Mandanten anlegen

Beitrag von Danny Winn (ForumUser / 10 / 3 / 0 ) »
Hi a-dead-trousers,

vielen Dank für Deine Nachricht.

Leider handelt es sich um eine 3-stellige Anzahl von SAP-Systemen. Die Anzahl der Mandanten ist insgesamt 4-stellig und das Anlegen von RFC-Destinations für die 4-stellige Mandantenzahl wäre zu aufwendig (und in der Produktion nicht ohne großen organisatorischen Aufwand durchführbar).

Die Lösung des Problems sollte also lediglich einen Report umfassen und aktuell sehe ich keine andere Möglichkeit als das Ganze auf Tabellenebene durchzuführen.

Danke auch für den Tipp mit dem EXPORT und IMPORT. Genau bei diesem Befehl wird der Dump erzeugt, weil das LRAW-Feld leer initial ist. Ich schaue mal, ob ich mit Hilfe des Debuggers herausfinden kann, wie IMPORT und EXPORT erfolgen müssen.


Gruß
Danny Winn

Re: Variante in beliebigem Mandanten anlegen

Beitrag von black_adept (Top Expert / 4099 / 128 / 941 ) »
Hallo Danny,

hast du schon mal probiert den Standardweg zu gehen und die Varianten einfach zu transportieren? LIMU VARI und LIMU VARX
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Variante in beliebigem Mandanten anlegen

Beitrag von a-dead-trousers (Top Expert / 4399 / 223 / 1182 ) »
Danny Winn hat geschrieben:Danke auch für den Tipp mit dem EXPORT und IMPORT. Genau bei diesem Befehl wird der Dump erzeugt, weil das LRAW-Feld leer initial ist. Ich schaue mal, ob ich mit Hilfe des Debuggers herausfinden kann, wie IMPORT und EXPORT erfolgen müssen.
IMPORT/EXPORT arbeitet nicht mit LRAW!
Die Befehle werden mit einer Liste von (internen) Tabellen, Strukturen und/oder Feldern aufgerufen. Diese werden dann in einem eigenen Format (verdichtet?) in das LRAW Feld auf der Datenbank abgelegt.
Danny Winn hat geschrieben:Die Lösung des Problems sollte also lediglich einen Report umfassen und aktuell sehe ich keine andere Möglichkeit als das Ganze auf Tabellenebene durchzuführen.
Das funktioniert auch mit meiner Lösung über die RFC-Destinationen. Einfach von dem einen Report aus den Funktionsbaustein in den diversen Destinationen aufrufen. Wenn du dir das händische Anlegen der RFC-Destinationen je Mandant/System ersparen möchtest, kannst du auch "temporäre" RFC-Destinationen automatich anlegen (sofern der ausführende Benutzer die Berechtigung dazu hat)
Funktionsbaustein DEST_RFC_ABAP_CREATE (Ist remotefähig, kann also von sich aus RFC-Destinationen anlegen)
black_adept hat geschrieben:hast du schon mal probiert den Standardweg zu gehen und die Varianten einfach zu transportieren? LIMU VARI und LIMU VARX
Ehrlich gesagt gefällt mir das sogar besser als meine RFC Lösung. :up:
Man muss eigentlich nur einen Report schreiben, der die Varianten eines Programms ausliest und in einen Transportauftrag stellt.
Funktionsbausteine TR_INSERT_REQUEST_WITH_TASKS, TR_OBJECT_CHECK, TR_APPEND_TO_COMM_OBJS_KEYS usw...

lg ADT
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.18
Basis: 7.50

Re: Variante in beliebigem Mandanten anlegen

Beitrag von Danny Winn (ForumUser / 10 / 3 / 0 ) »
Hallo zusammen,

in verschiedenen Systemschienen sind verschiedene Reports von der Variantenanlage betroffen. Das macht einen Transport schwierig. Daher muss die Lösung sein via Report alle betroffenen Reports zu ermitteln und für diese jeweils vier Varianten anzulegen. Bei mehreren hundert Systemen und mehreren tausend Mandanten ist das manuell nicht möglich.

RFC ist von der Grundidee her gut. Leider haben wir (SAP-Basis) in diversen Kundenmandanten keinen User oder RFC-Destinations, die wir verwenden könnten um einen Baustein remote im anderen Mandanten aufzurufen. Ich denke daher die einfachste Lösung ist es die Informationen der Tabelle VARI via EXPORT zu beliefern.

Gruß
Danny

Re: Variante in beliebigem Mandanten anlegen

Beitrag von a-dead-trousers (Top Expert / 4399 / 223 / 1182 ) »
Danny Winn hat geschrieben:Ich denke daher die einfachste Lösung ist es die Informationen der Tabelle VARI via EXPORT zu beliefern.
Tja dann... Den Baustein RS_CREATE_VARIANT analysieren und den korrekten EXPORT suchen.

lg ADT
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.18
Basis: 7.50

Re: Variante in beliebigem Mandanten anlegen

Beitrag von Unit605 (Expert / 975 / 37 / 93 ) »
Wo besteht eigentlich der Sinn oder Hintergrund fuer Deiner Aufgabe?

Leere Varianten anlegen in mehreren hunderten Systemen und mehreren tausenden Mandanten?!?!?

Re: Variante in beliebigem Mandanten anlegen

Beitrag von black_adept (Top Expert / 4099 / 128 / 941 ) »
Danny Winn hat geschrieben:Hallo zusammen,

in verschiedenen Systemschienen sind verschiedene Reports von der Variantenanlage betroffen. Das macht einen Transport schwierig. Daher muss die Lösung sein via Report alle betroffenen Reports zu ermitteln und für diese jeweils vier Varianten anzulegen. Bei mehreren hundert Systemen und mehreren tausend Mandanten ist das manuell nicht möglich.

RFC ist von der Grundidee her gut. Leider haben wir (SAP-Basis) in diversen Kundenmandanten keinen User oder RFC-Destinations, die wir verwenden könnten um einen Baustein remote im anderen Mandanten aufzurufen. Ich denke daher die einfachste Lösung ist es die Informationen der Tabelle VARI via EXPORT zu beliefern.

Gruß
Danny
Hallo Danny,

ich fasse mal zusammen. Ihr wollt einen Report bauen, der auf hunderte Systeme verteilt wird und dort dann laufen soll und in jedem System einen SAck voll Reports ermittelt zu denen in diversen Mandanten dann diese mysteriösen Leervarianten anlegt.

Da ihr ja hunderte Systeme mit diesem Report beliefern und diesen dort auch jeweils ausführen müsst scheint das ja nicht das entscheidende Problem zu sein.

Und da bietet sich doch dein Ursprungsvorschlag an. Benutze in deinem Report RS_VARIANT_CREATE und führe dann den Report auf allen Mandanten des Systems 1x aus.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Seite 1 von 1

Vergleichbare Themen

1
Antw.
901
Views
Anlegen von einer Variante
von dyv » 02.09.2014 09:08 • Verfasst in ABAP® für Anfänger
5
Antw.
2909
Views
Mandanten deaktivieren
von Anfänger » 06.03.2012 14:31 • Verfasst in Basis
0
Antw.
1351
Views
Migration von Mandanten
von GERDLA » 10.04.2006 09:40 • Verfasst in Basis
4
Antw.
6854
Views
Mandanten löschen
von horo » 10.11.2006 15:20 • Verfasst in SAP - Allgemeines
6
Antw.
2642
Views
3-Rechnerkonzept - Rolle der Mandanten
von Blueshape » 24.05.2007 11:47 • Verfasst in Basis

Aktuelle Forenbeiträge

Regex in where
vor 23 Stunden von tar 8 / 368
Daten an Tabelle binden
Gestern von Bright4.5 3 / 1636
Programm anlegen mit Vorlage
vor 2 Tagen von DeathAndPain 2 / 286
IT0024 Qualifikationen CP-ID
vor 2 Tagen von DeathAndPain 2 / 529

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

Regex in where
vor 23 Stunden von tar 8 / 368
Daten an Tabelle binden
Gestern von Bright4.5 3 / 1636
Programm anlegen mit Vorlage
vor 2 Tagen von DeathAndPain 2 / 286
IT0024 Qualifikationen CP-ID
vor 2 Tagen von DeathAndPain 2 / 529

Unbeantwortete Forenbeiträge

BUSOBJEKT zu CMIS PHIO ermitteln
vor 2 Tagen von snooga87 1 / 221
aRFC im OO-Kontext
letzen Monat von ralf.wenzel 1 / 3403
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9953