Sunday, March 19, 2017

Assign anyr eference type of data to specific attributes



"To assign any data type reference  to specific val





DATA lt_tarikh TYPE zwdselopt.
DATA ls_tarikh TYPE selopt.
FIELD-SYMBOLS:    TYPE INDEX TABLE,
                    TYPE              any,
                  TYPE              char1,
               
                   TYPE              any,
                  TYPE              any.
DATA lt_datum TYPE REF TO data.
ASSIGN lt_datum->* TO .

IF IS ASSIGNED.
  LOOP AT ASSIGNING .
    ASSIGN COMPONENT 'SIGN' OF STRUCTURE TO .
    ASSIGN COMPONENT 'OPTION' OF STRUCTURE TO
    ASSIGN COMPONENT 'LOW' OF STRUCTURE TO .
    ASSIGN COMPONENT 'HIGH' OF STRUCTURE TO .
    ls_tarikh-sign = .
    ls_tarikh-option =
    ls_tarikh-low = .
    ls_tarikh-high = .
    APPEND ls_tarikh TO lt_tarikh.
  ENDLOOP.
ENDIF.

Monday, March 13, 2017

New Line Smartform



Hi,
You can try to use do called dynamic text. First, convert your string to so called ITF Text, something like this:
DATA: l_string TYPE string,
      lt_stream_lines TYPE STANDARD TABLE OF string,
      gt_text TYPE tline_t .

CONCATENATE 'AAAA'
            cl_abap_char_utilities=>newline
            'BBBB'
            cl_abap_char_utilities=>cr_lf
            'CCCC'
            INTO l_string .
APPEND l_string TO lt_stream_lines .

CALL FUNCTION 'CONVERT_STREAM_TO_ITF_TEXT'
  EXPORTING
    stream_lines = lt_stream_lines
    lf           = 'X'
  TABLES
    itf_text     = gt_text.
Then, in the Smartform, set the Text node Type to dynamic text and assign the table with ITF Text:
You should get something like this:
This conversion is especially useful when you have to deal with strings longer than 255 characters (maximum variable output length in Smartforms).
The contents of the dynamic text will be parsed by Smartform Composer during runtime, so you can even include variables (the ones visible in Smartform context) in the string.
cheers
Janis

Copy From : https://archive.sap.com/discussions/thread/3802222