Application Development and Automation 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: 
Read only

Problem in Page Scroll In BDC Batch Input

Former Member
0 Likes
1,351

HI Experts,

THis code is working fine for uploading delivery with batch split

but if my batch split are more than 9 its not kaking.

problem in page scroll in table control .

How can i code for that page scroll .

OK code for scrolling is '=PAUA_T'.

PLZ help me out how to do page scrolling in bdc batch input.

LOOP AT IHEAD.

IF IHEAD-VBELN <> DOCNO1.

V_CNT = 0.

PERFORM BDC_DYNPRO USING 'SAPMV50A' '4001'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'/00'.

PERFORM BDC_FIELD USING 'LIKP-VSTEL'

IHEAD-VSTEL.

PERFORM BDC_FIELD USING 'LV50C-DATBI'

IHEAD-DATBI.

PERFORM BDC_FIELD USING 'LV50C-VBELN'

IHEAD-VBELN.

*--


item overview--


PERFORM BDC_DYNPRO USING 'SAPMV50A' '1000'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=T\01'.

  • PERFORM BDC_DYNPRO USING 'SAPMV50A' '1000'.

  • PERFORM BDC_FIELD USING 'BDC_OKCODE'

  • '/00'.

  • PERFORM BDC_DYNPRO USING 'SAPMV50A' '1000'.

  • PERFORM BDC_FIELD USING 'BDC_OKCODE'

  • '=T\01'.

*

PERFORM BDC_FIELD USING 'BDC_CURSOR'

'LIKP-BLDAT'.

PERFORM BDC_FIELD USING 'LIKP-BLDAT'

IHEAD-BLDAT.

PERFORM BDC_FIELD USING 'BDC_CURSOR'

'LIKP-WADAT_IST'.

PERFORM BDC_FIELD USING 'LIKP-WADAT'

IHEAD-WADAT.

PERFORM BDC_FIELD USING 'LIKP-WADAT_IST'

IHEAD-WADAT_IST.

**--


PICKING--


PERFORM BDC_DYNPRO USING 'SAPMV50A' '1000'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=T\02'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'/00'.

PERFORM BDC_FIELD USING 'BDC_CURSOR'

'LIKP-KODAT'.

PERFORM BDC_FIELD USING 'LIKP-KODAT'

IHEAD-KODAT.

*--


IN PICKING EXTRASSS--


PERFORM BDC_DYNPRO USING 'SAPMV50A' '1000'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=T\03'.

PERFORM BDC_DYNPRO USING 'SAPMV50A' '1000'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'/00'.

PERFORM BDC_FIELD USING 'BDC_CURSOR'

'LIKP-LDDAT'.

PERFORM BDC_FIELD USING 'LIKP-LDDAT'

IHEAD-LDDAT.

PERFORM BDC_DYNPRO USING 'SAPMV50A' '1000'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=T\02'.

*----FOR HEADER DETAILS--


PERFORM BDC_DYNPRO USING 'SAPMV50A' '1000'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=HTEX_T'.

PERFORM BDC_DYNPRO USING 'SAPMV50A' '2000'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=TP_NEXT'.

PERFORM BDC_FIELD USING 'BDC_CURSOR'

'KUWEV-KUNNR'.

PERFORM BDC_DYNPRO USING 'SAPMV50A' '2000'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=TP_NEXT'.

PERFORM BDC_FIELD USING 'BDC_CURSOR'

'KUWEV-KUNNR'.

PERFORM BDC_DYNPRO USING 'SAPMV50A' '2000'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=TP_NEXT'.

PERFORM BDC_FIELD USING 'BDC_CURSOR'

'KUWEV-KUNNR'.

PERFORM BDC_DYNPRO USING 'SAPMV50A' '2000'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=TP_DETAIL'.

PERFORM BDC_FIELD USING 'BDC_CURSOR'

'KUWEV-KUNNR'.

PERFORM BDC_DYNPRO USING 'SAPLSTXX' '1100'.

PERFORM BDC_FIELD USING 'BDC_CURSOR'

'RSTXT-TXLINE(02)'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=TXBA'.

PERFORM BDC_FIELD USING 'RSTXT-TXLINE(02)'

IHEAD-TXLINE1.

PERFORM BDC_DYNPRO USING 'SAPLSPO1' '0100'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=YES'.

PERFORM BDC_DYNPRO USING 'SAPMV50A' '2000'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=TP_NEXT'.

PERFORM BDC_FIELD USING 'BDC_CURSOR'

'KUWEV-KUNNR'.

PERFORM BDC_DYNPRO USING 'SAPMV50A' '2000'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=TP_NEXT'.

PERFORM BDC_FIELD USING 'LV70T-SPRAS'

'EN'.

PERFORM BDC_DYNPRO USING 'SAPMV50A' '2000'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=TP_DETAIL'.

PERFORM BDC_DYNPRO USING 'SAPLSTXX' '1100'.

PERFORM BDC_FIELD USING 'BDC_CURSOR'

