Skip to main content
Planview Customer Success Center

Get Available Fields for a Complex Entity

There is a set of entities called "complex" entities. Complex entities have nested attributes and are accessed with entity-specific web service operations, such as getPortfolioFields and getRequestFields.

The following is an example using getPortfolioFields to retrieve all available fields for a portfolio type (in the UI this is the Category). This operation requires the ID of the portfolio type/Category, which you can find on Admin/Setup/Portfolio Categories.

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://services">

   <soapenv:Header/>

   <soapenv:Body>

      <ser:getPortfolioFields>

         <ser:sessionId>d44a8562-6f46-45a9-8209-3b908d31d916</ser:sessionId>

         <!--The Portfolio Type ID -->

         <ser:portfolioTypeId>8408893</ser:portfolioTypeId>

      </ser:getPortfolioFields>

   </soapenv:Body>

</soapenv:Envelope>

 

Response (partial)

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">

   <soapenv:Body>

      <ns:getPortfolioFieldsResponse xmlns:ns="http://services" xmlns:ax21="http://objects.services/xsd">

         <ns:return xsi:type="ax21:ObjectMethod" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

            <ax21:defaultValue xsi:nil="true"/>

            <ax21:fieldLength>9</ax21:fieldLength>

            <ax21:fieldSubTypeId>0</ax21:fieldSubTypeId>

            <ax21:fieldTypeId>20</ax21:fieldTypeId>

            <ax21:isRequired>false</ax21:isRequired>

            <ax21:label>Portfolio:</ax21:label>

            <ax21:method>parentTypeId</ax21:method>

            <ax21:methodId>114134</ax21:methodId>

            <ax21:onInsert>true</ax21:onInsert>

            <ax21:onSelect>true</ax21:onSelect>

            <ax21:onUpdate>false</ax21:onUpdate>

            <ax21:sequence>0</ax21:sequence>

         </ns:return>

         <ns:return xsi:type="ax21:ObjectMethod" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

            <ax21:defaultValue xsi:nil="true"/>

            <ax21:fieldLength>12</ax21:fieldLength>

            <ax21:fieldSubTypeId>0</ax21:fieldSubTypeId>

            <ax21:fieldTypeId>31</ax21:fieldTypeId>

            <ax21:isRequired>false</ax21:isRequired>

            <ax21:label>Portfolio: Actual Cost - Direct</ax21:label>

            <ax21:method>actualCostHere</ax21:method>

            <ax21:methodId>114141</ax21:methodId>

            <ax21:onInsert>false</ax21:onInsert>

            <ax21:onSelect>true</ax21:onSelect>

            <ax21:onUpdate>false</ax21:onUpdate>

            <ax21:sequence>90</ax21:sequence>

         </ns:return>

         <ns:return xsi:type="ax21:ObjectMethod" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

            <ax21:defaultValue xsi:nil="true"/>

            <ax21:fieldLength>12</ax21:fieldLength>

            <ax21:fieldSubTypeId>0</ax21:fieldSubTypeId>

            <ax21:fieldTypeId>31</ax21:fieldTypeId>

            <ax21:isRequired>false</ax21:isRequired>

            <ax21:label>Portfolio: Actual Hours - Direct</ax21:label>

            <ax21:method>actualHoursHere</ax21:method>

            <ax21:methodId>114140</ax21:methodId>

            <ax21:onInsert>false</ax21:onInsert>

            <ax21:onSelect>true</ax21:onSelect>

            <ax21:onUpdate>false</ax21:onUpdate>

            <ax21:sequence>90</ax21:sequence>

         </ns:return>