Partially cancel confirmation relating to WM

Hi all,
Please help with this business case:
After confirming a process order, components are auto GI from Production Sloc, stock is auto GR into Finished Goods (FG) Sloc; a TO is auto created and auto confirm with 2 Storage Unit (SU) 1001 & 1002, from Storage type 901 to s.type 302 in FG Warehouse.
Then we transfer these two pallets to BoF Warehouse and export pallet 1001 to another plant, pallet 1002 stays in BoF WH.
Afterward, we find that pallet 1002 was over - confirmed, and need to be canceled.
The problem is we cannot pull pallet 1001 back because it's already received by another plant, so we can only partially cancel confirmation of pallet 1002.
My question is: Is it possible to partially cancel confirmation for pallet 1002? if yes, how to do that?
Thank you very much,
Duc.

Hi Mario,
Actually I cannot fully understand your answer. I've tested this way:
1/ using COR6N (as we previously confirmed by COR6N), yield qty = qty in 1 pallet, change 101 to 102 for finished goods & all components, then post.
2/ Manually reverse the GI of components that were not backflushed
3/ After step 1, a TR is auto created. Create TO from this TR, storage unit number = SU number we want to cancel. This TO is auto confirmed after creation. After this step, stock has already been adjusted at WM level.
Using this way,  stock of FG & components at IM and WM level are okey. It's seem that there's no problem, which mean we can use this procedure to cancel partially.
Is there any thing risk when using this? Do you have any advise?
Regards,
Ba Duc.

