Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Recording long text

Former Member
0 Likes
1,333

Hi,

Basically using TCode SHDB I'm trying to record a transaction (CJ06) that requires saving of a "long text" field. When I tried to save my recording it seems that the "long text" field was not captured. Is there a technique to do this?

Will greatly appreaciate feedback. Thanks!

4 REPLIES 4
Read only

Former Member
0 Likes
841

Hi Jackie,

While recording the long text in the long text screen go-to menu -detials -> long text , then the text editor will appear, then in the menu click on go-to-->change editor.

and then insert the text .... then the recording of the write text will be possible,

u might use the logic like this.

PERFORM bdc_field USING 'BDC_CURSOR'

'RSTXT-TXLINE(02)'.

PERFORM bdc_field USING 'BDC_OKCODE'

'=TXVB'.

PERFORM bdc_field USING 'RSTXT-TXPARGRAPH(02)'

'*'.

PERFORM bdc_field USING 'RSTXT-TXPARGRAPH(03)'

'*'.

PERFORM bdc_field USING 'RSTXT-TXLINE(02)'

wa_itab-htext1.

PERFORM bdc_field USING 'RSTXT-TXLINE(03)'

wa_itab-htext2.

.

regards,

Santosh Thorat

Read only

0 Likes
841

Hi,

In your code:

PERFORM bdc_field USING 'RSTXT-TXPARGRAPH(02)' '*'.

PERFORM bdc_field USING 'RSTXT-TXPARGRAPH(03)' '*'.

what's the purpose of 02, 03 and *?

Just to show you how our long text field looks like here's the link to the image.

