2016-09-14 6 views
2

В ралли SDK v1.33, я мог бы вынести таблицу данных, как это:Рендер Rally SDK 2.1 в Specific DIV в SharePoint

...(extra code omitted) 
var table = new rally.sdk.ui.Table(config, rallyDataSource); 
table.display("tableDiv"); 

, и она будет отображаться в указанном «tableDiv», который уже страница.

В SDK V2.1 я не могу понять, как сделать то же самое. Когда он отображает, он берет на себя всю страницу.

Я попытался добавить renderTo в Ext.define и this.add, но это, похоже, не имело никакого значения.

Вот мой код:

Rally.onReady(function() { 
    Ext.define('PortfolioItems', { 
     extend: 'Rally.app.App', 
     componentCls: 'app', 
     renderTo: 'tableDiv', 

     launch: function() { 
      this.drawTypeComboBox(); 
     }, 

     drawTypeComboBox: function(){ 
      this.typeComboBox = this.add({ 
       xtype: 'rallyportfolioitemtypecombobox', 
       renderTo: 'tableDiv' 
      }); 
      this.typeComboBox.on('select', this.drawGrid, this); 
      this.typeComboBox.getStore().on('load', this.drawGrid, this); 
     }, 

     drawGrid: function(){ 
      var selectedType = this.typeComboBox.getRecord(); 

      Rally.data.ModelFactory.getModel({ 
       type: selectedType.get('TypePath'), 
       success: function(model){ 

        if(this.grid){ 
         this.grid.reconfigureWithModel(model); 
        } else { 
         this.grid = this.add({ 
          xtype: 'rallygrid', 
          renderTo: 'tableDiv', 
          columnCfgs: [ 
           "PortfolioItemTypeName", 
           "FormattedID", 
           "Name", 
           "PlannedStartDate", 
           "PlannedEndDate", 
           "PercentDoneByStoryPlanEstimate", 
           "PercentDoneByStoryCount" 
          ], 
          model: model 
         }); 

        } 

       }, 
       scope: this 
      }); 

     } 
    }); 
    Rally.launchApp('PortfolioItems', { 
     name: 'Portfolio Items' 
    }); 
}); 

Любая помощь очень ценится! Благодаря!

ответ

0

Этот запрос периодически возникает для этого точного сценария. Поведение по дизайну, но вы должны иметь возможность обойти его, просто встраивая iframe в свой элемент управления sharepoint, который указывает на html-файл вашего приложения, обслуживаемый где-то на том же сервере. Будет ли это работать на вас?

+0

Я точно не знаю, как это сделать. В настоящее время есть файл JS (частичный html), который мы загружаем в WebPart редактора содержимого. Это единственный способ, которым наш поставщик мог заставить его работать для нас без ошибок межсайтового скриптинга. В этом файле находится div, который мы пытаемся подключить. –

+0

ах. Да, html-файл должен быть размещен в одном домене точно. я думаю, я не совсем уверен, что вы можете и не можете сделать в sharepoint. я знаю, что люди имели успех внедрения Iframes в других системах, таких как слияния, поэтому я предложил это здесь ... –

+0

вы можете попытаться встроить это так, если вы можете служить внешний HTML-файл с одного сервера: '

тест Встроенные приложения