2006 May 18 10:31 PM
Hi,
I had made a report with some fields along with a checkbox. I have also added a checkbox to each line and created a custom button in the PF-status. Now when I click this button all the checkboxes should be checked. Its just a report and the checkbox is given as a field in an internal table. The report is not a dialog program. So please help me how to achieve this. Thanks In Advance..
Vicky
2006 May 18 11:47 PM
Hi,
Look at sample program which is working as per your
requirement.
REPORT YUP_CHECKBOX.
DATA:BEGIN OF ITAB OCCURS 0.
INCLUDE STRUCTURE SFLIGHT.
DATA: CHECK(1),
END OF ITAB.
DATA:L_TABIX TYPE SY-TABIX.
START-OF-SELECTION.
SELECT * FROM SFLIGHT
INTO TABLE ITAB
UP TO 10 ROWS .
*
*
LOOP AT ITAB.
WRITE:/ ITAB-CHECK AS CHECKBOX ,ITAB-CONNID.
ENDLOOP.
SET PF-STATUS 'TEST'.
AT USER-COMMAND.
CASE SY-UCOMM.
WHEN 'SELE'.
LOOP AT ITAB.
L_TABIX = SY-TABIX.
READ TABLE ITAB INDEX L_TABIX.
IF SY-SUBRC = 0.
ITAB-CHECK = 'X'.
MODIFY ITAB INDEX L_TABIX TRANSPORTING CHECK.
ENDIF.
ENDLOOP.
LOOP AT ITAB.
WRITE:/ ITAB-CHECK AS CHECKBOX ,ITAB-CONNID.
ENDLOOP.
WHEN 'BACK' OR 'CANC' OR 'EXIT'.
LEAVE PROGRAM.
ENDCASE.
Please mark point incase answer is helpful
Thanks,
Pramod
Hi,
Look at sample program which is working as per your
requirement.
REPORT YUP_CHECKBOX.
DATA:BEGIN OF ITAB OCCURS 0.
INCLUDE STRUCTURE SFLIGHT.
DATA: CHECK(1),
END OF ITAB.
DATA:L_TABIX TYPE SY-TABIX.
START-OF-SELECTION.
SELECT * FROM SFLIGHT
INTO TABLE ITAB
UP TO 10 ROWS .
*
*
LOOP AT ITAB.
WRITE:/ ITAB-CHECK AS CHECKBOX ,ITAB-CONNID.
ENDLOOP.
SET PF-STATUS 'TEST'.
AT USER-COMMAND.
CASE SY-UCOMM.
WHEN 'SELE'.
LOOP AT ITAB.
L_TABIX = SY-TABIX.
READ TABLE ITAB INDEX L_TABIX.
IF SY-SUBRC = 0.
ITAB-CHECK = 'X'.
MODIFY ITAB INDEX L_TABIX TRANSPORTING CHECK.
ENDIF.
ENDLOOP.
LOOP AT ITAB.
WRITE:/ ITAB-CHECK AS CHECKBOX ,ITAB-CONNID.
ENDLOOP.
WHEN 'BACK' OR 'CANC' OR 'EXIT'.
LEAVE PROGRAM.
ENDCASE.
Please mark point incase answer is helpful
Thanks,
Pramod
2006 May 18 11:43 PM
Hi Vicky,
You can have write simple code like:
CASE sy-ucomm.
WHen 'SELALL'.
LOOP AT ITAB.
ITAB-CHECK = 'X'.
MODIFY ITAB.
ENDLOOP.
PERFORM WRITE_DATA.
ENDCASE.
Modify the internal table and call your subroutine to display the screen again. Or use the MODIFY LIST command in ABAP to modify the existing list without re-displaying the list.
Cheers
VJ
2006 May 18 11:47 PM
Hi,
Look at sample program which is working as per your
requirement.
REPORT YUP_CHECKBOX.
DATA:BEGIN OF ITAB OCCURS 0.
INCLUDE STRUCTURE SFLIGHT.
DATA: CHECK(1),
END OF ITAB.
DATA:L_TABIX TYPE SY-TABIX.
START-OF-SELECTION.
SELECT * FROM SFLIGHT
INTO TABLE ITAB
UP TO 10 ROWS .
*
*
LOOP AT ITAB.
WRITE:/ ITAB-CHECK AS CHECKBOX ,ITAB-CONNID.
ENDLOOP.
SET PF-STATUS 'TEST'.
AT USER-COMMAND.
CASE SY-UCOMM.
WHEN 'SELE'.
LOOP AT ITAB.
L_TABIX = SY-TABIX.
READ TABLE ITAB INDEX L_TABIX.
IF SY-SUBRC = 0.
ITAB-CHECK = 'X'.
MODIFY ITAB INDEX L_TABIX TRANSPORTING CHECK.
ENDIF.
ENDLOOP.
LOOP AT ITAB.
WRITE:/ ITAB-CHECK AS CHECKBOX ,ITAB-CONNID.
ENDLOOP.
WHEN 'BACK' OR 'CANC' OR 'EXIT'.
LEAVE PROGRAM.
ENDCASE.
Please mark point incase answer is helpful
Thanks,
Pramod
| User | Count |
|---|---|
| 3 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |