2013-08-19 1 views
0

Rally percent done by story count and plan estimate color coding algorithm과 관련되어 있지만 여기서 대답하지 않은 부분을 묻습니다.랠리 % ui 구성 요소를 완료했습니다.

SDK 2.0의 Percent Done ui component은 랠리에서 사용하는 알고리즘 (백분율을 기준으로 한 색 코드 만)에 따라 카드를 색칠하지 않습니다. 컬러 코딩 기능 또는 렌더링 기능을 제공하여 Rally의 기능과 일치하도록이 기능을 변경할 수 있습니까? 감사!

[편집]을 - 나는에 정보를 전달하려는 - 퍼센트 내가 아주 제대로 동작하지 않습니다

Ext.define('Custom.PercentDone', { 
    requires: ['Rally.ui.renderer.template.progressbar.PortfolioItemPercentDoneTemplate', 'Rally.util.HealthColorCalculator'], 
    extend : 'Rally.ui.PercentDone', 
    alias : 'widget.cpercentdone', 


    config: { 
     record: null 
    }, 

    constructor: function(config) { 
     this.initConfig(config); 
     config = this.config; 
     this.renderTpl = Ext.create('Custom.renderer.template.progressbar.PercentDoneTemplate', { 
      calculateColorFn: Ext.bind(function(recordData) { 
       console.log('called my custom coloring fn'); 
       var colorObject = Rally.util.HealthColorCalculator.calculateHealthColorForPortfolioItemData(config.record, config.percentDoneName); 
       return colorObject.hex; 
      }, this) 
     }); 
     this.renderData = config; 
     this.mergeConfig(config); 
     this.callParent([this.config]); 
    } 
}); 

App.down('#subContainer').add({ 
    xtype: 'cpercentdone', 
    record: item, 
    useStoryCount: !App.estimate 
}); 

UI 컴포넌트를 생성하기위한 것보다는 레코드를 사용하는 기존 기능을 대체 할 시도 calculateHealthColorForPortfolioItemData 함수를 사용했지만 매개 변수가 전달되는 위치와 위치를 파악할 수 없어 무엇을 설정해야하는지 잘 모릅니다.

는 또한 사용 Ext.override 시도 :

  var percentDone = Ext.create('Rally.ui.PercentDone', { 
       record: item, 
       percentDoneName: 'PercentDoneByStoryCount' 
      }); 
      var tpl = percentDone.renderTpl; 
      tpl.calculateColorFn = function(recordData) { 
       var colorObject = Rally.util.HealthColorCalculator.calculateHealthColorForPortfolioItemData(percentDone.record, percentDone.percentDoneName); 
       return colorObject.hex; 
      }; 

      Ext.override(percentDone, { 
       renderTpl: tpl 
      }); 
      App.down('#subContainer').add(percentDone); 
+0

좋아 생산에서. (그들은 같은 코드를 공유합니다) 다른 색상보다 다른 색상이있는 상황이 있습니까? 그런데 당신이 원하는 바를 구성 요소 색상으로 만들 수 있다고합니다. –

+0

완료된 UI 구성 요소는 백분율을 사용하여 색상을 결정하는 반면, 많은 랠리 응용 프로그램에서 사용되는 구성 요소는 시작 및 종료 날짜와 같은 다른 데이터를 사용하여 진행률, 완료율, 완료 정도를 결정합니다. 원하는대로 구성 요소의 색상을 어떻게 바꿀 수 있습니까? 나는 방법을 찾을 수 없었다. –

답변

0

구성 요소 완료 퍼센트는 우리가 SDK 및 자극 주 동일한에게 있기 때문에 (생산 랠리을 위해 할 것처럼 같은 방식으로 일 무슨 색깔 결정 암호). 구성 요소가 (found here)을 사용하는 템플릿을 보면 HealthColorCalculator가 사용 된 것을 볼 수 있습니다. 당신이 툴팁 당신이 색상을 계산하는 클래스의 기능을 Ext Override를 사용하여 변경할 수 있습니다 구성 요소 색상 방식을 변경하려면

그러나 당신은 SDK의 코드는 코드와 동일해야합니다

+0

알았어. 그리고 그것을 얻지 마십시오. 동일한 알고리즘을 사용하여 percentDone 숫자와 레코드에 대한 정보가없는 경우 색상을 같은 방식으로 계산할 수 있습니까? (그러나 채색 알고리즘은 여러 정보 조각에 의존합니다. 그 중 하나는 percentComplete)? 알고리즘을 다시 보면 percentComplete 만 제공되는 경우에는 특별한 경우가없는 것처럼 보입니다 (사실 config 객체가 필요합니다). 죄송합니다.이 모든 사실을 알고 계시고, ui cmp 완료율과 관련된 기록이없는 경우 어떻게 동일한 지 이해할 수 없습니다. –

+1

템플릿이 [calculateHealthColorForPortfolioItemData] (https://prod.help.rallydev.com/apps/2.0rc1/doc/source/HealthColorCalculator.html#Rally-util-HealthColorCalculator-method-calculateHealthColorForPortfolioItemData)를 호출하는 곳의이 줄을 확인 했습니까? ? 보면 템플릿에 전체 레코드가 있습니다. 해당 템플릿은 레코드를 전달하여 필드를 가져 오는 레코드를 계산합니다. (적어도 내가 읽는 방법은) 도움을 요청하는 것에 대해 걱정할 필요가 없습니다. 알아 내려고 시도하는 것을 정확히 이해하는 것은 어려울 수 있습니다. 때로는 몇 가지 시도가 필요합니다. –

+0

아아 나는 그 기능을 보았다. 그러나 그들이 제공되지 않았다면 오늘날과 같은 날짜에 대한 기본값을 설정한다는 것을 잊었다. 나는 그것을 지금 본다. 감사! –