habe folgendes Problem. Habe einen ABAP geschrieben, der für die Migration der Stammdaten aus einem externen Lagerprogramm (Daten als *.txt Datei) in SAP MM migriert. Dabei sollen die Sichten mit hilfe eines BAPIS angelegt werden. Soweit klappt das alles super. Doch jetzt kommt die Schwierigkeit: Im MatStamm soll auch eine Klassifizierung angelegt werden. Auch das klappt von 1900 MateStämmen bei ca. 1800 sehr gut. Nur bei manchen spinnt er total und ich kann mir einfach nicht erklären warum. Ich gehe momentan bei der Klassifizierung wie folgt vor:
- FB CACL_OBJECT_ALLOCATION_MAINT: Ich hole mir die Objekte der Klasse und Art
- Ich rufe sofort den FB CACL_CLASSIFICATION_SAVE auf ( notwendig ? )
- Ausprägungen der Klasse wird in interne Tabelle geschrieben
- interne Tabelle wird mit FB CACL_OBJECT_VALIDATION_MAINT weggeschrieben
- Es werden beieiner Ausprägung nun in einer Schleife noch weitere Merkmale zu einer Ausp geschrieben, da mehrwertig
d.h. Beispiel:
Ausprägung: Kinder <--- mehrwertig
Kinder 01: Stefan
02: Sabi
03: Chris
04: Seppl
Diese Merkmale schreibe ich Zeile für Zeile mit FB CACL_OBJECT_VALIDATION_MAINT weg.
- Zum Schluß mache ich FB CACL_CLASSIFICATION_SAVE zum sichern der Klassifizierung (Muss ich zwischendurch vll. auch mal wegsichern)
So das war's eigentlich. Jetzt stellt sich für mich die Frage:
Warum funktioniert das bei über 90 % und warum nicht bei 100 %! Ich verstehe es nicht! Kann mir bitte jemand helfen? Ich kann auch gerne ein bisschen Code posten.
Deine Problembeschreibung ist ja auch nicht grad ein Pappenstil. Da muss man sich auch erst einmal mit befassen.
Bei der Definition des 'bei 90% geht es' fehlt mir noch die Information, was denn ganau bei den 10% nicht funktioniert. Werden nur Teile der Klassifikation oder überhaupt nichts geschrieben? Wenn teilweise, was fehlt denn?
PS:
da ich die Bausteine zum Speichern noch nicht selbst benutzt habe, kann ich über Aufruffolgen nichts sagen.
Gruß
Ereglam
May the Force be with your code || .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .
Also bei den 10 % werden ca. 6 % gar nicht angelegt und ca. 4 % nur teilweise. Bei den teilweise, kann man kein System sehen, warum manche Ausp. angelegt werden und andere wieder nicht. Ich kann es einfach nicht besser erklären, weil ich die Logik einfach nicht begreifen, warum es manchmal funktionier und manchmal nicht. Mir kommt es irgendwie so vor, also ob er sich selbst überholt. Also so eine Art Wait fehlt mir da irgendwie. Aber ich bin mir nicht sicher. Vielleicht bin ich auch auf dem Holzweg. Ich kann nur noch hoffen, dass sich Jemand sehr gut damit auskennt. Ich selbst komme einfach nicht mehr weiter!!!
soviel ich weiß, kann man die Fortschreibung der Klassifizierung sofort beim Anlegen und beim Speichern von Änderungen vornehmen lassen.
Die Klassifizierung selbst arbeitet mit Puffern. Wenn man Klassifizierungsdaten zwischendurch lesen möchte, muß man wahrscheinlich die Puffer auslesen, da die Daten noch nicht in der Datenbank sind.
Noch eine Frage: Wenn die 10% nachverarbeitet werden, bleiben dann wieder 10% hängen???