Ver Mensaje Individual
  #1  
Viejo 30/07/09, 17:39:33
marva300 marva300 is offline
Junior Member
 
Fecha de Ingreso: jun 2009
Mensajes: 6
Como Grabar ??

Miren son soy nuevo en esto de Abap y me han dicho que agregue un campo a una dympro ya lo hice pero cuando busco una tabla interna para agregarle el campo nuevo no lo veo no entiendo el codigo de grabar el cual es este

FORM grabar .

DATA: l_lin(6) TYPE n,
l_cont(6) TYPE n,
l_budat TYPE d,
l_bldat TYPE d,
l_erfmg(15) TYPE c.
CLEAR: it_messtab, it_bdc_tab, l_budat, l_bldat.
REFRESH: it_messtab, it_bdc_tab.

DESCRIBE TABLE it_detalle LINES l_lin.

CONCATENATE g_budat+6(2) g_budat+4(2) g_budat(4) INTO l_budat.
CONCATENATE g_bldat+6(2) g_bldat+4(2) g_bldat(4) INTO l_bldat.

PERFORM bdc_dynpro USING :
'X' 'SAPMM07M' '0300',
' ' 'BDC_OKCODE' '=NFPL',
' ' 'MKPF-BLDAT' l_bldat,
' ' 'MKPF-BUDAT' l_budat,
' ' 'RM07M-BWARTWE' '101',
' ' 'XFULL' 'X',
' ' 'RM07M-XNAPR' 'X',
' ' 'RM07M-WVERS2' 'X',
' ' 'RM07M-XNUVO' 'X'.
* ' ' 'RM07M-AUFNR' g_aufnr.

PERFORM bdc_dynpro USING :
'X' 'SAPMM07M' '1301',
' ' 'BDC_OKCODE' '=SP',
' ' 'RM07M-BWARTWE' '101',
' ' 'RM07M-AUFNR(01)' g_aufnr,
' ' 'RM07M-AUFPS(01)' '0001'.


g_repid = sy-repid.
EXPORT g_repid TO MEMORY ID 'G_REPID_ID'. "'g_repid_id'.
EXPORT g_nrop TO MEMORY ID 'G_NROP_ID'. "'g_nrop_id'.
EXPORT g_nroc TO MEMORY ID 'G_NROC_ID'. "'g_nroc_id'.
EXPORT it_detalle TO MEMORY ID 'IT_TABLA'. "'it_tabla'.
EXPORT g_tipo TO MEMORY ID 'G_TIPO_ID'. "'g_tipo_id'.
LOOP AT it_detalle INTO w_detalle.

l_cont = l_cont + 1.

l_erfmg = w_detalle-erfmg.
CONDENSE l_erfmg.

IF l_cont EQ l_lin.

PERFORM bdc_dynpro USING :
'X' 'SAPMM07M' '0310',
' ' 'BDC_OKCODE' '=SEUB',
' ' 'MSEG-ERFMG' l_erfmg,
* ' ' 'MSEG-ERFME' w_detalle-erfme,
' ' 'MSEG-LGORT' g_lgort,
' ' 'MSEG-CHARG' w_detalle-charg,
' ' 'DM07M-HSDAT_INPUT' l_budat.

PERFORM bdc_dynpro USING :
'X' 'SAPMM07M' '0321',
' ' 'BDC_OKCODE' '=BU'.

ELSE.

PERFORM bdc_dynpro USING :
'X' 'SAPMM07M' '0310',
' ' 'BDC_OKCODE' '=SEUB',
' ' 'MSEG-ERFMG' l_erfmg,
* ' ' 'MSEG-ERFME' w_detalle-erfme,
' ' 'MSEG-LGORT' g_lgort,
' ' 'MSEG-CHARG' w_detalle-charg,
' ' 'DM07M-HSDAT_INPUT' l_budat.

PERFORM bdc_dynpro USING :
'X' 'SAPMM07M' '0321',
' ' 'BDC_OKCODE' '=NFPL'.

PERFORM bdc_dynpro USING :
'X' 'SAPMM07M' '1301',
' ' 'BDC_OKCODE' '=SP',
' ' 'RM07M-BWARTWE' '101',
' ' 'RM07M-AUFNR(01)' g_aufnr,
' ' 'RM07M-AUFPS(01)' '0001'.

ENDIF.

ENDLOOP.
* Batch Input CALL TRANSACTION
g_mode = 'N'.
* Llamada a Transaccisn Via Batch Input
CALL TRANSACTION 'MB31' USING it_bdc_tab
MODE g_mode
UPDATE g_update
MESSAGES INTO it_messtab.
* Error Durante Call Transaction
IF sy-subrc EQ 0 .
CLEAR: g_mensaje.
PERFORM g_message_transform USING g_mensaje.
MESSAGE g_mensaje TYPE 'I'.
ELSE.
CLEAR: g_mensaje.
PERFORM g_message_transform USING g_mensaje.
MESSAGE g_mensaje TYPE 'I'.
ENDIF.

ENDFORM.


espero que me puedan ayudar
Responder Con Cita