steuerkommandos in S0 10 Texten

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV

steuerkommandos in S0 10 Texten

Postby Cheyenne3299 » Tue Dec 04, 2012 6:16 pm

Hallo,

ich da mal eine Frage , ich suche eine Möglichkeit eine IF Abfrage in S010 Texten auszuwerten.
Aber in Smartforms.
Nach etlichen Googlen haben ich rausgefunden das dies nicht mehr Smartforms funktionieren soll,
gibt es vielleicht doch eine Möglichkeit.


Viele Grüße uwe
Cheyenne3299
...
...
 
Posts: 111
Joined: Fri Apr 17, 2009 10:03 am

Re: steuerkommandos in S0 10 Texten

Postby Tron » Wed Dec 05, 2012 12:20 am

Moin Uwe,
In dem Beitrag viewtopic.php?f=31&t=5005
hatte ich schon mal das Auflösen von Textincludes behandelt. Es gibt aber nach wie vor
die Funktionsbausteine des Sapscript. Man muß diese eben explizit im Smartform coding aufrufen.
Hier ein Beispiel für das Evaluieren von IF Bedingungen aus der SAPSCRIPT-Welt.
Lege einen Text mit SO10 an. Der Inhalt ist in den Kommentarzeilen.
Setze den Wert der Variablen TEST auf 'X' , bzw. auf SPACE und schau Dir das Ergebnis der internen Tabelle tlin an.

Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. *&---------------------------------------------------------------------*
  2. *& Report  ZTEST_SAPSCRIPT_IF
  3. *&
  4. *&---------------------------------------------------------------------*
  5. *&
  6. *&
  7. *&---------------------------------------------------------------------*
  8.  
  9. REPORT  ztest_sapscript_if.
  10.  
  11. * Textname ZTEST_IF_COMMAND
  12. * ID = ST
  13. * Object = TEXT
  14.  
  15.  
  16. * TEST TEXT
  17.  
  18. *  /:       IF &TEST& EQ 'X'
  19. *  *         JA
  20. *  /:       ELSE
  21. *  *         NEIN
  22. *  /:       ENDIF
  23.  
  24.  
  25.  
  26. tid   TYPE thead-tdid VALUE 'ST',
  27. lang  TYPE thead-tdspras VALUE 'D',
  28. tname TYPE thead-tdname VALUE 'ZTEST_IF_COMMAND',
  29. tobj  TYPE thead-tdobject VALUE 'TEXT',
  30. thead type THEAD,
  31. tlin TYPE TABLE OF tline.
  32.  
  33. data test(1) value ' '.
  34.  
  35.  
  36. CALL FUNCTION 'READ_TEXT'
  37.   EXPORTING
  38. *   CLIENT                        = SY-MANDT
  39.     id                            = tid
  40.     language                      = lang
  41.     name                          = tname
  42.     object                        = tobj
  43. *   ARCHIVE_HANDLE                = 0
  44. *   LOCAL_CAT                     = ' '
  45.  IMPORTING
  46.    HEADER                        = thead
  47.     lines                         = tlin
  48.  EXCEPTIONS
  49.    id                            = 1
  50.    language                      = 2
  51.    name                          = 3
  52.    not_found                     = 4
  53.    object                        = 5
  54.    reference_check               = 6
  55.    wrong_access_to_archive       = 7
  56.    OTHERS                        = 8.
  57.  
  58. IF sy-subrc <> 0.
  59.  
  60.  
  61. CALL FUNCTION 'TEXT_CONTROL_REPLACE'
  62.   EXPORTING
  63.     header                = thead
  64. *   PROGRAM               = ' '
  65. *   REPLACE_COMMENT       = 'X'
  66. * IMPORTING
  67. *   CHANGED               =
  68. *   NEWHEADER             =
  69.     lines                 = tlin.
  70.  
  71.  
  72. IF sy-subrc <> 0.
  73.  
GeSHi ©


gruß Jens
Tron
.....
.....
 
Posts: 1112
Joined: Sat Aug 04, 2007 10:21 pm

Re: steuerkommandos in S0 10 Texten

Postby Cheyenne3299 » Wed Dec 05, 2012 10:53 am

Hallo Jens,

ich habe natürlich deinen Vorschlag gleich ausprobiert, nun aber folgendes problem ich möchte einen
feld inhalt auswerten.

Beispiel:

if &gs_xxxxx- titel& eq 'A9'.
tue dies
else.
tue das.
endif.

momentan werte er mir die Variable aber nicht aus da sie im Fuba nich bekannt ist , wie kann ich das lösen ?
Cheyenne3299
...
...
 
Posts: 111
Joined: Fri Apr 17, 2009 10:03 am

Re: steuerkommandos in S0 10 Texten

Postby Tron » Wed Dec 05, 2012 1:19 pm

Moin,
Eine Vorraussetzung in Sapscript ist, daß Variablen Programmglobal definiert sein müssen.
Also unter "Globale Definitionen"
und :
Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. CALL FUNCTION 'TEXT_CONTROL_REPLACE'
  2.   EXPORTING
  3.     header                = thead
  4.     PROGRAM               = SY-REPID
  5. *   REPLACE_COMMENT       = 'X'
  6. * IMPORTING
  7. *   CHANGED               =
  8. *   NEWHEADER             =
  9.     lines                 = tlin.
  10.  
  11.  
GeSHi ©


Hab's mal Smartformbezogen umgesetzt.

gruß Jens
Tron
.....
.....
 
Posts: 1112
Joined: Sat Aug 04, 2007 10:21 pm

Re: steuerkommandos in S0 10 Texten

Postby Cheyenne3299 » Wed Dec 05, 2012 1:31 pm

Hallo Jens,
die Variablen die ich auswerte sind global defeniert, da ich sie ja für die Auswertung im Formular ebenfalls benutzte , beim Debug bin drauf gestossen das die Variablen in den Fuba leer sind, danach aber wieder gefüllt waren. Ich übergebe jetzt mal diesen zusätzlichen Parameter und werd schaun was raus kommt.Denke bitte daran das ich dies nicht in Sap Script sondern in smartforms nutzten will.

gruß uwe
Cheyenne3299
...
...
 
Posts: 111
Joined: Fri Apr 17, 2009 10:03 am

Re: steuerkommandos in S0 10 Texten

Postby Cheyenne3299 » Wed Dec 05, 2012 1:46 pm

Besten Dank Jens wie es aussieht funktioniert es nun geschachtelte if ausprobieren und dann wäre es perfekt.

vielen Dank

Uwe
Cheyenne3299
...
...
 
Posts: 111
Joined: Fri Apr 17, 2009 10:03 am


Return to ABAP® Core

Who is online

Users browsing this forum: No registered users and 1 guest

cron