You are here: Best Practices > Errors > Error Messages

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 CPQ Cloud 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. To do this:

  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. Navigate from: Admin > Process Definition > Integration XSL Files.
  5. Select the XSL file you are working with, and paste the ID number into the Transaction ID field.
  6. Select Preview SOAP XML.
  7. Copy the ID value, within queryString.
  8. Navigate to your Sales Force page, and open up any opportunity.
  9. In the URL, replace the value of ID with the value you copied from SOAP XML.

You will now be able to 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 CPQ Cloud 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 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 a check to make sure the attribute is defined:

<xsl:if test="$MNamount">

<Maintenance_Amount__c xmlns="">

<xsl:value-of select="$MNamount"/>

</Maintenance_Amount__c>

</xsl:if>

OR

<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 CPQ Cloud application in Internet Explorer, trying to save a quote or add lines the error message "Page Cannot be Displayed" displays. This is due to settings that need to be set in the Internet Explorer browser. For more information, see Browser Compatibility and 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 CPQ Cloud 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. Navigate from: Admin > Process Definition > Printer Friendly History/XSL Views.
  4. Enter the appropriate XSL section. If you're not sure which it is, you can look under the Action Admin for the button you pressed to see the error, under the XSL tab.
  5. Paste the BS_ID into the Transaction 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.
    1. 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 CPQ Cloud fields.

ClosedUser does not have permission to view this page.

Description: User get 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 under Admin > Process Definition > Steps > {Step Name} > Participant Profiles > User Access Rights. You may also need to check which group the user is in, by navigating to Admin > Users > {Username} > Groups tab. The user will be placed into the first Participant Profile, from top to bottom, which has granted him access. For more information, see 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.

Example:

result = "";

delimiter="!_-_!";

delimited_string = "discount_value"+delimiter+"10.0"+delimiter+"discount_percent"+delimiter+"0.5";

//parsed_array will only contain 4 items

parsed_array = split(delimiter, delimited_string);

//test for length before accessing!

if(sizeofarray(parsed_array) > 10) {

result = parsed_array[10];

} else {

// deal with unexpected data transparently, don't just hide it

result = "Error parsing string in util library: " + delimited_string;

}

return result;


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


NOTES

RELATED TOPICS

Related Topics Link IconSee Also