Compreender a integração de formulários do SharePoint
Agora você pode personalizar facilmente quaisquer Listas da Microsoft ou formulário de biblioteca do SharePoint no Power Apps. Neste artigo, examinaremos os detalhes de como esses formulários funcionam e como você pode personalizá-los.
Se você personalizou um formulário para uma lista, provavelmente percebeu que o formulário gerado padrão funciona para todas as operações, como criar, mostrar ou editar um item. Isso é feito com a ajuda de fórmulas geradas e do controle SharePointIntegration.
Entender o formulário gerado padrão
O formulário gerado padrão consiste nos seguintes controles e seus padrões correspondentes:
FormScreen1 – esta é a tela que contém o formulário.
SharePointForm1 – este é o formulário usado para criar, mostrar ou editar o item de lista.
Data Source – a lista para a qual o formulário foi personalizado.
Item – o item selecionado na lista. Isso é definido como o item First() na lista para sua conveniência ao trabalhar no Power Apps Studio.
If( IsBlank(SharePointIntegration.Selected) || IsEmpty(SharePointIntegration.Selected), First('*YourListName*'), SharePointIntegration.Selected )
Dica
O padrão de fórmula acima (usando
... SharePointDatasourceName.Selected
) funciona para a propriedade Item de um formulário. Consulte a seção abaixo para obter um padrão de fórmula a fim de definir o valor de um registro do SharePoint.
OnSuccess – após o item ser criado ou salvo com êxito, o formulário é redefinido e o SharePoint oculta o formulário.
ResetForm(SharePointForm1); RequestHide()
SharePointIntegration – o controle responsável por comunicar ações do usuário entre o SharePoint e o Power Apps.
Data Source – a lista para a qual o formulário foi personalizado.
'YourListName'
OnNew – define SharePointForm1 no novo modo.
NewForm(SharePointForm1)
OnView – define SharePointForm1 no modo de exibição.
ViewForm(SharePointForm1)
OnEdit – define SharePointForm1 no modo de edição.
EditForm(SharePointForm1)
OnSave – envia as alterações para SharePointForm1. Após o envio do formulário com êxito, a fórmula SharePointForm1.OnSuccess é executada.
SubmitForm(SharePointForm1)
OnCancel – redefine as alterações para SharePointForm1. O SharePoint sempre oculta o formulário quando um usuário seleciona Cancelar no SharePoint.
ResetForm(SharePointForm1)
Esses padrões garantem que o formulário funcione ao ser executado no SharePoint. Eles alteram o modo de formulário do Power Apps conforme o usuário interage com ele no SharePoint e garantem que as alterações sejam enviadas ao SharePoint.
Entender o controle SharePointIntegration
O controle SharePointIntegration comunica ações do usuário entre o SharePoint e o Power Apps.
Observação
É possível acessar as propriedades do controle SharePointIntegration somente quando o formulário está sendo executado no SharePoint, e não ao personalizá-lo no Power Apps Studio. Essas propriedades podem não estar disponíveis em OnStart ou OnVisible.
O controle SharePointIntegration tem as seguintes propriedades:
Selected – O item selecionado na lista.
OnNew – Ações a serem executadas quando um usuário seleciona o botão Novo ou abre o formulário Criar Item no SharePoint.
OnView – Ações a serem executadas quando um usuário seleciona um item ou abre o formulário Detalhes do Item no SharePoint.
OnEdit – Ações a serem executadas quando um usuário seleciona o botão Editar Todos ou abre o formulário Editar Item no SharePoint.
OnSave – Ações a serem executadas quando um usuário seleciona o botão Salvar no SharePoint.
OnCancel – Ações a serem executadas quando um usuário seleciona o botão Cancelar no SharePoint.
SelectedListItemID – O ID do item selecionado em uma lista.
Data Source – a lista que contém o registro que o formulário mostrará, editará ou criará. Se você alterar esta propriedade, as propriedades Selected e SelectedItemID poderão parar de funcionar.
Personalizar o formulário padrão
Agora que você tem uma melhor compreensão sobre o formulário gerado padrão e o controle SharePointIntegration, é possível alterar as fórmulas para personalizar os formulários ainda mais. Veja algumas coisas para se ter em mente ao personalizar formulários:
Use a fórmula OnSave do controle SharePointIntegration para personalizar o que acontece quando o usuário clica em Salvar no SharePoint. Se você tiver vários formulários, envie as alterações somente para o formulário que está sendo usado no momento.
Dica
Defina valores diferentes para uma variável nas fórmulas OnNew, OnView e OnEdit. Você pode usar essa variável na fórmula OnSave para determinar qual formulário está sendo usado.
Não se esqueça de incluir RequestHide() na fórmula OnSuccess de todos os formulários. Se você esquecer disso, o SharePoint não saberá quando ocultar o formulário. Além disso, evite executar código importante após chamar RequestHide(), para que todo o código seja executado enquanto o formulário ainda estiver visível e capaz de executar a lógica.
Não é possível controlar a ocultação de um formulário quando um usuário clica em Cancelar no SharePoint, portanto, certifique-se de redefinir os formulários na fórmula OnCancel do controle SharePointIntegration.
As propriedades do controle SharePointIntegration podem não estar disponíveis em OnStart ou OnVisible, e esses eventos são executados apenas uma vez enquanto a lista é carregada. É possível usar as fórmulas OnNew, OnView ou OnEdit para executar lógica antes de o formulário ser mostrado para o usuário toda vez.
Problemas comuns com o objeto SharePointIntegration
Quando o valor de
SharepointIntegration.Selected
é definido como uma coleção na propriedade OnView, ele não mostra o valor mais recente. A maneira recomendada de corrigir esse problema é usarSharepointIntegration.SelectedListItemID
e fazer uma pesquisa na tabela para obter o selectedRecord.Por exemplo, para a propriedade OnView:
Em vez de:
Set( selectedItem, SharePointIntegration.Selected );
Use:
Set( selectedLookupItem, LookUp( YourSharepointIntegrationObject, ID=SharePointIntegration.SelectedListItemID ) );
As variáveis de coleção não são redefinidas ao fechar o formulário do Power Apps e o estado é mantido por toda a sessão. É por isso que, se houver casos de uso em que as variáveis precisam ser redefinidas, limpe as variáveis na propriedade OnView do objeto SharePointIntegration.
Não use funções imperativas como Launch() nas propriedades SharePointIntegration (como OnNew e OnView). Esse uso pode causar um comportamento inesperado, pois os eventos do ciclo de vida do SharePointIntegration (como alterações de seleções) podem ser acionados em segundo plano mesmo quando o formulário não está visível.
Confira também
- EditForm, NewForm, SubmitForm, ResetForm e ViewForm functions - funções de formulário no Power Apps
- Função RequestHide
- Cenários de integração do SharePoint
Observação
Você pode nos falar mais sobre suas preferências de idioma para documentação? Faça uma pesquisa rápida. (Observe que esta pesquisa está em inglês)
A pesquisa levará cerca de sete minutos. Nenhum dado pessoal é coletado (política de privacidade).