CRM 2013 Javascript Object Model - UI

by Pedro Azevedo 30. August 2014 19:48

Boas pessoal,

 

Mais um post sobre o object model. Desta vez estaremos a ver o “namespace” Xrm.Page.ui.

 

Xrm.Page.ui.close()

Como o próprio nome diz fecha o formulário, infelizmente não conseguir tirar um printscreen Cool mas acreditem que funciona.

function closeTest() {
	Xrm.Page.ui.close();
}

 

formSelector.getCurrentItem

function getCurrentItemTest() {
                var formSelect = Xrm.Page.ui.formSelector.getCurrentItem();
                if (formSelect == null) {
                               Xrm.Utility.alertDialog("é nulo quando existe apenas um form para escolha");
                }
                else {
                               Xrm.Utility.alertDialog("Este é o form escolhido: " + item.getLabel());
                }
}

formSelector.items
function formSelectorItemsTest() {
                Xrm.Page.ui.formSelector.items.forEach(function (item, index) {
                               Xrm.Utility.alertDialog(item.getLabel());
                });
}

Xrm.Page.ui.getViewPortHeight() e Xrm.Page.ui.getViewPortWidth()
function getViewPortHeightWidthTest() {
                Xrm.Utility.alertDialog("Largura: " + Xrm.Page.ui.getViewPortWidth() + ", Altura: " + Xrm.Page.ui.getViewPortHeight());
}

Xrm.Page.ui.getCurrentControl()

function getCurrentControlTest() {
                var currentControl = Xrm.Page.ui.getCurrentControl();
                if (currentControl == null) {
                               alert("Não há controlos com focus");
                }
                else {
                               alert("O controlo com focus é o '" + currentControl.getLabel());
                }
}

Xrm.Page.ui.getFormType()

Valores possíveis de retorno deste método:

Valor

Tipo de formulário

0

Undefined

1

Create (Dá para Quick Create)

2

Update

3

Read Only

4

Disabled

5

Quick Create (Deprecated)

6

Bulk Edit

11

Read Optimized (Deprecated)

function getFormTypeTest() {
                Xrm.Utility.alertDialog(Xrm.Page.ui.getFormType());
}

navigation.items

 

Xrm.Page.ui.setFormNotification(message, level, uniqueId)

Os valores possíveis para definir o nível da mensagem, referir também que o elemento uniqueid deve-se dar uma id único para podermos retirar mais tarde esta notificação.

ERROR

Notification will use the system error icon

WARNING

Notification will use the system warning icon

INFO

Notification will use the system info icon

function setFormNotificationTest() {
                Xrm.Page.ui.setFormNotification("Isto é um teste as notificações", "INFO", "TesteNotificacaoInfo");
}

Xrm.Page.ui.clearFormNotification(uniqueId)
function clearFormNotificationTest() {
                Xrm.Page.ui.clearFormNotification("TesteNotificacaoInfo");
}

 

Mais uma vez não consigo tirar um screenshot que ajude por isso acreditem que funciona.

Xrm.Page.ui.refreshRibbon()

Este método permite refrescar a ribbon, mas o que isto significa? Por exemplo quando temos um botão na ribbon onde o seu estado depende de um valor no formulário, se este for alterado agora podemos dizer que queremos que ele aplique novamente as regras.

function refreshRibbonTest() {
                Xrm.Page.ui.refreshRibbon();
}

 

 

Neste caso coloquei uma condição baseada no campo email, só mostra o botão se o valor for psazevedo@psa.com

 

Até a próxima.

Tags: , , ,

Add comment

  Country flag

biuquote
  • Comment
  • Preview
Loading

About

Muito bem casado, Pai babado e um gosto muito grande pela tecnologia.

Tenho um lema "Sharing is Learning"

Mais aqui -> http://www.psazevedo.com

Month List