‎2007 Jun 27 7:45 PM
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.
*--
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.
**--
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.
*--
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
‎2007 Jun 27 7:50 PM
‎2007 Jun 27 7:50 PM
‎2007 Jun 27 7:53 PM
Hi,
Instead of using scrolling use "place cursor" option , i think there will be button bottom of the screen 6th
a®
‎2007 Jun 27 8:07 PM
Yes there is button at the bottom of table control but how can i code that ok_code
when should it trigger, can you plz ealabrate this .
Regards ,
Francis.
‎2007 Jun 27 8:10 PM
VL01N is an EnjoySAP transaction and not well suited to batch input. See note 457925. You may run into problems with it if you try to use certain functions. You can use transaction VL01 instead.
Rob
‎2007 Jun 27 8:15 PM
Hi,
Suggested by Rob, its an enjoy sap screen., better to use Vl01 or check for some fm or BAPI.
still if you want , then ok code is POPO_T
aRs
‎2007 Jun 27 8:21 PM
HI ars,
Thanks for the reply. Ok_code for this is '=PAUA_T' but the problem is
how should i check the condition and press this ok_code.
How can i code for this ok_code.
Regards,
Reddy.
‎2007 Jun 27 8:44 PM
Hi Francis,
This way you should press page down every 9th time(Assuming that you have 10 lines in the table control.
count = 1.
loop at <your item table>.
if count = 9.
preform BDC_DYNFIELD using 'BDC_OKCODE' '<Fcode for page down>'.
count = 1.
endif.
YOur regular code to fill the table control
count = count + 1.
endloop.
REgards,
Ravi