For CA Service Catalog, SOAPUI_getFormRateItemValues WebServices

book

Article ID: 96748

calendar_today

Updated On:

Products

CA Service Catalog CA Service Management - Asset Portfolio Management CA Service Management - Service Desk Manager

Issue/Introduction

How to retrieve Service-option-with-form data with WebServices?

We need to gather individual attributes from CA Service Catalog form.
A form for creating a new service in CA service catalog.
We used (according http:// : /usm/API/SOAP/index.html) WS methods getAllOfferings and getRatePlanIncludedInOffering.
To gather list of offerings and RatePlans.
What can we do next, to gather individual attributes from the form?

Environment

Windows running CA Service Catalog.

Resolution

The following information was found for this subject.
Please note that the values used, are to be taken as an example.
They should/need to be replaced by your local dfinitions.
  
1:
To check the content of the mdb database, execute these queries:
=
Select * FROM usm_offering where offering_id = 10036
=
Select * FROM usm_rate_plan where rate_plan_id = 10118
=
Select * FROM usm_rate_definition where rate_plan_id = 10118
=
SELECT item_id,rate_plan_id,rate_row,rate_col,status
      ,item_text,item_type,text_1,text_2
FROM usm_rate_definition where rate_plan_id = 10118
12018 | 10118 | 1 | 0 | 1 | ExampleText    | 0  | ExampleText | 
12019 | 10118 | 1 | 1 | 0 | ExampleForm    | 0  | ExampleForm | 
12020 | 10118 | 1 | 1 | 1 | ExampleSCform  | 14 | 10416       | Form_Contact
12021 | 10118 | 1 | 2 | 1 | ExampleWFLform | 13 | Example.xml | 
=
SELECT id,offering_id,rate_plan_id,item_id,subscription_type
      ,text_1,request_id
FROM usm_subscription_detail where offering_id = 10136
10018 | 10136 | 10118 | 12018 | 0 | NULL        | 10005
10019 | 10136 | 10118 | 12021 | 4 | Example.xml | 10005
10020 | 10136 | 10118 | 12020 | 5 | 10416       | 10005
=
SELECT subscription_detail_id,form_elem_name,form_elem_value
FROM usm_request_item_form where subscription_detail_id = 10019
10019 | install        | Example2
10019 | swp_Group      | 
10019 | swp_Install    | Example3
10019 | swp_SourceDate | Example4
10019 | swp_SWName     | swname
10019 | swp_SWVersion  | swversion
10019 | swp_Field      | 
 
2:
And then for the SOAPUI/WebServices Method to execute next:
SOAPUI: >>> 10019
<subscriptionDetailID xsi:type="xsd:int">10019</subscriptionDetailID>

<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://services.soap.usm.ca.com">
   <soapenv:Header/>
   <soapenv:Body>
      <ser:getFormRateItemValues soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
         <sessionID xsi:type="xsd:string">?</sessionID>
         <subscriptionDetailID xsi:type="xsd:int">?</subscriptionDetailID>
      </ser:getFormRateItemValues>
   </soapenv:Body>
</soapenv:Envelope>

Result:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <soapenv:Body>
      <ns1:getFormRateItemValuesResponse soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://services.soap.usm.ca.com">
         <getFormRateItemValuesReturn xsi:type="ns2:FormItem" xmlns:ns2="urn:usmRequestService">
            <fileName xsi:type="xsd:string">Example.xml</fileName>
            <form soapenc:arrayType="ns2:FormElement8" xsi:type="soapenc:Array" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
               <form xsi:type="ns2:FormElement">
                  <ID xsi:type="xsd:string">swp_SWName</ID>
                  <label xsi:type="xsd:string">SW-Name</label>
                  <labelValue xsi:type="xsd:string" xsi:nil="true"/>
                  <type xsi:type="xsd:int">5</type>
                  <value xsi:type="xsd:string">swname</value>
               </form>
               <form xsi:type="ns2:FormElement">
                  <ID xsi:type="xsd:string">swp_SWVersion</ID>
                  <label xsi:type="xsd:string">SW-Version</label>
                  <labelValue xsi:type="xsd:string" xsi:nil="true"/>
                  <type xsi:type="xsd:int">5</type>
                  <value xsi:type="xsd:string">swversion</value>
               </form>
               <form xsi:type="ns2:FormElement">
                  <ID xsi:type="xsd:string">swp_SourceDate</ID>
                  <label xsi:type="xsd:string">Example4</label>
                  <labelValue xsi:type="xsd:string" xsi:nil="true"/>
                  <type xsi:type="xsd:int">5</type>
                  <value xsi:type="xsd:string">Example4</value>
               </form>
               <form xsi:type="ns2:FormElement">
                  <ID xsi:type="xsd:string">swp_Install</ID>
                  <label xsi:type="xsd:string">Example3</label>
                  <labelValue xsi:type="xsd:string" xsi:nil="true"/>
                  <type xsi:type="xsd:int">5</type>
                  <value xsi:type="xsd:string">Example3</value>
               </form>
               <form xsi:type="ns2:FormElement">
                  <ID xsi:type="xsd:string">install</ID>
                  <label xsi:type="xsd:string">Number of Installations</label>
                  <labelValue xsi:type="xsd:string" xsi:nil="true"/>
                  <type xsi:type="xsd:int">5</type>
                  <value xsi:type="xsd:string">Example2</value>
               </form>
               <form xsi:type="ns2:FormElement">
                  <ID xsi:type="xsd:string">swp_Group</ID>
                  <label xsi:type="xsd:string">Member of Group</label>
                  <labelValue xsi:type="xsd:string" xsi:nil="true"/>
                  <type xsi:type="xsd:int">5</type>
                  <value xsi:type="xsd:string" xsi:nil="true"/>
               </form>
               <form xsi:type="ns2:FormElement">
                  <ID xsi:type="xsd:string">swp_Field</ID>
                  <label xsi:type="xsd:string">Software Test</label>
                  <labelValue xsi:type="xsd:string" xsi:nil="true"/>
                  <type xsi:type="xsd:int">5</type>
                  <value xsi:type="xsd:string" xsi:nil="true"/>
               </form>
               <form xsi:type="ns2:FormElement">
                  <ID xsi:type="xsd:string">swp_KDStandard</ID>
                  <label xsi:type="xsd:string">Change of Client Standard</label>
                  <labelValue xsi:type="xsd:string" xsi:nil="true"/>
                  <type xsi:type="xsd:int">7</type>
                  <value xsi:type="xsd:string" xsi:nil="true"/>
               </form>
            </form>
            <formName xsi:type="xsd:string">ExampleWFLform</formName>
            <offeringID xsi:type="xsd:int">10136</offeringID>
            <rateItemID xsi:type="xsd:int">12021</rateItemID>
            <ratePlanID xsi:type="xsd:int">10118</ratePlanID>
            <subscriptionDetailID xsi:type="xsd:int">10019</subscriptionDetailID>
         </getFormRateItemValuesReturn>
      </ns1:getFormRateItemValuesResponse>
   </soapenv:Body>
</soapenv:Envelope>