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: 

table cntrol handling in bdc

Former Member
0 Kudos

Hi,

i have a table cntrol on my screen on which i can see 10 records,

if the screen resolution changes or reduced where i can see only 8 records, so my question is how to handle screen resolution for table controls dynamically while uploading using bdc

5 REPLIES 5

anversha_s
Active Contributor
0 Kudos

hi shiva,

chk this link.

http://www.sap-img.com/abap/bdc-example-using-table-control-in-bdc.htm

its very helpful.

rgds

anver

if helped mark points

Former Member
0 Kudos

Hi Shiva,

For the BDC into table control, it is dependent on the transaction that you dealing with. Furthermore it can not work with those enjoy transaction start from 4.6c onwards.

For your case, you may need to get an existing function code from your screen like "Next item" or "New item" to always insert a new entry into the 1st line of the table control.

Good luck.

Former Member
0 Kudos

Hi

U can use the options defined in the dictionary type CTU_PARAMS to try to use the default size:

DATA: OPT TYPE CTU_PARAMS.

CTU_PARAMS-DEFSIZE = 'X'.

CALL TRANSACTION <TCODE> USING TAB_BDC

OPTIONS FROM OPT

.................

In this way the resolution should be the same in every screen.

If you can it'd be better you worked on top of the table control, u insert the first and second record, then place the second record to the top and place the third record in the second position of the table control, so place the third record to the top and place the 4th record in the second line and so....

In this way you use only two line of the table control and your bdc become indipendent from screen resolution.

Max

Former Member
0 Kudos

Check this 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

Former Member
0 Kudos

Hi,

The solution is as follows,

Check the table CTU_PARAMS and field DEFSIZE for setting fixed line of a table control.

CALL TRANSACTION 'VA01' USING it_bdcdata

OPTIONS FROM OPT

MESSAGES INTO it_mesg.

opt of type ctu_params.

WA_CTU_PARAMS-DISMODE = 'N'. "no screen mode

WA_CTU_PARAMS-UPDMODE = 'S'. "synchronus update

WA_CTU_PARAMS-NOBINPT = 'X'.

WA_CTU_PARAMS-NOBIEND = 'X'.

WA_CTU_PARAMS-DEFSIZE = 'X'. "Default size

Default size will play good role in terms of resoultion. in one system in table control you can see 10rows, but in others system it will show 20 records. it depends on resoultion. but when you set the default size then it will take same (default screen size) in all the systems when you run BDC.

Regards,

Senthil