Similar Messages

  • Cancel Confirmations for Limits Orders in SRM.

    We are able to Create Confirmations in SRM for Limit orders and It creates a service entry sheet in ECC with Mvmt Type 101.. When we try to cancel these Confirmations from SRM. It a creates a Cancellation document in SRM but it doesnu2019t flow to ECC.. when Checked in the Shopping cart Related documents it is found that the Qty is getting added up even for cancelled Confirmation which got created.
    We are looking for Solution if we cancel the limit order confirmation from SRM , it should cancel the service entry sheet posted in backend ECC..
    And we will be doing confirmations/Cancellations only from SRM
    Please help us with your responses.. we are on SRM 7.0 EHP 1 .

    Hello,
    We have faced same issue in SRM 5.0
    We created a custom program for it using RFC FM BBP_entrysheet_cancel  we have to cancel the Entry sheet in  backend.
    Regards,
    Neelima

  • Partial Pick Confirming Sales Order

    Hi Folks,
    I have a requirement where I have to Pick Confirm and Ship confirm Sales Order through API.
    1. When the quantites to be picked are same as quantity ordered the code seems to work just fine.
    But suppose in my example my quantity in SO line is 50 and I want to partially Ship confirm the lines lets say 20 quantites.
    then which API i need to use?
    The approach I am following is while pick confirming I am passing 20 quantites only and the ship confirming it.
    I researched and found that we can use the following API to update shipping attributes 'WSH_DELIVERY_DETAILS_PUB.Update_Shipping_Attributes' but when I run it (I tried before and after Pick confirm) the API runs fine but no changes are getting affected and the code Pick confirms all the quantity.
    Could some please help me with this.
    Please find the codes for pick confirm and updating shipping attributes
    Pick confirm code
    DECLARE
      lv_order_num        number := 700145812;
      vMoveOrderLineId    NUMBER;
      p_pick_conf_qty     NUMBER;
      pStatus             VARCHAR2(100);
      pMsgData            VARCHAR2(4000);
      v_movehdr_rec       INV_MOVE_ORDER_PUB.TROHDR_REC_TYPE;
      v_movehdr_val_rec   INV_MOVE_ORDER_PUB.TROHDR_VAL_REC_TYPE;
      v_moveln_tbl        INV_MOVE_ORDER_PUB.TROLIN_TBL_TYPE;
      v_moveln_tbl_p      INV_MOVE_ORDER_PUB.TROLIN_TBL_TYPE;
      v_moveln_zero_tbl   INV_MOVE_ORDER_PUB.TROLIN_TBL_TYPE;
      v_moveln_zero_tbl_p INV_MOVE_ORDER_PUB.TROLIN_TBL_TYPE;
      v_moveln_tbl_d      INV_MOVE_ORDER_PUB.TROLIN_TBL_TYPE;
      v_moveln_tbl_o      INV_MOVE_ORDER_PUB.TROLIN_TBL_TYPE;
      v_moveln_val_tbl    INV_MOVE_ORDER_PUB.TROLIN_VAL_TBL_TYPE;
      v_mold_tbl          INV_MO_LINE_DETAIL_UTIL.G_MMTT_TBL_TYPE;
      v_mold_tbl_p        INV_MO_LINE_DETAIL_UTIL.G_MMTT_TBL_TYPE;
      l_mold_tbl          INV_MO_LINE_DETAIL_UTIL.G_MMTT_TBL_TYPE;
      l_moveln_tbl        INV_MOVE_ORDER_PUB.TROLIN_TBL_TYPE;
      l_trolin_rec        INV_MOVE_ORDER_PUB.TROLIN_REC_TYPE;
      l_trolin_tbl        INV_MOVE_ORDER_PUB.TROLIN_TBL_TYPE;
      l_return_status     VARCHAR2(240);
      l_msg_count         NUMBER;
      l_msg_data          VARCHAR2(2000);
      l_move_hdr_id       NUMBER;
      l_move_order_no     NUMBER := 0;
      v_return_values     VARCHAR2(2000) := FND_API.G_TRUE;
      v_move_hdr_rec      INV_MOVE_ORDER_PUB.TROHDR_REC_TYPE;
      v_move_hdr_val_rec  INV_MOVE_ORDER_PUB.TROHDR_VAL_REC_TYPE;
      v_api_pick_confirm  NUMBER;
      cv_fail             VARCHAR2(100) := 'Fail';
      cv_success          VARCHAR2(100) := 'Success';
      g_user_id      number;
      g_resp_id      number;
      g_resp_appl_id number;
      p_user_name    varchar2(100) := 'SYSADMIN';
      p_resp_name    varchar2(100) := 'Order Management Super User';
      p_mo_apps      varchar2(100) := 'ONT';
      CURSOR c_mmtt_recs(vMoveOrderLineId NUMBER) IS
        SELECT transaction_header_id,
               transaction_temp_id,
               source_code,
               source_line_id,
               transaction_mode,
               lock_flag,
               last_update_date,
               last_updated_by,
               creation_date,
               created_by,
               last_update_login,
               request_id,
               program_application_id,
               program_id,
               program_update_date,
               inventory_item_id,
               revision,
               organization_id,
               subinventory_code,
               locator_id,
               transaction_quantity,
               primary_quantity,
               transaction_uom,
               transaction_cost,
               transaction_type_id,
               transaction_action_id,
               transaction_source_type_id,
               transaction_source_id,
               transaction_source_name,
               transaction_date,
               acct_period_id,
               distribution_account_id,
               transaction_reference,
               requisition_line_id,
               requisition_distribution_id,
               reason_id,
               lot_number,
               lot_expiration_date,
               serial_number,
               receiving_document,
               demand_id,
               rcv_transaction_id,
               move_transaction_id,
               completion_transaction_id,
               wip_entity_type,
               schedule_id,
               repetitive_line_id,
               employee_code,
               primary_switch,
               schedule_update_code,
               setup_teardown_code,
               item_ordering,
               negative_req_flag,
               operation_seq_num,
               picking_line_id,
               trx_source_line_id,
               trx_source_delivery_id,
               physical_adjustment_id,
               cycle_count_id,
               rma_line_id,
               customer_ship_id,
               currency_code,
               currency_conversion_rate,
               currency_conversion_type,
               currency_conversion_date,
               ussgl_transaction_code,
               vendor_lot_number,
               encumbrance_account,
               encumbrance_amount,
               ship_to_location,
               shipment_number,
               transfer_cost,
               transportation_cost,
               transportation_account,
               freight_code,
               containers,
               waybill_airbill,
               expected_arrival_date,
               transfer_subinventory,
               transfer_organization,
               transfer_to_location,
               new_average_cost,
               value_change,
               percentage_change,
               material_allocation_temp_id,
               demand_source_header_id,
               demand_source_line,
               demand_source_delivery,
               item_segments,
               item_description,
               item_trx_enabled_flag,
               item_location_control_code,
               item_restrict_subinv_code,
               item_restrict_locators_code,
               item_revision_qty_control_code,
               item_primary_uom_code,
               item_uom_class,
               item_shelf_life_code,
               item_shelf_life_days,
               item_lot_control_code,
               item_serial_control_code,
               item_inventory_asset_flag,
               allowed_units_lookup_code,
               department_id,
               department_code,
               wip_supply_type,
               supply_subinventory,
               supply_locator_id,
               valid_subinventory_flag,
               valid_locator_flag,
               locator_segments,
               current_locator_control_code,
               number_of_lots_entered,
               wip_commit_flag,
               next_lot_number,
               lot_alpha_prefix,
               next_serial_number,
               serial_alpha_prefix,
               shippable_flag,
               posting_flag,
               required_flag,
               process_flag,
               error_code,
               error_explanation,
               attribute_category,
               attribute1,
               attribute2,
               attribute3,
               attribute4,
               attribute5,
               attribute6,
               attribute7,
               attribute8,
               attribute9,
               attribute10,
               attribute11,
               attribute12,
               attribute13,
               attribute14,
               attribute15,
               movement_id,
               reservation_quantity,
               shipped_quantity,
               transaction_line_number,
               task_id,
               to_task_id,
               source_task_id,
               project_id,
               source_project_id,
               pa_expenditure_org_id,
               to_project_id,
               expenditure_type,
               final_completion_flag,
               transfer_percentage,
               transaction_sequence_id,
               material_account,
               material_overhead_account,
               resource_account,
               outside_processing_account,
               overhead_account,
               flow_schedule,
               cost_group_id,
               demand_class,
               qa_collection_id,
               kanban_card_id,
               overcompletion_transaction_id,
               overcompletion_primary_qty,
               overcompletion_transaction_qty,
               end_item_unit_number,
               scheduled_payback_date,
               line_type_code,
               parent_transaction_temp_id,
               put_away_strategy_id,
               put_away_rule_id,
               pick_strategy_id,
               pick_rule_id,
               common_bom_seq_id,
               common_routing_seq_id,
               cost_type_id,
               org_cost_group_id,
               move_order_line_id,
               task_group_id,
               pick_slip_number,
               reservation_id,
               transaction_status,
               transfer_cost_group_id,
               lpn_id,
               transfer_lpn_id,
               pick_slip_date,
               content_lpn_id
          FROM MTL_MATERIAL_TRANSACTIONS_TEMP
         WHERE move_order_line_id = vMoveOrderLineId;
      l_moveln_fidx     NUMBER;
      l_moveln_lidx     NUMBER;
      n_mvln_cntr       NUMBER;
      l_Index           NUMBER := 1;
      v_records_in_mmtt NUMBER := 0;
      REC C_MMTT_RECS%ROWTYPE;
    BEGIN
      select user_id
        into g_user_id
        from fnd_user
       where user_name = p_user_name;
      select responsibility_id, application_id
        into g_resp_id, g_resp_appl_id
        from apps.fnd_responsibility_vl
       where responsibility_name = p_resp_name;
      Apps.FND_Global.Apps_Initialize(g_user_id, g_resp_id, g_resp_appl_id);
      MO_GLOBAL.INIT(p_mo_apps);
      for mol in (select wda.delivery_id,
                         wda.delivery_detail_id,
                         wda.parent_delivery_detail_id,
                         wdd.source_code,
                         wdd.inventory_item_id,
                         wdd.organization_id,
                         wdd.ship_from_location_id,
                         wdd.ship_to_location_id,
                         wdd.requested_quantity,
                         wdd.requested_quantity_uom,
                         wdd.move_order_line_id,
                         wdd.org_id,
                         mtrl.quantity,
                         mtrl.quantity_delivered
                    from wsh_delivery_details     wdd,
                         wsh_delivery_assignments wda,
                         oe_order_lines_all       ol,
                         oe_order_headers_all     oh,
                         mtl_txn_request_lines    mtrl,
                         mtl_txn_request_headers  mtrh
                   where wdd.source_line_id = ol.line_id
                     and wdd.delivery_detail_id = wda.delivery_detail_id
                     and ol.header_id = oh.header_id
                     and wdd.move_order_line_id = mtrl.line_id(+)
                     and mtrl.header_id = mtrh.header_id(+)
                     and oh.order_number = lv_order_num) loop
        vMoveOrderLineId := mol.move_order_line_id;
        p_pick_conf_qty  := mol.quantity - nvl(mol.quantity_delivered,0);
        SELECT COUNT(move_order_line_id)
          INTO v_records_in_mmtt
          FROM MTL_MATERIAL_TRANSACTIONS_TEMP
         WHERE move_order_line_id = vMoveOrderLineId;
        IF v_records_in_mmtt > 1 THEN
          pStatus  := cv_fail;
          pMsgData := 'Wrong number of records in MMTT for the MOVE_ORDER_LINE_ID : ' ||
                      vMoveOrderLineId;
          DBMS_OUTPUT.PUT_LINE('Multiple records in MMTT for move_order_line_id = ' ||
                               vMoveOrderLineId);
          v_api_pick_confirm := 0;
          GOTO end_of_pkcnf;
        ELSIF v_records_in_mmtt = 0 THEN
          --means that the delivery is already pick confirmed
          pStatus := cv_success;
          DBMS_OUTPUT.PUT_LINE('No records in MMTT for move_order_line_id = ' ||
                               vMoveOrderLineId ||
                               ' hence it is already pick confirmed');
          v_api_pick_confirm := 0;
          GOTO end_of_pkcnf;
        END IF;
        SELECT mtrh.header_id, mtrh.request_number
          INTO l_move_hdr_id, l_move_order_no
          FROM mtl_txn_request_headers mtrh, mtl_txn_request_lines mtrl
         WHERE mtrh.header_id = mtrl.header_id
           AND mtrl.line_id = vMoveOrderLineId;
        DBMS_OUTPUT.PUT_LINE('Obtained MTRH.HEADER_ID = ' || l_move_hdr_id ||
                             ' MTRH.REQUEST_NUMBER = ' || l_move_order_no ||
                             ' for move_order_line_id = ' || vMoveOrderLineId);
        INV_MOVE_ORDER_PUB.GET_MOVE_ORDER(p_api_version_number => 1.0,
                                          p_init_msg_list      => FND_API.G_FALSE,
                                          p_return_values      => v_return_values,
                                          x_return_status      => l_return_status,
                                          x_msg_count          => l_msg_count,
                                          x_msg_data           => l_msg_data,
                                          p_header_id          => l_move_hdr_id,
                                          p_header             => l_move_order_no,
                                          x_trohdr_rec         => v_move_hdr_rec,
                                          x_trohdr_val_rec     => v_move_hdr_val_rec,
                                          x_trolin_tbl         => v_moveln_tbl,
                                          x_trolin_val_tbl     => v_moveln_val_tbl);
         COMMIT;                                
        DBMS_OUTPUT.PUT_LINE('Return status of INV_MOVE_ORDER_PUB.GET_MOVE_ORDER = ' ||
                             l_return_status);
        IF l_return_status != FND_API.G_RET_STS_SUCCESS THEN
          pStatus  := cv_fail;
          pMsgData := 'Failed to get move order inv_move_order_pub.get_move_order for MOVE_ORDER_LINE_ID : ' ||
                      vMoveOrderLineId;
          GOTO end_of_pkcnf;
        END IF;
        OPEN c_mmtt_recs(vMoveOrderLineId);
        FETCH c_mmtt_recs
          INTO rec;
        CLOSE c_mmtt_recs;
        v_mold_tbl(1).transaction_header_id := rec.transaction_header_id;
        v_mold_tbl(1).transaction_temp_id := rec.transaction_temp_id;
        v_mold_tbl(1).source_code := rec.source_code;
        v_mold_tbl(1).source_line_id := rec.source_line_id;
        v_mold_tbl(1).transaction_mode := rec.transaction_mode;
        v_mold_tbl(1).lock_flag := rec.lock_flag;
        v_mold_tbl(1).last_update_date := rec.last_update_date;
        v_mold_tbl(1).last_updated_by := rec.last_updated_by;
        v_mold_tbl(1).creation_date := rec.creation_date;
        v_mold_tbl(1).created_by := rec.created_by;
        v_mold_tbl(1).last_update_login := rec.last_update_login;
        v_mold_tbl(1).request_id := rec.request_id;
        v_mold_tbl(1).program_application_id := rec.program_application_id;
        v_mold_tbl(1).program_id := rec.program_id;
        v_mold_tbl(1).program_update_date := rec.program_update_date;
        v_mold_tbl(1).inventory_item_id := rec.inventory_item_id;
        v_mold_tbl(1).revision := rec.revision;
        v_mold_tbl(1).organization_id := rec.organization_id;
        v_mold_tbl(1).subinventory_code := rec.subinventory_code;
        v_mold_tbl(1).locator_id := rec.locator_id;
        v_mold_tbl(1).transaction_quantity := rec.transaction_quantity;
        v_mold_tbl(1).primary_quantity := rec.primary_quantity;
        v_mold_tbl(1).transaction_uom := rec.transaction_uom;
        v_mold_tbl(1).transaction_cost := rec.transaction_cost;
        v_mold_tbl(1).transaction_type_id := rec.transaction_type_id;
        v_mold_tbl(1).transaction_action_id := rec.transaction_action_id;
        v_mold_tbl(1).transaction_source_type_id := rec.transaction_source_type_id;
        v_mold_tbl(1).transaction_source_id := rec.transaction_source_id;
        v_mold_tbl(1).transaction_source_name := rec.transaction_source_name;
        v_mold_tbl(1).transaction_date := rec.transaction_date;
        v_mold_tbl(1).acct_period_id := rec.acct_period_id;
        v_mold_tbl(1).distribution_account_id := rec.distribution_account_id;
        v_mold_tbl(1).transaction_reference := rec.transaction_reference;
        v_mold_tbl(1).requisition_line_id := rec.requisition_line_id;
        v_mold_tbl(1).requisition_distribution_id := rec.requisition_distribution_id;
        v_mold_tbl(1).reason_id := rec.reason_id;
        v_mold_tbl(1).lot_number := rec.lot_number;
        v_mold_tbl(1).lot_expiration_date := rec.lot_expiration_date;
        v_mold_tbl(1).serial_number := rec.serial_number;
        v_mold_tbl(1).receiving_document := rec.receiving_document;
        v_mold_tbl(1).demand_id := rec.demand_id;
        v_mold_tbl(1).rcv_transaction_id := rec.rcv_transaction_id;
        v_mold_tbl(1).move_transaction_id := rec.move_transaction_id;
        v_mold_tbl(1).completion_transaction_id := rec.completion_transaction_id;
        v_mold_tbl(1).wip_entity_type := rec.wip_entity_type;
        v_mold_tbl(1).schedule_id := rec.schedule_id;
        v_mold_tbl(1).repetitive_line_id := rec.repetitive_line_id;
        v_mold_tbl(1).employee_code := rec.employee_code;
        v_mold_tbl(1).primary_switch := rec.primary_switch;
        v_mold_tbl(1).schedule_update_code := rec.schedule_update_code;
        v_mold_tbl(1).setup_teardown_code := rec.setup_teardown_code;
        v_mold_tbl(1).item_ordering := rec.item_ordering;
        v_mold_tbl(1).negative_req_flag := rec.negative_req_flag;
        v_mold_tbl(1).operation_seq_num := rec.operation_seq_num;
        v_mold_tbl(1).picking_line_id := rec.picking_line_id;
        v_mold_tbl(1).trx_source_line_id := rec.trx_source_line_id;
        v_mold_tbl(1).trx_source_delivery_id := rec.trx_source_delivery_id;
        v_mold_tbl(1).physical_adjustment_id := rec.physical_adjustment_id;
        v_mold_tbl(1).cycle_count_id := rec.cycle_count_id;
        v_mold_tbl(1).rma_line_id := rec.rma_line_id;
        v_mold_tbl(1).customer_ship_id := rec.customer_ship_id;
        v_mold_tbl(1).currency_code := rec.currency_code;
        v_mold_tbl(1).currency_conversion_rate := rec.currency_conversion_rate;
        v_mold_tbl(1).currency_conversion_type := rec.currency_conversion_type;
        v_mold_tbl(1).currency_conversion_date := rec.currency_conversion_date;
        v_mold_tbl(1).ussgl_transaction_code := rec.ussgl_transaction_code;
        v_mold_tbl(1).vendor_lot_number := rec.vendor_lot_number;
        v_mold_tbl(1).encumbrance_account := rec.encumbrance_account;
        v_mold_tbl(1).encumbrance_amount := rec.encumbrance_amount;
        v_mold_tbl(1).ship_to_location := rec.ship_to_location;
        v_mold_tbl(1).shipment_number := rec.shipment_number;
        v_mold_tbl(1).transfer_cost := rec.transfer_cost;
        v_mold_tbl(1).transportation_cost := rec.transportation_cost;
        v_mold_tbl(1).transportation_account := rec.transportation_account;
        v_mold_tbl(1).freight_code := rec.freight_code;
        v_mold_tbl(1).containers := rec.containers;
        v_mold_tbl(1).waybill_airbill := rec.waybill_airbill;
        v_mold_tbl(1).expected_arrival_date := rec.expected_arrival_date;
        v_mold_tbl(1).transfer_subinventory := rec.transfer_subinventory;
        v_mold_tbl(1).transfer_organization := rec.transfer_organization;
        v_mold_tbl(1).transfer_to_location := rec.transfer_to_location;
        v_mold_tbl(1).new_average_cost := rec.new_average_cost;
        v_mold_tbl(1).value_change := rec.value_change;
        v_mold_tbl(1).percentage_change := rec.percentage_change;
        v_mold_tbl(1).material_allocation_temp_id := rec.material_allocation_temp_id;
        v_mold_tbl(1).demand_source_header_id := rec.demand_source_header_id;
        v_mold_tbl(1).demand_source_line := rec.demand_source_line;
        v_mold_tbl(1).demand_source_delivery := rec.demand_source_delivery;
        v_mold_tbl(1).item_segments := rec.item_segments;
        v_mold_tbl(1).item_description := rec.item_description;
        v_mold_tbl(1).item_trx_enabled_flag := rec.item_trx_enabled_flag;
        v_mold_tbl(1).item_location_control_code := rec.item_location_control_code;
        v_mold_tbl(1).item_restrict_subinv_code := rec.item_restrict_subinv_code;
        v_mold_tbl(1).item_restrict_locators_code := rec.item_restrict_locators_code;
        v_mold_tbl(1).item_revision_qty_control_code := rec.item_revision_qty_control_code;
        v_mold_tbl(1).item_primary_uom_code := rec.item_primary_uom_code;
        v_mold_tbl(1).item_uom_class := rec.item_uom_class;
        v_mold_tbl(1).item_shelf_life_code := rec.item_shelf_life_code;
        v_mold_tbl(1).item_shelf_life_days := rec.item_shelf_life_days;
        v_mold_tbl(1).item_lot_control_code := rec.item_lot_control_code;
        v_mold_tbl(1).item_serial_control_code := rec.item_serial_control_code;
        v_mold_tbl(1).item_inventory_asset_flag := rec.item_inventory_asset_flag;
        v_mold_tbl(1).allowed_units_lookup_code := rec.allowed_units_lookup_code;
        v_mold_tbl(1).department_id := rec.department_id;
        v_mold_tbl(1).department_code := rec.department_code;
        v_mold_tbl(1).wip_supply_type := rec.wip_supply_type;
        v_mold_tbl(1).supply_subinventory := rec.supply_subinventory;
        v_mold_tbl(1).supply_locator_id := rec.supply_locator_id;
        v_mold_tbl(1).valid_subinventory_flag := rec.valid_subinventory_flag;
        v_mold_tbl(1).valid_locator_flag := rec.valid_locator_flag;
        v_mold_tbl(1).locator_segments := rec.locator_segments;
        v_mold_tbl(1).current_locator_control_code := rec.current_locator_control_code;
        v_mold_tbl(1).number_of_lots_entered := rec.number_of_lots_entered;
        v_mold_tbl(1).wip_commit_flag := rec.wip_commit_flag;
        v_mold_tbl(1).next_lot_number := rec.next_lot_number;
        v_mold_tbl(1).lot_alpha_prefix := rec.lot_alpha_prefix;
        v_mold_tbl(1).next_serial_number := rec.next_serial_number;
        v_mold_tbl(1).serial_alpha_prefix := rec.serial_alpha_prefix;
        v_mold_tbl(1).shippable_flag := rec.shippable_flag;
        v_mold_tbl(1).posting_flag := rec.posting_flag;
        v_mold_tbl(1).required_flag := rec.required_flag;
        v_mold_tbl(1).process_flag := rec.process_flag;
        v_mold_tbl(1).error_code := rec.error_code;
        v_mold_tbl(1).error_explanation := rec.error_explanation;
        v_mold_tbl(1).attribute_category := rec.attribute_category;
        v_mold_tbl(1).attribute1 := rec.attribute1;
        v_mold_tbl(1).attribute2 := rec.attribute2;
        v_mold_tbl(1).attribute3 := rec.attribute3;
        v_mold_tbl(1).attribute4 := rec.attribute4;
        v_mold_tbl(1).attribute5 := rec.attribute5;
        v_mold_tbl(1).attribute6 := rec.attribute6;
        v_mold_tbl(1).attribute7 := rec.attribute7;
        v_mold_tbl(1).attribute8 := rec.attribute8;
        v_mold_tbl(1).attribute9 := rec.attribute9;
        v_mold_tbl(1).attribute10 := rec.attribute10;
        v_mold_tbl(1).attribute11 := rec.attribute11;
        v_mold_tbl(1).attribute12 := rec.attribute12;
        v_mold_tbl(1).attribute13 := rec.attribute13;
        v_mold_tbl(1).attribute14 := rec.attribute14;
        v_mold_tbl(1).attribute15 := rec.attribute15;
        v_mold_tbl(1).movement_id := rec.movement_id;
        v_mold_tbl(1).reservation_quantity := rec.reservation_quantity;
        v_mold_tbl(1).shipped_quantity := rec.shipped_quantity;
        v_mold_tbl(1).transaction_line_number := rec.transaction_line_number;
        v_mold_tbl(1).task_id := rec.task_id;
        v_mold_tbl(1).to_task_id := rec.to_task_id;
        v_mold_tbl(1).source_task_id := rec.source_task_id;
        v_mold_tbl(1).project_id := rec.project_id;
        v_mold_tbl(1).source_project_id := rec.source_project_id;
        v_mold_tbl(1).pa_expenditure_org_id := rec.pa_expenditure_org_id;
        v_mold_tbl(1).to_project_id := rec.to_project_id;
        v_mold_tbl(1).expenditure_type := rec.expenditure_type;
        v_mold_tbl(1).final_completion_flag := rec.final_completion_flag;
        v_mold_tbl(1).transfer_percentage := rec.transfer_percentage;
        v_mold_tbl(1).transaction_sequence_id := rec.transaction_sequence_id;
        v_mold_tbl(1).material_account := rec.material_account;
        v_mold_tbl(1).material_overhead_account := rec.material_overhead_account;
        v_mold_tbl(1).resource_account := rec.resource_account;
        v_mold_tbl(1).outside_processing_account := rec.outside_processing_account;
        v_mold_tbl(1).overhead_account := rec.overhead_account;
        v_mold_tbl(1).flow_schedule := rec.flow_schedule;
        v_mold_tbl(1).cost_group_id := rec.cost_group_id;
        v_mold_tbl(1).demand_class := rec.demand_class;
        v_mold_tbl(1).qa_collection_id := rec.qa_collection_id;
        v_mold_tbl(1).kanban_card_id := rec.kanban_card_id;
        v_mold_tbl(1).overcompletion_transaction_id := rec.overcompletion_transaction_id;
        v_mold_tbl(1).overcompletion_primary_qty := rec.overcompletion_primary_qty;
        v_mold_tbl(1).overcompletion_transaction_qty := rec.overcompletion_transaction_qty;
        v_mold_tbl(1).end_item_unit_number := rec.end_item_unit_number;
        v_mold_tbl(1).scheduled_payback_date := rec.scheduled_payback_date;
        v_mold_tbl(1).line_type_code := rec.line_type_code;
        v_mold_tbl(1).parent_transaction_temp_id := rec.parent_transaction_temp_id;
        v_mold_tbl(1).put_away_strategy_id := rec.put_away_strategy_id;
        v_mold_tbl(1).put_away_rule_id := rec.put_away_rule_id;
        v_mold_tbl(1).pick_strategy_id := rec.pick_strategy_id;
        v_mold_tbl(1).pick_rule_id := rec.pick_rule_id;
        v_mold_tbl(1).common_bom_seq_id := rec.common_bom_seq_id;
        v_mold_tbl(1).common_routing_seq_id := rec.common_routing_seq_id;
        v_mold_tbl(1).cost_type_id := rec.cost_type_id;
        v_mold_tbl(1).org_cost_group_id := rec.org_cost_group_id;
        v_mold_tbl(1).move_order_line_id := rec.move_order_line_id;
        v_mold_tbl(1).task_group_id := rec.task_group_id;
        v_mold_tbl(1).pick_slip_number := rec.pick_slip_number;
        v_mold_tbl(1).reservation_id := rec.reservation_id;
        v_mold_tbl(1).transaction_status := rec.transaction_status;
        v_mold_tbl(1).transfer_cost_group_id := rec.transfer_cost_group_id;
        v_mold_tbl(1).lpn_id := rec.lpn_id;
        v_mold_tbl(1).transfer_lpn_id := rec.transfer_lpn_id;
        v_mold_tbl(1).pick_slip_date := rec.pick_slip_date;
        v_mold_tbl(1).content_lpn_id := rec.content_lpn_id;
        v_mold_tbl(1).transaction_quantity := p_pick_conf_qty;
        v_mold_tbl(1).primary_quantity := p_pick_conf_qty;
        v_mold_tbl(1).shipped_quantity := p_pick_conf_qty;
        INV_PICK_WAVE_PICK_CONFIRM_PUB.PICK_CONFIRM(p_api_version_number => 1.0,
                                                    p_init_msg_list      => FND_API.G_FALSE,
                                                    p_commit             => FND_API.G_FALSE,
                                                    x_return_status      => l_return_status,
                                                    x_msg_count          => l_msg_count,
                                                    x_msg_data           => l_msg_data,
                                                    p_move_order_type    => 3 -- PickWave - Order
                                                    p_transaction_mode   => 1 -- 1:On-Line, 2:Concurrent, 3:Background
                                                    p_trolin_tbl         => v_moveln_tbl_d,
                                                    p_mold_tbl           => v_mold_tbl,
                                                    x_mmtt_tbl           => v_mold_tbl,
                                                    x_trolin_tbl         => v_moveln_tbl_o,
                                                    p_transaction_date   => SYSDATE);
        COMMIT;                                           
        DBMS_OUTPUT.PUT_LINE('Return status of INV_PICK_WAVE_PICK_CONFIRM_PUB.PICK_CONFIRM  = ' ||
                             l_return_status);
        IF l_return_status != FND_API.G_RET_STS_SUCCESS THEN
          pStatus  := cv_fail;
          pMsgData := 'Failed to pick confirm move order inv_pick_wave_pick_confirm_pub.pick_confirm for MOVE_ORDER_LINE_ID : ' ||
                      vMoveOrderLineId;
          GOTO end_of_pkcnf;
        END IF;
        v_api_pick_confirm := 1;
        dbms_output.put_line('Status of the Pick Confirm is : ' ||
                             l_return_status);
        <<end_of_pkcnf>>
        NULL;
      end loop;
    END;
    Updating Shipping attributes
    DECLARE
      --Standard Parameters.   
      p_api_version NUMBER;
      init_msg_list VARCHAR2(30);
      p_commit      VARCHAR2(30);
      --Parameters for WSH_DELIVERY_DETAILS_PUB.update_shipping_attributes.   
      source_code        VARCHAR2(15);
      changed_attributes WSH_DELIVERY_DETAILS_PUB.ChangedAttributeTabType;
      --out parameters
      x_return_status VARCHAR2(10);
      x_msg_count     NUMBER;
      x_msg_data      VARCHAR2(2000);
      x_msg_details   VARCHAR2(3000);
      x_msg_summary   VARCHAR2(3000);
      -- Handle exceptions
      vApiErrorException EXCEPTION;
    BEGIN
      -- Initialize return status
      x_return_status := WSH_UTIL_CORE.G_RET_STS_SUCCESS;
      -- Call this procedure to initialize applications parameters
      FND_GLOBAL.APPS_INITIALIZE(user_id      => 0,
                                 resp_id      => 21623,
                                 resp_appl_id => 660);
      source_code := 'OE';
      changed_attributes(1).delivery_detail_id := 9317811; -- delivery_detail_id
      changed_attributes(1).shipped_quantity := 0; -- quantity to update 
      changed_attributes(1).cycle_count_quantity := 30;
      --Call to WSH_DELIVERY_DETAILS_PUB.Update_Shipping_Attributes.
      WSH_DELIVERY_DETAILS_PUB.Update_Shipping_Attributes(p_api_version_number => 1.0,
                                                          p_init_msg_list      => init_msg_list,
                                                          p_commit             => p_commit,
                                                          x_return_status      => x_return_status,
                                                          x_msg_count          => x_msg_count,
                                                          x_msg_data           => x_msg_data,
                                                          p_changed_attributes => changed_attributes,
                                                          p_source_code        => source_code);
                                                          commit;
      IF (x_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS) THEN
        RAISE vApiErrorException;
      ELSE
        dbms_output.put_line('The shipped quantity is updated with ' ||
                             changed_attributes(1)
                             .shipped_quantity || ' for the delivery detail ' ||
                             changed_attributes(1).delivery_detail_id);
      END IF;
    EXCEPTION
      WHEN vApiErrorException THEN
        WSH_UTIL_CORE.get_messages('Y',
                                   x_msg_summary,
                                   x_msg_details,
                                   x_msg_count);
        IF x_msg_count > 1 THEN
          x_msg_data := x_msg_summary || x_msg_details;
          DBMS_OUTPUT.PUT_LINE('Message Data : ' || x_msg_data);
        ELSE
          x_msg_data := x_msg_summary;
          DBMS_OUTPUT.PUT_LINE('Message Data : ' || x_msg_data);
        END IF;
      WHEN OTHERS THEN
        DBMS_OUTPUT.PUT_LINE('Unexpected Error: ' || SQLERRM);
    END;
    Thanks

    Hi,
    Goto VTFL.Select you valid combination.
    Click on item.Select yout item category there.Goto details.
    Select the Pos/neg quantity field as "+".
    Maintain the billing quantity as "A".
    Maintain VBRK/VBRP as "001".
    Save.
    Goto VOV7 and select your item category.Details.
    Select completion rule as "B" and billing relevance as "F".
    Save.
    Pls go through the follwing threads that are posted by me earlier.
    [Invoice split|Re: Invoice split]
    [Splitiing of invoice|Re: Invoice split]
    Regards,
    Krishna.

  • Partial cancellation of attendance for attendee in training and event

    dear training module experts,
    i have a issue in partial cancellation of attendance.
    1.I have created a business event group  for training calendar(OOEG)
    2.I have created a business event type (OOET) WITH RELATIONSHIPS
    3.I have created business event dates with resources(PSV2)
    4.I HAVE BOOKED PERSONS FOR EVENTS ( NOT FIRMLY BOOKED)
    THE EXAMPLE IS
    BUSINESS EVENT TYPE IS : "communication skills program"
    Business event dates are: 01.02.2007 to 03.02.2007
    Persons booked are : 1.paul
                                    2.David
                                    3.Chandru
                                    4.Rex
                                    5.Bansali
    all these persons are booked for 3 days . But on the day of event happening, one person say ., David doesn't attend only for 02.02.2007 where as he attends for 01.02.2007 and 03.02.2007.
    Now we have to cancel his attendance only for 02.02.2007.
    we need a report to be run showing his attendance for that event called "communication skills"  for 01.02.2007 and 03.02.2007 and his report for 02.02.2007 should show nil.
    In other words, i need to partially cancel his attendance and not cancel the whole attendance for him.
    how to go about it? is there any program in standard .
    IN normal transactions , it doesn't seem possible
    Even integration with time management  doesnt help for partial cancelllation  before running a attendee list report .
    soliciting your replies  and correct solution.
    nataraj s

    Do it  through your IT 2002. Mark him as leave for those days. Cancelling through TEM will cancel attendence for whole program

  • Configurable material - Partial cancellation of sale order

    Hi
    I created a sale order with configurable material with variant pricing. For example 50 Qty( VA01). If  i do the partial cancellation in VA02 for example 25 qty, the following message is getting popped up.
    Changing date/quantity may result in differen
    - Please configure
    Can anyone suggest what are all the settings i need to do? or any other procedure is there for partial cancellation of configurable material?
    Thanks in advance.
    Regards,
    Raman

    Hi
    The scenario is
    Create a sale order on VA01 for configurable material with variant configuration for the quantity 50. The material doesnt have BOM.
    Change the quantity in VA02 for the above material the following warning message is appearing.
    Change in quantity / date may result in different BOM. Pls configure.
    I am not going to create PR or Delivery document as a subsequent document for the same.
    Pls advice. Why the message is getting pop-up.
    Thanks in advance
    Raman

  • How to do batch cancel confirmation

    Hi:
    guru, I can use C013 to cancel confirmation one operation by one operation. can i cancel all confirmation of one  production order or severel production orders just one step. is there any solution for Standard SAP.

    Hi Wang,
    Use CORS to reverse the phases.
    After canceling if you want to view it again then use CORT (here there is one check box named 'Reversed' means that phase is reversed).
    If there is a Inspection lot in between then you need to use customize program to cancel the usage decision.
    regards,
    Chintan

  • Checking Confirmation-Related Invoice verification In Follow-On document

    Hi All,
    I have one requirement where I have to check "Confirmation-Related Invoice verification " checkbox  Inside Follow-On document of Process-Purchase Order when  "Invoice and confirmation" radio button in Limit Item Shopping cart is selected.
    Regards
    Praveen

    Hi Praveen,
    You have to implement the BBP_DOC_ChANGE_BADI for filter type BUS2201 . And put the logic there.Should be very simple for a ABAP er .
    Thanks
    Padhi

  • What is the best way to cancel the related update from aboutToUpdate ?

    What is the best way to cancel the related update from DescriptorEventAdapter.aboutToUpdate ?
    Anyway to manipulate descriptorEvent.getQuery() so that it doesn't generate anything?
    In our specific case, TopLink 11 - EclipseLink 2.0.2 generates useless update, so we want to silence them to avoid DB round trip.

    Mustafa,
    Thats the way to kill the Job, But We are not Authorized for SM50.
    At present we will raise a request to the Basis to do that. Speaking from user point of view is there any better way to handle it.
    Tony

  • Reversing a cancelled confirmation in SRM 4.0

    We are currently running SRM 4.0 in an extended classic setup.  We have had many questions about reversing a cancelled confirmation in SRM 4.0 once it has been cancelled. 
    Some user who are very familar with SAP recognize this functionality extend in SAP but are seeing that this is not the case for SRM 4.0. 
    Currently when a confirmation has been cancelled in SRM 4.0 is there any way to reverse the cancellation?  Is this functionality available in SRM 5.0?

    Hi,
    See the foll link:
    http://help.sap.com/saphelp_srm50/helpdata/en/d1/77623c44696069e10000000a11405a/frameset.htm
    BR,
    Disha.
    Pls reward points for useful answers.

  • Confirmation-Related Invoice Verification

    Has anybody had the issue that when using SRM 5.0 (extended classic) a purchase order falls into "error in process" because the Confirmation-Related Invoice Verification has been checked on by SRM even though the vendor master never had this GR based IV indicator check set? Thanks

    Hi
    Is it service ?
    or
    Is it limit cart with confirmation and Invoice ?
    br
    muthu

  • Function Module for cancelling confirmation

    Dear all,
    Can u please tell me the function module used for cancel confirmation in cn29?
    Regards,

    Hi Kumar,
    For excuting the Fuunctional module  BAPI_NETWORK_CONF_CANCEL abaper has to write some coding. Discuss with your abaper on this.
    For more details on coding search in ABAP fourm.
    Regards,
    Nag.

  • User-exit for transaction co13: PP Order Cancel Confirmation

    Hello!
    Whether prompt, please,
    exist what that user-exit for transaction co13: PP Order Cancel Confirmation?
    Thanks,
    Anton.

    Hi Antonio,
    Please check this all user exits (SMOD) available for CO13.
    CONFPP01  -  PP order conf.: Determine customer specific default values 
    CONFPP02  -  PP order conf.: Customer specific input checks 1           
    CONFPP03  -  PP order conf.: Cust. specific check after op. selection   
    CONFPP04  -  PP order conf.: Customer specific input checks 2           
    CONFPP05  -  PP order conf.: Customer specific enhancements when saving 
    CONFPP06  -  PP Order Confirmations: Actual Data Transfer               
    CONFPP07  -  Single Screen Entry: Inclusion of User-Defined Subscreens  
    CONFPS01  -  PS confirmation: Determine customer specific default values
    CONFPS02  -  PS confirmation: Customer specific input checks 1          
    CONFPS03  -  PS confirmation: Customer specific check after op. selection
    CONFPS04  -  PS confirmation: Customer specific input checks 2          
    CONFPS05  -  PS confirmation: Customer specific enhancements when saving
    CONF0001   -  Enhancements in order confirmation                         
    CONFPI01   -   Process order conf.: Calculate cust.specific default values
    CONFPI02   -   Process order confirmation: Customer spec. input checks 1  
    CONFPI03   -   Process order conf.: Cust. spec. check after op. selection 
    CONFPI04   -   Process order conf.: Customer specific input checks 2      
    CONFPI05   -   Process order conf.: Cust. spec. enhancements when saving  
    CONFPI06   -   Process order confirmation: Actual data transfer           
    CONFPM01  -  PM/SM order conf.: Determine cust. specific default values 
    CONFPM02  -  PM/SM order confirmation: Customer specific input checks 1 
    CONFPM03  -  PM/SM order conf.: Cust. spec. check after op. selection   
    CONFPM04  -  PM/SM order conf.: Customer specific input check 2         
    CONFPM05  -  PM/SM order conf.: Cust. specific enhancements when saving 
    Regards,
    Ferry Lianto

  • Can i cancel confirmation without goods movement?

    when i cancel confirmation (co13) it will default auto reverse goods movement 102. but material are not in stock and then COGI will occur.
    does anyone know any T-code to cancel confirmation without goods movement? because i want to cancel just activity.
    thank you all.

    Hi,
    If your are cancelling the operation which is having the the Control Key : PP03 (auto GR) then only system will try to reverse the Goods Movement (Movt Type 102)., And if the material is not in Stock (sloc) then system will through the Goods MOvt failure and same can be seen in COGI and COrrected later, once the stock comes in Sloc.
    There is NO Seperate transaction for just cancelling the Operation (Activity) without reversing the Goods Movement. Even it is not logical to do so as it may show as Negative WIP for the Order.
    Hope this will help you.
    regards
    radhak mk

  • IW45 - Cancel Confirmation - Posting period query

    Hi Experts,
    I am executing IW45 and while saving it says that Cancellation of completion confirmation STOPPED due to MM period closed .
    As per my knowledge Time confirmation generates only financial document so why it is giving an error because of MM periods?
    Also, I want to cancel the confirmation that is been done few days back but the probelm is now that period is closed.
    So what are the different ways to go ahead with the cancellation of this confirmation?
    Can we make Posting Date field as input field during IW45 (Cancel Confirmation) so that we can overcome closed posting period problem?
    Thanks
    DM
    Edited by: Deepak M on Oct 2, 2009 7:48 AM
    Edited by: Deepak M on Oct 2, 2009 7:50 AM
    Edited by: Deepak M on Oct 2, 2009 7:50 AM

    Hi Deepak,
    Ask Finanse, & Material Team to open period. Once it is opened cancel the confirmation nos.
    Further the same confirmation can be used to repost the enties in new period.
    Regards,
    Ramesh

  • Partial cancellation in outbound delivery

    Dear expert,
    I PGI an outbound delivery, quantity 1000 kg. But I want to PGI only 700 kg, I want cancel it, only 300. Can I do this?
    If not, I must cancel all 1000 kg, then PGI again 700 kg, It has to many step. Can I make a partial cancellation?
    Please show me.
    Thank you in advance!
    Hongdm.

    I want to know whether we do only partial reversal 300
    I have already answered to this query
    Once a delivery is PGId for any quantity, then it cannot
         be corrected and it has to be reversed
    You have to follow the standard process only; that is VL09 and VL02N.
    G. Lakshmipathi

