MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   Mensaje en BAPI de OM (foro/showthread.php?t=73010)

edelgadoc 24/11/14 22:33:29

Mensaje en BAPI de OM
 
Buenas tardes, estoy tratando de actualizar el estado de una orden de mantenimiento mediante la funcion BAPI_ALM_ORDER_MAINTAIN

Por la transaccion SE37 lo realiza correctamente, pero cuando hago lo mismo desde un programa externo me sale el siguiente error : "El status de usuario REVI no existe para el esquema de status PMST_ORD."

REVI es el estado que quiero actualizar y como digo, si lo ejecuto desde la SE37 (utilizando la misma informacion de input) o por la transaccion IW38 funciona sin problema.
Alguien conoce que puede estar pasando?

Dim sd As IRfcFunction = repositorio.CreateFunction("BAPI_ALM_ORDER_MAINTAI N")
OM = Me.gvOrdenMante.DataKeys(Fila.RowIndex).Item("OM")
Dim IRfcMetodo As IRfcTable = sd.GetTable("IT_METHODS")
Dim IRfcEstatus As IRfcTable = sd.GetTable("IT_USERSTATUS")

IRfcMetodo.Append()
IRfcMetodo.SetValue("REFNUMBER", "000001")
IRfcMetodo.SetValue("OBJECTTYPE", "USERSTATUS")
IRfcMetodo.SetValue("METHOD", "CHANGE")
IRfcMetodo.SetValue("OBJECTKEY", OM)
IRfcMetodo.Append()
IRfcMetodo.SetValue("REFNUMBER", "000002")
IRfcMetodo.SetValue("METHOD", "SAVE")
IRfcMetodo.SetValue("OBJECTKEY", OM)

IRfcEstatus.Append()
IRfcEstatus.SetValue("USER_ST_TEXT", "REVI")
IRfcEstatus.SetValue("LANGU", "ES")
IRfcEstatus.SetValue("CHANGE_EVENT", "00")

sd.Invoke(ConxSap)

Dim IRfcResultado As IRfcTable = sd.GetTable("RETURN")

edelgadoc 27/11/14 18:51:51

Amigos, para comentarles que encontre otra BAPI, mucho mas simple, que realiza lo mismo (cambiar de estado); y con el cual no tuve problema: BAPI_ISUSMORDER_USERSTATUSSET

Saludos.


Husos Horarios son GMT. La hora en este momento es 13:06:32.

www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web