Creation of Mfg Service contract from IB Instance number

Hi Team,
We have a requirement from client that we need to create a Mfg Service contract for a given IB Instance number. Can you please let me know, if we have any API for this?
I tried to create contract using Oks_Contracts_Pub.Create_Contract_Header API but this contract is not associated with Instance in IB.
Please help to provide any ideas on this. We are on 11.5.10 version.
Thanks/Suresh K

Solution: You need to associate Contract with Covered line with that serial number.

Similar Messages

  • CRM- Find Service contract from Internal Order Number

    Hi Friends,
    I would like to know how to get service contract from internal oredr number.
    From service contract we can find internal order number by using CRM_ORDER_READ function module- table et_document_flow, but my requirement is how to find service contract from Internal order number.Any function module or BAPI available for this requierement ?
    Regards
    Vinayak Sapkal

    Hi,
      when the costs are transferred from CRM to R3, they are posted to an internal order. When a service order or incident is transferred to R3, we have to create an internal order for it, regardless of whether or not a contract has been assigned.
    This is all linked to the logic used in CO to find the appropriate internal order. It works as follows:
    The internal order is stored in the table IAOM_ASSIGNMENTS. This is accessed by a guid (the account assignment guid).
    To get this guid, there is a second table IAOM_EXT_OBJ_INF. This table links the GUIDs coming from CRM, dependent on the CO Customizing for CRM (Mass Controlling, Header level, item level controlling etc.)
    This is how we manage to link a service order to the internal order of a contract in the first place.
    When we call CO, CO first looks for an assignment for the object guid passed. If a service order has been linked to a contract, nothing will be found for the object guid. CO will then check for assignments to the reference guid and find the contract entry.
    If no contract has been assigned, CO will create an internal order based on the service order guid.
    From a CRM point of view, costs are assigned directly to an item, and so it makes no sense to have a reference guid for the costs or the possibility to change the guid via BADI.
    regards
    Waman

  • Creation of Sales Order and Service Contract from Inbound IDOC

    Hi Experts,
    My requirement is to create a Sales Order as well as a Service Contract from one Inbound IDOC. I am getting the Inbound IDOC from a third Party. The message type is ORDERS and Basic Type is ORDERS02. How ever i am using an extension type IDOC which carries all the required data for Sales Order and Service Contract. My requirement is like, to create a Sales Order first.
    I have created a Z FM which is attached to the Process Code and subsequently to the message type. Inside the FM i an calling FM 'IDOC_INPUT_ORDERS' for creation of Sales Order. After that i am changing the IDOC data for the Document Type. I am changing the document type which is responsible for Contract Creation.
    Then I am again calling the FM 'IDOC_INPUT_ORDERS' for creation of Contract with the help of IDOC data. But here the Contract is not getting created. It's getting failed during the Batch input session.
    I need to solve this problem as soon as possible. Please help me. If there are any other options also please share.
    Thanks in Advance.
    Regards,
    Priyabrata

    Actually there is problem with BDCDATA. Inside the FM it's calling transaction with help of BDCDATA. If i am creating a Sales order or contract alone its creating successfully. But when i am trying to create both, it's retuning sy-subrc '1001' after calling the transaction on the second attempt. Is there any problem with BDCDATA like we can't handle with less time gap? Please help and give your inputs.
    Regards,
    Priyabrata

  • Creation of Service Contract from Inbound IDOC

    Hi Experts,
    I am using Inbound IDOC type ORDERS02 with message type ORDERS for creation of Sales Order. Now my requirement is like to create a  Service Contract from that Inbound IDOC. The IDOC type contains all the data require to create a Service Contract. The scenario is like, after creation of Sales Order it will check for the corresponding Service Contract exits or not by querying on a Z table which contains all those entries.
    So my idea is to create a Z Program, in which it will check for the Service Contract and will create the same by reprocessing the same IDOC or by calling some Function Module. Please suggest how shall i proceed to create a Service Contract.
    Is there any way to reprocess the IDOC or to collect the Data from the IDOC segments pass them to a FM which is responsible for creation of Inbound IDOC. Please suggest if this is feasible.
    Thanks in Advance.
    Regards,
    Priyabrata.

    Actually there is problem with BDCDATA. Inside the FM it's calling transaction with help of BDCDATA. If i am creating a Sales order or contract alone its creating successfully. But when i am trying to create both, it's retuning sy-subrc '1001' after calling the transaction on the second attempt. Is there any problem with BDCDATA like we can't handle with less time gap? Please help and give your inputs.
    Regards,
    Priyabrata

  • Error during Replication of Service Contracts from CRM to ECC

    Hi,
    I'm encountering a problem when replicating a Service Contract from CRM (I'm using SAP CRM 2007) to ECC.
    I insert a first Item which is not relevant for pricing (let say, product 123)
    I Insert a second Item relevant for pricing, with reference to the previous one (let say, product 456)
    I release the Items and I save the contract
    When I try to go in edit mode in the Contract, an error appears:
    An error has occured in the system DE1CLNT200 while copying the document
    Message no. CRM_ORDER_MISC 020
    Diagnosis
    Errors have occured while transferring the document into another system. Remove the error messages from the enclosed log.
    Transmission log
    u2022     SALES_HEADER_IN has been processed successfully (Notification S V4 233)
    u2022     Material 0 does not exist in plant ZX01 / country CH (Notification E V1 391)
    u2022     Error in SALES_ITEM_IN 000101 (Notification E V4 248)
    u2022     Sales document  was not changed (Notification E V4 219)
    It seems that the program does not recognize the product (the error message says "Material 0", not "Material 456") ...
    Any idea?
    Thanks in advance,
    Andrea

    Should it be a problem related to the leading zeros?

  • Not able to create Service Contract from another svc.contract as followup

    Hi,
    I am trying to create a service contract from another service contract as folllow up document as a part of contract renewal process. However, when I click on follow up button, in the popup, not able to the option Service Contract. Hence I am unable to create.
    Could you please let me know, what needs to be done such that Service Contract also will be shown in the popup.
    Thanks for all the replies.
    Thanks,
    Sandeep

    Hello Sandeep,
    It is not possible to create a follow up service contract (BUS2000112) for another service contract (BUS2000112).
    I do not know your business scenario, you can debug method GET_FOLLOWUP_CUST of class CL_CRM_UIU_BT_GET_PROCTYPES and see where the follow-up transaction types are filtered out.
    I met similar case before, the solution provided at that time was
    - modify FM CRM_UBB_FILTER_SUC_PROC_TYPE in line 49. You can comment out the following line:
    delete ct_suc_proc_type where process_type = ls_suc_proc_type-process_type.
    Hope this could be helpful.
    Best regards,
    Maggie

  • Not able to edit Service Contract from WEBUI beacause of error

    Hi,
    I am trying to edit Service Contract from WEB UI. But, when ever I say edit, it is giving error saying
    "Document is being distributed. Changes are not possible".
    Can you please let me know, why such error comes..and how to rectify that.
    Thanks,
    Sandeep

    Hi Sandeep,
    This happens when the document is distributed to ERP Systems. There are certain Item Categories that are sent to ERP System and only once the confirmations comes from those system you can further process those document.
    You won't find any errors there.
    You can check the BDOC Entries and then can find the target system where the document was distributed. And then logon onto that system and release that document.
    Hope this helps.
    Thanks,
    Samantak.

  • Creating service contract from OM

    Hi,
    We have tried creating service contracts from OM in 11.5.10.
    Can we create service contracts from OM in 11.5.9? Any pointers where i can confirm this?
    Thanks,
    Sid.

    SId,
    Yes we can!.
    Thanks
    Nagamohan

  • Problem reading service contract from ibase

    Hi Experts,
    I am required to read the service contract document from the Ibase component.
    I am unable to find the table or function module to read the service contract
    when i pass Ibase value.
    I am using the badi CRM_SERVICE_CONTRACT and i an required to read the contract here
    based on my way of selection and not using the standard selection.
    Pls provide ur valuable guidance...
    Thanks,
    SA

    Hi Gert,
    I am getting short dump when i have updated the value inside tht badi for the hader and the item guid of the contract.
    When i try to enter the hard coded values it accepted, but whn i pick the value through function module or through the select query and palciong inthe table,its giving me short dump.
    I hope you can guide me to solve this serious issue,a little urgent.
    Thanks,
    SA
    Edited by: Saurabh Agrawal on Nov 27, 2008 1:01 PM

  • Unable to create a service contract from IDoc BLAORD FM IDOC_INPUT_BLAORD

    I've been testing creating service contracts using BLAORD and it appears that SAP does not have any way of creating a service contract using IDOC_INPUT_BLAORD. Inside this function a BDC is built and either ME31K or ME32K is called. There is processing that checks the service line package numbers, but it doesn't appear to be creating them (Maybe I'm overlooking something). When the BDC is being built the services screen is ignored. There is a user exit that could be used to populate the BDC for these screens.
    I recently had to develop a custom BDC to create service contracts becuase, to the knowledge of our best ABAP-ers, there is no SAP standard functionality to create service contracts programmatically besides using a BDC. My custom BDC will fail when run in background because of a GUI control on the services screen. It runs fine in the foreground. The short dump is 'RAISE_EXCEPTION'. Short text: Exception condition "CNTL_ERROR" raised. Termination is occurring in CL_GUI_DOCKING_CONTAINER->CONSTRUCTOR. We're on ECC 6.0.
    I checked the SAP Notes system and I was unable to find anything related specifically to contracts for this issues. I did see that SAP has released OSS notes for other BDC processes so that they would be able to run in background.
    I am wondering if there is anyone who currently is able to create service contracts using IDOC_INPUT_BLAORD. My plan is to set up an RFC between SAP systems. The customer wants to be able to receive contracts on demand. Has anyone done this before for service contracts? What has your approach been? Is there anyway of having the function run in foreground when it receives a IDoc?
    Thanks for your input,
    Steve

    Hello Steve,
    Did you get a solution to Service Contract (Purchase) creation through BLAORD or through any other FM please?
    BAPI_CONTRAT_CREATE does not handle services.
    Have a similar requirement and trying to avoid BDC.
    Thanks & Regards
    Prashanth

  • Unable to create Service Contract from Sales Order

    Hi Guru's,
    I put a sales order with one product and service line. SO has been closed and then I ran 'Service Contract Order Capture Integration' program.
    When I query my SO using Reprocess Order, I got error status with message as "Request ID : 8360452; Referenced Product not present in the Installed Base;".
    So I searched in metalink found - 'Referenced Product not present in the Installed Base [ID 549160.1]'.
    As mentioned in the document I checked the freeze flag in Oracle Installed Base Admin --> Setup --> Install Parameters.
    The same already been checked. I also checked the service item definition and found IB track not checked under service tab. When I tried to check the flag, an error states that 'Non subscription contract Item cannot be Install Base trackable'.
    Now how to overcome this issue. Any help will be highly appreciate.
    Instance Details:-
    RDBMS : 10.2.0.4.0
    Oracle Applications : 11.5.10.2
    Thanks,
    Bala

    Hello Bala,
    The 'Installed Base Trackable Flag' is a Master Item Controlled attribute in Inventory, which means that when the Attribute is set at the Master Item Level it is cascaded to all Child Organizations.
    If there is inventory in any of the Child Organizations, the flag cannot be changed at the Master level.
    You must issue all of the Inventory out of each Child Organization, change the flag at the Master level.
    Thanks
    -Arif.

  • Service contract from outline agreements

    Hi MM gurus,
    my requirement is tht i should send a Machine for repair to an outside vendor..the requirement is triggered from PM-Order..
    i should make a contract with tht vendor say for a valu of 10000/-..could anyone suggests me hw can i map this,,,from receiving the PM order to MM,,thn sending the machine to vendor,,receiving and isssuning to machine against the Order,,
    hw shld i map this...
    thanks in Advance,,
    ganesh kumar

    Hi
    Follow the bel
    1. create contract in tcode ME31K, with account assignment category F.
    2. Create Service Master in AC01 transaction.
    3. Create the Maintenance order in IW31.
    4. Enter the Control key PM03 (control key with service indicator on) in the order.
    5. In the opertaion details of the order you have to enter the service master number which you have created.
    6. System will create Purchase Requisition in the Order automatically.
    7. Create PO(ME21N) with reference to the PR.
    8. Send the Machine to Service Provider with returnable gatepass.
    9. Do the Service entry sheet (ML81N)against the PO when you receive the machine after repair.
    10.Finally transfer the machine to the respective area.
    Hope it helps.
    Regards
    Bala

  • To get service order from sales order number and item number

    The select on AUFK takes much longer time than the transaction which is used to get the sevice order number starting from VA03. ( select one line item. goto repairs, then select the repairs column and goto SM Order). Is there any other table than AUFK from which i can get service order number.

    Hi!
    Check, if you have an entry in table VBFA for your sales order (sales order in VBELV, POSNV, AUFK in VBELN and POSNN, VBTYP_N might be 'C').
    If so, your select will be much faster by using VBFA.
    Regards,
    Christian

  • Service Contracts Billing Schedule Creation Error

    Hi,
    I have a requirement of creating service contracts from back-end for which I am using the oks_contracts_pub.create_contract_header, create_service_line, and create_bill_schedule. I am creating my contracts with active status and renewal type of EVN (Header level), FUL(Line Level). My contract is of type subscription. The contract header and line are creating fine but the Bill schedule API is throwing an UNEXPECTED ERROR. The billing schedules need to be created based on accounting rule which can be quarterly or monthly. I have included the bill schedule code (hard coded values) for review. Any help is greatly appreciated.
    Also the version I am working on is R12
    ________________________________________________CODE___________________________________________________________________
    CREATE OR REPLACE PROCEDURE BILLING_SCHEDULE AS
    l_strm_level_tbl OKS_BILL_SCH.STREAMLVL_TBL;
    v_bill_qtrs NUMBER := 0;
    v_bill_mths NUMBER := 0;
    v_bill_days NUMBER := 0;
    v_net_amount NUMBER := 468;
    v_acct_rule_name VARCHAR2(50) := 'QUARTERLY';
    v_amt_per_day NUMBER;
    x_error_locator VARCHAR2(2000);
    v_start_date DATE := '04-MAY-2010';
    v_end_date DATE := '25-MAY-2010';
    x_return_status VARCHAr2(3);
    x_msg_count NUMBER;
    x_msg_data VARCHAR2(2000);
    v_billing_sequence NUMBER;
    x_chr_id NUMBER := 17000;
    x_line_id NUMBER := 223248604345353294444923586786456728480;
    g_day_uom VARCHAR2(10) := 'DAY';
    g_month_uom VARCHAR2(10) := 'MTH';
    g_quarter_uom VARCHAR2(10) := 'QTR';
    v_amt NUMBER;
    v_invoicing_rule_id NUMBER := -2;
    BEGIN
    --Create Billing Schedule based on accounting rule
    okc_context.set_okc_org_context;
    MO_GLOBAL.INIT('OKS');
    MO_GLOBAL.SET_POLICY_CONTEXT('S', 83);
    v_bill_qtrs := 0;
    v_bill_days := 0;
    v_bill_mths := 0;
    SELECT NVL(v_net_amount, 0)/(v_end_date - v_start_date)
    INTO v_amt_per_day
    FROM dual;
    dbms_output.put_line('Calculated amt per day ' || v_amt_per_day);
    IF v_acct_rule_name LIKE '%QUARTERLY%' THEN
    --Quarterly billing schedule
    SELECT FLOOR(MONTHS_BETWEEN( v_end_date,
    v_start_date)/3),
    v_end_date - ADD_MONTHS(v_start_date, (FLOOR(MONTHS_BETWEEN(v_end_date, v_start_date)/3)*3))
    INTO v_bill_qtrs,
    v_bill_days
    FROM dual;
    dbms_output.put_line('Calculated the qtrs and days');
    IF v_bill_qtrs > 0 THEN
    SELECT (ADD_MONTHS(v_start_date, (FLOOR(MONTHS_BETWEEN(v_end_date, v_start_date)/3)*3)) - v_start_date)*v_amt_per_day
    INTO v_amt
    FROM dual;
    dbms_output.put_line('Calculated qtr amt');
    SELECT NVL(MAX(sequence_no), 0) + 1
    INTO v_billing_sequence
    FROM oks_stream_levels_b
    WHERE dnz_chr_id = x_chr_id
    AND cle_id = x_line_id;
    --Populating the stream line variables
    l_strm_level_tbl(v_billing_sequence).sequence_no := v_billing_sequence;
    l_strm_level_tbl(v_billing_sequence).dnz_chr_id := x_chr_id;
    -- l_strm_level_tbl(v_billing_sequence).id := x_line_id;
    l_strm_level_tbl(v_billing_sequence).cle_id := x_line_id;
    l_strm_level_tbl(v_billing_sequence).uom_code := g_quarter_uom;
    l_strm_level_tbl(v_billing_sequence).uom_per_period := 1;
    l_strm_level_tbl(v_billing_sequence).level_periods := v_bill_qtrs;
    l_strm_level_tbl(v_billing_sequence).start_date := v_start_date;
    l_strm_level_tbl(v_billing_sequence).end_date := v_end_date;
    l_strm_level_tbl(v_billing_sequence).invoice_offset_days := NULL;
    l_strm_level_tbl(v_billing_sequence).amount := v_amt/v_bill_qtrs;
    l_strm_level_tbl(v_billing_sequence).level_amount := v_amt/v_bill_qtrs;
    l_strm_level_tbl(v_billing_sequence).lines_detailed_yn := 'Y';
    l_strm_level_tbl(v_billing_sequence).due_arr_yn := 'Y';
    dbms_output.put_line('Before calling the Bill Sch API for QTR');
    OKS_CONTRACTS_PUB.CREATE_BILL_SCHEDULE ( p_billing_sch=>'E',
    p_strm_level_tbl=>l_strm_level_tbl,
    p_invoice_rule_id=>v_invoicing_rule_id,
    x_return_status=>x_return_status);
    dbms_output.put_line('After calling the Bill Sch API for QTR');
    IF x_return_status <> 'S' THEN
    x_msg_count := 1;
    dbms_output.put_line('Quarterly schedule creation error ' || x_msg_data);
    ---DBMS_TRANSACTION.ROLLBACK_SAVEPOINT('OKS_A');
    -- RETURN;
    END IF;
    END IF;
    IF v_bill_days > 0 THEN
    SELECT NVL(MAX(sequence_no), 0) + 1
    INTO v_billing_sequence
    FROM oks_stream_levels_b
    WHERE dnz_chr_id = x_chr_id
    AND cle_id = x_line_id;
    dbms_output.put_line('sequence '||v_billing_sequence);
    --Populating the stream line variables
    l_strm_level_tbl(v_billing_sequence).sequence_no := v_billing_sequence;
    l_strm_level_tbl(v_billing_sequence).dnz_chr_id := x_chr_id;
    --l_strm_level_tbl(v_billing_sequence).id := x_line_id;
    l_strm_level_tbl(v_billing_sequence).cle_id := x_line_id;
    l_strm_level_tbl(v_billing_sequence).uom_code := g_day_uom;
    l_strm_level_tbl(v_billing_sequence).uom_per_period := v_bill_days;
    l_strm_level_tbl(v_billing_sequence).level_periods := 1;
    l_strm_level_tbl(v_billing_sequence).start_date := v_start_date;
    l_strm_level_tbl(v_billing_sequence).end_date := v_end_date;
    l_strm_level_tbl(v_billing_sequence).invoice_offset_days := NULL;
    l_strm_level_tbl(v_billing_sequence).amount := v_net_amount;--v_amt_per_day*v_bill_days;
    l_strm_level_tbl(v_billing_sequence).level_amount := v_net_amount;--v_amt_per_day*v_bill_days;
    l_strm_level_tbl(v_billing_sequence).lines_detailed_yn := 'Y';
    l_strm_level_tbl(v_billing_sequence).due_arr_yn := 'Y';
    dbms_output.put_line('Before calling the Bill Sch API for QTR days');
    OKS_CONTRACTS_PUB.CREATE_BILL_SCHEDULE ( p_billing_sch=>'E',
    p_strm_level_tbl=>l_strm_level_tbl,
    p_invoice_rule_id=>v_invoicing_rule_id,
    x_return_status=>x_return_status);
    dbms_output.put_line('After calling the Bill Sch API for QTR days ' || v_bill_days || ' ' || x_return_status);
    IF x_return_status <> 'S' THEN
    x_msg_count := 1;
    dbms_output.put_line('Day schedule, for quarterly accounting rule, creation error ' || x_msg_data);
    --DBMS_TRANSACTION.ROLLBACK_SAVEPOINT('OKS_A');
    --RETURN;
    END IF;
    END IF;
    ELSE
    --Monthly billing schedule
    SELECT FLOOR(MONTHS_BETWEEN( v_end_date,
    v_start_date)),
    v_end_date - ADD_MONTHS(v_start_date, FLOOR(MONTHS_BETWEEN(v_end_date, v_start_date)))
    INTO v_bill_mths,
    v_bill_days
    FROM dual;
    dbms_output.put_line('Calculated the mths and days');
    IF v_bill_mths > 0 THEN
    SELECT (ADD_MONTHS(v_start_date,FLOOR(MONTHS_BETWEEN(v_end_date, v_start_date))) - v_start_date)*v_amt_per_day
    INTO v_amt
    FROM dual;
    dbms_output.put_line('Calculated the mths amt');
    SELECT NVL(MAX(sequence_no), 0) + 1
    INTO v_billing_sequence
    FROM oks_stream_levels_b
    WHERE dnz_chr_id = x_chr_id
    AND cle_id = x_line_id;
    --Populating the stream line variables
    l_strm_level_tbl(v_billing_sequence).sequence_no := v_billing_sequence;
    l_strm_level_tbl(v_billing_sequence).dnz_chr_id := x_chr_id;
    --l_strm_level_tbl(v_billing_sequence).id := x_line_id;
    l_strm_level_tbl(v_billing_sequence).cle_id := x_line_id;
    l_strm_level_tbl(v_billing_sequence).uom_code := g_month_uom;
    l_strm_level_tbl(v_billing_sequence).uom_per_period := 1;
    l_strm_level_tbl(v_billing_sequence).level_periods := v_bill_mths;
    l_strm_level_tbl(v_billing_sequence).start_date := v_start_date;
    l_strm_level_tbl(v_billing_sequence).end_date := v_end_date;
    l_strm_level_tbl(v_billing_sequence).invoice_offset_days := NULL;
    l_strm_level_tbl(v_billing_sequence).amount := v_amt/v_bill_mths;
    l_strm_level_tbl(v_billing_sequence).level_amount := v_amt/v_bill_mths;
    l_strm_level_tbl(v_billing_sequence).lines_detailed_yn := 'Y';
    l_strm_level_tbl(v_billing_sequence).due_arr_yn := 'Y';
    dbms_output.put_line('Before calling the Bill Sch API for MTHS');
    OKS_CONTRACTS_PUB.CREATE_BILL_SCHEDULE ( p_billing_sch=>'E',
    p_strm_level_tbl=>l_strm_level_tbl,
    p_invoice_rule_id=>v_invoicing_rule_id,
    x_return_status=>x_return_status);
    dbms_output.put_line('After calling the Bill Sch API for MTHS');
    IF x_return_status <> 'S' THEN
    x_msg_count := 1;
    dbms_output.put_line('Monthly schedule creation error ' || x_msg_data);
    --DBMS_TRANSACTION.ROLLBACK_SAVEPOINT('OKS_A');
    --RETURN;
    END IF;
    END IF;
    IF v_bill_days > 0 THEN
    SELECT NVL(MAX(sequence_no), 0) + 1
    INTO v_billing_sequence
    FROM oks_stream_levels_b
    WHERE dnz_chr_id = x_chr_id
    AND cle_id = x_line_id;
    --Populating the stream line variables
    l_strm_level_tbl(v_billing_sequence).sequence_no := v_billing_sequence;
    l_strm_level_tbl(v_billing_sequence).dnz_chr_id := x_chr_id;
    --l_strm_level_tbl(v_billing_sequence).id := x_line_id;
    l_strm_level_tbl(v_billing_sequence).cle_id := x_line_id;
    l_strm_level_tbl(v_billing_sequence).uom_code := g_day_uom;
    l_strm_level_tbl(v_billing_sequence).uom_per_period := v_bill_days;
    l_strm_level_tbl(v_billing_sequence).level_periods := 1;
    l_strm_level_tbl(v_billing_sequence).start_date := v_start_date;
    l_strm_level_tbl(v_billing_sequence).end_date := v_end_date;
    l_strm_level_tbl(v_billing_sequence).invoice_offset_days := NULL;
    l_strm_level_tbl(v_billing_sequence).amount := v_amt_per_day*v_bill_days;
    l_strm_level_tbl(v_billing_sequence).level_amount := v_amt_per_day*v_bill_days;
    l_strm_level_tbl(v_billing_sequence).lines_detailed_yn := 'Y';
    l_strm_level_tbl(v_billing_sequence).due_arr_yn := 'Y';
    dbms_output.put_line('Before calling the Bill Sch API for MTH days');
    OKS_CONTRACTS_PUB.CREATE_BILL_SCHEDULE ( p_billing_sch=>'E',
    p_strm_level_tbl=>l_strm_level_tbl,
    p_invoice_rule_id=>v_invoicing_rule_id,
    x_return_status=>x_return_status);
    dbms_output.put_line('After calling the Bill Sch API for MTH days');
    IF x_return_status <> 'S' THEN
    x_msg_count := 1;
    dbms_output.put_line('Day schedule, for monthly accounting rule, creation error ' || x_msg_data);
    --DBMS_TRANSACTION.ROLLBACK_SAVEPOINT('OKS_A');
    --RETURN;
    END IF;
    END IF;
    END IF;
    COMMIT;
    EXCEPTION
    when others then
    dbms_output.put_line('Error ' || sqlerrm);
    END;
    Thanks,
    Yash.

    Hi There,
    I have a similar requirement to create rental service contracts and create billing schedules.
    Can you please pass on your functional docs so that i can refer to them.
    Thanks,
    Raidu

  • Dump OBJECTS_OBJREF_NOT_ASSIGNED on service contract creation

    Hi All,
    I am working on crm upgrade from 7.0 to ehp3.
    After upgrade, I am facing the dump when creating the new service contract from New-->By selecting the Transaction type.
    Please find the below dump description.
    Runtime Errors         OBJECTS_OBJREF_NOT_ASSIGNED
    ABAP Program           CL_BT112H_S_ITEMLIST_CN01=====CP
    Application Component  CRM-BTX-CTR-SCO
    Short Text
         Access using a 'ZERO' object reference is not possible.
    Error analysis
        You are trying to access a component with a 'ZERO' object reference
        (points to 'nothing'). Variable: " ".
        An object reference must point to an object (an instance of a class)
        before it can be used to access a component. The reference has either
        never been set, or it was set to 'ZERO' with a CLEAR statement.
    Information on where terminated
        The termination occurred in ABAP program "CL_BT112H_S_ITEMLIST_CN01=====CP"
         in "ON_NEW_FOCUS".
        1 METHOD on_new_focus.
        2
        3   DATA lv_collection TYPE REF TO if_bol_bo_col.
        4   DATA lr_entity     TYPE REF TO cl_crm_bol_entity.
        5 ************************************************************
        6
    >>>>>   IF gr_tvc->gv_fast_mode_enabled EQ abap_true.
        8     trigger_coll_determ( focus_bo ).
        9   ELSE.
       10     lr_entity ?= focus_bo.
       11     TRY.
       12         lv_collection = lr_entity->get_related_entities( iv_
       13       CATCH cx_crm_genil_model_error cx_sy_ref_is_initial.
       14         RETURN.
       15     ENDTRY.
    Can anyone please help me in resolving the issue.
    Thanks & Regards,
    Chiru

    I'm afraid not, I'm still in ehp2, I just pointed to the note to ensure you started from there, I don't know if Nicolas Busson or Christian Drumm can help you from here keep us updated!

Maybe you are looking for