How can I display the last pushed date for an object?

You can create a custom index and column that shows the date in any Dynamic Grid.

Description

Pushing objects from one branch to another branch is an important part of the documentation cycle in IXIASOFT Dynamic Release Management (DRM). However, it is sometimes difficult to know when an object was last pushed, or if an object has been pushed at all.

Solution

You can create a custom index and column to show the date the object was last pushed. The column can appear in any Dynamic Grid, so users can quickly check if objects have been pushed.

Important: When making any changes to an index, be sure to do them at a time when activity in IXIASOFT CCMS is very low.
  1. In Index Definition, add the following index:
    <index NAME="last_pushed_date" CUSTOMPROPERTY="True" SYNC="False">
        <dateindex KEEPEXTRACTEDVALUES="True">
            <dateindexproperties>
                <datevalidation VALUE="YearMonthDay"/>
                <formats>
                    <format NAME="ISO 8601"/>
                </formats>
            </dateindexproperties>
            <elements>
                <!--These display the last pushed date for the object in the development branch-->
                <element DEPTH="0" XPATH="//systemComment[@actionName='pushToManual' and @current='true']/@date"/>
                <element DEPTH="0" XPATH="//systemComment[@actionName='pushToAutomatic' and @current='true']/@date"/>
                <!--These display the last pushed date for the object in the delivery branch-->
                <element DEPTH="0" XPATH="//systemComment[@actionName='pushFromAutomatic' and @current='true']/@date"/>
                <element DEPTH="0" XPATH="//systemComment[@actionName='pushFromManual' and @current='true']/@date"/>
                <!--This displays the date of the initial push of the object from development to delivery. In the
                future this property might be used for any kind of "Add to branch" action, so it might over-include.-->
                <element DEPTH="0" XPATH="//systemComment[@actionName='sharedWith' and @current='true']/@date"/>
            </elements>
        </dateindex>
    </index>
    Note: You can include or exclude specific <element> lines of this index depending on where you want to see the date displayed. The comments in the code above explain which lines are for Delivery branches and which are for Development Branches.

    For example, if you only want to see the date displayed for objects in the Delivery branch, you can exclude the first two lines.

  2. Add the index to the ixiasoftccmssummary list:
    <field NAME="last_pushed_date" TYPE="Index" VALUE="All"/>
  3. To display the column in IXIASOFT CCMS Web, add the index to a new column in additionalcolumnDefinitions.xml.
    For example:
    <columnDefinition indexName="last_pushed_date" columnType="date">
       <captions>
          <caption lang="en" displayText="Last Pushed Date"></caption>
          <caption lang="fr" displayText="Date Dernier Envoi"></caption>
       </captions>
    </columnDefinition>
  4. To display the column in IXIASOFT CCMS Desktop, add it the following in display.xml:
    <key halign="LEFT" label="Last Pushed Date" name="last_pushed_date" sortOrder="ASC" sortType="DATE" type="Property" visibility="255" width="125"/>
  5. Save and check in the files.
  6. Refresh the Web Server.
  7. Refresh your web browser to see the new column.
    Note: In rare cases, it might be necessary to restart Tomcat.
  8. If you added the column to CCMS Desktop, restart Eclipse.