En
Oracle Inventory podemos realizar pedidos de Movimiento de una organización de Inventarios
a otro. Una vez aprobado y transaccionado se genera movimientos de material por
la transacción, Las siguientes tablas se utilizan en el proceso de Pedidos de
Movimiento.
MTL_TXN_REQUEST_HEADERS: Tabla donde se localiza la cabecera de los
pedidos de movimientos donde se almacena el número de Pedido de movimiento en
la columna (REQUEST_NUMBER). Tiene un estado, pero esto no se utiliza tanto
como el estado de las líneas para conducir la funcionalidad.
MTL_TXN_REQUEST_LINES: Tabla donde se localiza las línea de los
pedidos de Movimiento, este es el que impulsa más consultas y comprobaciones de
estado del pedido de movimiento, ya que cada línea puede ser transaccionado de
forma individual.
MTL_MATERIAL_TRANSACTIONS_TEMP: Tabla temporal de transacciones de material
también llamado la tabla de transacción temporal,
esto retiene las asignaciones que actúan como reservas de inventario. Una
asignación es donde tienes que elegir un artículo específico en el inventario
hasta el lote, localizador, serial, revisión de movimiento, pero no se realiza
en realidad el movimiento.
MTL_MATERIAL_TRANSACTIONS: Tabla que almacena un registro de cada
transacción de materiales o de cada actualización
de costos realizado en Inventarios. La columna move_order_line_id contiene el
id d la línea del pedido de movimiento transaccionado.
1. Cuando se crea el
pedido de movimiento se tiene los siguientes valores:
Quantity: 10
Quantity_Delivered: NULL
Quantity_Detailed: NULL
Required_ Quantity: NULL
Line_Status: 1 (Incompleto)
Quantity_Delivered: NULL
Quantity_Detailed: NULL
Required_ Quantity: NULL
Line_Status: 1 (Incompleto)
2. Cuando se aprueba el pedido de movimiento se tiene los siguientes
valores:
Quantity: 10
Quantity_Delivered: NULL
Quantity_Detailed: NULL
Required_ Quantity: NULL
Line_Status: 3 (Aprobado)
Quantity_Delivered: NULL
Quantity_Detailed: NULL
Required_ Quantity: NULL
Line_Status: 3 (Aprobado)
3. Cuando se asigna el pedido de movimiento se tiene los siguientes
valores:
Quantity: 10
Quantity_Delivered: NULL
Quantity_Detailed: 10
Required_ Quantity: NULL
Line_Status: 3 (Aprobado)
Quantity_Delivered: NULL
Quantity_Detailed: 10
Required_ Quantity: NULL
Line_Status: 3 (Aprobado)
4. Cuando se transacciona el pedido de movimiento se tiene los siguientes valores:
Quantity: 10
Quantity_Delivered: 10
Quantity_Detailed: 10
Required_ Quantity: NULL
Line_Status: 5 (Cerrado)
Quantity_Delivered: 10
Quantity_Detailed: 10
Required_ Quantity: NULL
Line_Status: 5 (Cerrado)
NOTA: Cuando un pedido de movimiento se asigna, se inserta un registro correspondiente en la tabla de pendientes MTL_MATERIAL_TRANSACTIONS_TEMP. Cuando el pedido de movimiento se transacciona, el registro se mueve de la tabla pendiente a la tabla histórica MTL_MATERIAL_TRANSACTIONS.
a) Ejemplo de consulta para enlazar pedidos de movimiento con la tabla pendientes:
SELECT mmtt.transaction_temp_id,
tol.organization_id,
toh.request_number,
toh.header_id,
tol.line_number,
tol.line_id,
tol.inventory_item_id,
toh.description,
toh.move_order_type,
tol.line_status,
tol.quantity,
tol.quantity_delivered,
tol.quantity_detailed
FROM mtl_txn_request_headers toh,
mtl_txn_request_lines tol,
mtl_material_transactions_temp mmtt
WHERE toh.header_id = tol.header_id
AND
toh.organization_id = tol.organization_id
AND tol.line_id = mmtt.move_order_line_id;
b) Ejemplo de consulta que une MTL_MATERIAL_TRANSACTIONS a la orden de movimiento:
SELECT mmt.transaction_id,
tol.organization_id,
toh.request_number,
toh.header_id,
tol.line_number,
tol.line_id,
tol.inventory_item_id,
toh.description,
toh.move_order_type,
tol.line_status,
tol.quantity,
tol.quantity_delivered,
tol.quantity_detailed
FROM mtl_txn_request_headers toh,
mtl_txn_request_lines tol,
mtl_material_transactions mmt
WHERE toh.header_id = tol.header_id
AND
toh.organization_id = tol.organization_id
AND
tol.line_id = mmt.move_order_line_id
AND toh.request_number = '&PedidoMovimiento';
La tabla de pedidos
de movimientos (MTL_TXN_REQUEST_LINES) proporciona el estado del pedido en la columna
de la LINE_STATUS como numérico. A continuación se enumeran los diferentes
estados y de los códigos:
1 Incompleto
2 Aprobación
Pendiente
3 Aprobado
4 No
Aprobado
5 Cerrado
6
Cancelado
7
Pre-Aprobado
8
Parcialmente Aprobado
9
Cancelado por Origen
Estos se pueden encontrar en el lookup MTL_TXN_REQUEST_STATUS:
Buen aporte gracias crack ;)
ResponderEliminar