Извлечение всего имени проекта для накопленной блок-схемы проекта в ралли

Я генерирую накопительную блок-схему проекта, которая основана на имени проекта, которое я выбираю, используя "найти", однако не могу заставить его работать.

Вот проблема: 1) "Найти" в моем коде просто выбирает один тип имени проекта, "FE", однако у меня есть много других названий проектов, таких как FE, BE, VisualRF и т. Д. Я не являюсь уверен, что происходит

2) Я возвращаю это "storeConfig" внутри диаграммы, а затем хочу попробовать присвоить "Name" для "stateFieldName". Это не работает! Я не вижу никакого графика вообще.

Вот код

    _chart2: function() {
    var projectName = this.getContext().getProject()._refObjectName;
    console.log("========");
    console.log(projectName);   <<<<<<<<<< This always prints one name'FE' (My project name are FE, BE, etc)
    this.chart = {
            xtype: 'rallychart',
            storeType: 'Rally.data.lookback.SnapshotStore',
            storeConfig: this._getStoreForChart2(),
            calculatorType: 'Rally.example.CFDCalculator',
            calculatorConfig: {
              stateFieldName: this.getContext().getProject()._refObjectName, <<<<< I think usage is not fetching name of all projects 
              stateFieldValues: ['FE','BE','VisualRF']                  
            },
            width: 1000,
            height: 600,
            chartConfig: this._getChart2Config()
        };
    this.chartContainer.add(this.chart);
},


_getStoreForChart2: function() {        
    var obj1 = {
        find: {
            _TypeHierarchy: { '$in' : [ 'Defect' ] },
            Children: null,
            _ProjectHierarchy: this.getContext().getProject().ObjectID,
            _ValidFrom: {'$gt': Rally.util.DateTime.toIsoString(Rally.util.DateTime.add(new Date(), 'day', -30)) },
            State: "Open",
        },
        fetch: ['Severity','Project','ObjectID','FormattedID'],
        hydrate: ['Severity','Project','ObjectID','FormattedID'],
        sort: {
            _ValidFrom: 1
        },
        context: this.getContext().getDataContext(),
        limit: Infinity,
        val: this.Name,
    };
    return obj1;
},

Хотя это не должно иметь значения, но вот код для функции high chart, которую я вызываю выше

  _getChart2Config: function() {
    console.log("starting chart config");
    return {
        chart: {
            zoomType: 'xy'
        },
        title: {
            text: 'Chart2'
        },
        xAxis: {
            tickmarkPlacement: 'on',
            tickInterval: 20,
            title: {
                text: 'Date'
            }
        },
        yAxis: [
            {
                title: {
                    text: 'Count'
                }
            }
        ],
        plotOptions: {
            series: {
                marker: {
                    enabled: false
                }
            },
            area: {
                stacking: 'normal'
            }
        }
    };
},

Внизу вы можете увидеть распечатку "FE": Вы можете видеть, что FE приносит распечатанный, но мой 'Find' возвращает много результатов. Я должен передать их в stateFieldName, чтобы все значения использовались для построения совокупной блок-схемы проекта

Большое спасибо! Кей

1 ответ

stateFieldName - это поле, которое используется для вычисления CFD- обычно ScheduleState или настраиваемое раскрывающееся поле, например KanbanState, которое фиксирует ваш процесс. StateFieldValues ​​должны быть значениями этого поля (Определено, Выполняется, Принят, Завершено и т. Д.). Это вообще не касается проектов. Обязательно включите это поле в свой гидрат и получите.

Другие вопросы по тегам