2016-05-24 3 views
4

Я хочу автоматически запускать код IronPython всякий раз, когда загружается панель инструментов Spotfire. Я наткнулся на некоторые блоги, но они не очень подробно, так как я новичок в Spotfire.Как запустить скрипт IronPython на загрузке Dotboard Spotfire

+1

здорово! Итак, первый вопрос: ваша аудитория рассматривает анализ в толстом клиенте (настольная версия) или через веб-плеер (версия браузера)? если последний, они получают доступ непосредственно через библиотеку веб-проигрывателя (например, перейдя по адресу http: // SpotfireServer/SpotfireWeb/и просматривая), или вы внедряете ссылки для анализа и обмена ими? – niko

+0

На самом деле мы пытаемся создать решение безопасности, поэтому мы хотим загрузить некоторые таблицы безопасности, которые приведут информацию из Windows AD и некоторую таблицу сопоставления безопасности. мы хотим, чтобы наша панель загружала эти таблицы evrtime, когда пользователь загружал эти информационные панели. так что это будет для настольных и веб-плееров. – Drake

ответ

0

Этот метод неуклюжий, и я предпочел бы лучшее решение, если у кого-нибудь есть.

Я делаю это с помощью JScript (который вы можете найти и добавить в разделе «Редактировать HTML-текст в текстовой области») и кнопки (которую я скрываю, чтобы никто не мог ее увидеть или щелкнуть).

JScript:

$(function() { 
function executeScript() { 
$('#hiddenBtn input').click(); 
} 
$(document).ready(function(){executeScript()}); 
}); 

HTML:

<Span style="display:none" id="hiddenBtn"> 
<SpotfireControl id="f8322a6109af43fb935ad6e7bcb1f1fc" /></span> 

IronPython скрипт на HiddenButton:

if Document.Properties["OpenedYet"] == False: 
    Document.Properties["OpenedYet"] = True 
    ## Script you are trying to run on open here 

Мне не нравится этот метод в основном из-за того, насколько он раздражает его для разработчика. Каждый раз, когда вы хотите сохранить аналитику, вам нужно войти в свойства документа и переключить значение свойства OpenedYet (которое у меня есть как Boolean) с True на False, а затем вы не можете нажать что-либо еще, прежде чем нажать кнопку сохранения , У этого также есть ограничение, которое требует, чтобы у вас была текстовая область на первой странице, которая требует хотя бы некоторой недвижимости.

Это может быть проблематично для вас, поскольку у вас есть пользователи настольных компьютеров; если у кого-либо из них есть разрешение на сохранение аналитики, они могут сохранить его, если свойство OpenedYet установлено в True, поэтому оно не будет запускаться при следующем его открытии.

0

Попробуйте использовать флаг, так что JS выполняет только once.Here является ПРИМЕР-

$(document).ready(function() 
{ 
    if(!document.readyFlag) 
{ 
    $("#02bf0a06832f4689b1e97fd2ba9e3ec4").trigger("click"); 
    document.readyFlag=true; 
} 
}) 
Смежные вопросы