Search code examples
javascriptrallyappsdk2lookbackapi

rally lookback is lowest portfolio Item an indexed field?


The lookback api docs say PortfolioItem field is an index. Is the lowest portfolio item type also an index?

E.g: the Portfolio Item types in my workspace are Product, Milestone and Feature. will Feature be an index in Lookback API in addition to PortfolioItem?

The reason I ask is because only top-level UserStories have the PortfolioItem field, but both top-level and child UserStories have the Feature field. I want to query all User Stories under a particular Feature, which means I can't use PortfolioItem field, because it will not include child User Stories, only top-level User Stories.

Example of what i want to do if Feature is indexed:

    Ext.create('Rally.data.lookback.SnapshotStore', {
        listeners: {
            load: function(store, data, success) {
                //do stuff
            }
        },
        autoLoad:true,
        limit:Infinity,
        fetch: ['ScheduleState', 'PlanEstimate', 'Feature', 'ObjectID'],
        compress:true,
        find: { 
            _TypeHierarchy: 'HierarchicalRequirement', 
            Children: null,
            Release: //a release OID
        },
        hydrate: ['ScheduleState']
    });

Solution

  • There may be some confusion with the use of the word 'index'. Some fields are "indexed" for fast lookup..."Feature" isn't one of them, though it is a valid field and you can search for it. More correctly, the field that is the lowest-level Portfolio Item type is kept in the snapshots.* Given what you're asking for, adding "Feature": {oid} to the find should give you what you want.

    * The distinction is due to the fact that the label "Feature" can be changed to something else, so what is "Feature" in one workspace might be "Thing" in another.