MS CRM 3.0: Unable to add products to opportunities.

Posted on 2007-07-30
Last Modified: 2008-01-09
We are about to roll out MS CRM 3.0 to around 25 users but I've hit a snag. No users are able to add opportunity products to an existing opportunity. When trying to save a selected product we recieve the following error message:

Record Is Unavailable
The record that you are requesting is currently unavailable. Either the record was not found or you do not have sufficient security permissions to view it.

It doesn't matter who owns the opportunity or who the user is (even Admin) and the security permissions look good. We have a test system set up on a Virtual Machine with an identical user/permissions setup and it works fine there. I'm guessing this may be a database issue.

We have a Microsoft CRM 3.0 Server running on MS Server 2003 R2 with Update Rollup 2 installed. The SQL Database is sitting on a seperate MS SQL 2000 server.

Can anyone help?
Question by:tdoull

    Author Comment

    After having turned "DevErrors" on I have this more detailed message which hasn't helped me at all:

    Microsoft CRM Unhandled Error Details:
    Server Error in '/' Application.

    <description>The specified object was not found.</description>
    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

    Exception Details: System.Runtime.InteropServices.COMException: <description>The specified object was not found.</description>

    Source Error:

    An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.  

    Stack Trace:

    [COMException (0x80040217): <description>The specified object was not found.</description>]
       Microsoft.Crm.Platform.ComProxy.CRMOpportunityProductClass.Create(CUserAuth& Caller, String OpportunityProductXml) +0
       Microsoft.Crm.Application.Platform.OpportunityProduct.InternalCreate(String xml) +31
       Microsoft.Crm.Application.Platform.Entity.Create() +109
       Microsoft.Crm.Application.Forms.AppForm.RaiseDataEvent(FormEventId eventId) +408
       Microsoft.Crm.Application.Forms.EndUserForm.Initialize(Entity entity) +57
       Microsoft.Crm.Application.Forms.CustomizableForm.Execute(Entity entity, String formId, String formType) +83
       Microsoft.Crm.Application.Forms.CustomizableForm.Execute(Entity entity) +13
       Microsoft.Crm.Web.SFA.OpportunityProductDetailPage.ConfigureForm() +197
       Microsoft.Crm.Application.Controls.AppPage.OnPreRender(EventArgs e) +30
       System.Web.UI.Control.PreRenderRecursiveInternal() +62
       System.Web.UI.Page.ProcessRequestMain() +1499

    LVL 11

    Expert Comment


    I've been having the same problem. The reason for this error is that the GUID that you've specified apparently doesn't exist. The issue I'm having is that it clearly does! I'm investigating further now and will let you know if I get to the bottom of this.

    LVL 11

    Expert Comment


    My error came from using the SDK. Turned out that one of my lookups was referencing a GUID that no longer exists. The GUID for the object did still exist and this is what I was checking. I would suggest that somehow your database base become corrupt and that it's trying to update a record where the lookup doesn't exist any longer. What happens if you copy the test database on to live server - do you get the same error then?


    Author Comment

    Using the test database everything worked fine. It's not a database problem though, it was a problem with some customisation added by our consultants. In the "Opportunity Product" Form there was some OnChange code in the properties of the Product field. This code directly used the UoMID to automatically populate the Unit field. It turns out that the UoMID was incorrect (for the live database) and doesnt reference anything in the table relevant. I corrected this and now everything works perfectly. :)

    Thanks for the help and I hope this helps you with your problem too.
    LVL 1

    Accepted Solution

    PAQed with points refunded (500)

    EE Admin

    Featured Post

    How to run any project with ease

    Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
    - Combine task lists, docs, spreadsheets, and chat in one
    - View and edit from mobile/offline
    - Cut down on emails

    Join & Write a Comment

    Let's review the features of new SQL Server 2012 (Denali CTP3). It listed as below: PERCENT_RANK(): PERCENT_RANK() function will returns the percentage value of rank of the values among its group. PERCENT_RANK() function value always in be…
    Introduction SQL Server Integration Services can read XML files, that’s known by every BI developer.  (If you didn’t, don’t worry, I’m aiming this article at newcomers as well.) But how far can you go?  When does the XML Source component become …
    This video shows, step by step, how to configure Oracle Heterogeneous Services via the Generic Gateway Agent in order to make a connection from an Oracle session and access a remote SQL Server database table.
    Via a live example, show how to backup a database, simulate a failure backup the tail of the database transaction log and perform the restore.

    745 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    15 Experts available now in Live!

    Get 1:1 Help Now