habe leider das Problem, das ich aus einer Klasse heraus ein SAP-Script Formular drucken möchte.
Prinzipiell funktioniert das ja, also die Funktionsbausteine zum drucken des Formulars lassen sich aufrufen und verrichten auch ihren Dienst, das Layout des Formulars wird ausgegeben.
Nun das Problem: Die Variablen werden nicht durch Werte ersetzt, es wird wirklich nur das Layout ausgegeben. Nun hab ich versucht, nur Attribute der Klasse auszugeben, kommen keine Werte. Der nächste Gedanke war, nicht als Attribut oder Methodenlokele Variablen, sondern über einen Include in Methode laden. Leider auch nichts.
Hat noch wer eine Idee, wie man die Werte auf das Formular kriegen kann oder geht das einfach generell nicht?
Über einen Tipp oder die schlechte Nachricht, nein, kann man nicht machen würde ich mich freuen.
habe dies selber noch nicht versucht. Aber bei SAP-Script, müssen die Variablen, die du ausgibst immer global definert sein.
Ist das in deinem Fall so?
die Frage ist, in wie weit man Global bezeichnen kann.
Ich hätte halt gerne eine Klasse die ein Label bezeichnet.
Darin suche ich mir über Methoden dann die Werte die ich drucken möchte und versuche die Daten dann direkt aus der instanziierten Klasse auszugeben.
Anscheinend reicht aber Methodenlokal in der Instanziierten Klasse nicht aus, aber auch die Objektattribute scheinen nicht zu reichen.
Was habe ich denn noch für Möglichkeiten, die Variablen als global zu definieren bei Klassen und Objekten?
Müssen die global im Rahmenprogramm sein, in dem ich das Objekt instanziere?
Wenn das der Fall ist, funktioniert das ja gar nicht so, wie ich mir das vorstelle, zumindest nicht mit Sap-Script...
Ich denke, da SAP-Script ja eigentlich durch SmartForms bereits abgelöst werden sollte und ab ECC 6.0 man auchmit PDF's arbeiten kann wurde an den alten Schnittstellen nichts mehr getan.
Du solltest die Variablen im Rahmenprogramm definieren und dann sollte dein Formular auch funktionieren. Alternativ müsste man das ganze mal mit SmartForms versuchen wie sich das verhält oder mal in die Doku schauen.
du kannst deinen Formularen aber eine oder zwei Strukturen spendieren.
Und deiner Klasse spendierst du eine "Gibmirallenotwendigenvariablen"-Methode, die du dann aus dem SAP-Skript-Druckprogramm aufrufst.
die Methode kannst du auch später für Smartforms gut gebrauchen...
Wenn ich die Strukturen im DDIC anlege, dann kann ich sie ja einfach übergeben und füllen lassen, muss dann nur die Sap-Script-Forumlare etwas anpassen, aber das ist ja nicht so viel Arbeit.
Und dann das Drucken halt doch im Rahmenprogramm erledigen und nicht in der Klasse selbst (zumindest für Sap-Script).
Und dann, bei der Smartformsvariante kann ich den Aufruf des FB fürs drucken des Smartforms ja auch aus der Methode aufrufen, und da bringt mir die Struktur ja dann auch was.
Das ist eine gute Idee und dekt beide Wege des Druckens ganz gut ab.