Ver Mensaje Individual
  #1  
Viejo 24/11/14, 22:32:44
edelgadoc edelgadoc is offline
Member
 
Fecha de Ingreso: mar 2010
Mensajes: 46
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_MAINTAIN")
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")
Responder Con Cita