Application Development 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: 

regarding function module

Former Member
0 Kudos

hi experts,

any function module which will update the change made in editable field of alv to database tables. in my case i am editing the field arktx which should update the database table vbap.

3 REPLIES 3

Former Member
0 Kudos

check BAPI_SALESORDER_CHANGE function module.

ashok_kumar24
Contributor
0 Kudos

Hi Narasimha Kulkarni,

<b>Check out the following which will guide you with all the relevant functionality

https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/cda3992d-0e01-0010-90b2-c4e1f899ac01</b>

Good Luck and thanks

AK

Former Member
0 Kudos

Please refer this code for the same...

Also please do use ..transporting when you use modify...

&----


*& Report Z8JAYANT_MAT_RECORD_SHADOW1 *

*& *

&----


*& *

*& *

&----


REPORT Z8JAYANT_MAT_RECORD_SHADOW1 MESSAGE-ID Z8JAYANT.

************************************************************************

  • Author: Jayant Kumar Sahu

  • Client:

  • Date: 11/13/2006

  • Purpose: To prepare a report on entry of material document number.

  • Description: Report is in form of ALV.

*----


  • Modification Log:

  • Date Developer Reason

*----


  • 11/13/2006 Jayant Sahu Development

************************************************************************

TYPE-POOLS: SLIS. "Type Pool for the ALV reporting.

TABLES: MKPF, MSEG, MARA, MAKT. "Tables Used in Reporting.

----


  • Structure Declaration *

----


  • Structure for the Header Data.

TYPES: BEGIN OF IT_HEADER,

MBLNR TYPE MBLNR, "Number of the Material Document.

MJAHR TYPE MJAHR, "Material Document Year.

BLART TYPE BLART, "Document Type.

BUDAT TYPE BUDAT, "Posting Date in Document.

END OF IT_HEADER.

  • Structure containing all the fields from all tables.

TYPES: BEGIN OF IT_FINAL,

MBLNR TYPE MBLNR, "Number of the Material Document.

MJAHR TYPE MJAHR, "Material Document Year.

BLART TYPE BLART, "Document Type.

BUDAT TYPE BUDAT, "Posting Date in Document.

ZEILE TYPE MBLPO, "Item in Material Document.

MATNR TYPE MATNR, "Material Number.

BWART TYPE BWART, "Movement Type (Inventory Mgmt.).

WERKS TYPE WERKS_D, "Plant.

LGORT TYPE LGORT_D, "Storage Location.

MENGE TYPE MENGE_D, "Quantity.

MEINS TYPE MEINS, "Base Unit of Measure.

MAKTX TYPE MAKTX, "Material Description.

ERSDA TYPE ERSDA, "Creation date.

ERNAM TYPE ERNAM, "Person who Created object.

PSTAT TYPE PSTAT_D, "Maintenance status.

BOX(2) TYPE C,

END OF IT_FINAL,

BEGIN OF T_MSEG,

MBLNR TYPE MBLNR, "Number of the Material Document.

MJAHR TYPE MJAHR, "Material Document Year.

ZEILE TYPE MBLPO, "Item in Material Document.

MENGE TYPE MENGE_D, "Quantity.

MEINS TYPE MEINS, "Base Unit of Measure.

END OF T_MSEG.

TYPES : BEGIN OF T_MATERIAL,

MATNR TYPE MATNR,

ERSDA TYPE ERSDA, "Creation date.

ERNAM TYPE ERNAM, "Person who Created object.

PSTAT TYPE PSTAT_D, "Maintenance status.

MAKTX TYPE MAKTX, "Material Description.

END OF T_MATERIAL.

----


  • Internal Tables *

----


*Internal Table for the Structure it_header.

DATA: I_HEADER TYPE STANDARD TABLE OF IT_HEADER WITH HEADER LINE.

*Internal Table for the Structure it_final.

DATA: I_FINAL TYPE STANDARD TABLE OF IT_FINAL WITH HEADER LINE.

DATA: I_FINAL2 TYPE STANDARD TABLE OF IT_FINAL WITH HEADER LINE.

DATA: I_MATERIAL TYPE STANDARD TABLE OF T_MATERIAL WITH HEADER LINE.

*Internal Table for the Updating unit of measurement.

DATA: I_MSEG TYPE STANDARD TABLE OF T_MSEG WITH HEADER LINE.

DATA: WA_FINAL TYPE IT_FINAL.

DATA: WA_MSEG TYPE T_MSEG.