Maybe you are looking for

  • IDOC sender: Error in Logical system name?

    Hi, In my current project, the IDOC sender system logical name is P2PCLNT100 but the SLD system name is P2P. Its an IDOC to proxy scenario. At the receiver system side, the schemeAgencyID is getting populated at P2P and not P2PCLNT100, due to which t

  • Voice memos on ios7, it freezes after I try and save it

    Hey! I record all of my lectures on my iphone, but since I have updated to ios7 I am not able to do that. It records the lectures, but when I tap finished/save, it freezes up and the memo just is 00:00 even though I have been recording for 1 and a ha

  • Oracle 10g query rows to column transpose

    In oracle 10g I have table called LoginUser Select * from LoginUser where Day = '01-Dec-2012' will give me the below result Day, Name, Country 1-Dec-12 , John, UK 1-Dec12 , Cate, US 1-Dec-12 , Prakash, India 1-Dec-12 ,Juli, Pak But I want result as b

  • KT4 Ultra and SATA

    I have a KT4 Ultra that supports SATA Raid and Im looking at getting a new HDD. CAn I run my old PATA HDD with a SATA HDD without it being in raid format or do the disk have to be in a raid format.

  • Http adapter -reading a http file stream

    Hi folks, Here is a requirement I need to read a file sent as an http object stream through XI and then updated the same in a database table in R/3? <b>How can i configure the http adapter so that it reads the file stream</b> regards krishna Message