Mandato ReturnItemUpdate
Este mandato actualiza la información sobre un artículo devuelto y puede invocarse
para varios artículos de autorización de devolución de mercancía (RMA).

Valores de los parámetros
- http://nombre_sistpral/vía de acceso/
- (Obligatorio) El nombre totalmente calificado del servidor WebSphere Commerce
y la vía de acceso de configuración.
- langId
- Establece o restaura el idioma preferido para la duración de la
sesión; los idiomas soportados para una tienda se encuentran en la tabla
STORELANG
- storeId
- (Obligatorio) El número de referencia de la tienda.
- forUser
- El ID de conexión del usuario en cuyo nombre se ejecutará el
mandato; este parámetro sólo lo puede especificar una persona con
autorización para procesar pedidos.
- forUserId
- El ID de conexión del usuario en cuyo nombre se ejecutará el mandato; este parámetro sólo
lo puede especificar una persona cuyo rol de seguridad sea Representante de servicio al
cliente. El usuario se identifica mediante un ID de usuario interno, como se encuentra
en la tabla USERS.
- creditAdjustment_i
- La cantidad en la que hay que ajustar el importe del abono del producto. El formato de este
número debe ajustarse a las normas para un objeto java.math.BigDecimal. El número
debe utilizar un punto para una posición decimal. Esta cantidad prevalecerá sobre
cualquier cantidad calculada por el mandato de tarea CalculateReturnItemAdjustmentCmd. Este
parámetro es opcional y sólo es válido si se especifica el parámetro forUser o forUserId.
- receive_i
- Especifica si la tienda debe recibir o no los componentes del artículo de devolución. Por
ejemplo, los comestibles en mal estado no hace falta devolverlos a la tienda, mientras
que un jersey sí se tiene que devolver.
- RMAItemId_i
- (Obligatorio) El identificador del artículo de RMA.
- quantity_i
- La cantidad que se devuelve.
- UOM_i
- La unidad de medida para quantity_i. Este valor debe coincidir con una de las claves
primarias de la tabla QTYUNIT. Cuando no se especifica,
se utiliza el valor de la columna QUANTITYMEASURE de la tabla CATENTSHIP
para la fila con el mismo CATENTRY_ID que el artículo de pedido, y el valor del parámetro
quantity_i se multiplica por el valor de la columna NOMINALQUANTITY
de la misma fila en la tabla CATENTSHIP.
- comment_i
- Un comentario sobre el artículo que se devuelve.
- reason_i
- La razón de la devolución, como la ha proporcionado el comprador. Este valor
se puede encontrar en la columna CODE de la tabla RTNREASON
con un tipo de razón 'B' o 'C'.
- URL
- (Obligatorio) El URL al que se debe llamar cuando el mandato se completa satisfactoriamente.
- outRMAName
- El nombre a utilizar para la pareja nombre-valor que se pasará al URL
redirigido. Este parámetro es útil para encadenar mandatos. Si este parámetro
no se especifica, entonces se utilizará "RMAId".
Ejemplo
El ejemplo siguiente actualiza el RMAItem 123 para que especifique una cantidad de devolución de 2 y
actualiza el RMAItem 456 para que especifique una cantidad de devolución de 3." Una vez completado
satisfactoriamente, se visualizará la RMA.
http://misistpral/webapp/wcs/stores/servlet/ReturnItemUpdate?RMAItemId_1=123&RMAItemId_2=456
&quantity_1=1&quantity_2=3&URL=ReturnDisplay&storeId=1
Comportamiento
- Actualiza un artículo devuelto y puede invocarse para varios artículos de RMA. Si se llama a
este mandato con varios artículos de RMA, todos los artículos de RMA deben pertenecer a la misma RMA.
- El distintivo PREPARED de la RMA se establece en 'N'. Si se especifica el parámetro forUser
o forUserId, la RMA debe iniciarse en estado 'EDT', 'PND', 'APP' y el estado se establece en 'EDT'.
De lo contrario, la RMA debe iniciarse en estado 'PRC' y el estado se cambia a 'PRC'.
- Cada artículo se procesará de la siguiente manera:
- Comprueba que los artículos de RMA no se hayan abonado previamente al cliente.
- Actualiza el artículo de RMA. Si los parámetros quantity o receive se especifican para un artículo,
se actualizan los componentes (en la tabla RMAITEMCMP).
- Si el artículo devuelto está basado en un artículo de pedido, el mandato llama al
mandato de tarea CalculateReturnItemCreditCmd
para calcular el importe del abono por omisión, y establece el importe del abono en el
artículo de RMA.
- Si el artículo devuelto está basado en una entrada de catálogo, el mandato llama al
mandato de tarea CalculateReturnItemCreditForCatEntryCmd.
- Llama al mandato de tarea AutoApproveReturnItemCmd
para ver si el artículo se aprueba automáticamente y marca el artículo de RMA como "aprobado por
el sistema" o "pendiente de aprobación", según el resultado del mandato de tarea.
- Una vez completado satisfactoriamente, establece la redirección al URL especificado.
- Llama al mandato de tarea ExtendReturnItemUpdateCmd.
Condiciones de excepción
- Si el estado de la RMA no está establecido en 'PRC' (es decir, si los parámetros forUser o forUserId
no se utilizan) o no está establecido en 'EDT', 'PND' o 'APP' (si los parámetros forUser o forUserId no se
utilizan), se genera una excepción ECApplicationException con el mensaje
_ERR_RMA_IN_INVALID_STATE_FOR_COMMAND.
- Si un artículo de RMA no está en la misma RMA que otros artículos de RMA ya procesados, se
genera una excepción ECApplicationException con el mensaje _ERR_BAD_MISSING_CMD_PARAMETER.
- Si un artículo de RMA ya se ha abonado, se genera una excepción ECApplicationException
con el mensaje _ERR_BAD_MISSING_CMD_PARAMETER.