INITIALIZATION.
NAME = 'P1'.
TAB-PROG = SY-REPID.
TAB-DYNNR = 5001.
TAB-ACTIVETAB = 'BUTTON1'.
BUTTON1 = 'GENERAL DATA'.
BUTTON2 = 'SALES DATA'.
AT SELECTION-SCREEN.
CASE SY-UCOMM.
WHEN 'CLICK1'.
CALL SELECTION-SCREEN 5000.
ENDCASE.
CASE SY-UCOMM.
WHEN 'CLICK3'.
TAB-PROG = SY-REPID.
TAB-DYNNR = 5001.
TAB-ACTIVETAB = 'BUTTON1'.
PERFORM GENERAL_DATA.
ENDCASE.
CASE SY-UCOMM.
WHEN 'CLICK4' .
TAB-PROG = SY-REPID.
TAB-DYNNR = 5002.
TAB-ACTIVETAB = 'BUTTON2'.
PERFORM SALES_DATA.
ENDCASE.
CASE SY-UCOMM.
WHEN 'CLICK2'.
LEAVE PROGRAM.
ENDCASE.
START-OF-SELECTION.
FORM GENERAL_DATA.
P2 = WA_SAMP-NAME1.
P3 = WA_SAMP-ORT01.
P4 = WA_SAMP-PSTLZ.
ENDFORM.
FORM SALES_DATA .
SELECT SINGLE VKORG VTWEG SPART FROM KNVV
INTO CORRESPONDING FIELDS OF
WA_SAMP
WHERE KUNNR = P1.
P5 = WA_SAMP-VKORG.
P6 = WA_SAMP-VTWEG.
P7 = WA_SAMP-SPART.
ENDFORM.
PROGRAM ZB29_KAVN1042_DP_TABLECONTROL2.
*
*DATA: BEGIN OF WA_TC1,
* MATNR TYPE MARA-MATNR,
* MTART TYPE MARA-MTART,
* MBRSH TYPE MARA-MBRSH,
* MEINS TYPE MARA-MEINS,
* SEL(1) TYPE C,
* END OF WA_TC1.
*DATA: BEGIN OF WA_TC2,
* MATNR TYPE MARA-MATNR,
* MTART TYPE MARA-MTART,
* MBRSH TYPE MARA-MBRSH,
* MEINS TYPE MARA-MEINS,
* SEL1(1) TYPE C,
* END OF WA_TC2.
*
*DATA: IT_TC1 LIKE TABLE OF WA_TC1 WITH HEADER LINE,
* IT_TC2 LIKE TABLE OF WA_TC2 WITH HEADER LINE.
*
*DATA: OK_CODE LIKE SY-UCOMM,
* FLAG TYPE I VALUE 0.
*
*CONTROLS: TAB TYPE TABSTRIP,
* TC1 TYPE TABLEVIEW USING SCREEN 9020,
* TC2 TYPE TABLEVIEW USING SCREEN 9020.
*
**&--------------------------------------------------------------------
-*
**& Module STATUS_9000 OUTPUT
**&--------------------------------------------------------------------
-*
** text
**---------------------------------------------------------------------
-*
*MODULE STATUS_9000 OUTPUT.
** SET PF-STATUS 'SIVA'.
** SET TITLEBAR 'HYPERLINK'.
*
*ENDMODULE. " STATUS_9000 OUTPUT
**&--------------------------------------------------------------------
-*
**& Module USER_COMMAND_9000 INPUT
**&--------------------------------------------------------------------
-*
** text
**---------------------------------------------------------------------
-*
*MODULE USER_COMMAND_9000 INPUT.
*CASE SY-UCOMM.
* WHEN 'TAB'.
* CALL SCREEN 9000.
* CALL SCREEN 9010.
* WHEN 'BACK'.
* LEAVE PROGRAM.
*ENDCASE.
*ENDMODULE. " USER_COMMAND_9000 INPUT
**&--------------------------------------------------------------------
-*
**& Module USER_COMMAND_9010 INPUT
**&--------------------------------------------------------------------
-*
** text
**---------------------------------------------------------------------
-*
*MODULE USER_COMMAND_9010 INPUT.
* OK_CODE = SY-UCOMM.
* CASE OK_CODE.
* WHEN 'TAB1'.
* TAB-ACTIVETAB = 'TAB1'.
* WHEN 'TAB2'.
* TAB-ACTIVETAB = 'TAB2'.
* ENDCASE.
* CLEAR OK_CODE.
*
*ENDMODULE. " USER_COMMAND_9010 INPUT
**&--------------------------------------------------------------------
-*
**& Module STATUS_9020 OUTPUT
**&--------------------------------------------------------------------
-*
** text
**---------------------------------------------------------------------
-*
*MODULE STATUS_9020 OUTPUT.
** SET PF-STATUS 'xxxxxxxx'.
** SET TITLEBAR 'xxx'.
*
* IF FLAG = 0.
* TC1-INVISIBLE = 'X'.
* TC2-INVISIBLE = 'X'.
* LOOP AT SCREEN.
* IF SCREEN-GROUP1 = 'GP1'.
* SCREEN-INVISIBLE = 'X'.
* SCREEN-ACTIVE = 0.
* MODIFY SCREEN.
* ENDIF.
* ENDLOOP.
* FLAG = 1.
* ENDIF.
*
*
*
*ENDMODULE. " STATUS_9020 OUTPUT
**&--------------------------------------------------------------------
-*
**& Module USER_COMMAND_9020 INPUT
**&--------------------------------------------------------------------
-*
** text
**---------------------------------------------------------------------
-*
*MODULE USER_COMMAND_9020 INPUT.
*CASE SY-UCOMM.
* WHEN 'B_TC'.
* IF FLAG = 1.
* TC1-INVISIBLE = ''.
* TC2-INVISIBLE = ''.
* LOOP AT SCREEN.
* IF SCREEN-GROUP1 = 'GP1'.
* SCREEN-INVISIBLE = ''.
* SCREEN-ACTIVE = 1.
* MODIFY SCREEN.
* ENDIF.
* ENDLOOP.
* ENDIF.
* WHEN 'DIS'.
* PERFORM DISPLAY.
* WHEN 'PUSH'.
* PERFORM PUSHING.
* WHEN 'BUT' .
* LEAVE PROGRAM.
** TEXT1 = IT_TC1-MATNR.
* WHEN 'PUSH1'.
* PERFORM BACK_PUSHING.
* ENDCASE.
*ENDMODULE. " USER_COMMAND_9020 INPUT
**&--------------------------------------------------------------------
-*
**& Form DISPLAY
**&--------------------------------------------------------------------
-*
** text
**---------------------------------------------------------------------
-*
** --> p1 text
** <-- p2 text
**---------------------------------------------------------------------
-*
*FORM DISPLAY .
*SELECT MATNR
* MTART
* MBRSH
* MEINS
* FROM MARA
* INTO TABLE IT_TC1 WHERE MATNR GE '100-800' AND MATNR LE '100-804'.
*
* IF SY-SUBRC EQ 0.
* MESSAGE 'FETCHED' TYPE 'S'.
* ELSE.
* MESSAGE 'KARANDI KAALI' TYPE 'I'.
* ENDIF.
*ENDFORM. " DISPLAY
**&--------------------------------------------------------------------
-*
**& Form PUSHING
**&--------------------------------------------------------------------
-*
** text
**---------------------------------------------------------------------
-*
** --> p1 text
** <-- p2 text
**---------------------------------------------------------------------
-*
*FORM PUSHING .
*
*LOOP AT IT_TC1 INTO WA_TC1 WHERE SEL = 'X'.
* WA_TC2-MATNR = WA_TC1-MATNR.
* WA_TC2-MTART = WA_TC1-MTART.
* WA_TC2-MBRSH = WA_TC1-MBRSH.
* WA_TC2-MEINS = WA_TC1-MEINS.
* APPEND WA_TC2 TO IT_TC2.
* DELETE IT_TC1.
* ENDLOOP.
* CLEAR WA_TC1.
*
*ENDFORM. " PUSHING
**&--------------------------------------------------------------------
-*
**& Form BACK_PUSHING
**&--------------------------------------------------------------------
-*
** text
**---------------------------------------------------------------------
-*
** --> p1 text
** <-- p2 text
**---------------------------------------------------------------------
-*
*FORM BACK_PUSHING .
*LOOP AT IT_TC2 INTO WA_TC2 WHERE SEL1 = 'X'.
* WA_TC1-MATNR = WA_TC2-MATNR.
* WA_TC1-MTART = WA_TC2-MTART.
* WA_TC1-MBRSH = WA_TC2-MBRSH.
* WA_TC1-MEINS = WA_TC2-MEINS.
* APPEND WA_TC1 TO IT_TC1.
* DELETE IT_TC2.
* ENDLOOP.
* CLEAR WA_TC2.
*ENDFORM. " BACK_PUSHING
*
**&--------------------------------------------------------------------
-*
**& Module STATUS_9030 OUTPUT
**&--------------------------------------------------------------------
-*
** text
**---------------------------------------------------------------------
-*
*MODULE STATUS_9030 OUTPUT.
** SET PF-STATUS 'xxxxxxxx'.
** SET TITLEBAR 'xxx'.
*
*ENDMODULE. " STATUS_9030 OUTPUT
**&--------------------------------------------------------------------
-*
**& Module USER_COMMAND_9030 INPUT
**&--------------------------------------------------------------------
-*
** text
**---------------------------------------------------------------------
-*
*MODULE USER_COMMAND_9030 INPUT.
*CASE SY-UCOMM.
* WHEN 'S3_BACK'.
* LEAVE PROGRAM.
* ENDCASE.
*ENDMODULE. " USER_COMMAND_9030 INPUT
**&--------------------------------------------------------------------
-*
**& Module MODIFY INPUT
**&--------------------------------------------------------------------
-*
** text
**---------------------------------------------------------------------
-*
*MODULE MODIFY INPUT.
*MODIFY IT_TC2 FROM IT_TC2 INDEX
* TC2-CURRENT_LINE.
*ENDMODULE. " MODIFY INPUT
**&--------------------------------------------------------------------
-*
**& MODule MOD INPUT
**&--------------------------------------------------------------------
-*
** text
**---------------------------------------------------------------------
-*
*MODULE MOD INPUT.
*MODIFY IT_TC1 FROM IT_TC1 INDEX
* TC1-CURRENT_LINE.
*ENDMODULE. " MOD INPUT
START-OF-SELECTION.
CALL SCREEN 9000.
*&---------------------------------------------------------------------
*
*& Module STATUS_9000 OUTPUT
*&---------------------------------------------------------------------
*
* text
*----------------------------------------------------------------------
*
MODULE STATUS_9000 OUTPUT.
* SET PF-STATUS 'SIVA'.
* SET TITLEBAR 'HYPERLINK'.
IF FLAG = 0.
TC1-INVISIBLE = 'X'.
TC2-INVISIBLE = 'X'.
LOOP AT SCREEN.
IF SCREEN-GROUP1 = 'GP1'.
SCREEN-INVISIBLE = 'X'.
SCREEN-ACTIVE = 0.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
FLAG = 1.
ENDIF.
IF SY-SUBRC EQ 0.
MESSAGE 'FETCHED' TYPE 'S'.
ELSE.
MESSAGE 'KARANDI KAALI' TYPE 'I'.
ENDIF.
ENDFORM. " DISPLAY
*&---------------------------------------------------------------------
*
*& Form PUSHING
*&---------------------------------------------------------------------
*
* text
*----------------------------------------------------------------------
*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------
*
FORM PUSHING .
*&---------------------------------------------------------------------
*
*& Module STATUS_9030 OUTPUT
*&---------------------------------------------------------------------
*
* text
*----------------------------------------------------------------------
*
MODULE STATUS_9030 OUTPUT.
* SET PF-STATUS 'xxxxxxxx'.
* SET TITLEBAR 'xxx'.