Error Messages

Overview

Errors, exceptions, and bugs are a part of building any application. By paying close attention to how we deal with and handle errors, we can create an application that is easy to maintain and administrate. Errors can occur anywhere in our implementations, whether in the "point and click" administration, within our scripting or custom solutions, or within external systems that we connect with as a matter of business. Error prone operations:

Administration

Error Messages and Solutions:

ClosedThe partner site could not be updated. The following errors were returned: invalid record ID.

Description: When trying to integrate with Salesforce, this error message appears:

The partner site could not be updated. The following errors were returned: invalid record id.  

This error is usually caused by a recent change to the Salesforce or Oracle CPQ set.

Solution: Check your Salesforce garbage bin, which may allow you to restore deleted content. To get a more detailed error message, which should help troubleshoot the problem further, you can check the error on the Salesforce web site.

  1. Navigate to the quote through the Quote Manager on the user side.
  2. Use your browser to View Source, and perform a search for "id (double-quote, id)".
  3. Copy the value of the hidden field.

    It should be a 7 or 8 digit number.

  4. ClosedNavigate to the Integrations  page.

    1. Click Admin to go to the Admin Home Page.

    2. Click Process Definition in the Commerce and Documents section.

      The Processes page opens.

    3. For the Process you are interested in, select Integrations in the Navigation drop-down and click List.

      The Integrations page opens.

  5. Click the name of the XSL file you are interested in.

    The Edit Integration page opens.

  6. Paste the ID number into the Transaction ID field and click Preview SOAP XML.

    For more information, see the topic Finding the Transaction ID.

  7. Copy the ID value within queryString in the SOAP XML.
  8. Navigate to your Salesforce application and open any opportunity.
  9. In the URL, replace the value of ID with the value you copied from the SOAP XML.

You can view the detailed error message produced by Salesforce.


ClosedAn error occurred while communicating with the partner site.

Description: The following message appears when performing an action in Oracle CPQ that triggers an integration with Salesforce:

"An error occurred while communicating with the partner site."

You will want to check the integration associated with the action, and take a look at the SOAP Generator XSL file.

Let's say we have the following code in XSL:

<xsl:variable name="MNamount" select="$sub_doc/relatedMaintenance/>
<Maintenance_Amount__c>
<xsl:value-of select="$MNamount"/>
</Maintenance_Amount__c>

If the value for relatedMaintenance does not exist in the XML Document, MNamount will be undefined, and the generated SOAP XML Input will be:

<Maintenance_Amount__c></Maintenance_Amount__c>

Salesforce does not accept SOAP XML with attributes containing no value. Therefore we will receive the following error:

An error occurred while communicating with the partner site.

Solution: To resolve this, put in a check to make sure the attribute is defined:

Example 1:

<xsl:if test="$MNamount">
<Maintenance_Amount__c xmlns="">
<xsl:value-of select="$MNamount"/>
</Maintenance_Amount__c>
</xsl:if>

Example 2:

<xsl:choose>
<xsl:when test="$MNamount">
<Maintenance_Amount__c xmlns="">
<xsl:value-of select="$MNamount"/>
</Maintenance_Amount__c>
</xsl:when>
<xsl:otherwise>
<Maintenance_Amount__c xmlns="">
<!-- Default value -->
</Maintenance_Amount__c>
</xsl:otherwise>
<xsl:choose>

ClosedPage cannot be displayed.

While using the Oracle CPQ application in Internet Explorer, trying to save a quote or add lines results in the following error message:

Page Cannot be Displayed

This is due to settings that need to be set in the Internet Explorer browser. For more information, see the topic Browser Compatibility and the Release Documentation.


ClosedError printing output: FO to RTF/PDF

Description: An error occurs when printing output: FO to RTF or FO to PDF. This usually occurs when a change has been made to any custom text that is displayed on the printed output, or a change has been made to the Document Engine. It may also happen on sites that still use the Proposal Editor, which is a legacy version of the Document Engine.

Solution: The first step is to track back through any recent changes you have made, and verify that there aren't any invalid characters or incorrect HTML formatting in the edited section. Remember to never paste from Microsoft Word into Oracle CPQ fields, and if you suspect that someone has, remove the offending section completely and reenter it, using the controls on the browser text editor to format the text.

