INVALID The Resolution Code error when updating status via ChangeStatus method
search cancel

INVALID The Resolution Code error when updating status via ChangeStatus method

book

Article ID: 139704

calendar_today

Updated On:

Products

CA Service Management - Service Desk Manager CA Service Desk Manager

Issue/Introduction

The following error appears in SOAP UI response/PAM Web Service response when consuming the ChangeStatus SOAP Web Service method:

INVALID The Resolution Code field is required when updating an incident to a Resolved status

 

Sample SOAP Request:

      <ser:changeStatus>
         <sid>ID</sid>
         <creator>cnt:<ID></creator>
         <objectHandle>cr:<ID></objectHandle>
         <description>test</description>
         <newStatusHandle>crs:<ID></newStatusHandle>
      </ser:changeStatus>

Response:

<faultcode>soapenv:Client</faultcode>
<faultstring>INVALID The Resolution Code field is required when updating an incident to a Resolved status.</faultstring>
<faultactor></faultactor>
<detail>
<ErrorMessage>INVALID The Resolution Code field is required when updating an incident to a Resolved status.</ErrorMessage>
<ErrorCode>1</ErrorCode>
</detail>

Environment

CA Service Management 17.x

Cause

Resolution Code in this case is a Required Attribute on the Resolved Status.

Resolution

The ticket needs to be updated first with UpdateObject to set the Resolution Code (or any other Required attributes with appropriate values) first.  There after a ChangeStatus call can be placed to mark it as Resolved.

Example:

Step 1:

      <ser:updateObject>
         <sid><ID></sid>
         <objectHandle>cr:<ID></objectHandle>
         <attrVals>
            <!--1 or more repetitions:-->
            <string>resolution_code</string>
             <string><ID></string>
         </attrVals>
         <attributes>
            <!--1 or more repetitions:-->
            <string>resolution_code</string>
         </attributes>
      </ser:updateObject>

 As the required attribute now is set, the same ChangeStatus call can now be made to set it to Resolved.

Step 2:

      <ser:changeStatus>
         <sid><ID></sid>
         <creator>cnt:<ID></creator>
         <objectHandle>cr:<ID></objectHandle>
         <description>test RESOLVED </description>
         <newStatusHandle>crs:<ID></newStatusHandle>
      </ser:changeStatus>