All about table control
Hi,
I am using a table control in my application vi for both reading inputs and displaying output. I have a few questions about it:
1. Sometimes I send the data in multiple lines to a cell but at the output, I am only able to see the first line and not the other parts unless I hover around the cell. Is there any way to autoincrease the cell (or row) height so that the table control show the multiple line output properly.
2. Also, how can I make cell of table to auto adjust the column width according to input text length.
Please refer the attached image for details. All suggestions are welcome..
Hi mnx,
there's no auto-adjust. You have to set width/height using property nodes on your own…
Best regards,
GerdW
CLAD, using 2009SP1 + LV2011SP1 + LV2014SP1 on WinXP+Win7+cRIO
Kudos are welcome
Similar Messages
-
Select all and deselect all in table control
Hi experts,
I want to make the select all and deselect all options in my table control.
But i can't able to do that one. Kindly suggest me how to do that one.
one more thing, if i select some rows in the table control, and press save it should be saved in some other table. how can i implement that one.
Waiting for ur reply.
Regards...
Arun.Hi Arun,
In the context node that you bind to the table, set the cardinality as 0..n and selection as 0..n. In the UI element Table, set the property selectionMode as 'multi'. Then a toggle button for select/deselect all will appear automatically in your table. You can see it in the top left corner.
For your second question, after selecting the elemets and pressing 'save', in your event handler, do a get_selected_elements( ) on your node. This will return you a set of context elements. Loop through each element and do a get_static_attributes to get the rows. Then you can append these rows to another internal table and bind it to the context. Bind your second table to this node. If the two tables are in different views, the context nodes need to be present in the component controller and mapped to the views.
Hope this helps.
Regards
Nithya -
Could you help me about table control .. ?
Dear All,
I've a problem in table Control.
I put table control inside tab control (there are many tab in one screen where one tab has one table control).
The schenario of the program, i wanna use table control to maintain the value from some table.
So certainly it has insert/add, delete function.
As we know to do one function in those e.g. add record button, we need specify some code on that button.
So ..
Once when that button is pressed, we can check what button is being pressed using that code.
And it can run well.
But this is the strange one, if i have schenario like this :
1. I click add record button
I will get the add code through ok_code/SY-UCOMM variable.
2. I scroll down/up the table control.
(THIS IS THE WEIRD), the ok_code/SY-UCOMM variable still keep having add code. So every we scroll down/up, application also will add one record.
Could you help me to make ok_code/SY-UCOMM blank in every time i scroll down/up the table control ??
Or could you help me how to i specify the code for scroll down/up the table control so I can identify when user is scrolling down/up the table control??
I really need your guidance/suggestion how to overcome it .. ?
Many tks for all your attention.
Best regards,
Daniel N.Following is a sample code of handling table control in BDC.
REPORT Y730_BDC5 .
*HANDLING TABLE CONTROL IN BDC
DATA : BEGIN OF IT_DUMMY OCCURS 0,
DUMMY(100) TYPE C,
END OF IT_DUMMY.
DATA : BEGIN OF IT_XK01 OCCURS 0,
LIFNR(10) TYPE C,
BUKRS(4) TYPE C,
EKORG(4) TYPE C,
KTOKK(4) TYPE C,
NAME1(30) TYPE C,
SORTL(10) TYPE C,
LAND1(3) TYPE C,
SPRAS(2) TYPE C,
AKONT(6) TYPE C,
FDGRV(2) TYPE C,
WAERS(3) TYPE C,
END OF IT_XK01,
BEGIN OF IT_BANK OCCURS 0,
BANKS(3) TYPE C,
BANKL(10) TYPE C,
BANKN(10) TYPE C,
KOINH(30) TYPE C,
LIFNR(10) TYPE C,
END OF IT_BANK.
DATA : IT_BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE,
IT_BDCMSGCOLL LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
CALL FUNCTION 'WS_UPLOAD'
EXPORTING
FILENAME = 'C:\VENDOR.TXT'
FILETYPE = 'ASC'
TABLES
DATA_TAB = IT_DUMMY.
LOOP AT IT_DUMMY.
IF IT_DUMMY-DUMMY+0(2) = '11'.
IT_XK01-LIFNR = IT_DUMMY-DUMMY+2(10).
IT_XK01-BUKRS = IT_DUMMY-DUMMY+12(4).
IT_XK01-EKORG = IT_DUMMY-DUMMY+16(4).
IT_XK01-KTOKK = IT_DUMMY-DUMMY+20(4).
IT_XK01-NAME1 = IT_DUMMY-DUMMY+24(30).
IT_XK01-SORTL = IT_DUMMY-DUMMY+54(10).
IT_XK01-LAND1 = IT_DUMMY-DUMMY+64(3).
IT_XK01-SPRAS = IT_DUMMY-DUMMY+67(2).
IT_XK01-AKONT = IT_DUMMY-DUMMY+69(6).
IT_XK01-FDGRV = IT_DUMMY-DUMMY+75(2).
IT_XK01-WAERS = IT_DUMMY-DUMMY+77(3).
APPEND IT_XK01.
ELSE.
IT_BANK-BANKS = IT_DUMMY-DUMMY+2(3).
IT_BANK-BANKL = IT_DUMMY-DUMMY+5(10).
IT_BANK-BANKN = IT_DUMMY-DUMMY+15(10).
IT_BANK-KOINH = IT_DUMMY-DUMMY+25(30).
IT_BANK-LIFNR = IT_DUMMY-DUMMY+55(10).
APPEND IT_BANK.
ENDIF.
ENDLOOP.
LOOP AT IT_XK01.
REFRESH IT_BDCDATA.
perform bdc_dynpro using 'SAPMF02K' '0100'.
perform bdc_field using 'BDC_CURSOR'
'RF02K-REF_LIFNR'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'RF02K-LIFNR'
IT_XK01-LIFNR.
perform bdc_field using 'RF02K-BUKRS'
IT_XK01-BUKRS.
perform bdc_field using 'RF02K-EKORG'
IT_XK01-EKORG.
perform bdc_field using 'RF02K-KTOKK'
IT_XK01-KTOKK.
perform bdc_dynpro using 'SAPMF02K' '0110'.
perform bdc_field using 'BDC_CURSOR'
'LFA1-TELX1'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'LFA1-NAME1'
IT_XK01-NAME1.
perform bdc_field using 'LFA1-SORTL'
IT_XK01-SORTL.
perform bdc_field using 'LFA1-LAND1'
IT_XK01-LAND1.
perform bdc_field using 'LFA1-SPRAS'
IT_XK01-SPRAS.
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-KOINH(02)'.
perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
DATA : FNAM(20) TYPE C,
IDX TYPE C.
MOVE 1 TO IDX.
LOOP AT IT_BANK WHERE LIFNR = IT_XK01-LIFNR.
CONCATENATE 'LFBK-BANKS(' IDX ')' INTO FNAM.
perform bdc_field using FNAM
IT_BANK-BANKS.
CONCATENATE 'LFBK-BANKL(' IDX ')' INTO FNAM.
perform bdc_field using FNAM
IT_BANK-BANKL.
CONCATENATE 'LFBK-BANKN(' IDX ')' INTO FNAM.
perform bdc_field using FNAM
IT_BANK-BANKN.
CONCATENATE 'LFBK-KOINH(' IDX ')' INTO FNAM.
perform bdc_field using FNAM
IT_BANK-KOINH.
IDX = IDX + 1.
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'
IT_XK01-AKONT.
perform bdc_field using 'LFB1-FDGRV'
IT_XK01-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'
IT_XK01-WAERS.
perform bdc_dynpro using 'SAPMF02K' '0320'.
perform bdc_field using 'BDC_CURSOR'
'WYT3-PARVW(01)'.
perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
perform bdc_dynpro using 'SAPLSPO1' '0300'.
perform bdc_field using 'BDC_OKCODE'
'=YES'.
CALL TRANSACTION 'XK01' USING IT_BDCDATA
MODE 'A'
UPDATE 'S'
MESSAGES INTO IT_BDCMSGCOLL.
ENDLOOP.
FORM BDC_DYNPRO USING PROG SCR.
CLEAR IT_BDCDATA.
IT_BDCDATA-PROGRAM = PROG.
IT_BDCDATA-DYNPRO = SCR.
IT_BDCDATA-DYNBEGIN = 'X'.
APPEND IT_BDCDATA.
ENDFORM.
FORM BDC_FIELD USING FNAM FVAL.
CLEAR IT_BDCDATA.
IT_BDCDATA-FNAM = FNAM.
IT_BDCDATA-FVAL = FVAL.
APPEND IT_BDCDATA.
ENDFORM.
points plz (if this information is usefull).
Regard's
Raghunath.S -
About table control in the selection screen
i want to create a table control in the selection screen of my report.i can create the table control using SE51.but how to program with the table control in the report.for example i should fetch the data for the personnel nos entered in the table control of the selection screen.how to do this.can any of u provide sample code for this.
thanks.Hi vadivel,
Create internal table and create table control using same internal table
e.g.
data : begin of it,
end of it.
start-of-selection.
call screen 100.
If you create table control using wizard then code automatically come here.
Now, Put one push button in same screen where table control is available. let's say push button Display report.
Now, use export <IT> to memory id <ID> and submit report <report name> and return. now, define same internal table in this submitted report and use import <IT> from memory id <ID>. Now, table control data is available in internal table, use that data and make code as per your requirement. If you dont want to use push button then use menu bar and at user-command event.
Hope this help
Regards,
Parag -
what i must do so tht this program runs
REPORT Y730_BDC5 .
*HANDLING TABLE CONTROL IN BDC
DATA : BEGIN OF IT_DUMMY OCCURS 0,
DUMMY(100) TYPE C,
END OF IT_DUMMY.
DATA : BEGIN OF IT_XK01 OCCURS 0,
LIFNR(10) TYPE C,
BUKRS(4) TYPE C,
EKORG(4) TYPE C,
KTOKK(4) TYPE C,
NAME1(30) TYPE C,
SORTL(10) TYPE C,
LAND1(3) TYPE C,
SPRAS(2) TYPE C,
AKONT(6) TYPE C,
FDGRV(2) TYPE C,
WAERS(3) TYPE C,
END OF IT_XK01,
BEGIN OF IT_BANK OCCURS 0,
BANKS(3) TYPE C,
BANKL(10) TYPE C,
BANKN(10) TYPE C,
KOINH(30) TYPE C,
LIFNR(10) TYPE C,
END OF IT_BANK.
DATA : IT_BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE,
IT_BDCMSGCOLL LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
CALL FUNCTION 'WS_UPLOAD'
EXPORTING
* CODEPAGE = ' '
FILENAME = 'C:Documents and Settingsphaneendranath.kolliDesktopVENDOR.TXT '
FILETYPE = 'DAT'
* HEADLEN = ' '
* LINE_EXIT = ' '
* TRUNCLEN = ' '
* USER_FORM = ' '
* USER_PROG = ' '
* DAT_D_FORMAT = ' '
* IMPORTING
* FILELENGTH =
TABLES
data_tab = IT_DUMMY
EXCEPTIONS
CONVERSION_ERROR = 1
FILE_OPEN_ERROR = 2
FILE_READ_ERROR = 3
INVALID_TYPE = 4
NO_BATCH = 5
UNKNOWN_ERROR = 6
INVALID_TABLE_WIDTH = 7
GUI_REFUSE_FILETRANSFER = 8
CUSTOMER_ERROR = 9
NO_AUTHORITY = 10
OTHERS = 11
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 IT_DUMMY.
IF IT_DUMMY-DUMMY+0(2) = '11'.
IT_XK01-LIFNR = IT_DUMMY-DUMMY+2(10).
IT_XK01-BUKRS = IT_DUMMY-DUMMY+12(4).
IT_XK01-EKORG = IT_DUMMY-DUMMY+16(4).
IT_XK01-KTOKK = IT_DUMMY-DUMMY+20(4).
IT_XK01-NAME1 = IT_DUMMY-DUMMY+24(30).
IT_XK01-SORTL = IT_DUMMY-DUMMY+54(10).
IT_XK01-LAND1 = IT_DUMMY-DUMMY+64(3).
IT_XK01-SPRAS = IT_DUMMY-DUMMY+67(2).
IT_XK01-AKONT = IT_DUMMY-DUMMY+69(6).
IT_XK01-FDGRV = IT_DUMMY-DUMMY+75(2).
IT_XK01-WAERS = IT_DUMMY-DUMMY+77(3).
APPEND IT_XK01.
ELSE.
IT_BANK-BANKS = IT_DUMMY-DUMMY+2(3).
IT_BANK-BANKL = IT_DUMMY-DUMMY+5(10).
IT_BANK-BANKN = IT_DUMMY-DUMMY+15(10).
IT_BANK-KOINH = IT_DUMMY-DUMMY+25(30).
IT_BANK-LIFNR = IT_DUMMY-DUMMY+55(10).
APPEND IT_BANK.
ENDIF.
ENDLOOP.
LOOP AT IT_XK01.
REFRESH IT_BDCDATA.
perform bdc_dynpro using 'SAPMF02K' '0100'.
perform bdc_field using 'BDC_CURSOR'
'RF02K-REF_LIFNR'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'RF02K-LIFNR'
IT_XK01-LIFNR.
perform bdc_field using 'RF02K-BUKRS'
IT_XK01-BUKRS.
perform bdc_field using 'RF02K-EKORG'
IT_XK01-EKORG.
perform bdc_field using 'RF02K-KTOKK'
IT_XK01-KTOKK.
perform bdc_dynpro using 'SAPMF02K' '0110'.
*perform bdc_field using 'BDC_CURSOR'
* 'LFA1-TELX1'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'LFA1-NAME1'
IT_XK01-NAME1.
perform bdc_field using 'LFA1-SORTL'
IT_XK01-SORTL.
perform bdc_field using 'LFA1-LAND1'
IT_XK01-LAND1.
perform bdc_field using 'LFA1-SPRAS'
IT_XK01-SPRAS.
perform bdc_dynpro using 'SAPMF02K' '0120'.
*perform bdc_field using 'BDC_CURSOR'
* IT_XK01-KUNNR.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_dynpro using 'SAPMF02K' '0130'.
perform bdc_field using 'BDC_CURSOR'
IT_BANK-KOINH(02).
perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
DATA : FNAM(20) TYPE C,
IDX TYPE C.
MOVE 1 TO IDX.
LOOP AT IT_BANK WHERE LIFNR = IT_XK01-LIFNR.
CONCATENATE 'LFBK-BANKS(' IDX ')' INTO FNAM.
perform bdc_field using FNAM
IT_BANK-BANKS.
CONCATENATE 'LFBK-BANKL(' IDX ')' INTO FNAM.
perform bdc_field using FNAM
IT_BANK-BANKL.
CONCATENATE 'LFBK-BANKN(' IDX ')' INTO FNAM.
perform bdc_field using FNAM
IT_BANK-BANKN.
CONCATENATE 'LFBK-KOINH(' IDX ')' INTO FNAM.
perform bdc_field using FNAM
IT_BANK-KOINH.
IDX = IDX + 1.
ENDLOOP.
perform bdc_dynpro using 'SAPMF02K' '0130'.
perform bdc_field using 'BDC_CURSOR'
IT_BANK-BANKS(01).
perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
perform bdc_dynpro using 'SAPMF02K' '0210'.
perform bdc_field using 'BDC_CURSOR'
IT_XK01-FDGRV.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'LFB1-AKONT'
IT_XK01-AKONT.
perform bdc_field using 'LFB1-FDGRV'
IT_XK01-FDGRV.
perform bdc_dynpro using 'SAPMF02K' '0215'.
*perform bdc_field using 'BDC_CURSOR'
* IT_BANK-ZTERM.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_dynpro using 'SAPMF02K' '0220'.
*perform bdc_field using 'BDC_CURSOR'
* IT_BANK-MAHNA.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_dynpro using 'SAPMF02K' '0310'.
perform bdc_field using 'BDC_CURSOR'
IT_XK01-WAERS.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'LFM1-WAERS'
IT_XK01-WAERS.
perform bdc_dynpro using 'SAPMF02K' '0320'.
perform bdc_field using 'BDC_CURSOR'
'WYT3-PARVW(01)'.
perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
perform bdc_dynpro using 'SAPLSPO1' '0300'.
perform bdc_field using 'BDC_OKCODE'
'=YES'.
CALL TRANSACTION 'XK01' USING IT_BDCDATA
MODE 'A'
UPDATE 'S'
MESSAGES INTO IT_BDCMSGCOLL.
ENDLOOP.
FORM BDC_DYNPRO USING PROG SCR.
CLEAR IT_BDCDATA.
IT_BDCDATA-PROGRAM = PROG.
IT_BDCDATA-DYNPRO = SCR.
IT_BDCDATA-DYNBEGIN = 'X'.
APPEND IT_BDCDATA.
ENDFORM.
FORM BDC_FIELD USING FNAM FVAL.
CLEAR IT_BDCDATA.
IT_BDCDATA-FNAM = FNAM.
IT_BDCDATA-FVAL = FVAL.
APPEND IT_BDCDATA.
ENDFORM.hi,
kindly go thru this link and chk.
http://www.sap-img.com/abap/bdc-example-using-table-control-in-bdc.htm
regards,
anver -
A question about table control
Hello Expert,
I have created a table control with wizard using internal table. I can display the data in the table successfully. Now the new requirement is to add two buttons to sort the data in ascending or descending. But it seems that it's impossible to select the column that the user want to use as sort field.
Does any expert tell me how i can select the column?
Thanks & Regards, JohnnyAfter doing the steps mentioned by sap fan you have to use below approach for coding.
Your table control has structure CXTAB_CONTROL defined in the type group CXTAB in the ABAP Dictionary and
CXTAB_CONTROL contains a table of the structure CXTAB_COLUMN which has the attributes of a column of table control.
Lets say you have defined table control as
CONTROLS tab1 TYPE TABLEVIEW USING SCREEN <scr> then you have can read variable tab1-COLS[ ] into one internal table
of type CXTAB_COLUMN (lets consider this table as tab2) then check this tab2-SELECTED, if column is selected then
it will be 'X' else space. Accordingly sort your internal table of table control.
Regards,
Pawan -
hi e
I want to search any field from table control.
means I have table (table control) on output screen and one input/output field.
There are some records in the table.
when user will enter one field(of table) in the input/output field on screen, and press 'enter', cursor should go to thet record in the table on screen.
thanksHi,
From your specification it is not very clear as to what exactly you want to search. Will you search based on any fields, or the primary key fields ?
Well you can search the internal table in the PAI block and then can locate the row in the Table Control.
For the democode on Table Control have a look at the TCode: ABAPDOCU
Hope this helps. -
First Thing First :
Switch Control on I phone , Does it still working in new IOS 7.1.1? Because My Iphone 5S can not have this Switch Control "on".
Second :
IF this function still working, then why my Iphone 5S can not have Switch Control "on".
Third :
What is the TOP USE for this Function?I have read the information mentioned above.
But I still can not turn the Switch Control "on"
Here i attached the image.
Could anyone please help me solve this problem? -
How to select all the lines of table control
Hi all,
In table control, I have more than 100 records. My requirement is I have to select all the records when I press check box in the table control. Please guide me in this regard.
Searched in sdn before posting.
Thanks,
regards,
Murali Krishna. TPROBLEM SOLVED
-
How to handle table control in PO change
Hi All,
R/3 is sending PO details and Vendor is using third party front end to access the PO.He has changed the PO and these changes need to be reflected in the PO. Data is coming from external sytem to R/3 through IDOC. I need to handle the changes in the PO at the ITEM level. It has the table control. I don't know about table control. Kindly help me inorder to update the PO for a particular tab in PO item(ME22N).
I have checked the process code : ORDH and FM: MPN30_IDOC_INPUT_ORDCAD
Regards
Kannaiah
Rewards for helpful answersHi Ravikanth,
Thanks for the reply.
I checked the PO item for the fields which need to be updated. I am unable to find some fields in the FM which i had mentioned. Shall I need to use any Userexit or include for this. If yes, can you tell me the user exit for this. I have checked the following exits: AMPL0001
LMEDR001
LMELA002
LMELA010
LMEQR001
LMEXF001
LWSUS001
M06B0001
M06B0002
M06B0003
M06B0004
M06B0005
M06E0004
M06E0005
ME590001
MEETA001
MEFLD004
MELAB001
MEQUERY1
MEVME001
MM06E001
MM06E003
MM06E004
MM06E005
MM06E007
MM06E008
MM06E009
MM06E010
MMAL0001
MMAL0002
MMAL0003
MMDA0001
MMFAB001
MRFLB001 -
Table control in module program
hi,
i don't know about table control in module program.so please send the faq's ?hi
ganapathi
Table Controls in ABAP Programs
To handle table controls in ABAP programs, you must declare a control in the declaration part of the program for each table control using the following statement:
CONTROLS .
if you only want to determine the row of the table control. SY´-SUBRC allows you to check if the cursor is placed in a row of a table control.
this is all information about table control still if u have any quiries my mailid is [email protected]
plzz reward if usefull
dont forget to reward -
Copy selected values from a table control into another table control
hi there,
as seen in the subject i need to copy selected values from a table control into another table control in the same screen. as i dont know much about table controls i made 2 table controls with the wizard and started to change the code... right now im totally messed up. nothing works anymore and i don't know where to start over.
i looked up the forums and google, but there is nothing to help me with this problem (or i suck in searching the internet for solutions)
i have 2 buttons. one to push the selected data from the top table control into the bottom tc and the other button is to push selected data from the bottom tc into the top tc. does somebody has a sample code to do this?you're funny
i still don't get it... can't believe, there is no tutorial or sample code around how to copy multiple selected rows from a tc.
here's my code, maybe you can tell me exactly were i have to change it:
tc1 = upper table control
tc2 = lower table control
SCREEN 0100:
PROCESS BEFORE OUTPUT.
MODULE status_0100.
MODULE get_nfo. --> gets data from the dictionary table
MODULE tc1_change_tc_attr.
LOOP AT it_roles_tc1
INTO wa_roles_tc1
WITH CONTROL tc1
CURSOR tc1-current_line.
ENDLOOP.
MODULE tc2_change_tc_attr.
LOOP AT it_roles_tc2
INTO wa_roles_tc2l
WITH CONTROL tc2
CURSOR tc2-current_line.
ENDLOOP.
PROCESS AFTER INPUT.
LOOP AT it_roles_tc1.
CHAIN.
FIELD wa_roles_tc1-agr_name.
FIELD wa_roles_tc1-text.
ENDCHAIN.
FIELD wa_roles_tc1-mark
MODULE tc1_mark ON REQUEST.
ENDLOOP.
LOOP AT it_roles_tc2.
CHAIN.
FIELD wa_roles_tc2-agr_name.
FIELD wa_roles_tc2-text.
ENDCHAIN.
FIELD wa_roles_tc2-mark
MODULE tc2_mark ON REQUEST.
ENDLOOP.
MODULE ok_code.
MODULE user_command_0100.
INCLUDE PAI:
MODULE tc1_mark INPUT.
IF tc1-line_sel_mode = 2
AND wa_roles_tc1-mark = 'X'.
LOOP AT it_roles_tc1 INTO g_tc1_wa2
WHERE mark = 'X'. -
> big problem here is, that no entry has an 'X' there
g_tc1_wa2-mark = ''.
MODIFY it_roles_tc1
FROM g_tc1_wa2
TRANSPORTING mark.
ENDLOOP.
ENDIF.
MODIFY it_roles_tc1
FROM wa_roles_tc1
INDEX tc1-current_line
TRANSPORTING mark.
ENDMODULE. "TC1_MARK INPUT
MODULE tc2_mark INPUT.
IF tc2-line_sel_mode = 2
AND wa_roles_tc2-mark = 'X'.
LOOP AT it_roles_tc2 INTO g_tc2_wa2
WHERE mark = 'X'. -
> same here, it doesn't gets any data
g_tc2_wa2-mark = ''.
MODIFY it_roles_tc2
FROM g_tc2_wa2
TRANSPORTING mark.
ENDLOOP.
ENDIF.
MODIFY it_roles_tc2
FROM wa_roles_tc2
INDEX tc2-current_line
TRANSPORTING mark.
ENDMODULE.
thx for anybody who can help with this! -
Modify data in the table control
hello:
i would like to ask a favor , i am working with a table control (it already has the information i need) all the fields all my table control are present in output form only, but i need when the user press a pushbutton to modify a specific data one of the cell of the table control permit to be change.
my output is:
field1 field2 field3 (only output )
if the user press the button 'CHANGE DATA' it will be present as
field1 field2 fiel3(ready to recibe new data ).
but i don´t know how to do it, if somebody knows how to do it
thanks a lot.this will be your's main program
*& Report ZEMP
REPORT ZEMP.
TABLES: ZEMP." Z TABLE
CONTROLS: TAB_CONTROL TYPE TABLEVIEW USING SCREEN 1000.
DATA: IT LIKE ZEMP OCCURS 0 WITH HEADER LINE.
SELECT * FROM ZEMP INTO CORRESPONDING FIELDS OF TABLE IT.
CALL SCREEN 1000.
*& Module STATUS_1000 OUTPUT
text
MODULE STATUS_1000 OUTPUT.
SET PF-STATUS 'xxxxxxxx'.
SET TITLEBAR 'xxx'.
ENDMODULE. " STATUS_1000 OUTPUT
*& Module USER_COMMAND_1000 INPUT
text
MODULE USER_COMMAND_1000 INPUT.
IF SY-UCOMM = 'BACK'.
LEAVE PROGRAM.
endif.
ENDMODULE. " USER_COMMAND_1000 INPUT
*& Module MODIFY INPUT
text
MODULE MODIFY INPUT.
MODIFY IT INDEX TAB_CONTROL-CURRENT_LINE.
MODIFY ZEMP FROM IT.
ENDMODULE. " MODIFY INPUT
and this should be your flow logic
PROCESS BEFORE OUTPUT.
MODULE STATUS_1000.
LOOP AT IT WITH CONTROL TAB_CONTROL.
ENDLOOP.
PROCESS AFTER INPUT.
MODULE USER_COMMAND_1000.
LOOP AT IT.
MODULE MODIFY.
ENDLOOP.
Regards
Prakash Varun -
Record not shown in table control
Hi experts,
I am working on the module pool program with a screen 0100. There is a table control called TABL_MATR in screen 0100.
There is no error while compiling the program. But no record shown when a record added into the table control.
I do not want to use the headerline in the program, because I intented to do it in OO way.
Record shown if I do like this:
DATA: ITAB_TRAY TYPE STANDARD TABLE OF LS_TRAY WITH HEADER LINE.
In PBO
loop at itab_tray " record show in the table control
whereas record not shown if do like this:
DATA: ITAB_TRAY TYPE STANDARD TABLE OF LS_TRAY.
In PBO
loop at itab_tray into wa_tray " no record show in the table control
Can someone guide me how to do it in the right way?
Please help.
Thanks in advance.Hi all,
I have added the below images.
1) http://i566.photobucket.com/albums/ss106/wkw510/pic6.jpg
2) http://i566.photobucket.com/albums/ss106/wkw510/pic7.jpg
3) http://i566.photobucket.com/albums/ss106/wkw510/pic8.jpg
I have also followed what Devendra's suggested, however the same error message I get:
"ITAB_TRAY" is not a structure or internal table with header line.
As such I have changed the statement
module fill_table_control output.
MOVE-CORRESPONDING wa_tray TO itab_tray.
endmodule.
to
module fill_table_control output.
APPEND wa_tray TO itab_tray.
endmodule.
After changed, compiled no error.
But, when I started to use the program I got another error which closed the whole SAP screen.
Therefore I tried to change the TABLE CONTROL setting to
4) http://i566.photobucket.com/albums/ss106/wkw510/pic10.jpg
Now, everything is okay but I only get the latest record shows in the TABLE CONTROL. The record I inserted display more than one time, and filled all the table control.
5) http://i566.photobucket.com/albums/ss106/wkw510/pic11.jpg
I am wondering should we include
MOVE-CORRESPONDING wa_tray TO itab_tray.
or
APPEND wa_tray TO itab_tray.
According from Devendra, the PBO should only has this code
loop at itab_tray into wa_tray
with control tabl_matr
cursor tabl_matr-current_line.
* module fill_table_control. "shoule we exclude this?
endloop.
If I exclude the above code, the table control only show one record, regardless how many records are inserted.
Something is not right here, but just cant find it out.
Please help. -
Changing the column postion in table control
Hi All,
In table control i want to change the columns postion according to users requirement.
How to do that?
Thanks for advance.
Regards,
krishnaHi,
In the top right hand side of the table control..there will be button for variant..
there you can create a variant..in the variant..you can move the columns around and save it as variant..then they can choose the variant..
Thanks
Naren
Maybe you are looking for
-
What is the significance of report writer and report painter
hi all, can anyone throw light on report write and report painter, when and why it used with examples. thanxs in advance regds hari
-
Reading attachments of DMS server
Hi Experts, I have a requirement where in which i have to read the content of DMS(CV03N) attachment and display it in the quality management view of material master based on material plant combination. I could able to add a subscreen to the QM view
-
(T530) Driver for port replicator M01060 windows 7 64 bit
Hi. Where can I download a driver for the M01060 port replicator. When i attach it to the usb port, windows starts installing drivers, but reports errors with driver for ethernet and video. Keyboard and mouse works ok when attached to the port replic
-
Convert :- Minutes to Days:Hours:Minutes
Hi Friends , I want to convert the time value from MINUTE to HH : MM : SS I mean in input i have to pass 200 Minutes and in Output i want to get the no of hr and minutes in the format 03 : 20 ( HH:MM) . I have used the FM "CONVERSION_EXIT_SDURA
-
Please can you help solve the total loss adobe camera raw from my photoshop CS5.1 ? I noticed that 6.7 update was available with the patch installer. I downloaded, unzipped the files and double clicked the installed as required. message displayed to