Como: |
Esta sessão tem um exemplo de JavaScript que se pode usar para passar as atuais seleções da página HTML ao portal Portal de BI, que poderá altualizar todos os componentes, exceto a sim mesmo.
Esta ação o alterna para a seção Embedded JavaScript e cria uma função chamada form1Submit_onclick.
//Begin function form1Submit_onclick function form1Submit_onclick(ctrl) { refreshReports(); } //End function form1Submit_onclick
function refreshReports(){ var name = this.window.name; parent.BipIframeInterface.setAllAmpersValues(name, IbComposer_getAllAmpersValues()); parent.BipIframeInterface.refresh(parent.BipIframeInterface.REFRESH_ALL_BUT_SELF , name); }
Observação: a terceira linha envolve neste documento, mas deve aparecer em uma linha quando se escreve no HTML Composer.
As três linhas se dividem da seguinte maneira:
Linha 1:
var name = this.window.name;
Esta linha obtém o nome atual da janela. Isto é necessário como um parâmetro na Linha 2.
Linha 2:
parent.BipIframeInterface.setAllAmpersValues(name,IbComposer_getAllAmpersValues());
Esta linha deve se dividir em duas funções.
Função 1:
IbComposer_getAllAmpersValues())
Esta função obtém os valores selecionados atuais de todos os controles na página do HTML Composer como uma única cadeia que se pode acrescentar ao final da chamada URL.
Função 2:
parent.BipIframeInterface.setAllAmpersValues
Esta função leva o nome da janela atual e da cadeia retornada pela Função 1 (ou qualquer cadeia fornecida por você) e diz ao portal para que acrescente esta cadeia ao final de qualqur solicitação executada em todas as páginas deste portal. Há um terceiro parâmetro opcional que pode ser enviado para restringir variáveis a uma página específica. O que vem a seguir é um exemplo de uma chamada específica de página.
parent.BipIframeInterface.setAllAmpersValues(name, "&ers…", parent.BipIframeInterface.AMPERS_PAGE_ONLY);
Linha 3:
parent.BipIframeInterface.refresh(parent.BipIframeInterface.REFRESH_ALL_BUT_SELF , name);
Esta função atualiza todos os quadros do portal que já foram executados, exceto aqueles com os controles. Inclusive os quadros que não estão atualmente visíveis na página.
Para atualizar somente a página atual:
parent.BipIframeInterface.refresh(parent.BipIframeInterface.REFRESH_ALL_BUT_SELF, name, null, parent.BipIframeInterface.AMPERS_PAGE_ONLY);
Nos exemplos anteriores, o primeiro parâmetro para esta função será sempre:
BipIframeInterface.REFRESH_ALL_BUT_SELF
Há outras possibilidades, mostradas na seguinte tabela.
Atualizar Tipo | Valor do parâmetro |
---|---|
Todos os quadros | BipIframeInterface.REFRESH_ALL |
Somente o quadro atual | BipIframeInterface.REFRESH_SELF_ONLY |
Todos exceto o quadro atual | BipIframeInterface.REFRESH_ALL_BUT_SELF |
Lista específica (matriz) de quadros | BipIframeInterface.REFRESH_ARRAY |
Quadros que não estão na lista (matriz) de quadros | BipIframeInterface.REFRESH_ALL_BUT_ARRAY |
function onInitialUpdate(){refreshReports();}
Observação: esta função fornece valores padrão para qualquer relatório que não os tenha especificado. Depois que o formulário carrega os controles, a função é chamada e o valor padrão do formulário é enviado a todos os relatórios.
A guia Java Script inserido é mostrada na seguinte imagem.
WebFOCUS |