INSERT INTO inventory_stock ( site, bu_no, roll_no, parent_roll_no, part_no, label_type_tb, label_type, warehouse_id, location_id, batch_no, wdr, status_tb, status, first_in_date, latest_in_date, active_date, in_qty, out_qty, qty_on_hand, qty_reserved, freeze_flag, manufacture_date, expired_date, orderref1, orderref2, orderref3 ) VALUES ( #{params.site}, #{params.buNo}, #{params.rollNo}, #{params.parentRollNo}, #{params.partNo}, #{params.labelTypeTb}, #{params.labelType}, #{params.warehouseId}, #{params.locationId}, #{params.batchNo}, #{params.wdr}, #{params.statusTb}, #{params.status}, #{params.firstInDate}, #{params.latestInDate}, #{params.activeDate}, #{params.inQty}, #{params.outQty}, #{params.qtyOnHand}, #{params.qtyReserved}, #{params.freezeFlag}, #{params.manufactureDate}, #{params.expiredDate}, #{params.orderref1}, #{params.orderref2}, #{params.orderref3} ) UPDATE inventory_stock SET qty_on_hand = #{params.qtyOnHand}, in_qty = #{params.inQty}, latest_out_date = GETDATE() WHERE roll_no = #{params.rollNo} AND site = #{params.site} AND warehouse_id = #{params.warehouseId} UPDATE inventory_stock SET qty_on_hand = #{params.qtyOnHand}, in_qty = #{params.inQty}, latest_in_date = GETDATE() WHERE roll_no = #{params.rollNo} AND site = #{params.site} AND warehouse_id = #{params.warehouseId} UPDATE inventory_stock SET status = #{params.status}, status_tb = #{params.statusTb}, out_qty = ISNULL(out_qty, 0) + #{params.outQty}, qty_on_hand = 0, latest_out_date = GETDATE() WHERE roll_no = #{params.rollNo} AND site = #{params.site} AND warehouse_id = #{params.warehouseId}