PDA

Ver la Versión Completa : batch input a la me47


jsalinas
25/06/08, 12:42:38
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-EBELP' v_posicion.
*BEGIN MBELVEDERE 15.04.2008
* END MBELVEDERE 15.04.2008
PERFORM dynpro USING ' ' 'RM06E-ANMNG(01)' t_ofertas1-anmng.
* PERFORM dynpro USING ' ' v_anmng_batch t_ofertas1-anmng.
PERFORM dynpro USING ' ' 'RM06E-TCSELFLAG(01)' confirm.
PERFORM dynpro USING ' ' 'BDC_OKCODE' '/00'.

*Begin MNB - 03.03.2008
PERFORM dynpro USING ' ' 'EKPO-NETPR(01)' t_ofertas1-netpr.
PERFORM dynpro USING ' ' 'EKPO-ABSKZ(01)' confirm.
PERFORM dynpro USING ' ' 'BDC_OKCODE' '=KOPF'.




*Begin MNB - 03.03.2008
* PERFORM dynpro USING ' ' 'RM06E-TCSELFLAG(01)' confirm.
* PERFORM dynpro USING 'X' 'SAPMM06E' '0106'.
PERFORM dynpro USING ' ' 'BDC_OKCODE' '=BU'.
*END MNB - 03.03.2008

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.

jsalinas
25/06/08, 15:17:25
Veo que al entrar primero a la dynpro 0301 y luego a la 0323 no puedo cerrar la peticion de oferta, falta algo que me permite cerrarla que no sale con la sm35 en la grabación.

Mar_83
23/08/10, 13:39:49
Hola,

tengo un problema con esta transacción, si me podeis ayudar lo agradezco.

al hacer el batch input a la me47 con varias posiciones yo le pongo el siguiente texto:

CLEAR vl_field.
CONCATENATE 'EKPO-ABSKZ' '(' vl_tabix ')' INTO vl_field.
PERFORM bdc_field USING 'BDC_CURSOR'
vl_field.
PERFORM bdc_field USING vl_field
'X'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=BU'.

pero me da un error diciendome que para el campo EKPO-ABSKZ(3) no se permiten entradas. podríais decirme porque falla?

gracias