DATA: WA TYPE MSEG.

  • FOR THE SORTING SEQUENCE.

DATA: I_SORTINFO TYPE SLIS_T_SORTINFO_ALV.

----


  • Data Declaration For the Basic ALV Reporting *

----


DATA: I_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,

V_LAYOUT TYPE SLIS_LAYOUT_ALV,

I_EVENTS TYPE SLIS_T_EVENT.

----


  • Selection Screen *

----


SELECTION-SCREEN BEGIN OF BLOCK SEL WITH FRAME TITLE TEXT-001.

SELECT-OPTIONS: S_MBLNR FOR MKPF-MBLNR.

SELECTION-SCREEN END OF BLOCK SEL.

----


  • Validation at Selection Screen *

----


AT SELECTION-SCREEN.

SELECT MBLNR FROM MKPF INTO (I_HEADER-MBLNR) WHERE

MBLNR IN S_MBLNR.

EXIT.

ENDSELECT.

IF SY-SUBRC <> 0. "If record is not found.

MESSAGE E021.

ENDIF.

CLEAR I_HEADER.

REFRESH I_HEADER.

----


  • Start of Selection Event *

----


*For Selecting the Data Into the Internal Table.

PERFORM SELECT_DATA.

*For the Fieldcatalog .(For Displaying the output.

PERFORM FIELDCATALOG USING I_FIELDCAT[].

*For the Layout.

PERFORM ZF_OUTPUT_LAYOUT.

*For including the events.

PERFORM EVENT_CATALOG USING I_EVENTS.

*For Sorting the fields.

PERFORM SORT_CATALOG USING I_SORTINFO.

*For the Display of the report (grid display).

PERFORM GRID_LAYOUT.

&----


*& Form Select_data

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM SELECT_DATA .

*Populating the data to Final internal table.

""break-point.

SELECT DISTINCT MKPF~MBLNR

MKPF~MJAHR

MKPF~BLART

MKPF~BUDAT

MSEG~ZEILE

MSEG~MATNR

MSEG~BWART

MSEG~WERKS

MSEG~LGORT

MSEG~MENGE

MSEG~MEINS INTO TABLE I_FINAL

FROM MKPF INNER JOIN MSEG

ON MSEGMBLNR = MKPFMBLNR

AND MSEGMJAHR = MKPFMJAHR

WHERE MKPF~MBLNR IN S_MBLNR.

*Populating the Material Master Data in internal table.

IF I_FINAL[] IS NOT INITIAL.

SELECT MARA~MATNR

MARA~ERSDA

MARA~ERNAM

MARA~PSTAT

MAKT~MAKTX INTO TABLE I_MATERIAL

FROM MARA INNER JOIN MAKT

ON MAKTMATNR = MARAMATNR

FOR ALL ENTRIES IN I_FINAL

WHERE MARA~MATNR = I_FINAL-MATNR.

ENDIF.

*Moving the material Master Information to the final internal table.

LOOP AT I_FINAL.

READ TABLE I_MATERIAL WITH KEY MATNR = I_FINAL-MATNR.

I_FINAL-ERSDA = I_MATERIAL-ERSDA.

I_FINAL-ERNAM = I_MATERIAL-ERNAM.

I_FINAL-PSTAT = I_MATERIAL-PSTAT.

I_FINAL-MAKTX = I_MATERIAL-MAKTX.

MODIFY I_FINAL TRANSPORTING ERSDA ERNAM PSTAT MAKTX.

ENDLOOP.

*Sorting the final internal table on Material Doc. Number.

SORT I_FINAL BY MBLNR.

ENDFORM. " Select_data

&----


*& Form fieldcatalog

&----


  • text

----


  • -->P_I_FIELDCAT text

----


FORM FIELDCATALOG USING P_I_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV.

DATA: L_FIELDCAT TYPE SLIS_FIELDCAT_ALV.

*MKPF-MBLNR.

*REFRESH l_FIELDCAT.

  • CLEAR L_FIELDCAT.

*

  • L_FIELDCAT-FIELDNAME = 'CHECKBOX'. " FIELD FOR WHICH CATALOG ID FILLED

*.

  • L_FIELDCAT-TABNAME = 'I_FINAL'. "FINAL INETERNAL TABLE.

  • L_FIELDCAT-SELTEXT_M = 'CB.'. " MEDIUM TEXT FOR HEADER.

  • L_FIELDCAT-COL_POS = 1. " POSITION OF THE COLUMN.

  • L_FIELDCAT-OUTPUTLEN = 2. " SET THE OUTPUT LENGTH.

  • L_FIELDCAT-CHECKBOX = 'X'. " CHECK BOX

  • L_FIELDCAT-EDIT = 'X'.

  • L_FIELDCAT-INPUT = 'X'.

*

  • APPEND L_FIELDCAT TO P_I_FIELDCAT.

CLEAR L_FIELDCAT.

L_FIELDCAT-FIELDNAME = 'MBLNR'. " FIELD FOR WHICH CATALOG ID FILLED.

L_FIELDCAT-TABNAME = 'I_FINAL'. "FINAL INETERNAL TABLE.

L_FIELDCAT-SELTEXT_M = 'MAT DOC NO.'. " MEDIUM TEXT FOR HEADER.

L_FIELDCAT-COL_POS = 2. " POSITION OF THE COLUMN.

L_FIELDCAT-OUTPUTLEN = 14. " SET THE OUTPUT LENGTH.

L_FIELDCAT-EMPHASIZE = 'X'. " COLOR OF THIS COLUMN.

L_FIELDCAT-KEY = 'X'. " Key Field.

L_FIELDCAT-REF_TABNAME = 'MKPF'. "TRANSPARENT TABLE.

APPEND L_FIELDCAT TO P_I_FIELDCAT.

CLEAR L_FIELDCAT.

*MKPF-MJAHR.

CLEAR L_FIELDCAT.

L_FIELDCAT-FIELDNAME = 'MJAHR'. " FIELD FOR WHICH CATALOG ID FILLED.

L_FIELDCAT-TABNAME = 'I_FINAL'. "FINAL INETERNAL TABLE.

L_FIELDCAT-SELTEXT_M = 'MAT DOC YEAR'. " MEDIUM TEXT FOR HEADER.

L_FIELDCAT-COL_POS = 3. " POSITION OF THE COLUMN.

L_FIELDCAT-OUTPUTLEN = 7. " SET THE OUTPUT LENGTH.

L_FIELDCAT-EMPHASIZE = 'X'. " COLOR OF THIS COLUMN.

L_FIELDCAT-KEY = 'X'. " Key Field.

L_FIELDCAT-REF_TABNAME = 'MKPF'. "TRANSPARENT TABLE.

APPEND L_FIELDCAT TO P_I_FIELDCAT.

CLEAR L_FIELDCAT.

*MSEB-MATNR.

CLEAR L_FIELDCAT.

L_FIELDCAT-FIELDNAME = 'MATNR'. " FIELD FOR WHICH CATALOG ID FILLED.

L_FIELDCAT-TABNAME = 'I_FINAL'. "FINAL INETERNAL TABLE.

L_FIELDCAT-SELTEXT_M = 'MAT NUMBER'. " MEDIUM TEXT FOR HEADER.

L_FIELDCAT-COL_POS = 4. " POSITION OF THE COLUMN.

L_FIELDCAT-OUTPUTLEN = 20. " SET THE OUTPUT LENGTH.

*l_fieldcat-emphasize = 'X'. " COLOR OF THIS COLUMN.

*l_fieldcat-key = 'X'. " Key Field.

L_FIELDCAT-REF_TABNAME = 'MSEB'. "TRANSPARENT TABLE.

APPEND L_FIELDCAT TO P_I_FIELDCAT.

CLEAR L_FIELDCAT.

*MAKT-MAKTX.

CLEAR L_FIELDCAT.

L_FIELDCAT-FIELDNAME = 'MAKTX'. " FIELD FOR WHICH CATALOG ID FILLED.

L_FIELDCAT-TABNAME = 'I_FINAL'. "FINAL INETERNAL TABLE.

L_FIELDCAT-SELTEXT_M = 'MAT DESCRIPTION'. " MEDIUM TEXT FOR HEADER.

L_FIELDCAT-COL_POS = 5. " POSITION OF THE COLUMN.

L_FIELDCAT-OUTPUTLEN = 25. " SET THE OUTPUT LENGTH.

*l_fieldcat-emphasize = 'X'. " COLOR OF THIS COLUMN.

*l_fieldcat-key = 'X'. " Key Field.

L_FIELDCAT-REF_TABNAME = 'MAKT'. "TRANSPARENT TABLE.

APPEND L_FIELDCAT TO P_I_FIELDCAT.

CLEAR L_FIELDCAT.

*MKPF-BLART.

CLEAR L_FIELDCAT.

L_FIELDCAT-FIELDNAME = 'BLART'. " FIELD FOR WHICH CATALOG ID FILLED.

L_FIELDCAT-TABNAME = 'I_FINAL'. "FINAL INETERNAL TABLE.

L_FIELDCAT-SELTEXT_M = 'MAT DOC TYP'. " MEDIUM TEXT FOR HEADER.

L_FIELDCAT-COL_POS = 6. " POSITION OF THE COLUMN.

L_FIELDCAT-OUTPUTLEN = 4. " SET THE OUTPUT LENGTH.

*l_fieldcat-emphasize = 'X'. " COLOR OF THIS COLUMN.

*l_fieldcat-key = 'X'. " Key Field.

L_FIELDCAT-REF_TABNAME = 'MKPF'. "TRANSPARENT TABLE.

APPEND L_FIELDCAT TO P_I_FIELDCAT.

CLEAR L_FIELDCAT.

*MKPF-BUDAT.

CLEAR L_FIELDCAT.

L_FIELDCAT-FIELDNAME = 'BUDAT'. " FIELD FOR WHICH CATALOG ID FILLED.

L_FIELDCAT-TABNAME = 'I_FINAL'. "FINAL INETERNAL TABLE.

L_FIELDCAT-SELTEXT_M = 'POSTING DATE'. " MEDIUM TEXT FOR HEADER.

L_FIELDCAT-COL_POS = 7. " POSITION OF THE COLUMN.

L_FIELDCAT-OUTPUTLEN = 10. " SET THE OUTPUT LENGTH.

*l_fieldcat-emphasize = 'X'. " COLOR OF THIS COLUMN.

*l_fieldcat-key = 'X'. " Key Field.

L_FIELDCAT-REF_TABNAME = 'MKPF'. "TRANSPARENT TABLE.

APPEND L_FIELDCAT TO P_I_FIELDCAT.

CLEAR L_FIELDCAT.

*MSEG-ZEILE.

CLEAR L_FIELDCAT.

L_FIELDCAT-FIELDNAME = 'ZEILE'. " FIELD FOR WHICH CATALOG ID FILLED.

L_FIELDCAT-TABNAME = 'I_FINAL'. "FINAL INETERNAL TABLE.

L_FIELDCAT-SELTEXT_M = 'LINE ITEM NO'. " MEDIUM TEXT FOR HEADER.

L_FIELDCAT-COL_POS = 8. " POSITION OF THE COLUMN.

L_FIELDCAT-OUTPUTLEN = 6. " SET THE OUTPUT LENGTH.

*l_fieldcat-emphasize = 'X'. " COLOR OF THIS COLUMN.

*l_fieldcat-key = 'X'. " Key Field.

L_FIELDCAT-REF_TABNAME = 'MSEG'. "TRANSPARENT TABLE.

APPEND L_FIELDCAT TO P_I_FIELDCAT.

CLEAR L_FIELDCAT.

*MSEG-BWART.

CLEAR L_FIELDCAT.

L_FIELDCAT-FIELDNAME = 'BWART'. " FIELD FOR WHICH CATALOG ID FILLED.

L_FIELDCAT-TABNAME = 'I_FINAL'. "FINAL INETERNAL TABLE.

L_FIELDCAT-SELTEXT_M = 'MOVEMENT TYPE'. " MEDIUM TEXT FOR HEADER.

L_FIELDCAT-COL_POS = 9. " POSITION OF THE COLUMN.

L_FIELDCAT-OUTPUTLEN = 5. " SET THE OUTPUT LENGTH.

*l_fieldcat-emphasize = 'X'. " COLOR OF THIS COLUMN.

*l_fieldcat-key = 'X'. " Key Field.

L_FIELDCAT-REF_TABNAME = 'MSEG'. "TRANSPARENT TABLE.

APPEND L_FIELDCAT TO P_I_FIELDCAT.

CLEAR L_FIELDCAT.

*MSEG-WERKS.

CLEAR L_FIELDCAT.

L_FIELDCAT-FIELDNAME = 'WERKS'. " FIELD FOR WHICH CATALOG ID FILLED.

L_FIELDCAT-TABNAME = 'I_FINAL'. "FINAL INETERNAL TABLE.

L_FIELDCAT-SELTEXT_M = 'PLANT'. " MEDIUM TEXT FOR HEADER.

L_FIELDCAT-COL_POS = 10. " POSITION OF THE COLUMN.

L_FIELDCAT-OUTPUTLEN = 6. " SET THE OUTPUT LENGTH.

*l_fieldcat-emphasize = 'X'. " COLOR OF THIS COLUMN.

*l_fieldcat-key = 'X'. " Key Field.

L_FIELDCAT-REF_TABNAME = 'MSEG'. "TRANSPARENT TABLE.

APPEND L_FIELDCAT TO P_I_FIELDCAT.

CLEAR L_FIELDCAT.

*MSEG-LGORT.

CLEAR L_FIELDCAT.

L_FIELDCAT-FIELDNAME = 'LGORT'. " FIELD FOR WHICH CATALOG ID FILLED.

L_FIELDCAT-TABNAME = 'I_FINAL'. "FINAL INETERNAL TABLE.

L_FIELDCAT-SELTEXT_M = 'STORAGE LOC'. " MEDIUM TEXT FOR HEADER.

L_FIELDCAT-COL_POS = 11. " POSITION OF THE COLUMN.

L_FIELDCAT-OUTPUTLEN = 6. " SET THE OUTPUT LENGTH.

*l_fieldcat-emphasize = 'X'. " COLOR OF THIS COLUMN.

*l_fieldcat-key = 'X'. " Key Field.

L_FIELDCAT-REF_TABNAME = 'MSEG'. "TRANSPARENT TABLE.

APPEND L_FIELDCAT TO P_I_FIELDCAT.

CLEAR L_FIELDCAT.

*MSEG-MENGE.

CLEAR L_FIELDCAT.

L_FIELDCAT-FIELDNAME = 'MENGE'. " FIELD FOR WHICH CATALOG ID FILLED.

L_FIELDCAT-TABNAME = 'I_FINAL'. "FINAL INETERNAL TABLE.

L_FIELDCAT-SELTEXT_M = 'QUANTITY'. " MEDIUM TEXT FOR HEADER.

L_FIELDCAT-COL_POS = 12. " POSITION OF THE COLUMN.

L_FIELDCAT-OUTPUTLEN = 13. " SET THE OUTPUT LENGTH.

*l_fieldcat-emphasize = 'X'. " COLOR OF THIS COLUMN.

*l_fieldcat-key = 'X'. " Key Field.

L_FIELDCAT-REF_TABNAME = 'MSEG'. "TRANSPARENT TABLE.

L_FIELDCAT-INPUT = 'X'. "FOR INPUT.

L_FIELDCAT-EDIT = 'X'. "FIELD IS EDITABLE.

APPEND L_FIELDCAT TO P_I_FIELDCAT.

CLEAR L_FIELDCAT.

*MSEG-MEINS.

CLEAR L_FIELDCAT.

L_FIELDCAT-FIELDNAME = 'MEINS'. " FIELD FOR WHICH CATALOG ID FILLED.

L_FIELDCAT-TABNAME = 'I_FINAL'. "FINAL INETERNAL TABLE.

L_FIELDCAT-SELTEXT_M = 'U.O.M.'. " MEDIUM TEXT FOR HEADER.

L_FIELDCAT-COL_POS = 13. " POSITION OF THE COLUMN.

L_FIELDCAT-OUTPUTLEN = 3. " SET THE OUTPUT LENGTH.

*l_fieldcat-key = 'X'. " Key Field.

L_FIELDCAT-REF_TABNAME = 'MSEG'. "TRANSPARENT TABLE.

L_FIELDCAT-REF_FIELDNAME = 'MEINS'.

  • L_FIELDCAT-INPUT = 'X'. "FOR INPUT.

  • L_FIELDCAT-EDIT = 'X'. "FIELD IS EDITABLE.

APPEND L_FIELDCAT TO P_I_FIELDCAT.

""break-point.

ENDFORM. " fieldcatalog

&----


*& Form grid_layout

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM GRID_LAYOUT .

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

  • I_INTERFACE_CHECK = ' '

  • I_BYPASSING_BUFFER = ' '

  • I_BUFFER_ACTIVE = ' '

I_CALLBACK_PROGRAM = 'Z8JAYANT_MAT_RECORD_SHADOW1'

I_CALLBACK_PF_STATUS_SET = 'PF_STATUS'

I_CALLBACK_USER_COMMAND = 'USER_COMMAND'

  • I_CALLBACK_TOP_OF_PAGE = ' '

  • I_CALLBACK_HTML_TOP_OF_PAGE = ' '

  • I_CALLBACK_HTML_END_OF_LIST = ' '

  • I_STRUCTURE_NAME = 'IT_FINAL'

  • I_BACKGROUND_ID = ' '

  • I_GRID_TITLE =

  • I_GRID_SETTINGS =

IS_LAYOUT = V_LAYOUT

IT_FIELDCAT = I_FIELDCAT

  • IT_EXCLUDING =

  • IT_SPECIAL_GROUPS =

IT_SORT = I_SORTINFO

  • IT_FILTER =

  • IS_SEL_HIDE =

I_DEFAULT = 'X'

  • I_SAVE = ' '

  • IS_VARIANT =

IT_EVENTS = I_EVENTS

  • 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 = I_FINAL

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. " grid_layout

&----


*& Form sort_catalog

&----


  • text

----


  • -->P_I_SORTINFO text

----


FORM SORT_CATALOG USING P_I_SORTINFO TYPE SLIS_T_SORTINFO_ALV.

DATA: L_SORTINFO TYPE SLIS_SORTINFO_ALV.

CLEAR L_SORTINFO.

L_SORTINFO-SPOS = '1'.

L_SORTINFO-FIELDNAME = 'MBLNR'.

L_SORTINFO-TABNAME = 'I_FINAL'.

L_SORTINFO-UP = 'X'.

L_SORTINFO-GROUP = 'UL'.

" I.E UNDERLINE AFTER EVERY GROUP

APPEND L_SORTINFO TO P_I_SORTINFO.

CLEAR L_SORTINFO.

L_SORTINFO-SPOS = '2'.

L_SORTINFO-FIELDNAME = 'MJAHR'.

L_SORTINFO-TABNAME = 'I_FINAL'.

L_SORTINFO-UP = 'X'.

L_SORTINFO-GROUP = 'UL'.

" I.E UNDERLINE AFTER EVERY GROUP

APPEND L_SORTINFO TO P_I_SORTINFO.

ENDFORM. " sort_catalog

*----


**

*FORM PF_STATUS *

*----


**

FORM PF_STATUS USING RT_EXTAB TYPE SLIS_T_EXTAB.

SET PF-STATUS 'MENU'.

ENDFORM. "END OF PF_STATUS.

&----


*& Form event_catalog

&----


  • text

----


  • -->P_I_EVENTS text

----


FORM EVENT_CATALOG USING P_I_EVENTS TYPE SLIS_T_EVENT.

DATA: L_EVENT TYPE SLIS_ALV_EVENT.

CALL FUNCTION 'REUSE_ALV_EVENTS_GET'

EXPORTING

I_LIST_TYPE = 0

IMPORTING

ET_EVENTS = P_I_EVENTS

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.

CLEAR L_EVENT.

READ TABLE P_I_EVENTS WITH KEY NAME = SLIS_EV_USER_COMMAND INTO L_EVENT.

*Moving the usercommand event.

IF SY-SUBRC = 0.

MOVE 'USER_COMMAND' TO L_EVENT-FORM.

APPEND L_EVENT TO P_I_EVENTS.

ENDIF.

ENDFORM. " event_catalog

*----


----


*Form user_command *

*----


----


FORM USER_COMMAND USING P_UCOMM TYPE SY-UCOMM

P_SELFIELD TYPE SLIS_SELFIELD.

""break-point.

SELECT * INTO WA FROM MSEG WHERE MBLNR = I_FINAL-MBLNR.

ENDSELECT.

CASE P_UCOMM.

WHEN 'SAV'.

READ TABLE I_FINAL INDEX P_SELFIELD-TABINDEX.

CASE P_SELFIELD-FIELDNAME.

WHEN 'MENGE'.

IF P_SELFIELD-TABINDEX = '1'.

CLEAR WA-MENGE.

WA-MENGE = P_SELFIELD-VALUE.

MODIFY MSEG FROM WA .

ENDIF.

<b> WHEN 'MEINS'.

IF P_SELFIELD-TABINDEX = '1'.

CLEAR WA-MEINS.

WA-MEINS = P_SELFIELD-VALUE.

MODIFY MSEG FROM WA .

ENDIF.

ENDCASE.</b>

ENDCASE.

ENDFORM. "user_command.

Regards,

Jayant

&----


*& Form ZF_OUTPUT_LAYOUT

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM ZF_OUTPUT_LAYOUT .

V_LAYOUT-ZEBRA = 'X'.

V_LAYOUT-BOX_FIELDNAME = 'BOX'.

V_LAYOUT-BOX_TABNAME = 'I_FINAL'.

ENDFORM. " ZF_OUTPUT_LAYOUT