'RSTXT-TXLINE(02)'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=TXBA'.

PERFORM BDC_FIELD USING 'RSTXT-TXLINE(02)'

IHEAD-TXLINE2.

PERFORM BDC_DYNPRO USING 'SAPLSPO1' '0100'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=YES'.

PERFORM BDC_DYNPRO USING 'SAPMV50A' '2000'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=BACK_T'.

LOOP AT IDET.

IF IDET-VBELN = IHEAD-VBELN .

ON CHANGE OF IDET-POSNR.

V_CNT = V_CNT + 1.

PERFORM BDC_DYNPRO USING 'SAPMV50A' '1000'.

PERFORM BDC_FIELD USING 'BDC_OKCODE' '=T\02'.

CLEAR TEXT1.

CONCATENATE 'RV50A-LIPS_SELKZ(' V_CNT ')' INTO TEXT1.

PERFORM BDC_FIELD USING TEXT1

'X'.

PERFORM BDC_FIELD USING 'BDC_OKCODE' '=CHSP_T'.

perform BDC_DYNPRO using 'SAPMV50A' '3000'.

ENDON.

CNT = CNT + 1 .

CLEAR TEXT1.

CONCATENATE 'LIPS-LGORT(' CNT ')' INTO TEXT1.

PERFORM BDC_FIELD USING TEXT1

IDET-LGORT.

CLEAR TEXT1.

CONCATENATE 'LIPS-LFIMG(' CNT ')' INTO TEXT1.

PERFORM BDC_FIELD USING TEXT1

IDET-LFIMG.

CLEAR TEXT1.

CONCATENATE 'LIPS-CHARG(' CNT ')' INTO TEXT1.

PERFORM BDC_FIELD USING TEXT1

IDET-CHARG.

AT END OF POSNR.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=BACK_T'.

CNT = 0.

ENDAT.

.

ENDIF.

ENDLOOP.

DOCNO1 = IHEAD-VBELN.

PERFORM BDC_DYNPRO USING 'SAPMV50A' '1000'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'/00'.

PERFORM BDC_DYNPRO USING 'SAPMV50A' '1000'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=T\02'.

PERFORM BDC_DYNPRO USING 'SAPMV50A' '1000'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=SICH_T'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=WABU_T'.

PERFORM BDC_TRANSACTION USING 'VL01N'.

perform bdc_close_group.

Endloop.

ENDLOOP.

Regards,

Reddy.

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
1,206

Hi Francis,

In recording of BDC, it is always advisable NOT TO USE scroll functionality as it depends upon what screen size (800X600 or 1200X1024 or something else) user has selected.

What you need to do here is,

Use '+' button given below in the VL01N transaction. The F-Code for that is 'POAN_T'. So here, you need to add one item at a time and press this button and so that you will always need to add the new row at the second line as the previous all the lines will be scrolled above by SAP.

Please let me know if you still find any issue.

Thanks & Regards,

Sandip Kamdar

5 REPLIES 5
Read only

Former Member
0 Likes
1,206

Hi Francis,

This is very tough to tell without being on a system. You have to record the transaction in such a way that you enter one line item in the table control and press page down, whether there are empty lines or not. This way, the cursor will always be on the first/ second line.

Or look for some button which would let your item data in a separate screen for each item, that way y ou don't affectted by the table control.

Regards,

Ravi

Read only

Former Member
0 Likes
1,206

I do not know see refresh bdcdata in your code ..

We have BAPI/FM for Delivery ,why are you using BDC..

Thanks

Seshu

Read only

Former Member
0 Likes
1,206

Hi,

Better way is record the bdc and when table control comes enter first line of data and press enter and then enter the second line and save it.

now make two internal tables or more depending on ur table control.

and keep the line items data in a loop and keep all the bdc table prepare data for the table control inside it.

and then call ur transaction and keep refreshing the bdcdata as the new data will be filled in the secodn time.

Regards,

sasi

Read only

Former Member
0 Likes
1,207

Hi Francis,

In recording of BDC, it is always advisable NOT TO USE scroll functionality as it depends upon what screen size (800X600 or 1200X1024 or something else) user has selected.

What you need to do here is,

Use '+' button given below in the VL01N transaction. The F-Code for that is 'POAN_T'. So here, you need to add one item at a time and press this button and so that you will always need to add the new row at the second line as the previous all the lines will be scrolled above by SAP.

Please let me know if you still find any issue.

Thanks & Regards,

Sandip Kamdar

Read only

Former Member
0 Likes
1,206

Hi Francis,

I also feel that what sundeep has suggested is correct.

But still if you want to go with your scrolling. You need to take care about the screen resolution problem.

1. while recording ensure that it is in default size. Just ensure the check box is checked or not.

2. while processing means if call transaction use ctu_params structure and make defsize eq 'X'.

3. If it is session method just ensure that dynpro standard size check box is checked or not.

This way you can overcome screen resolution problem.

Award points if useful otherwise do getbk to me.

Aleem.