Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

bdc table control

Former Member
0 Kudos

i am working on me47

i am facing problem when line items more than 15 in table control. how i can maintain cursor logic

bcoz.. resolution is 15..

how i can generalize

6 REPLIES 6

ferry_lianto
Active Contributor
0 Kudos

Hi,

"CTU_PARMS will force the BDC to use the standard default screen size (rather than being dynamic based on the user's settings. I think I explained that right, but all I know is that it keeps the BDC from behaving differently between users and makes things more consistent for coding logic".

Here's an example (note that DEFSIZE is the key to the solution here):

data: begin of tran_opts,

dismode type ctu_params-dismode value 'N',

updmode type ctu_params-updmode value 'S',

cattmode type ctu_params-cattmode,

defsize type ctu_params-defsize value 'X',

racommit type ctu_params-racommit,

nobinpt type ctu_params-nobinpt,

nobiend type ctu_params-nobiend,

end of tran_opts.

call transaction 'F-02'

using bdcdata

options from tran_opts

messages into bdc_messages

Hope this will help.

Regards,

Ferry Lianto

0 Kudos

is it enough if i set this parameter

ctu_params-defsize as 'X'

apart from this i have to do any thing else...

please give reply its very urgent for me...

Former Member
0 Kudos

At the bottom of the screen, there is an item filed RM06E-EBELP. You should be able to enter the last number maintained. That will bring it to the top. You can then enter new data on the next line or change the data on that one.

Rob

Former Member
0 Kudos

Default size can be maintained 'X' in the options of the following code. Then irrespective of the resolution same number of lines will be displayed.

Then loop the internal table with the fixed number of lines visible on screen.

call transaction 'ME47'

using bdcdata

options from opts

messages into msgtab.

Or

data : v_lines type i.

v_lines = sy-srows - (number of lines visible on screen).

Any point of time v_lines will be equal to number of lines visible on screen irrespective of resolution.

loop the internal table with v_lines times.

Regards,

Siva

Former Member
0 Kudos

HI,

data: begin of Tab_con_opr, 
dismode  type ctu_params-dismode value 'N', 
updmode  type ctu_params-updmode value 'S', 
cattmode type ctu_params-cattmode, 
defsize  type ctu_params-defsize value 'X', 
racommit type ctu_params-racommit, 
nobinpt  type ctu_params-nobinpt, 
nobiend  type ctu_params-nobiend, 
end of Tab_con_opr.

call transaction 'ZTEST'
using bdcdata
<b>options from Tab_con_opr</b>
messages into bdc_messages

Hope you understand

Regards

Sudheer

Former Member
0 Kudos

Similar situation was handled,try to check this method.

If suppose ur table control fits 7 line items, then u have to handle the records from 8 the record.

For example,

ADD 1 TO w_line_i.

IF w_line_i > 7.

w_line_i = 1.

PERFORM bdc_dynpro USING 'SAPMM07M' '0421'.

PERFORM bdc_field USING 'BDC_OKCODE' '=NP'.

ENDIF.

Set a flag once the line item are greater than 7.

Regards