2005 Nov 22 3:48 AM
Hi,
I have created one table control in dialog program.
When i am entering the data in one of the columns,after press enter, the data is getting lost.What might be the reason?Do i need to change the properties in table control column?
points guaranteed.
Kaki
may be you missed to update the table control internal to update in the PAI.
Check PAI of screen
LOOP WITH CONTROL FLIGHTS.
module read_table_control.
ENDLOOP.
Like below you should update the internal table of table control.
MODULE read_table_control INPUT.
lines = sy-loopc.
MODIFY itab FROM demo_conn INDEX flights-current_line.
ENDMODULE.
For more detail see example prg DEMO_DYNPRO_TABCONT_LOOP
2005 Nov 22 3:53 AM
may be you missed to update the table control internal to update in the PAI.
Check PAI of screen
LOOP WITH CONTROL FLIGHTS.
module read_table_control.
ENDLOOP.
Like below you should update the internal table of table control.
MODULE read_table_control INPUT.
lines = sy-loopc.
MODIFY itab FROM demo_conn INDEX flights-current_line.
ENDMODULE.
For more detail see example prg DEMO_DYNPRO_TABCONT_LOOP
2005 Nov 22 5:06 AM
hi veera,
Still i did not get the solution.
Iam getting the error "invalid field format(screen error)"
cheers
kaki
Message was edited by: Kaki R
2005 Nov 22 5:25 AM
hi,
if you don't mind can you send you r code.
check the values that your entering .
regards,
manohar.
2005 Nov 22 5:44 AM
Hi,
In the table control(screen 2000) i have 4 columns.Two columns are getting filed while coming from screen 1000 to 2000.In another 2 columns are empty and user will enter the data.While entering ex:12345,and when press enter, the data is going...
PROCESS BEFORE OUTPUT.
MODULE STATUS_2000.
MODULE INIT_SODET.
loop at t_det with control sodet cursor sodet-current_line.
module DISPLAY_SODET.
endloop.
PROCESS AFTER INPUT.
MODULE USER_COMMAND_2000.
LOOP.
module assign_sel.
ENDLOOP.
module set_line.
2005 Nov 22 5:59 AM
Hi ,
Chnage the PAI module as follow, hope that will work-->
let me assume the name of input fields your table control :input_field1,input_field2
PROCESS AFTER INPUT.
MODULE USER_COMMAND_2000.
LOOP AT t_det
FIELD t_det-input_field1
Module get_colinfo ON REQUEST.
FIELD t_det-input_field2
Module get_colinfo ON REQUEST.
ENDLOOP.
module set_line.
double click on Module get_colinfo.
and define this in ANY INCLUDE AS:
MODULE get_colinfo INPUT.
MODIFY t_det
FROM t_det
INDEX sodet-current_line
TRANSPORTING input_field1input_field2.(your table_control input fields name )
ENDMODULE.
it works..
plz reward points if it helps you.
Message was edited by: Anid
2005 Nov 22 6:31 AM
HI,
I think you are getting that values into table control
inside the module status_2000.
because of these it is refreshing your table control everytime.
in transaction once PAI is completed it goes to PBO
so if you r getting the values in the internal table inside the PBO of screen 2000, you will get such problems
just put a flag.
regards,
manohar.
2005 Nov 22 5:12 AM
2005 Nov 22 6:16 AM
Try this:
In the code posted by you just use this line inside the module assign_sel
MODIFY T_DET INDEX SODET-CURRENT_LINE.
Also try this:
Move line 'MODULE USER_COMMAND_2000.' below the LOOP/Endloop in the PAI.
Message was edited by: Sudhir Bhate
| User | Count |
|---|---|
| 6 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |