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: 

Facing the problem with BDC Table control resolutions.

Former Member
0 Kudos

Daer friends,

Facing the problem with BDC Table control resolutions.

i am having 19 recors in my internal table and as per my screen resolutions table control is displaying with 18 rows.

I am using the logic with if lineitem > 18 then page down...its working fine.

but if screen resoluton is chaged to less then 18 (say 14) then it is not working....how to capture the screen resolution dynamicaly? so that i can it with if condition( in place where lineeitem > my screen ressolution)

Thanks

Sridhar

3 REPLIES 3

Former Member
0 Kudos

Sridhar,

While calling the transaction use call transaction tcode using i_bdcdata options from opt message into i_messages.

data: lws_cnt type char2,

lws_field type char15.

LOOP AT i_invoicing_plan INTO wa_invoicing_plan.

lws_cnt = sy-tabix.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

EXPORTING

input = lws_cnt

IMPORTING

output = lws_cnt .

CONCATENATE 'FPLT-AFDAT(' lws_cnt ')' INTO lws_field.

CONCATENATE wa_invoicing_plan-date+6(2)

wa_invoicing_plan-date+4(2)

wa_invoicing_plan-date+0(4) INTO lws_date

SEPARATED BY '.'.

PERFORM bdc_field USING lws_field lws_date.

CONCATENATE 'FPLT-FPROZ(' lws_cnt ')' INTO lws_field.

lws_perct = wa_invoicing_plan-percentage.

CONDENSE lws_perct.

PERFORM bdc_field USING lws_field lws_perct.

ENDLOOP.

While calling the transaction give like this:

<b>DATA: opt TYPE ctu_params.

opt-dismode = 'N'.

opt-updmode = 'A'.

opt-defsize = 'X'.

CALL TRANSACTION tcode

USING i_bdcdata OPTIONS FROM opt MESSAGES INTO i_messages.

LOOP AT i_messages.

ENDLOOP.</b>

Prakash.

0 Kudos

Hi,

another way to solve the problem is use the "plus" button.

Usually in standard trasactions u can add new lines (=new positions) just pressing the button with a green plus symbol.

So if u input a value in the second line of the table,and press the button "add line", the value already entered is grey-out and copy on the first row of the table, and u have the second row free to input new data.

In this way, u don't have to count the index of the line, just use alway index 02.

Hope this hints will help u

Bye

Andrea

Pls rewad if it Helps

Former Member
0 Kudos

Hello,

A similar case was handlee, check it may help u.

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