For CA Service Catalog, SOAPUI_getFormRateItemValues WebServices

Document ID : KB000096748
Last Modified Date : 17/05/2018
Show Technical Document Details
Introduction:
How to retrieve Service-option-with-form data with WebServices?
Background:
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.
Instructions:
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>