If you still cannot find the source of this error, follow these steps:

  1. Open the problem quote in the Quote Manager.
  2. View Source, and locate the BS_ID by searching for "id (open quote, id).
  3. ClosedNavigate to the Printer Friendly/History XSL Views  page.

    1. Click Admin to go to the Admin Home Page.

    2. Click Process Definition in the Commerce and Documents section.

      The Processes page opens.

    3. For the Process you are interested in, select Printer Friendly History/XSL Views in the Navigation drop-down and click List.

      The Printer Friendly/History XSL Views page opens.

  4. For the view you are interested in, click the link in the XSL View Name column.

    If you're not sure which view it is, look under the Action Admin for the button you pressed to see the error, under the XSL tab.

    The Add/Update XSL View page opens.

  5. Paste the BS_ID into the Transaction ID field.
  6. Choose No Converter from the Process Output Through drop-down.
  7. Click Apply.
  8. When the page stops loading, select Preview Document.

    This spits out a pure XSL file now, because you turned off the converter.

  9. Make sure you are viewing the XSL file in Internet Explorer.

    If you're in Firefox, just save it to the desktop and view it in Internet Explorer.

  10. Scroll all the way to the bottom of the page.

    There should be an XML error, and it will be right next to some text that should help you identify where exactly the problem is happening.

    Remember to turn the converter back on in the "Process Output Through," or the next deploy will cause the users to see the bare XSL.
    Never copy/paste directly from Microsoft Word into Oracle CPQ fields.

ClosedUser does not have permission to view this page.

Description: A user gets an error that they do not have permission to view a page. This error occurs when a user does not have the User Access Rights in a specific step of a quote.

Solution: The User Access Rights are managed in the Process page for that Process.

  1. ClosedNavigate to the Process page.

    1. Click Admin to go to the Admin Home Page.

    2. Click Process Definition in the Commerce and Documents section.

      The Processes page opens.

    3. For the Process you are interested in, select Steps in the Navigation drop-down and click List.

      The Process page for that Process appears.

  2. In the tree navigation panel on the left, double-click the name of a step and then the name of a user profile.

  3. Click the User Access Rights tab in the panel on the right.

    Confirm that the user has the necessary access rights.

You may also need to check which group the user is in, on the User Detail page.

  1. ClosedNavigate to the User Detail page.

    1. Click Admin to go to the Admin Home Page.
    2. Click Internal Users in the Users section.

      The Users page opens.

    1. Click a name in the Login column.

      The User Detail page opens.

  2. Review the Associations section.

    The user will be placed into the first Participant Profile, from top to bottom, which has granted him access. For more information, see the topic Participant Profiles.


ClosedNull Pointer Exceptions

What: A null exception error occurs when you refer to an array index that is not populated. It will show an error to the users, and appear in the application error logs.

Why:  Null pointer exceptions are common, so dealing with and avoiding them will save a lot of time and avoid bad user experiences.

Where: Any BML function.

How: Avoiding a null-pointer exception is simple and straight-forward; test that the array index exists before accessing it. You can do this with the sizeofarray function. You should also do this when working with dictionaries, even though the dictionary will not return the null pointer error. The containskey function allows you to check for the existence of a dictionary element before accessing it.

ClosedExample

  • The error logs will show the exception, along with a line number. Be prepared to locate the error in Util libraries.
  • This means building a list of parameters that will be passed to the function, and may involve writing a test script to debug all the way to the final line.
Users who are not FullAccess Users will likely see the "Contact your system administrator" message.

Legacy

ClosedHTTP 500 Response Code while calling Update Transaction

This is an internal server error. Occurs in Version 10 and 11 sites, the updateTransaction SOAP call has different mandatory attributes and changes to the format of input data.

Closed Confirmed mandatory attributes for bm:quote_process:


ClosedSome non-string data types can no longer be enclosed in CDATA tags


ClosedNamespace for the <data_xml> tag is now required


Related Topics

Related Topics Link IconSee Also