BAPI_PO_CHANGE no aplica por posicion
Hola todos! Tengo una BAPI que deberia modificar solamente una posicion de la tabla ekpo pero no esta funcionando y esta modificando el campo BSGRU de las posiciones que repiten el material. el Codigo es el siguiente:
----------------------- DATA: t_POITEM LIKE BAPIMEPOITEM OCCURS 0 WITH HEADER LINE, t_POITEMx LIKE BAPIMEPOITEMx OCCURS 0 WITH HEADER LINE, l_flag(1), flag_exebapi(1), g_text(50) TYPE c. LOOP AT it_ekpo. READ TABLE it_ekbe WITH KEY ebeln = it_ekpo-ebeln ebelp = it_ekpo-ebelp. flag_exebapi = 'N'. IF SY-SUBRC = 4. WRITE: / ' NINGUN REGISTRO ENCONTRADO ', it_ekpo-ebeln, ' POSICION: ', it_ekpo-ebelp, ' MAT.: ',it_ekpo-matnr. flag_exebapi = 'S'. ELSE. IF it_ekpo-menge > it_ekbe-menge. WRITE: / ' REGISTRO CON DIFERENCIA: ', it_ekpo-ebeln, ' POSICION: ', it_ekpo-ebelp, ' cant_ekpo: ',it_ekpo-MENGE, ' vrs Cant_ekbe: ', it_ekbe-menge. flag_exebapi = 'S'. ELSE. WRITE: / ' REGISTRO ENCONTRADO: ', it_ekpo-ebeln, ' POSICION: ', it_ekpo-ebelp, ' cant ',it_ekpo-MENGE, ' versus ', it_ekbe-menge. flag_exebapi = 'N'. ENDIF. ENDIF. IF flag_exebapi = 'S'. " Ejecuta la bapi para actualizar el registro. *------------------------------------------------- clear t_poitem. * * perform move_to_bapi. t_POITEM-po_item = it_ekpo-ebelp. t_POITEM-order_reason = '100'. APPEND t_poitem. clear t_poitemx. t_POITEMx-po_item = it_ekpo-ebelp. t_POITEMx-po_itemx = 'X'. t_POITEMx-order_reason = '100'. APPEND t_poitemx. CALL FUNCTION 'BAPI_PO_CHANGE' EXPORTING purchaseorder = it_ekpo-ebeln TABLES POITEM = t_POITEM POITEMx = t_POITEMx. CALL FUNCTION 'BAPI_TRANSACTION_COMMIT' EXPORTING wait = 'X'. *------------------------------------------------ ENDIF. ENDLOOP. Que tendre malo que no modifica por posicion? |
Alguien que sepa como resolver este problema?
|
Buena tarde
En la asignacion de valor que estas haciendo para el campo t_POITEMx-order_reason = '100'. esta mal. en esta tabla informas que campo es el que se modifica debes enviarlo t_POITEMx-order_reason = 'X'. Intenta y me comentas si no te funciona. |
Husos Horarios son GMT. La hora en este momento es 05:04:29. |
www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web