[Longtext|http://i32.photobucket.com/albums/d50/pbbaddict/longtext1.jpg]

[Long text after change of editor|http://i32.photobucket.com/albums/d50/pbbaddict/longtext2.jpg]

Thanks for helping.

Read only

0 Likes
841

Hi,

02 means the 2 row in the screen of the particular text, and 03 means the 3 row ....and so on.

I had and requirement that only two lines of text should be updated so the code for the 2 and 3 rows

was written..

regards,

Santosh

Read only

Former Member
0 Likes
841

RUN THIS CODE IN DEBUGGING MODE THEN U WILL KNOW HOW TO SOLVE UR PROBLEM.

DONT FORGET TO REWARD POINTS

----


TYPE-POOLS: slis.

"All the definitions of internal tables, structures and constants are de

"fined in type-pool SLIS

----


  • TABLES *

----


TABLES: t134,mara.

----


  • DECLARING STRUCUTURES *

----


*&--defining types for structure T_MARA

TYPES: BEGIN OF t_mara,

matnr TYPE matnr,

mtart TYPE mtart,

meins TYPE meins,

tline(132),

v_lights(4),

v_box(1),

long_text(70),

END OF t_mara.

----


  • Data Declaration

----


DATA: n TYPE n.

DATA: c TYPE c.

DATA: v_var(50).

DATA: wa_mara TYPE t_mara.

DATA: it_tab LIKE bdcdata OCCURS 0 WITH HEADER LINE.

DATA: it_mara TYPE STANDARD TABLE OF t_mara.

DATA: bildsequence LIKE t133a-bilds.

DATA: pass_tab LIKE mbildtab OCCURS 0 WITH HEADER LINE.

DATA: wa_pass_tab TYPE mbildtab.

DATA: t_object(10).

DATA: t_name(70).

DATA: t_id(4).

DATA: t_spras(1).

DATA: wa_layout TYPE slis_layout_alv.

DATA: t130m LIKE t130m.

DATA: wa_str TYPE tline.

DATA: str LIKE tline OCCURS 0 WITH HEADER LINE.

DATA: it_long TYPE STANDARD TABLE OF tline.

DATA: i_fieldcat TYPE slis_t_fieldcat_alv,

i_eventcat TYPE slis_t_event,

i_eventcat1 TYPE slis_t_event,

i_fieldcat1 TYPE slis_t_fieldcat_alv.

DATA : wa_fieldcat1 TYPE slis_fieldcat_alv.

DATA: r_ucomm LIKE sy-ucomm.

DATA: it_listheader TYPE slis_t_listheader.

DATA: reply(1).

DATA: v_path TYPE string. "Temp variable for quantity

DATA : IT_VARIANT LIKE DISVARIANT,

IT_VARIANT1 LIKE DISVARIANT.

----


  • define macros *

----


DEFINE macro_fieldcat.

  • add 1 to l_fieldcat-col_pos.

l_fieldcat-fieldname = &1.

l_fieldcat-ref_tabname = &2.

l_fieldcat-outputlen = &3.

l_fieldcat-edit = &4.

l_fieldcat-input = &5.

l_fieldcat-seltext_l = &6.

append l_fieldcat to i_fieldcat.

END-OF-DEFINITION.

*defining local workarea

DATA: l_fieldcat TYPE slis_fieldcat_alv.

macro_fieldcat 'V_LIGHTS' 'IT_MARA' '4' '' '' 'T_LITE'.

macro_fieldcat 'MATNR' 'IT_MARA' '18' '' '' 'MATERIAL NO.'.

macro_fieldcat 'MTART' 'IT_MARA' '4' '' '' 'MATERIAL TYPE'.

macro_fieldcat 'LONG_TEXT' 'IT_MARA' '132' 'X' 'X' 'LONG TEXT'.

"use 00 for default

----


  • INITIALIZATION EVENT *

----


*CLEARING THE BODY OF INTERNAL TABLES

REFRESH : it_tab.

*CLEARING THE WORK AREA

CLEAR : wa_mara.

perform check_p_var.

----


  • SELECTION-SCREEN

----


*****

*****SELECTION-SCREEN COMMENT /40(80) text-002.

*****SELECTION-SCREEN SKIP 9.

*****

*****SELECTION-SCREEN BEGIN OF BLOCK charly WITH FRAME TITLE text-001.

*****

*****SELECT-OPTIONS: k_matnr FOR wa_mara-matnr OBLIGATORY.

*****

*****SELECTION-SCREEN END OF BLOCK charly.

*****

SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME.

PARAMETERS: alv-list RADIOBUTTON GROUP gp1 DEFAULT 'X' USER-COMMAND chk,

alv-grid RADIOBUTTON GROUP gp1.

SELECTION-SCREEN END OF BLOCK b1.

SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME.

PARAMETERS: s_matnr TYPE mara-matnr MODIF ID g1.

SELECT-OPTIONS: k_matnr FOR mara-matnr MODIF ID g2.

SELECTION-SCREEN END OF BLOCK b2.

*FILE PATH

SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-003.

PARAMETERS: p_path(128) TYPE c.

SELECTION-SCREEN END OF BLOCK b3.

PARAMETERS: p_var TYPE slis_vari.

----


  • At Selection-Screen(output)

----


AT SELECTION-SCREEN OUTPUT.

LOOP AT SCREEN.

IF alv-list = 'X' AND screen-group1 = 'G1'.

screen-active = 0.

*screen-intensified = '1'.

MODIFY SCREEN.

ENDIF.

IF alv-grid = 'X' AND screen-group1 = 'G2'.

screen-active = 0.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

----


  • At Selection-Screen(VALIDATIONS)

----


AT SELECTION-SCREEN.

**

    • LOOP AT k_matnr.

**

    • IF k_matnr-low = c AND k_matnr-high = n.

**

    • message e017.

**

    • ENDIF.

    • ENDLOOP.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_var.

  • Display a list of various variants of the report when the

  • user presses F4 key in the variant field

PERFORM variant_f4. "USING FM REUSE_ALV_VARIANT_F4

SELECT SINGLE matnr INTO wa_mara-matnr FROM mara

WHERE matnr IN k_matnr.

IF sy-subrc <> 0.

"If record not found

MESSAGE 'Enter Valid Material Number' TYPE 'E'.

ENDIF.

----


  • Start-of-selection

----


START-OF-SELECTION.

REFRESH it_mara.

CLEAR wa_mara.

IF alv-list = 'X'.

SELECT matnr mtart meins INTO wa_mara FROM mara

WHERE

matnr IN k_matnr.

APPEND wa_mara TO it_mara. "Uploading work area to the internal table

ENDSELECT.

ELSEIF alv-grid = 'X'.

SELECT matnr mtart meins INTO wa_mara FROM mara

WHERE

matnr EQ s_matnr.

APPEND wa_mara TO it_mara. "Uploading work area to the internal table

ENDSELECT.

ENDIF.

----


  • END-OF-SELECTION

----


END-OF-SELECTION.

----


  • Declaration of All performs

----


  • PERFORM ZF_BUILD_FIELDCAT USING I_FIELDCAT.

PERFORM zf_top_of_page.

PERFORM zf_build_listheader USING it_listheader.

PERFORM zf_layout.

PERFORM zf_final_layout. " For populating Layout

PERFORM zf_build_eventcat USING i_eventcat.

" For populating eventcatalog

IF alv-grid = 'X'.

PERFORM zf_display_alv_grid. " For displaying GRID ALV

ELSEIF alv-list = 'X'.

PERFORM zf_display_alv_list.

ENDIF.

      • PERFORM zf_download.

&----


*& Form zf_build_eventcat

&----


  • text

----


  • -->P_I_EVENTCAT text

----


FORM zf_build_eventcat USING p_i_eventcat TYPE slis_t_event.

DATA: l_eventcat TYPE slis_alv_event.

CLEAR l_eventcat.

CALL FUNCTION 'REUSE_ALV_EVENTS_GET'

EXPORTING

i_list_type = 0

IMPORTING

et_events = p_i_eventcat

EXCEPTIONS

list_type_wrong = 1

OTHERS = 2.

IF sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

  • Top-of-page

CLEAR l_eventcat.

READ TABLE p_i_eventcat INTO l_eventcat WITH KEY name =

slis_ev_top_of_page.

IF sy-subrc = 0.

MOVE 'ZF_TOP_OF_PAGE' TO l_eventcat-form.

MODIFY p_i_eventcat FROM l_eventcat INDEX sy-tabix

TRANSPORTING form.

ENDIF.

  • USER_COMMAND FROM

CLEAR l_eventcat.

READ TABLE p_i_eventcat INTO l_eventcat WITH KEY name =

slis_ev_user_command.

IF sy-subrc = 0.

MOVE 'ZF_USER_COMMAND' TO l_eventcat-form.

MODIFY p_i_eventcat FROM l_eventcat INDEX sy-tabix TRANSPORTING form

.

ENDIF.

*pf_status_set form

CLEAR l_eventcat.

READ TABLE p_i_eventcat INTO l_eventcat WITH KEY name =

slis_ev_pf_status_set.

IF sy-subrc = 0.

MOVE 'ZF_PF_STATUS' TO l_eventcat-form.

MODIFY p_i_eventcat FROM l_eventcat INDEX sy-tabix TRANSPORTING form

.

ENDIF.

ENDFORM. " zf_build_eventcat

&----


*& Form zf_user_command

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM ZF_USER_COMMAND USING r_ucomm type sy-ucomm rs_selfield TYPE

slis_selfield.

DATA: v_mat TYPE matnr.

CASE r_ucomm.

WHEN 'BACK'.

LEAVE TO LIST-PROCESSING.

  • CALL FUNCTION 'POPUP_TO_CONFIRM'

  • EXPORTING

    • TITLEBAR = ' '

    • DIAGNOSE_OBJECT = ' '

  • text_question = 'Do u want to leave'

  • TEXT_BUTTON_1 = 'YES'(001)

    • ICON_BUTTON_1 = ' '

  • TEXT_BUTTON_2 = 'NO'(002)

    • ICON_BUTTON_2 = ' '

  • DEFAULT_BUTTON = '2'

    • DISPLAY_CANCEL_BUTTON = 'X'

    • USERDEFINED_F1_HELP = ' '

    • START_COLUMN = 25

    • START_ROW = 6

    • POPUP_TYPE =

    • IV_QUICKINFO_BUTTON_1 = ' '

    • IV_QUICKINFO_BUTTON_2 = ' '

  • IMPORTING

  • ANSWER = reply

    • TABLES

    • PARAMETER =

    • EXCEPTIONS

    • TEXT_NOT_FOUND = 1

    • OTHERS = 2

  • .

  • IF sy-subrc <> 0.

    • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

    • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

  • ENDIF.

*

    • leave screen.

    • leave to list-processing and return to screen selection-screen.

*

*if reply = '1'.

*

*leave to screen 1000.

*

*endif.

WHEN 'SAVE'.

IF rs_selfield-fieldname = 'MATNR'.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

EXPORTING

input = rs_selfield-value

IMPORTING

output = v_mat.

LOOP AT it_mara INTO wa_mara WHERE matnr = v_mat.

SELECT SINGLE * FROM t134 WHERE mtart = wa_mara-mtart.

CALL FUNCTION 'MATERIAL_INIT'

EXPORTING

tcode = 'MM02'

kz_berprf = 'X'

  • KZRFB = ' '

  • HERKUNFT = ' '

  • FLG_RETAIL = ' '

IMPORTING

it130m = t130m

  • KSTATUS =

  • TKSTATUS =

  • KZDCH =

EXCEPTIONS

no_authority = 1

wrong_call = 2

kstatus_empty = 3

tkstatus_empty = 4

aktyp_tcode_mismatch = 5

tcode_not_found = 6

material_article_mismatch = 7

OTHERS = 8

.

IF sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

CALL FUNCTION 'BILDSEQUENZ_IDENTIFY'

EXPORTING

  • BRANCHE = ' '

materialart = wa_mara-mtart

tcode_ref = t130m-trref

  • KZRFB = ' '

IMPORTING

bildsequenz = bildsequence

  • KZ_BILDS_CHANGED =

EXCEPTIONS

wrong_call = 1

not_found = 2

OTHERS = 3

.

IF sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

CALL FUNCTION 'SELECTION_VIEWS_FIND'

EXPORTING

bildsequenz = bildsequence

pflegestatus = t130m-pstat

TABLES

bildtab = pass_tab

EXCEPTIONS

call_wrong = 1

empty_selection = 2

OTHERS = 3.

IF sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

LOOP AT pass_tab INTO wa_pass_tab WHERE guifu = 'SP01'.

CONCATENATE 'MSICHTAUSW-KZSEL(' pass_tab-idxbd ')' INTO

v_var.

MODIFY pass_tab FROM wa_pass_tab.

ENDLOOP.

LOOP AT pass_tab.

PERFORM bdc_dynpro USING 'SAPLMGMM' '0060'.

PERFORM bdc_field USING 'BDC_CURSOR'

'RMMG1-MATNR'.

PERFORM bdc_field USING 'BDC_OKCODE'

'=AUSW'.

PERFORM bdc_field USING 'RMMG1-MATNR'

wa_mara-matnr.

PERFORM bdc_dynpro USING 'SAPLMGMM' '0070'.

PERFORM bdc_field USING 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(01)'.

PERFORM bdc_field USING 'BDC_OKCODE'

'=ENTR'.

PERFORM bdc_field USING v_var

'X'.

PERFORM bdc_dynpro USING 'SAPLMGMM' '4004'.

PERFORM bdc_field USING 'BDC_OKCODE'

'=PB26'.

PERFORM bdc_field USING 'BDC_CURSOR'

'MAKT-MAKTX'.

PERFORM bdc_field USING 'MAKT-MAKTX'

'test kushagra test data'.

PERFORM bdc_field USING 'MARA-MEINS'

wa_mara-meins.

PERFORM bdc_field USING 'MARA-MTPOS_MARA'

'NORM'.

PERFORM bdc_field USING 'DESC_LANGU_GDTXT'

'E'.

PERFORM bdc_dynpro USING 'SAPLMGMM' '4300'.

PERFORM bdc_field USING 'BDC_OKCODE'

'=LTEX'.

PERFORM bdc_field USING 'MAKT-MAKTX'

'test kushagra test data'.

PERFORM bdc_dynpro USING 'SAPLSTXX' '1100'.

PERFORM bdc_field USING 'BDC_CURSOR'

'RSTXT-TXLINE(03)'.

PERFORM bdc_field USING 'BDC_OKCODE'

'=TXVB'.

PERFORM bdc_field USING 'RSTXT-TXLINE(03)'

wa_mara-long_text.

PERFORM bdc_dynpro USING 'SAPLSTXX' '1100'.

PERFORM bdc_field USING 'BDC_CURSOR'

'RSTXT-TXLINE(02)'.

PERFORM bdc_field USING 'BDC_OKCODE'

'=TXBA'.

PERFORM bdc_dynpro USING 'SAPLMGMM' '4300'.

PERFORM bdc_field USING 'BDC_OKCODE'

'=BABA'.

PERFORM bdc_field USING 'MAKT-MAKTX'

'test kushagra test data'.

PERFORM bdc_dynpro USING 'SAPLMGMM' '4004'.

PERFORM bdc_field USING 'BDC_OKCODE'

'/00'.

PERFORM bdc_field USING 'BDC_CURSOR'

'MAKT-MAKTX'.

PERFORM bdc_field USING 'MAKT-MAKTX'

'test kushagra test data'.

PERFORM bdc_field USING 'MARA-MEINS'

'CAR'.

PERFORM bdc_field USING 'MARA-MTPOS_MARA'

'NORM'.

PERFORM bdc_field USING 'DESC_LANGU_GDTXT'

'E'.

PERFORM bdc_dynpro USING 'SAPLSPO1' '0300'.

PERFORM bdc_field USING 'BDC_OKCODE'

'=YES'.

CALL TRANSACTION 'MM02' USING it_tab MODE 'A'.

EXIT.

ENDLOOP.

ENDLOOP.

ENDIF.

WHEN '&IC1'.

IF rs_selfield-fieldname = 'MATNR'.

*set parameter id 'MAT' field rs_selfield-value.

*call transaction 'MM03' AND SKIP FIRST SCREEN.

  • message i023 with rs_selfield-value.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

EXPORTING

input = rs_selfield-value

IMPORTING

output = v_mat.

t_object = 'MATERIAL'.

t_id = 'GRUN'.

t_name = v_mat.

t_spras = 'EN'.

CALL FUNCTION 'READ_TEXT'

EXPORTING

client = sy-mandt

id = t_id

language = t_spras

name = t_name

object = t_object

  • ARCHIVE_HANDLE = 0

  • LOCAL_CAT = ' '

  • IMPORTING

  • HEADER =

TABLES

lines = str

  • EXCEPTIONS

  • ID = 1

  • LANGUAGE = 2

  • NAME = 3

  • NOT_FOUND = 4

  • OBJECT = 5

  • REFERENCE_CHECK = 6

  • WRONG_ACCESS_TO_ARCHIVE = 7

  • OTHERS = 8

.

IF sy-subrc = 0.

REFRESH i_fieldcat1.

wa_fieldcat1-col_pos = '1'.

"POSITION OF THE COLUMN

wa_fieldcat1-fieldname = 'TDLINE'. "FIELD NAME

wa_fieldcat1-tabname = 'STR'. "NAME OF INTERNAL TABLE

  • WA_FIELDCAT-ref_tabname = 'MARA'. "FOR REFERENCE

*WA_FIELDCAT-key = 'X'. "MAKING FIELD AS KEY FIELD

wa_fieldcat1-emphasize = 'C210'.

wa_fieldcat1-outputlen = 72.

"OUTPUT LENGTH FOR FIELD

wa_fieldcat1-seltext_s = 'LONG TEXT'. "SHORT TEXT FOR HEADER

  • WA_FIELDCAT-hotspot = 'X'.

APPEND wa_fieldcat1 TO i_fieldcat1.

"APPEND NEW LINE AT THE END

CLEAR wa_fieldcat1.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

  • I_INTERFACE_CHECK = ' '

  • I_BYPASSING_BUFFER = ' '

  • I_BUFFER_ACTIVE = ' '

i_callback_program = sy-repid

  • I_CALLBACK_PF_STATUS_SET = ' '

  • I_CALLBACK_USER_COMMAND = ' '

  • I_CALLBACK_TOP_OF_PAGE = ' '

  • I_CALLBACK_HTML_TOP_OF_PAGE = ' '

  • I_CALLBACK_HTML_END_OF_LIST = ' '

  • I_STRUCTURE_NAME =

  • I_BACKGROUND_ID = ' '

  • I_GRID_TITLE =

  • I_GRID_SETTINGS =

  • IS_LAYOUT =

it_fieldcat = i_fieldcat1

  • IT_EXCLUDING =

  • IT_SPECIAL_GROUPS =

  • IT_SORT =

  • IT_FILTER =

  • IS_SEL_HIDE =

  • I_DEFAULT = 'X'

  • I_SAVE = ' '

  • IS_VARIANT =

  • IT_EVENTS = i_eventcat1

  • IT_EVENT_EXIT =

  • IS_PRINT =

  • IS_REPREP_ID =

  • I_SCREEN_START_COLUMN = 0

  • I_SCREEN_START_LINE = 0

  • I_SCREEN_END_COLUMN = 0

  • I_SCREEN_END_LINE = 0

  • IT_ALV_GRAPHICS =

  • IT_HYPERLINK =

  • IT_ADD_FIELDCAT =

  • IT_EXCEPT_QINFO =

  • I_HTML_HEIGHT_TOP =

  • I_HTML_HEIGHT_END =

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER =

  • ES_EXIT_CAUSED_BY_USER =

TABLES

t_outtab = str

EXCEPTIONS

program_error = 1

OTHERS = 2

.

IF sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

ENDIF.

ENDIF.

*endif.

ENDCASE.

ENDFORM. " zf_user_command

&----


*& Form zf_display_alv_grid

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM zf_display_alv_grid .

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

  • I_INTERFACE_CHECK = ' '

  • I_BYPASSING_BUFFER = ' '

  • I_BUFFER_ACTIVE = ' '

i_callback_program = sy-repid

i_callback_pf_status_set = 'ZF_PF_STATUS'

i_callback_user_command = 'ZF_USER_COMMAND'

  • I_CALLBACK_TOP_OF_PAGE = ' '

  • I_CALLBACK_HTML_TOP_OF_PAGE = ' '

  • I_CALLBACK_HTML_END_OF_LIST = ' '

  • I_STRUCTURE_NAME =

  • I_BACKGROUND_ID = ' '

  • I_GRID_TITLE =

  • I_GRID_SETTINGS =

is_layout = wa_layout

it_fieldcat = i_fieldcat

  • IT_EXCLUDING =

  • IT_SPECIAL_GROUPS =

  • IT_SORT =

  • IT_FILTER =

  • IS_SEL_HIDE =

  • I_DEFAULT = 'X'

  • I_SAVE = ' '

IS_VARIANT = it_variant1

it_events = i_eventcat

  • IT_EVENT_EXIT =

  • IS_PRINT =

  • IS_REPREP_ID =

  • I_SCREEN_START_COLUMN = 0

  • I_SCREEN_START_LINE = 0

  • I_SCREEN_END_COLUMN = 0

  • I_SCREEN_END_LINE = 0

  • IT_ALV_GRAPHICS =

  • IT_HYPERLINK =

  • IT_ADD_FIELDCAT =

  • IT_EXCEPT_QINFO =

  • I_HTML_HEIGHT_TOP =

  • I_HTML_HEIGHT_END =

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER =

  • ES_EXIT_CAUSED_BY_USER =

TABLES

t_outtab = it_mara

EXCEPTIONS

program_error = 1

OTHERS = 2

.

IF sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

ENDFORM. " zf_display_alv_grid

&----


*& Form zf_layout

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM zf_layout .

CLEAR wa_layout.

wa_layout-zebra = 'X'.

wa_layout-lights_fieldname = 'V_LIGHTS'.

wa_layout-lights_tabname = 'IT_MARA'.

wa_layout-box_fieldname = 'V_BOX'.

wa_layout-box_tabname = 'IT_MARA'.

ENDFORM. " zf_layout

&----


*& Form zf_final_layout

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM zf_final_layout .

LOOP AT it_mara INTO wa_mara.

DATA: v_mat TYPE matnr.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

EXPORTING

input = wa_mara-matnr

IMPORTING

output = v_mat.

t_object = 'MATERIAL'.

t_id = 'GRUN'.

t_name = v_mat.

t_spras = 'EN'.

CALL FUNCTION 'READ_TEXT'

EXPORTING

  • CLIENT = SY-MANDT

id = t_id

language = t_spras

name = t_name

object = t_object

  • ARCHIVE_HANDLE = 0

  • LOCAL_CAT = ' '

  • IMPORTING

  • HEADER =

TABLES

lines = str

EXCEPTIONS

id = 1

language = 2

name = 3

not_found = 4

object = 5

reference_check = 6

wrong_access_to_archive = 7

OTHERS = 8

.

IF sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

IF sy-subrc = 0.

READ TABLE str INDEX 1 INTO wa_str-tdline.

IF wa_str-tdline = '* IMPORTANT'.

wa_mara-v_lights = '3'.

MODIFY it_mara FROM wa_mara TRANSPORTING v_lights.

ELSE.

wa_mara-v_lights = '2'.

MODIFY it_mara FROM wa_mara TRANSPORTING v_lights.

ENDIF.

ELSE.

wa_mara-v_lights = '1'.

MODIFY it_mara FROM wa_mara TRANSPORTING v_lights.

ENDIF.

ENDLOOP.

ENDFORM. " zf_final_layout

&----


*& Form bdc_dynpro

&----


  • text

----


  • -->P_0610 text

  • -->P_0611 text

----


FORM bdc_dynpro USING program dynpro.

CLEAR it_tab.

it_tab-program = program.

it_tab-dynpro = dynpro.

it_tab-dynbegin = 'X'.

APPEND it_tab.

ENDFORM. " bdc_dynpro

&----


*& Form bdc_field

&----


  • text

----


  • -->P_0624 text

  • -->P_0625 text

----


FORM bdc_field USING fnam fval.

CLEAR it_tab.

it_tab-fnam = fnam.

it_tab-fval = fval.

APPEND it_tab.

ENDFORM. " bdc_field

&----


*& Form zf_top_of_page

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM zf_top_of_page .

CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'

EXPORTING

it_list_commentary = it_listheader

i_logo = 'ENJOYSAP_LOGO'

  • I_END_OF_LIST_GRID =

.

ENDFORM. " zf_top_of_page

&----


*& Form ZF_BUILD_LISTHEADER

&----


  • text

----


  • -->P_IT_LISTHEADER text

----


FORM zf_build_listheader USING p_it_listheader TYPE

slis_t_listheader.

DATA: l_listheader TYPE slis_listheader.

REFRESH p_it_listheader.

CLEAR l_listheader.

l_listheader-typ = 'H'. "Header

l_listheader-key = 'FCIL,INDIA'. "Ignored for "Header" Type

l_listheader-info = 'FUJITSU CONSULTING INDIA LIMITED'.

APPEND l_listheader TO p_it_listheader.

CLEAR l_listheader.

l_listheader-typ = 'S'.

l_listheader-key = 'DATE'.

l_listheader-info = sy-datum.

APPEND l_listheader TO p_it_listheader.

CLEAR l_listheader.

l_listheader-typ = 'S'.

l_listheader-key = 'TIME'.

l_listheader-info = sy-uzeit.

APPEND l_listheader TO p_it_listheader.

CLEAR l_listheader.

l_listheader-typ = 'S'.

l_listheader-key = 'COMMENT'."Ignored for "action" Type

l_listheader-info = 'Possibilities are infinite'.

APPEND l_listheader TO p_it_listheader.

ENDFORM. " ZF_BUILD_LISTHEADER

&----


*& Form zf_pf_status

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM ZF_PF_STATUS USING rt_extab TYPE slis_t_extab .

SET PF-STATUS 'KUSH_MENU1'.

ENDFORM. " zf_pf_status

&----


*& Form zf_display_alv_list

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM zf_display_alv_list .

CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'

EXPORTING

  • I_INTERFACE_CHECK = ' '

  • I_BYPASSING_BUFFER =

  • I_BUFFER_ACTIVE = ' '

i_callback_program = sy-repid

  • I_CALLBACK_PF_STATUS_SET = ' '

  • I_CALLBACK_USER_COMMAND = ' '

  • I_STRUCTURE_NAME =

is_layout = wa_layout

it_fieldcat = i_fieldcat

  • IT_EXCLUDING =

  • IT_SPECIAL_GROUPS =

  • IT_SORT =

  • IT_FILTER =

  • IS_SEL_HIDE =

  • I_DEFAULT = 'X'

  • I_SAVE = ' '

  • IS_VARIANT =

it_events = i_eventcat

  • IT_EVENT_EXIT =

  • IS_PRINT =

  • IS_REPREP_ID =

  • I_SCREEN_START_COLUMN = 0

  • I_SCREEN_START_LINE = 0

  • I_SCREEN_END_COLUMN = 0

  • I_SCREEN_END_LINE = 0

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER =

  • ES_EXIT_CAUSED_BY_USER =

TABLES

t_outtab = it_mara

  • EXCEPTIONS

  • PROGRAM_ERROR = 1

  • OTHERS = 2

.

IF sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

ENDFORM. " zf_display_alv_list

***&----


****& Form ZF_DOWNLOAD

***&----


        • text

***----


        • --> p1 text

        • <-- p2 text

***----


***FORM zf_download .

      • v_path = p_path.

***

      • CALL FUNCTION 'GUI_DOWNLOAD'

      • EXPORTING

        • BIN_FILESIZE =

      • filename = 'C:\DOCUMENTS AND SETTINGS\KUSHARMA\DESKTOP\TEST.DOC'

      • filetype = 'DOC'

      • append = 'X'

        • WRITE_FIELD_SEPARATOR = ' '

        • HEADER = '00'

        • TRUNC_TRAILING_BLANKS = ' '

        • WRITE_LF = 'X'

        • COL_SELECT = ' '

        • COL_SELECT_MASK = ' '

        • DAT_MODE = ' '

        • CONFIRM_OVERWRITE = ' '

        • NO_AUTH_CHECK = ' '

        • CODEPAGE = ' '

        • IGNORE_CERR = ABAP_TRUE

        • REPLACEMENT = '#'

        • WRITE_BOM = ' '

        • TRUNC_TRAILING_BLANKS_EOL = 'X'

        • WK1_N_FORMAT = ' '

        • WK1_N_SIZE = ' '

        • WK1_T_FORMAT = ' '

        • WK1_T_SIZE = ' '

        • IMPORTING

        • FILELENGTH =

      • TABLES

      • data_tab = it_mara

        • FIELDNAMES =

      • EXCEPTIONS

      • file_write_error = 1

      • no_batch = 2

      • gui_refuse_filetransfer = 3

      • invalid_type = 4

      • no_authority = 5

      • unknown_error = 6

      • header_not_allowed = 7

      • separator_not_allowed = 8

      • filesize_not_allowed = 9

      • header_too_long = 10

      • dp_error_create = 11

      • dp_error_send = 12

      • dp_error_write = 13

      • unknown_dp_error = 14

      • access_denied = 15

      • dp_out_of_memory = 16

      • disk_full = 17

      • dp_timeout = 18

      • file_not_found = 19

      • dataprovider_exception = 20

      • control_flush_error = 21

      • OTHERS = 22

      • .

      • IF sy-subrc <> 0.

        • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

        • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

      • ENDIF.

***ENDFORM. " ZF_DOWNLOAD

&----


*& Form VARIANT_F4

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM variant_f4 .

it_variant-report = sy-repid.

CALL FUNCTION 'REUSE_ALV_VARIANT_F4'

EXPORTING

is_variant = it_variant

  • I_TABNAME_HEADER =

  • I_TABNAME_ITEM =

  • IT_DEFAULT_FIELDCAT =

i_save = 'A'

i_display_via_grid = 'X'

  • IMPORTING

  • E_EXIT =

es_variant = it_variant1

EXCEPTIONS

not_found = 1

program_error = 2

OTHERS = 3

.

IF sy-subrc = 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

p_var = it_variant1-variant.

ELSE.

CLEAR it_variant1.

ENDIF.

ENDFORM. " VARIANT_F4

&----


*& Form check_p_var

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


form check_p_var .

IF NOT P_VAR IS INITIAL.

IT_VARIANT-REPORT = SY-REPID.

IT_VARIANT-VARIANT = P_VAR.

CALL FUNCTION 'REUSE_ALV_VARIANT_EXISTENCE'

EXPORTING

I_SAVE = 'A'

CHANGING

cs_variant = IT_VARIANT

EXCEPTIONS

WRONG_INPUT = 1

NOT_FOUND = 2

PROGRAM_ERROR = 3

OTHERS = 4

.

IF sy-subrc = 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

CLEAR IT_VARIANT1.

MOVE P_VAR TO IT_VARIANT1-VARIANT.

MOVE SY-REPID TO IT_VARIANT1-REPORT.

ENDIF.

Else.

clear it_variant.

endif.

endform. " check_p_var