‎2004 Oct 19 6:28 PM
I am using VL02N screen. If the line item is > 8 then I record to click on place cursor and enter the line item number. The recording is set to enter the location and the pick qty. But I think for some reason when I go back to the main screen after i position the item, it gives me an error that that there's no batch input.
Could someone please help me resolve this. I am not familiar with it. Thanks in advance.
LOOP AT t_item WHERE vbeln EQ t_header-vbeln
AND bldat EQ t_header-bldat.
ADD 1 TO w_line_cnt.
ADD 10 TO line_item.
t_item-posnr = line_item.
IF w_line_cnt > 8.
PERFORM bdc_dynpro USING 'SAPMV50A' '0111'.
PERFORM bdc_field USING 'BDC_CURSOR'
'RV50A-POSNR'.
PERFORM bdc_field USING 'RV50A-POSNR'
t_item-posnr.
PERFORM bdc_field USING 'BDC_OKCODE'
'=WEIT'.
PERFORM bdc_dynpro USING 'SAPMV50A' '1000'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LIPS-LGORT(01)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=HTRA_T'.
ENDIF.
CONCATENATE 'LIPSD-PIKMG(' w_line_cnt ')' INTO w_field.
CONCATENATE 'LIPS-LGORT(' w_line_cnt ')' INTO w_lgort.
PERFORM bdc_field USING w_lgort t_item-lgort.
PERFORM bdc_field USING w_field t_item-lfimg_e.
PERFORM bdc_field USING 'BDC_SUBSCR'
'SAPMV50A 0611SUBSCREEN_BOTTOM'.
PERFORM bdc_field USING 'BDC_SUBSCR'
'SAPMV50A 1708SUBSCREEN_ICONBAR'.
ENDLOOP.
‎2004 Oct 19 9:35 PM
It looks like at the end of your if statement you need to clear field W_LINE_CNT because you don't want your BDC to keep going to the next screen when you counter is bigger that 8. (ie when you at record 10, you don't want to go to process the action). You should do it only once every 8 records, not every time for each record starting from 8.