Les paso un batch que tiene problemas, cuando lo proceso por la sm35 funciona excelente pero cuando lo paso al programa no me cierra la peticion de oferta, les cuento que originalmente lo había hecho que entre a la dynpro
0305 (pantalla principal sm35) y luego a la 0323 y finalizando en la 0301 y así funciona, pero no me sirve por que debo primero entrar a la 0301 para poder cambiar la moneda en la peticion de oferta y luego poner los precios en cada item les paso el codigo del batch, si alguien me ayuda le agradeceria.
FORM f_batch_input_me47.
DATA: confirm TYPE c.
DATA: fecha(8) TYPE c.
confirm = 'X'.
CONCATENATE sy-datum+6(2) sy-datum+4(2) sy-datum(4) INTO fecha.
* PRIMER PANTALLA
PERFORM dynpro USING 'X' 'SAPMM06E' '0305'.
PERFORM dynpro USING ' ' 'BDC_OKCODE' '/00'.
PERFORM dynpro USING ' ' 'RM06E-ANFNR' t_ofertas1-ebeln.
PERFORM dynpro USING 'X' 'SAPMM06E' '0301'.
PERFORM dynpro USING ' ' 'BDC_OKCODE' '/00'.
PERFORM dynpro USING ' ' 'EKKO-WAERS' T_OFERTAS1-WAERS.
PERFORM dynpro USING ' ' 'BDC_OKCODE' '=BU'.
* VALOR OFERTADO
PERFORM dynpro USING 'X' 'SAPMM06E' '0323'.
* CANTIDAD DE PETICION DE OFERTA
PERFORM dynpro USING ' ' 'BDC_CURSOR' 'RM06E-EBELP'.
PERFORM dynpro USING ' ' 'RM06E-EBELP' v_posicion.
PERFORM dynpro USING ' ' 'BDC_OKCODE' '/00'.
PERFORM dynpro USING 'X' 'SAPMM06E' '0323'.
PERFORM dynpro USING ' ' 'BDC_CURSOR' 'RM06E-ANMNG(01)'.
PERFORM dynpro USING ' ' 'RM06E-ANMNG(01)' t_ofertas1-anmng.
PERFORM dynpro USING ' ' 'RM06E-TCSELFLAG(01)' confirm.
PERFORM dynpro USING ' ' 'BDC_OKCODE' '/00'.
PERFORM dynpro USING ' ' 'EKPO-NETPR(01)' t_ofertas1-netpr.
PERFORM dynpro USING ' ' 'EKPO-ABSKZ(01)' confirm.
PERFORM dynpro USING ' ' 'BDC_OKCODE' '=KOPF'.
PERFORM dynpro USING ' ' 'BDC_OKCODE' '=BU'.
PERFORM dynpro USING 'X' 'SAPLSPO1' '0300'.
PERFORM dynpro USING ' ' 'BDC_OKCODE' '=YES'.
PERFORM call_transaction USING 'ME47'.
ENDFORM. "f_batch_input_me47
FORM f_batch_input_me47_2.
Cualquier duda avisame.
0305 (pantalla principal sm35) y luego a la 0323 y finalizando en la 0301 y así funciona, pero no me sirve por que debo primero entrar a la 0301 para poder cambiar la moneda en la peticion de oferta y luego poner los precios en cada item les paso el codigo del batch, si alguien me ayuda le agradeceria.
FORM f_batch_input_me47.
DATA: confirm TYPE c.
DATA: fecha(8) TYPE c.
confirm = 'X'.
CONCATENATE sy-datum+6(2) sy-datum+4(2) sy-datum(4) INTO fecha.
* PRIMER PANTALLA
PERFORM dynpro USING 'X' 'SAPMM06E' '0305'.
PERFORM dynpro USING ' ' 'BDC_OKCODE' '/00'.
PERFORM dynpro USING ' ' 'RM06E-ANFNR' t_ofertas1-ebeln.
PERFORM dynpro USING 'X' 'SAPMM06E' '0301'.
PERFORM dynpro USING ' ' 'BDC_OKCODE' '/00'.
PERFORM dynpro USING ' ' 'EKKO-WAERS' T_OFERTAS1-WAERS.
PERFORM dynpro USING ' ' 'BDC_OKCODE' '=BU'.
* VALOR OFERTADO
PERFORM dynpro USING 'X' 'SAPMM06E' '0323'.
* CANTIDAD DE PETICION DE OFERTA
PERFORM dynpro USING ' ' 'BDC_CURSOR' 'RM06E-EBELP'.
PERFORM dynpro USING ' ' 'RM06E-EBELP' v_posicion.
PERFORM dynpro USING ' ' 'BDC_OKCODE' '/00'.
PERFORM dynpro USING 'X' 'SAPMM06E' '0323'.
PERFORM dynpro USING ' ' 'BDC_CURSOR' 'RM06E-ANMNG(01)'.
PERFORM dynpro USING ' ' 'RM06E-ANMNG(01)' t_ofertas1-anmng.
PERFORM dynpro USING ' ' 'RM06E-TCSELFLAG(01)' confirm.
PERFORM dynpro USING ' ' 'BDC_OKCODE' '/00'.
PERFORM dynpro USING ' ' 'EKPO-NETPR(01)' t_ofertas1-netpr.
PERFORM dynpro USING ' ' 'EKPO-ABSKZ(01)' confirm.
PERFORM dynpro USING ' ' 'BDC_OKCODE' '=KOPF'.
PERFORM dynpro USING ' ' 'BDC_OKCODE' '=BU'.
PERFORM dynpro USING 'X' 'SAPLSPO1' '0300'.
PERFORM dynpro USING ' ' 'BDC_OKCODE' '=YES'.
PERFORM call_transaction USING 'ME47'.
ENDFORM. "f_batch_input_me47
FORM f_batch_input_me47_2.
Cualquier duda avisame.