Clearing a Table control
Hi
Can anyone tell me how to clear the table control.
I have cleared the internal table .
But it is not getting cleared.
Cheers
Christina
REPORT ZFI_CF_PLANING
NO STANDARD PAGE HEADING
MESSAGE-ID Z00.
*& TABLE DECLARATIONS
TABLES: ZFI_CF_PLANING,ZFI_CF_TABMAIN.
*& DATA DECLARATIONS
DATA: PAYDATE TYPE ZFI_CF_PLANING-CALDATE.
data : t_cvalue type zfi_cf_planing-cvalue,
t_cperiod type zfi_cf_planing-cperiod,
t_cyear type zfi_cf_planing-calyear,
*RES, "To Store Response Code of Dialog Box
V_MODE(4), "To Store sy-ucomm
V_buper TYPE T009B-POPER,
v_gjahr TYPE T009B-BDATJ,
V_Dbuper TYPE T009B-POPER,
v_Dgjahr TYPE T009B-BDATJ,
V_QTY_VALUE TYPE ZFI_CF_PLANING-INVALUE,
V_RAT_VALUE TYPE ZFI_CF_PLANING-INVALUE,
V_TOT_VALUE TYPE ZFI_CF_PLANING-INVALUE,
V_MAT_CONS TYPE ZFI_CF_PLANING-INVALUE,
V_CHECK TYPE ZFI_CF_PLANING-INVALUE,
V_code TYPE ZFI_CF_PLANING-code,
R_buper TYPE T009B-POPER,
R_gjahr TYPE T009B-BDATJ,
V_ACCNO TYPE ZFI_CF_TABMAIN-ACCNO,
V_ACCNO1 TYPE ZFI_CF_TABMAIN-ACCNO,
PDATUM TYPE D.
*--Table Control Declaration
CONTROLS MAIN TYPE TABLEVIEW USING SCREEN 100.
*& INTERNAL TABLE DECLARATIONS
data : it_final type standard table of ZFI_CF_PLANING initial size 0
with header line.
*data : it_final2 type standard table of ZFI_CF_PLANING initial size 0
*with header line.
DATA : IT_CHECK LIKE ZFI_CF_PLANING OCCURS 1 WITH HEADER LINE.
*& START-OF-SELECTION
START-OF-SELECTION.
SELECT *
INTO CORRESPONDING FIELDS OF TABLE IT_FINAL
FROM mara
up to 100 rows.
*--Calling the Screen
CALL SCREEN 100.
*& Module STATUS_0100 OUTPUT
Setting the Toolbar and Titlebar
MODULE STATUS_0100 OUTPUT.
SET PF-STATUS 'MENU'.
SET TITLEBAR 'TITLE'.
IF V_MODE = 'COPY'.
SELECT *
FROM ZFI_CF_PLANING
INTO TABLE IT_FINAL
where pyear = V_GJAHR
and pperiod = V_BUPER
and accno = zfi_cf_PLANING-accno.
SORT IT_FINAL BY BUOM DESCENDING.
DATA : V_DES TYPE ZFI_CF_TABMAIN-DESCRIP2.
SELECT SINGLE
DESCRIP2
FROM ZFI_CF_TABMAIN
INTO V_DES
WHERE CODE = 'EXSALE'
AND ACCNO = ZFI_CF_planing-ACCNO
or CODE = 'LSALE'.
IF SY-SUBRC = 0.
ZFI_CF_TABMAIN-DESCRIP2 = V_DES.
endif.
ENDIF.
IF V_MODE = 'CLEA'.
REFRESH IT_FINAL.
CLEAR : V_MODE.
ENDIF.
ENDMODULE. " STATUS_0100 OUTPUT
*& Module USER_COMMAND_0100 INPUT
Moving the modified records into other internal table
and displaying the those in ALV POPUP GRID
MODULE USER_COMMAND_0100 INPUT.
*BREAK-POINT.
CASE SY-UCOMM.
WHEN 'EXIT' or 'CANC' OR 'BACK'.
LEAVE PROGRAM.
WHEN 'COPY'.
V_MODE = SY-UCOMM.
V_ACCNO1 = ZFI_CF_PLANING-ACCNO.
V_Dbuper = ZFI_CF_PLANING-PPERIOD.
v_Dgjahr = ZFI_CF_PLANING-PYEAR.
CLEAR SY-UCOMM.
WHEN 'PROC'.
V_MODE = SY-UCOMM.
V_ACCNO1 = ZFI_CF_PLANING-ACCNO.
V_Dbuper = ZFI_CF_PLANING-PPERIOD.
v_Dgjahr = ZFI_CF_PLANING-PYEAR.
CLEAR SY-UCOMM.
WHEN 'CLEA'.
V_MODE = SY-UCOMM.
CLEAR SY-UCOMM.
ENDCASE.
ENDMODULE. " USER_COMMAND_0100 INPUT
*& Module SAVE_REC INPUT
Modifiying the current record of table control
MODULE SAVE_REC INPUT.
MOVE-CORRESPONDING ZFI_CF_PLANING TO IT_FINAL.
MODIFY IT_FINAL INDEX MAIN-CURRENT_LINE.
IF SY-SUBRC <> 0.
APPEND IT_FINAL.
ENDIF.
IF V_MODE = 'PROC'.
IF ZFI_CF_PLANING-CODE <> '' .
data : v_code1 type ZFI_CF_tabmain-code.
SELECT SINgLE CODE
FROM ZFI_CF_CATMAster
INTO V_CODE1
WHERE CODE = ZFI_CF_PLANING-CODE.
IF SY-SUBRC <> 0.
MESSAGE I001(YMSG) WITH 'Invalid code'.
ENDIF.
ENDIF.
ENDIF.
ENDMODULE. " SAVE_REC INPUT
*& Module DISPLAY OUTPUT
text
module DISPLAY output.
MOVE-CORRESPONDING IT_FINAL TO ZFI_CF_PLANING.
endmodule. " DISPLAY OUTPUT
*& Module COPY OUTPUT
text
module COPY output.
CLEAR IT_FINAL.
READ TABLE IT_FINAL INDEX 1.
MOVE-CORRESPONDING IT_FINAL TO ZFI_CF_PLANING.
IF V_MODE = 'PROC'.
ZFI_CF_PLANING-ACCNO = V_ACCNO1.
ZFI_CF_PLANING-PPERIOD = V_DBUPER.
ZFI_CF_PLANING-PYEAR = V_DGJAHR.
SELECT SINGLE DESCRIP2
FROM ZFI_CF_TABMAIN
INTO ZFI_CF_TABMAIN-DESCRIP2
WHERE ACCNO = ZFI_CF_PLANING-ACCNO.
CLEAR : V_MODE.
ENDIF.
IF V_MODE = 'COPY'.
ZFI_CF_PLANING-ACCNO = V_ACCNO1.
ZFI_CF_PLANING-PPERIOD = V_DBUPER.
ZFI_CF_PLANING-PYEAR = V_DGJAHR.
CLEAR : V_MODE.
ENDIF.
endmodule. " COPY OUTPUT
flow logic code in screen level
*PROCESS BEFORE OUTPUT.
PROCESS BEFORE OUTPUT.
MODULE STATUS_0100.
LOOP AT IT_FINAL WITH CONTROL MAIN CURSOR MAIN-TOP_LINE.
MODULE DISPLAY.
ENDLOOP.
MODULE COPY.
*PROCESS AFTER INPUT.
PROCESS AFTER INPUT.
MODULE QUIT AT EXIT-COMMAND.
FIELD ZFI_CF_planing-ACCNO MODULE VALIDATE_ACCNO.
FIELD ZFI_CF_PLANING-PYEAR MODULE VALIDATE_PYEAR.
FIELD ZFI_CF_PLANING-PPERIOD MODULE VALIDATE_PPERIOD.
MODULE USER_COMMAND_0100.
LOOP AT IT_FINAL.
MODULE SAVE_REC.
ENDLOOP.
MODULE CALCULATE.
*MODULE CHANGE_SCREEN2.
Similar Messages
-
How to clear the table control content
Hi All,
I am doing BDC for cost estimate change. In this the transaction KKPB contains table control. So when ever i process with particular cost estimate, i need to fill the table control with the values. Here when i am doing the BDC for change, i need to clear all the contents of the table control then i need to fill with new entries.
So my problems is how to clear the table control entriee?? please help me in this??
Many Thanks,
Raghu.Hi this might help u.
Check the below link.
http://www.sap-img.com/abap/bdc-example-using-table-control-in-bdc.htm
THis is example to upload the Bank details of the Vendor which has the TC.
REPORT zprataptable2
NO STANDARD PAGE HEADING LINE-SIZE 255.
DATA : BEGIN OF itab OCCURS 0,
i1 TYPE i,
lifnr LIKE rf02k-lifnr,
bukrs LIKE rf02k-bukrs,
ekorg LIKE rf02k-ekorg,
ktokk LIKE rf02k-ktokk,
anred LIKE lfa1-anred,
name1 LIKE lfa1-name1,
sortl LIKE lfa1-sortl,
land1 LIKE lfa1-land1,
akont LIKE lfb1-akont,
fdgrv LIKE lfb1-fdgrv,
waers LIKE lfm1-waers,
END OF itab.
DATA : BEGIN OF jtab OCCURS 0,
j1 TYPE i,
banks LIKE lfbk-banks,
bankl LIKE lfbk-bankl,
bankn LIKE lfbk-bankn,
END OF jtab.
DATA : cnt(4) TYPE n.
DATA : fdt(20) TYPE c.
DATA : c TYPE i.
INCLUDE bdcrecx1.
START-OF-SELECTION.
CALL FUNCTION 'WS_UPLOAD'
EXPORTING
filename = 'C:\first1.txt'
filetype = 'DAT'
TABLES
data_tab = itab.
CALL FUNCTION 'WS_UPLOAD'
EXPORTING
filename = 'C:\second.txt'
filetype = 'DAT'
TABLES
data_tab = jtab.
LOOP AT itab.
PERFORM bdc_dynpro USING 'SAPMF02K' '0100'.
PERFORM bdc_field USING 'BDC_CURSOR'
'RF02K-KTOKK'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'RF02K-LIFNR'
itab-lifnr.
PERFORM bdc_field USING 'RF02K-BUKRS'
itab-bukrs.
PERFORM bdc_field USING 'RF02K-EKORG'
itab-ekorg.
PERFORM bdc_field USING 'RF02K-KTOKK'
itab-ktokk.
PERFORM bdc_dynpro USING 'SAPMF02K' '0110'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFA1-LAND1'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'LFA1-ANRED'
itab-anred.
PERFORM bdc_field USING 'LFA1-NAME1'
itab-name1.
PERFORM bdc_field USING 'LFA1-SORTL'
itab-sortl.
PERFORM bdc_field USING 'LFA1-LAND1'
itab-land1.
PERFORM bdc_dynpro USING 'SAPMF02K' '0120'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFA1-KUNNR'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_dynpro USING 'SAPMF02K' '0130'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFBK-BANKN(01)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=ENTR'.
cnt = 0.
LOOP AT jtab WHERE j1 = itab-i1.
cnt = cnt + 1.
CONCATENATE 'LFBK-BANKS(' cnt ')' INTO fdt.
PERFORM bdc_field USING fdt jtab-banks.
CONCATENATE 'LFBK-BANKL(' cnt ')' INTO fdt.
PERFORM bdc_field USING fdt jtab-bankl.
CONCATENATE 'LFBK-BANKN(' cnt ')' INTO fdt.
PERFORM bdc_field USING fdt jtab-bankn.
IF cnt = 5.
cnt = 0.
PERFORM bdc_dynpro USING 'SAPMF02K' '0130'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFBK-BANKS(01)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=P+'.
PERFORM bdc_dynpro USING 'SAPMF02K' '0130'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFBK-BANKN(02)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=ENTR'.
ENDIF.
ENDLOOP.
PERFORM bdc_dynpro USING 'SAPMF02K' '0130'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFBK-BANKS(01)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=ENTR'.
PERFORM bdc_dynpro USING 'SAPMF02K' '0210'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFB1-FDGRV'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'LFB1-AKONT'
itab-akont.
PERFORM bdc_field USING 'LFB1-FDGRV'
itab-fdgrv.
PERFORM bdc_dynpro USING 'SAPMF02K' '0215'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFB1-ZTERM'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_dynpro USING 'SAPMF02K' '0220'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFB5-MAHNA'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_dynpro USING 'SAPMF02K' '0310'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFM1-WAERS'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'LFM1-WAERS'
itab-waers.
PERFORM bdc_dynpro USING 'SAPMF02K' '0320'.
PERFORM bdc_field USING 'BDC_CURSOR'
'RF02K-LIFNR'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=ENTR'.
PERFORM bdc_dynpro USING 'SAPLSPO1' '0300'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=YES'.
PERFORM bdc_transaction USING 'XK01'.
ENDLOOP.
PERFORM close_group.
Header file:
1 63190 0001 0001 0001 mr bal188 b in 31000 a1 inr
2 63191 0001 0001 0001 mr bal189 b in 31000 a1 inr
TC file:
1 in sb 11000
1 in sb 12000
1 in sb 13000
1 in sb 14000
1 in sb 15000
1 in sb 16000
1 in sb 17000
1 in sb 18000
1 in sb 19000
1 in sb 20000
1 in sb 21000
1 in sb 22000
2 in sb 21000
2 in sb 22000
REPORT zmm_pr_upload_mat
NO STANDARD PAGE HEADING
LINE-SIZE 255.
Standard Include for Selection Screen
INCLUDE bdcrecx1.
Internal Table for Upload Data
DATA: BEGIN OF i_pr OCCURS 0,
Header Screen
sno(3), " SNo
bsart(004), " PR Type
epstp(001), " Item Category
knttp(001), " Account Assignment
eeind(010), " Delivery Date
lpein(001), " Category of Del Date
werks(004), " Plant
lgort(004), " Storage Location
ekgrp(003), " Purchasing Group
matkl(009), " Material Group
bednr(010), " Tracking No
afnam(012), " Requisitioner
Item Details
matnr(018), " Material No
menge(017), " Quantity
badat(010),
frgdt(010),
preis(014), " Valuation Price
waers(005), " Currency
peinh(005),
wepos(001),
repos(001),
sakto(010), " GL Account
kostl(010), " Cost Center
bnfpo(005),
END OF i_pr.
Internal Table for header Data
DATA: BEGIN OF it_header OCCURS 0,
sno(3), " SNo
bsart(004), " PR Type
epstp(001), " Item Category
knttp(001), " Account Assignment
eeind(010), " Delivery Date
werks(004), " Plant
lgort(004), " Storage Location
ekgrp(003), " Purchasing Group
matkl(009), " Material Group
bednr(010), " Tracking No
afnam(012), " Requisitioner
END OF it_header.
Internal Table for Item Data
DATA: BEGIN OF it_item OCCURS 0,
sno(3), " SNo
matnr(018), " Material No
menge(017), " Quantity
preis(014), " Valuation Price
sakto(010), " GL Account
kostl(010), " Cost Center
END OF it_item.
Data Variables & Constants
CONSTANTS : c_x VALUE 'X'. " Flag
DATA : v_l(2), " Counter
v_rowno(5), " Row No
v_2(2), " Counter
v_rows LIKE sy-srows, " Rows in TC
v_field(45). " String
Parameters
PARAMETERS: p_file LIKE ibipparms-path. " Filename
At selection-screen on Value Request for file Name
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
Get the F4 Values for the File
CALL FUNCTION 'F4_FILENAME'
EXPORTING
program_name = syst-cprog
dynpro_number = syst-dynnr
IMPORTING
file_name = p_file.
Start of Selection
START-OF-SELECTION.
Open the BDC Session
PERFORM open_group.
Upload the File into internal Table
CALL FUNCTION 'UPLOAD'
EXPORTING
filename = p_file
filetype = 'DAT'
TABLES
data_tab = i_pr
EXCEPTIONS
conversion_error = 1
invalid_table_width = 2
invalid_type = 3
no_batch = 4
unknown_error = 5
gui_refuse_filetransfer = 6
OTHERS = 7.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
SORT i_pr BY sno.
LOOP AT i_pr.
MOVE-CORRESPONDING i_pr TO it_item.
APPEND it_item.
CLEAR it_item.
AT END OF sno.
READ TABLE i_pr INDEX sy-tabix.
MOVE-CORRESPONDING i_pr TO it_header.
APPEND it_header.
CLEAR it_header.
ENDAT.
ENDLOOP.
SORT it_header BY sno.
SORT it_item BY sno.
v_rows = sy-srows - 6.
Upload the Data from Internal Table
LOOP AT it_header.
Header Data
PERFORM bdc_dynpro USING 'SAPMM06B' '0100'.
PERFORM bdc_field USING 'BDC_CURSOR'
'EBAN-BEDNR'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'EBAN-BSART'
it_header-bsart.
PERFORM bdc_field USING 'RM06B-EPSTP'
it_header-epstp.
PERFORM bdc_field USING 'EBAN-KNTTP'
it_header-knttp.
PERFORM bdc_field USING 'RM06B-EEIND'
it_header-eeind.
PERFORM bdc_field USING 'RM06B-LPEIN'
it_header-lpein.
PERFORM bdc_field USING 'EBAN-WERKS'
it_header-werks.
PERFORM bdc_field USING 'EBAN-LGORT'
it_header-lgort.
PERFORM bdc_field USING 'EBAN-EKGRP'
it_header-ekgrp.
PERFORM bdc_field USING 'EBAN-MATKL'
it_header-matkl.
PERFORM bdc_field USING 'EBAN-BEDNR'
it_header-bednr.
PERFORM bdc_field USING 'EBAN-AFNAM'
it_header-afnam.
Item Details
v_l = 0.
To add no. of rows
v_2 = 0 .
As the screen is showing 13 rows defaulted to 130
v_rowno = 130 .
LOOP AT it_item WHERE sno = it_header-sno.
v_l = v_l + 1.
IF v_l = 14 .
IF v_2 = 12 .
v_2 = 12 .
v_l = 2 .
From second time onwards it is displaying 12 rows only
v_rowno = v_rowno + 120 .
PERFORM bdc_dynpro USING 'SAPMM06B' '0106'.
PERFORM bdc_field USING 'BDC_CURSOR'
'RM06B-BNFPO'.
PERFORM bdc_field USING 'RM06B-BNFPO'
v_rowno.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
ELSE.
V_2 initialized to 12 for second screen purpose
v_2 = 12 .
v_l = 2 .
PERFORM bdc_dynpro USING 'SAPMM06B' '0106'.
PERFORM bdc_field USING 'BDC_CURSOR'
'RM06B-BNFPO'.
PERFORM bdc_field USING 'RM06B-BNFPO'
v_rowno .
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
ENDIF.
ENDIF.
PERFORM bdc_dynpro USING 'SAPMM06B' '0106'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
CLEAR v_field.
CONCATENATE 'EBAN-MATNR(' v_l ')' INTO v_field.
PERFORM bdc_field USING v_field it_item-matnr.
CLEAR v_field.
CONCATENATE 'EBAN-MENGE(' v_l ')' INTO v_field.
PERFORM bdc_field USING v_field it_item-menge.
PERFORM bdc_dynpro USING 'SAPMM06B' '0102'.
PERFORM bdc_field USING 'BDC_CURSOR'
'EBAN-PREIS'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'EBAN-PREIS'
it_item-preis.
PERFORM bdc_dynpro USING 'SAPMM06B' '0505'.
PERFORM bdc_field USING 'BDC_CURSOR'
'EBKN-SAKTO'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=ENTE'.
PERFORM bdc_field USING 'EBKN-SAKTO'
it_item-sakto.
Cost Center
PERFORM bdc_dynpro USING 'SAPLKACB' '0002'.
PERFORM bdc_field USING 'BDC_CURSOR'
'COBL-KOSTL'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=ENTE'.
PERFORM bdc_field USING 'COBL-KOSTL'
it_item-kostl.
PERFORM bdc_field USING 'BDC_OKCODE'
'=ENTE'.
ENDLOOP.
PERFORM bdc_dynpro USING 'SAPMM06B' '0106'.
PERFORM bdc_field USING 'BDC_CURSOR'
'RM06B-BNFPO'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=BU'.
Call The Transaction
PERFORM bdc_transaction USING 'ME51'.
ENDLOOP.
Close the BDC Session
PERFORM close_group.
with regards,
Hema Sundara. -
How to clear the table control?
Hi experts,
I have a table control in the selection screen of my program.When i enter some input values in the selection screen and execute it some process is done in the background and get a status message on the selection screen itself that the process is finished.Once this is done i want to clear all the lines entered in table control in the selection screen.Can anyone please tell me how to do this?
Thanks.
dp.Hi,
If the table control is created using internal table , then in PBO just clear and refresh that table
PROCESS BEFORE OUTPUT
CLEAR itab.
REFRESH ITAB.
The <internal table> here should be the internal table that u use to diaply in the table control
Regards,
Priyanka. -
Hi,
Could anybody tell me how to add a n number of blank lines to the table control UI element on some event. I have tried with the method CREATE_ELEMENT but its clearing the table control.
I have two nodes called "lines" and "table". "Lines" node contains attribute "Count". and this attribute is binded to inputfiled "INP".
When i click on button , based on inputfield value (INP) that many blank rows should get appended to the table control.
Can anybody advice me how can i get this ?
Can anybody send me the sample code of CREATE_METHOD if its correct approach.
Thanks and Regards
Sireesha.Hi Saurav,
Thanks a lot for your reply. I am very Sorry to miss one point in my first thread. With the CREATE_ELEMENT its adding the blank rows to the table control but its adding in the second page. I thought its clearing the table control entries but in fact the blank rows are getting added in the second page.
My doubt is how to add blank rows only in the first page. I have unchecked the "footerVisible" property for the table control. so when i add rows to the table i cannt see the new rows.
How to add blank rows only in the first page...?
Thanks for your help.
Regards
Sireesha. -
Set cursor in table control field
I have developed module using table control have done validation for one field on Enter key press.In change mode if user changes value in table control field and presses Enter key then system is showing Error message on status bar and table control gets gray out.
if user again hits Enter key then this error message clears and Table control is in Edit mode.
Here I wan that Cursor should go to same filed from which error message occurred.
I have written Get Cursor In PAI event and Set Cursor in PBO after Loop at table control. I tried Set cursor within Lop at Table control in PBO.
But cursor is not coming on that field of table control.
I have written set cursor as below:
Set Cursor Field itab-fieldname Line lineno Offset offsetval.
Here itab is internal table assigned to table control.
Please let me know why cursor is not setting on particular field on table control.Hi Ganesh,
A simpler way would be to include the fields of the table in a chain-endchain block.
in PAI section.
PROCESS AFTER INPUT.
loop at IT_FINAL.
chain.
field WA_FINAL-JOBCARD.
field WA_FINAL-MATIDTAG.
field WA_FINAL-VORNR.
field WA_FINAL-ARBPL.
field WA_FINAL-ZZPULLCONTNRQTY.
field WA_FINAL-NOOFTAGS.
field WA_FINAL-ROUTE_TO.
module validate.
endchain.
endloop.
you can issue your error messages in the module validate.
REgards,
Ravi -
How to clear table control view lines?
Dear Experts,
I created one ALV Report with push buttons. User can select multiple line. After select the lines, when user clicks push button in ALV, then am calling POPUP screen 1100 with save and cancel button. which ever line user selected in ALV, that will appear in the POPUP screen 1100 with table control view.
issue :
Ex :
In ALV user selected 3 lines , that appeared in POPUP screen 1100 table control view. Now user wants to select some more line in ALV. so user clicked cancel and reached ALV screen. user selected 2 more line in ALV (total 5 lines). Again user clicked same push button in ALV, But now same 3 lines (old record) are appearing in POPUP screen 1100, new records (5 lines) are not appearing.
Code :
My PBO internal table is having 5 records. but in table control only 3 records are appearing.
PROCESS BEFORE OUTPUT.
MODULE status_1100.
LOOP AT git_prq_items1 INTO gwa_prq_items1
WITH CONTROL ctl_pr_items.
ENDLOOP.
PROCESS AFTER INPUT.
MODULE user_command_1100.
LOOP AT git_prq_items1.
MODULE read_table_control. " if any changes happened in table control - read table control.
ENDLOOP.
MODULE status_1100 OUTPUT.
SET PF-STATUS ''.
ENDMODULE. " status_1100 OUTPUT
git_prq_items1 - this internal table is having 5 records.
Please suggest where should i correct.
Regards
chessleo.
Edited by: sapleo on May 6, 2011 9:59 AMHi.,
Clear the records and populate new records., also use refresh table display if u are using oo alv.
check BCALV_GRID_05 report.,
Hope this helps u.,
Thanks & Regards
Kiran -
How to clear data in Table Control.
hi! all
How to clear the data in table control.
i have a Table control which displays column A data from the previous screen and allows to enter column B and column C and i have a button CLEAR, when i click CLEAR button the Data displaying in table control has to be cleared. how to do it.
Regards,
NagulanHi,
Loop over the internal table of table control & clear data from table control.
loop at tctab.
clear tctab.
modify tctab.
endloop.
Best regards,
Prashant -
How to clear data from Table-Control
Hi all,
I am working on table control. I have some data on the table control.
When I press the 'Cancel' button, I require that the table-control should be cleared.
I tried using REFRESH CONTROL TC01 USING SCREEN 1001. But, the data doesn't get cleared.
Please advise.
Regards,
Saurabh Buksh.hi
good
try this example
REPORT demo_dynpro_tabcont_loop_at.
CONTROLS flights TYPE TABLEVIEW USING SCREEN 100.
DATA: cols LIKE LINE OF flights-cols,
lines TYPE i.
DATA: ok_code TYPE sy-ucomm,
save_ok TYPE sy-ucomm.
DATA: itab TYPE TABLE OF demo_conn.
TABLES demo_conn.
SELECT * FROM spfli INTO CORRESPONDING FIELDS OF TABLE itab.
LOOP AT flights-cols INTO cols WHERE index GT 2.
cols-screen-input = '0'.
MODIFY flights-cols FROM cols INDEX sy-tabix.
ENDLOOP.
CALL SCREEN 100.
MODULE status_0100 OUTPUT.
SET PF-STATUS 'SCREEN_100'.
DESCRIBE TABLE itab LINES lines.
flights-lines = lines.
ENDMODULE.
MODULE cancel INPUT.
LEAVE PROGRAM.
ENDMODULE.
MODULE read_table_control INPUT.
MODIFY itab FROM demo_conn INDEX flights-current_line.
ENDMODULE.
MODULE user_command_0100 INPUT.
save_ok = ok_code.
CLEAR ok_code.
CASE save_ok.
WHEN 'TOGGLE'.
LOOP AT flights-cols INTO cols WHERE index GT 2.
IF cols-screen-input = '0'.
cols-screen-input = '1'.
ELSEIF cols-screen-input = '1'.
cols-screen-input = '0'.
ENDIF.
MODIFY flights-cols FROM cols INDEX sy-tabix.
ENDLOOP.
WHEN 'SORT_UP'.
READ TABLE flights-cols INTO cols WITH KEY selected = 'X'.
IF sy-subrc = 0.
SORT itab STABLE BY (cols-screen-name+10) ASCENDING.
cols-selected = ' '.
MODIFY flights-cols FROM cols INDEX sy-tabix.
ENDIF.
WHEN 'SORT_DOWN'.
READ TABLE flights-cols INTO cols WITH KEY selected = 'X'.
IF sy-subrc = 0.
SORT itab STABLE BY (cols-screen-name+10) DESCENDING.
cols-selected = ' '.
MODIFY flights-cols FROM cols INDEX sy-tabix.
ENDIF.
WHEN 'DELETE'.
READ TABLE flights-cols INTO cols
WITH KEY screen-input = '1'.
IF sy-subrc = 0.
LOOP AT itab INTO demo_conn WHERE mark = 'X'.
DELETE itab.
ENDLOOP.
ENDIF.
ENDCASE.
ENDMODULE.
thanks
mrutyun^ -
Regarding clearing of data in table control
In the module pool program using table control i need to enter data and save it to a customized table. But when i input data and press enter, all data gets cleared from the screen. Also i tried the same by appending into internal table. At that time data is displayed on the screen but all other rows gets inactive. Please provide a solution for this issue.
Still my problem is not solved. I am posting my PBO And PAI Modules. In the below example it_mat is the table control table and it_ormat is the internal table.
PBO Modules.
*&spwizard: pbo flow logic for tablecontrol 'TCMAT'
module TCMAT_change_tc_attr.
*&spwizard: module TCMAT_change_col_attr.
loop at IT_MAT
with control TCMAT
cursor TCMAT-current_line.
module TCMAT_get_lines.
*&spwizard: module TCMAT_change_field_attr
endloop.
*&spwizard: output module for tc 'TCMAT'. do not change this line!
*&spwizard: update lines for equivalent scrollbar
module TCMAT_change_tc_attr output.
describe table IT_MAT lines TCMAT-lines.
endmodule.
*&spwizard: output module for tc 'TCMAT'. do not change this line!
*&spwizard: get lines of tablecontrol
module TCMAT_get_lines output.
g_TCMAT_lines = sy-loopc.
READ TABLE IT_ORMAT INDEX SY-STEPL.
MODIFY IT_MAT FROM IT_ORMAT INDEX SY-STEPL.
endmodule.
PAI modules.----
*&spwizard: pai flow logic for tablecontrol 'TCMAT'
loop at IT_MAT.
chain.
field IT_MAT-MATNR.
field IT_MAT-MAKTX.
field IT_MAT-GROES.
field IT_MAT-ZEINR.
field IT_MAT-TCQTY.
field IT_MAT-IBRFLG.
module TCMAT_modify on chain-request.
endchain.
field IT_MAT-CFLG
module TCMAT_mark on request.
endloop.
module TCMAT_user_command.
*&spwizard: module TCMAT_change_tc_attr.
*&spwizard: module TCMAT_change_col_attr.
module TCMAT_modify input.
MODIFY IT_ORMAT FROM IT_MAT INDEX SY-STEPL.
endmodule.
*&spwizard: input modul for tc 'TCMAT'. do not change this line!
*&spwizard: mark table
module TCMAT_mark input.
data: g_TCMAT_wa2 like line of IT_MAT.
if TCMAT-line_sel_mode = 1
and IT_MAT-CFLG = 'X'.
loop at IT_MAT into g_TCMAT_wa2
where CFLG = 'X'.
g_TCMAT_wa2-CFLG = ''.
modify IT_MAT
from g_TCMAT_wa2
transporting CFLG.
endloop.
endif.
modify IT_MAT
index TCMAT-current_line
transporting CFLG.
endmodule.
*&spwizard: input module for tc 'TCMAT'. do not change this line!
*&spwizard: process user command
module TCMAT_user_command input.
OKCODE = sy-ucomm.
perform user_ok_tc using 'TCMAT'
'IT_MAT'
'CFLG'
changing OKCODE.
sy-ucomm = OKCODE.
endmodule. -
How to clear the contents of table control
Hi All,
How to clear the contents that are present in a Table control. If there is any code Please Let me know.
I will assign full marks to the correct code.
Pradeep Kumar Kota.Hi
U need to clear the contenents of internal table used to store the record displayed by table control.
Every time the PBO is triggered the table control is automatically cleared, so you need only not to transfer any data from internal table to table control.
So you should show how your PBO if you want a right answer.
Max -
How to activate the Vertival Scroll Bar to Table control
Hi All,
I Have created a Module pool table control(Wizard) with Input control,where user can enter the values in the screen.
In my screen 15 lines are visible,once i enter all 15 rows,vertical scroll bar is active,but rest of all lines are in deactivate mode.
My requirement is:Once i enter all the visible lines,the remaining lines should be in activ mode(In put control).
I appreciate your response.
Best Regards,
SeshadriDATA : BEGIN OF IT_MARA OCCURS 1,
MATNR LIKE MARA-MATNR,
ERSDA LIKE MARA-ERSDA,
ERNAM LIKE MARA-ERNAM,
MTART LIKE MARA-MTART,
MBRSH LIKE MARA-MBRSH,
V_FLAG TYPE C,
END OF IT_MARA.
DATA : WA_MARA LIKE it_MARA .
CONTROLS TABLE TYPE TABLEVIEW USING SCREEN 100.
MODULE POPULATE_100 INPUT.
CASE SY-UCOMM.
WHEN 'DISP'.
SELECT MATNR
ERSDA
ERNAM
MTART
MBRSH FROM MARA INTO WA_MARA .
APPEND WA_MARA TO IT_MARA.
ENDSELECT.
DESCRIBE TABLE IT_MARA LINES V_TEXT.
TABLE-LINES = V_TEXT.
CLEAR IT_MARA.
Regards..
Balaji ( assign if this helps u ..) -
Module pool - table control - update ztable
hello , i doing a module pool that will have few screens , now i have one screen with a table control that fetch the data from a ztable when screen is call the table control is showing the data and is in grey and no editable i add a pf-status for change that mode i can delete the row from the table control but i don't figure out how update to the ztable when i press save , i wan't too another button for add a new row ( and remain the already in grey ) for add new entrie in the table and update the ztable
pd: sorry for my bad english
this is my code:
TOP:
PROGRAM z_pp_lote_etiquetas MESSAGE-ID zz.
TABLES:zc2p_lote_etique,
zc2p_lider_modul.
DATA: ok_code LIKE sy-ucomm.
DATA save_ok LIKE sy-ucomm.
* internal table
DATA: it_zc2p_lote_etique LIKE STANDARD TABLE OF zc2p_lote_etique.
DATA: it_zc2p_lider_modul TYPE STANDARD TABLE OF zc2p_lider_modul WITH HEADER LINE.
DATA: it_zc2p_lider_modul_del TYPE STANDARD TABLE OF zc2p_lider_modul WITH HEADER LINE.
**************Workarea
DATA: wa_c2p_lote_etique TYPE zc2p_lote_etique.
DATA: wa_c2p_lider_modul TYPE zc2p_lider_modul.
DATA: wa_c2p_lider_modul_del TYPE zc2p_lider_modul.
DATA: sel.
DATA: MARK.
DATA: init.
DATA: col TYPE scxtab_column.
DATA: lines TYPE i.
* Variable Declaration
DATA : flg, "Flag to set the change mode
ln TYPE i. "No. of records
* Table Control Declartion.
CONTROLS: zc2p_lider_crtl TYPE TABLEVIEW USING SCREEN '101'.
**PROCESS BEFORE OUTPUT INCLUDE **
*& Include Z_PP_LOTE_ETIQUETAS_O01
*& Module set_status OUTPUT
* Setting the GUI status
MODULE status_0100 OUTPUT.
SET PF-STATUS 'Z_PP_LOT_ETIQ_MENU'.
SET TITLEBAR 'Z_PP_LOT_ETIQ'.
ENDMODULE. " set_status OUTPUT screen 100
* MODULE status_0101 OUTPUT
* Setting the GUI status
MODULE status_0101 OUTPUT.
SET PF-STATUS 'Z_PP_LOT_ETIQ_ME_101'.
SET TITLEBAR 'Z_PP_LOT_ETIQ'.
* Data retreving
if init is INITIAL.
select * from zc2p_lider_modul into CORRESPONDING FIELDS OF TABLE it_zc2p_lider_modul.
DESCRIBE TABLE it_zc2p_lider_modul LINES ln.
zc2p_lider_crtl-lines = ln + 10.
init = 'X'.
endif.
ENDMODULE. "status_0101 OUTPUT
module change_sdyn_conn output.
* you can change the content of current table control line via
* sdyn_conn
READ TABLE it_zc2p_lider_modul INTO zc2p_lider_modul INDEX zc2p_lider_crtl-current_line.
endmodule. " FILL_TABLE_CONTROL OUTPUT
MODULE set_screen_fields OUTPUT.
LOOP AT SCREEN.
IF flg IS INITIAL.
screen-input = 0.
ELSE.
screen-input = 1.
ENDIF.
*ENDIF.
* Modifying the screen after making changes
MODIFY SCREEN.
ENDLOOP.
ENDMODULE. " set_screen_fields OUTPUT
PROCESS AFTER INPUT INCLUDE.
* MODULE USER_COMMAND_0100 INPUT
MODULE user_command_0100 INPUT.
CASE ok_code.
WHEN 'LIDM'.
CALL SCREEN 101.
WHEN 'CANC'.
LEAVE PROGRAM.
WHEN 'BACK'.
LEAVE PROGRAM.
WHEN 'EXIT'.
LEAVE PROGRAM.
ENDCASE.
ENDMODULE. "USER_COMMAND_0100 INPUT
* MODULE USER_COMMAND_0101 INPUT
MODULE user_command_0101 INPUT.
save_ok = ok_code.
CLEAR ok_code.
CASE save_ok.
WHEN 'SORT'.
DATA: fldname(100),help(100).
READ TABLE zc2p_lider_crtl-cols INTO col WITH KEY selected = 'X'.
SPLIT col-screen-name AT '-' INTO help fldname.
SORT it_zc2p_lider_modul BY (fldname).
WHEN 'CHANGE'.
* Setting the flag to make the table control in editable mode[excluding
* primary key].
flg = 'Y'.
WHEN 'BACK'.
CALL SCREEN 100.
LEAVE SCREEN.
WHEN 'CANCEL'.
LEAVE PROGRAM.
WHEN 'EXIT'.
LEAVE PROGRAM.
WHEN 'SAVE'.
MODIFY zc2p_lider_modul FROM it_zc2p_lider_modul.
COMMIT WORK.
ENDCASE.
ENDMODULE. "USER_COMMAND_0101 INPUT
* MODULE read_table_control INPUT
MODULE read_table_control INPUT.
* Check input values
IF mark = 'X' AND save_ok = 'DELETE'.
DELETE TABLE it_zc2p_lider_modul FROM zc2p_lider_modul.
DESCRIBE TABLE it_zc2p_lider_modul LINES zc2p_lider_crtl-lines.
ENDIF.
ENDMODULE. " READ_TABLE_CONTROL INPUT
Screen Flow Logic 100
PROCESS BEFORE OUTPUT.
MODULE status_0100.
PROCESS AFTER INPUT.
MODULE user_command_0100.
Screen Flow Logic 101.
PROCESS BEFORE OUTPUT.
MODULE status_0101.
LOOP AT it_zc2p_lider_modul INTO zc2p_lider_modul WITH CONTROL
zc2p_lider_crtl.
* Dynamic screen modifications
MODULE set_screen_fields.
MODULE change_sdyn_conn.
ENDLOOP.
PROCESS AFTER INPUT.
MODULE user_command_0101.
LOOP AT it_zc2p_lider_modul.
MODULE read_table_control.
ENDLOOP.
i hope somebody can help for what i missing here thanks>
Sanjeev Kumar wrote:
> Hello Edgar,
>
> Problem seems to be there in the flow logic of 101
>
>
> PROCESS BEFORE OUTPUT.
> MODULE status_0101.
> LOOP AT it_zc2p_lider_modul INTO zc2p_lider_modul WITH CONTROL
> zc2p_lider_crtl. " no need to have 'INTO zc2p_lider_modul' above
> * Dynamic screen modifications
> MODULE set_screen_fields.
> MODULE change_sdyn_conn.
> ENDLOOP.
> *
> PROCESS AFTER INPUT.
> MODULE user_command_0101. "this should be shifted after the following LOOP...ENDLOOP.
>
> LOOP AT it_zc2p_lider_modul. "need to have 'WITH CONTROL zc2p_lider_crtl' here
> MODULE read_table_control.
> ENDLOOP.
>
>
>
> With MODULE user_command_0101 call before the LOOP calls the MODIFY statement (under case save_ok 'SAVE') first and Z-table is updated with the old values as the changes are transferred from screen into the internal table it_zc2p_lider_modul in the LOOP...ENDLOOP later.
>
> Try these changes and I hope it will work.
>
> Thanks
> Sanjeev
i do the firts advice but the second one i get syntax error :
my code :
PROCESS AFTER INPUT.
LOOP at it_zc2p_lider_modul WITH CONTROL zc2p_lider_crtl.
MODULE read_table_control.
ENDLOOP.
MODULE user_command_0101.
error :
In the event PROCESS AFTER INPUT, no additions are allowed with "LOOP
AT". -
Table Control[Accept Input Only] - "ENTER" Key
Hi Folks,
I'm reviving this unanswered thread in relation to table control: when the user press enter, all the values entered disappear.
[url]Re: Table control (Enter key)[url]
I have a table control that accepts "ONLY" input, meaning to say, there will be no pre-loading of data in the PBO, so it will loop through the table control itself instead of looping from an internal table.
Issue: Whenever I press "ENTER" in any column/row of my table control, ALL the values I entered disappear.
PBO:
PROCESS BEFORE OUTPUT.
MODULE CLEAR_OKCODE.
MODULE LOAD_TABLECTRL.
LOOP WITH CONTROL TC_DATA.
MODULE READ_DATA.
ENDLOOP.
module READ_DATA output.
READ TABLE T_DATA INTO WA_DATA INDEX TC_DATA-current_line.
data : line_count type i.
"to increase the number of lines in table control dynamically
describe TABLE t_data lines line_count.
TC_DATA-lines = line_count + 10.
endmodule.
PAI:
PROCESS AFTER INPUT.
LOOP WITH CONTROL TC_DATA.
MODULE MODIFY_DATA.
ENDLOOP.
module MODIFY_DATA input.
WHEN 'CREATE'.
"subroutines are here, etc.
WHEN 'DELETE'.
WHEN 'BACK'.
LEAVE TO SCREEN 0.
endmodule.
In my ABAP Debug, the value of SY-UCOMM is BLANK whenever I press Enter.
Thanks.Hi
Your code seems to be rght only the MODIFY statament is useless:
module READ_DATA output.
READ TABLE T_ID_CHECK INTO WA_ID_CHECK INDEX TC_ID-current_line.
IF SY-SUBRC EQ 0.
ZQID_CHECK-WERKS = WA_ID_CHECK-WERKS.
ZQID_CHECK-MATNR = WA_ID_CHECK-MATNR.
ZQID_CHECK-LICHA = WA_ID_CHECK-LICHA.
ZQID_CHECK-LIFNR = WA_ID_CHECK-LIFNR.
ELSE.
CLEAR ZQID_CHECK.
ENDIF.
endmodule.
Now before LOOP of PBO try to set the lines of table control to be display, I've created this report on my system and it works fine:
.CONTROLS T_CTRL TYPE TABLEVIEW USING SCREEN 100.
DATA: BEGIN OF ITAB OCCURS 0,
WERKS LIKE MARC-WERKS,
MATNR LIKE MARC-MATNR,
LIFNR LIKE LFA1-LIFNR,
END OF ITAB.
DATA: WA LIKE ITAB.
START-OF-SELECTION.
DO 4 TIMES.
ITAB-WERKS = '5010'.
ITAB-MATNR = '1234567890'.
ITAB-LIFNR = '0000000001'.
APPEND ITAB.
ENDDO.
CALL SCREEN 100.
PROCESS BEFORE OUTPUT.
MODULE SET_T_CTRL.
LOOP WITH CONTROL T_CTRL.
MODULE READ_DATA.
ENDLOOP.
PROCESS AFTER INPUT.
LOOP WITH CONTROL T_CTRL.
MODULE MODIFY_DATA.
ENDLOOP.
MODULE SET_T_CTRL OUTPUT.
DESCRIBE TABLE ITAB LINES T_CTRL-LINES.
ENDMODULE. " SET_T_CTRL OUTPUT
MODULE READ_DATA OUTPUT.
READ TABLE ITAB INDEX T_CTRL-CURRENT_LINE.
IF SY-SUBRC = 0.
MOVE-CORRESPONDING ITAB TO WA.
ELSE.
CLEAR WA.
ENDIF.
ENDMODULE. " READ_DATA OUTPUT
MODULE MODIFY_DATA INPUT.
MODIFY ITAB FROM WA INDEX T_CTRL-CURRENT_LINE.
IF SY-SUBRC NE 0.
CHECK NOT WA IS INITIAL.
APPEND WA TO ITAB.
ENDIF.
ENDMODULE. " MODIFY_DATA INPUT -
How to delete a row in table control?
Hi All,
I have a empty table control which is only use for data input(this data will then be use to store information to a custom table). I have two buttons, Create Entry and Delete Entry.
In my screenPainter for the table control, I have the checkbox w/SelColumn ticked and assign variable T_DATA-MARK on it.
In my code:
TOP Include
CONTROLS: tc_data TYPE TABLEVIEW USING SCREEN 9001.
PBO
PROCESS BEFORE OUTPUT.
LOOP WITH CONTROL TC_ID.
MODULE LOAD_TABLECTRL.
ENDLOOP.
module LOAD_TABLECTRL output.
READ TABLE T_DATA INTO WA_DATA INDEX TC_DATA-current_line.
IF SY-SUBRC EQ 0.
MOVE-CORRESPONDING T_DATA TO WA_DATA.
ENDIF.
endmodule.
PAI
PROCESS AFTER INPUT.
LOOP WITH CONTROL TC_ID.
ENDLOOP.
MODULE GET_USER_ACTION.
module GET_USER_ACTION input.
WHEN 'DEL'.
LOOP AT T_DATA INTO WA_DATA WHERE MARK EQ 'X'.
DELETE T_DATA.
ENDLOOP.
In my debug, the internal table T_DATA-MARK does not have any value(s) even if I selected a particular row in my table control.
Am I missing something here?
ThanksHi All,
Please see the actual screenshots and code below:
The aim of the table control is just to accept inputs, so the internal table in the PBO is always empty.
Table Control Screen Painter ScreenShot and Actual SAP Output: http://img710.imageshack.us/img710/4751/tablecontrolrowdelete.jpg
PBO
PROCESS BEFORE OUTPUT.
LOOP WITH CONTROL TC_ID.
MODULE LOAD_TABLECTRL.
ENDLOOP.
module LOAD_TABLECTRL output.
READ TABLE T_ID_CHECK INTO WA_ID_CHECK INDEX TC_ID-current_line.
IF SY-SUBRC EQ 0.
MOVE-CORRESPONDING T_ID_CHECK TO TC_ID.
ELSE.
"EXIT FROM STEP-LOOP.
CLEAR ZQID_CHECK.
ENDIF.
PAI
PROCESS AFTER INPUT.
LOOP WITH CONTROL TC_ID.
CHAIN.
MODULE CHECK_ENTRIES ON CHAIN-INPUT.
MODULE MODIFY_T_ID_CHECK ON CHAIN-INPUT.
MODULE DELETE_ROW ON CHAIN-INPUT
ENDCHAIN.
ENDLOOP.
module CHECK_ENTRIES input.
CASE ok_code.
WHEN 'DEL'.
PERFORM F_FILL_ITABCREATE USING ZQID_CHECK-MATNR
ZQID_CHECK-LICHA
ZQID_CHECK-LIFNR.
ENDCASE.
endmodule.
module MODIFY_T_ID_CHECK input.
DATA W_TEMPMARK(1) TYPE C.
MOVE: T_ID_CHECK-MARK TO W_TEMPMARK,
W_TEMPMARK TO T_ID_CHECK-MARK.
MODIFY T_ID_CHECK INDEX SY-TABIX TRANSPORTING MARK.
endmodule.
module DELETE_ROW input.
LOOP AT T_ID_CHECK WHERE MARK EQ 'X'.
DELETE T_ID_CHECK.
ENDLOOP.
endmodule.
form F_FILL_ITABCREATE using us_zqid_check_matnr LIKE MARA-MATNR
us_zqid_check_licha LIKE MCHA-LICHA
us_zqid_check_lifnr LIKE LFA1-LIFNR.
MOVE: us_zqid_check_matnr TO WA_ID_CHECK-MATNR,
us_zqid_check_licha TO WA_ID_CHECK-LICHA,
us_zqid_check_lifnr TO WA_ID_CHECK-LIFNR.
APPEND WA_ID_CHECK TO T_ID_CHECK.
CLEAR WA_ID_CHECK.
endform.
In my debug, I can now delete the internal table that has a 'X' mark on its respective row but on the SAP screen output, all of my entries are being deleted contrary to what the ABAP debugger is telling me.
Thanks -
Hi Experts,
I am working on module pool Program using " Table Control ".
the below code is a part of program.
" Here i want insert new lines ( New values ). Please tell me that how to Do? "
MODULE USER_COMMAND_0100 INPUT.
SAVE_OK = OK_CODE.
CLEAR OK_CODE.
CASE SAVE_OK.
WHEN 'INSERT'.
" Here i want insert new lines ( New values ). Please tell me that how to Do? "
WHEN 'TOGGLE'.
LOOP AT EMPLOYE-COLS INTO COLS WHERE INDEX GT 2.
IF COLS-SCREEN-INPUT = '0'.
COLS-SCREEN-INPUT = '1'.
ELSEIF COLS-SCREEN-INPUT = '1'.
COLS-SCREEN-INPUT = '0'.
ENDIF.
MODIFY EMPLOYE-COLS FROM COLS INDEX SY-TABIX.
ENDLOOP.
WHEN 'DELETE'.
READ TABLE EMPLOYE-COLS INTO COLS WITH KEY SCREEN-INPUT = '1'.
IF SY-SUBRC = 0.
LOOP AT ITAB INTO ZEMPLOYE WHERE EMPID = 'X'.
DELETE ITAB.
ENDLOOP.
ENDIF.
ENDCASE.
ENDMODULE.
Its Urgent
Thank You.
BasuHi,
WHEN 'INSERT'.
" Here i want insert new lines ( New values ). Please tell me that how to Do? "
<b>Append initial line to EMPLOYE.</b>
Or
Change the table control attribute for rows.
Reward if helpful.
Maybe you are looking for
-
I have a Pub and 2 Sub's. Sub #1 is with the Pub, at the main site it is our TFTP server, Sub #2 is at a remote site with about 100 users along with a router and 2 PRI's for outbound calls. We had a network failure between the main site and the rem
-
Can't find drivers for PCI stuff?
MS 7267 v5.0, Intel 2x1.5 gHz, junkyard machine acquired with no HD, possibly dumped because of a bad HD cable. It's kind of a hobby for me, getting dead machines working and using them. This one, however, has a frustrating problem. I picked Win XP
-
Screensaver Aperture 3.1, is it possible?
I'm having lots of problems with the 3.1 update. I've pretty much made mess and its very frustrating. I'm hoping there is a simple fix for getting screensaver to run using my Aperture library. How hard can that be? I've trashed iLifeShared>Aperture..
-
Itunes sync: items couldn not be synced. See iTunes for more info. What do I need to do?
-
Why is the Bluetooth acting strange after the 10.7.3 update
I have to manually sync my mouse and keyboard every time I reboot my system. Everything was working fine before the update?? Any help would be appreciated !