ich habe ein kleines Problemchen mit einem SapScript-Formular.
Ich hole etwas, aus um zu beschreiben, was ich vorhabe.
Ein Benutzer soll über ein Programm in einer externen Programmiersprache Daten erfassen. Diese werden durch manuelles Bestätigen an einen RFC-Baustein übergeben.
Dieser FB sammelt nun zu diesen Parametern auf der Datenbank die Daten in einer Struktur. Eigentlich wollte ich im FB direkt den Formular-Aufruf starten (Call Function 'Open_Form', Call Function 'Write_Form', Call Function 'Close_Form'. Dabei stellte ich jedoch über das Debugging vom Formular fest, dass Struktur während des Aufrufs keinerlei Daten beinhaltet. Die Struktur enthält aber Daten nur im Formular sind die Felder alle leer. Nach Prüfung des Formulars war auch zu erkennen, dass es keinerlei Fehler beinhaltet und somit die Struktur an sich dem Formualr bekannt ist.
Daraufhin habe ich mir andere Programme gesucht, wo SapScript aufgerufen wird. Mir kam langsam der Gedanke, dass es vielleicht mit einem FB gar nicht funktioniert.
Ich legte als einen Report an, in diesem eine Form 'print' und kopierte das relevante Coding dorthinein. Im FB habe ich die Struktur in eine interne Tabelle geschrieben die Form 'print' vom FB aus im neuen Report aufgrerufen und Daten per EXPORT/IMPORT Befehl übergeben. Alles soweit gut, Programm ist aufgerufen, Daten sind da.
Nun kommt wieder der Aufruf des Formulars (übrigens der Formularname und der Drucker stehen auch in dieser Struktur). Das richtige Formular wird gerufen und zum richtigen Drucker geschickt aber die Struktur ist während des Formularaufrufs wieder nicht erreichbar bzw. leer. Ich weiß absolut nicht weiter.
Ich hoffe jemand kann etwas dazu sagen.
Vielen Dank vorrab für die Hilfe.
oh man, jetzt habe ich das Druckprogramm mit 'submit' aufgerufen und es funktioniert. Kann mir vielleicht jemand einen Grund für diese stundenlange Ratlosigkeit nennen?
So ganz hab' ich's nicht verstanden, hatte aber auch mal das Problem, daß die Daten auf dem Weg vom Report zum Formular "verlorengingen". Ursache war, daß beim Aufruf der FuBas in OPTIONS-TDPROGRAM nicht der Reportname angegeben war. Mach ich jetzt immer, seitdem habe ich Ruhe.