Explorando o Semantic Link no Power BI e Microsoft Fabric
O semantic link é uma ferramenta inovadora do Power BI e Microsoft Fabric que promete transformar os fluxos de trabalho…
Neste artigo, mostraremos que você pode tornar os links diretos no Canvas App do Power Apps restritivos aos dados exibidos para um usuário quando ele inicia o aplicativo a partir de um URL parametrizado.
Primeiramente, vamos dar uma olhada em um cenário de aprovação em que um gerente deve visualizar apenas os dados de seus relatores e toda vez que um usuário cria uma solicitação, um e-mail com um link para o aplicativo é enviado ao gerente. Assim, o gerente pode visualizar os dados relacionados à solicitação de aprovação clicando no link no e-mail que o leva diretamente à página de detalhes do item que requer a revisão por meio de links diretos.
No entanto, quando o gerente clica no link, a URL de redirecionamento no navegador exibe o parâmetro que foi passado e se este for alterado, os demais itens correspondentes ao parâmetro poderão ser visualizados. Por exemplo, no caso de aprovação, a fonte de dados usada é uma lista do SharePoint e os itens são identificados por meio do ID e os gerentes são identificados pela coluna de pessoa na lista. Vamos criar o aplicativo de forma que, com base no usuário que acessa o aplicativo, seja realizada uma validação para verificar se o usuário tem permissão para acessar o item através do campo tipo pessoa e se é permitido apenas mostrar os detalhes do item ou então mostrar uma mensagem de erro.
Então, vamos começar com um exemplo básico. Assim, aqui, criei um aplicativo usando o modelo “Iniciar com dados” e conectei ao SharePoint como fonte de dados.
if(
!IsBlank(Param("ItemId")),
Set(ParamId,Param("ItemId"));
Navigate(EditScreen1);
)
If(
!IsBlank(ParamId),
LookUp(
KLIOS,
ID = Valor(ParamId)
),
BrowseGallery1.Selected
)
Aqui, estamos definindo a variável ParamId como Blank porque se o usuário selecionar qualquer item da galeria, não queremos padronizar o registro passado no parâmetro.
If(
!IsBlank(Param("ItemId")),
With(
{
AssociatedRecord: LookUp(
KLIOS,
ID = Value(Param("ItemId"))
)
},
If(
AssociatedRecord.Approver.Email = User().Email,
Navigate(EditScreen1);
Set(
AllowedToEdit,
true
),
Navigate(NotAllowedPage);
Set(
AllowedToEdit,
false
)
)
)
)
Explicação : Primeiro verifica se há um parâmetro presente para o link direto. Se não houver um parâmetro com o nome “ItemId”, o usuário será direcionado para a primeira tela do aplicativo. Caso exista um parâmetro que exista com o nome “ItemId”, então verificará se o valor passado no parâmetro possui um aprovador como usuário logado. Se a pessoa logada for o aprovador, ele abre o registro em modo de edição. Senão leva o usuário para uma tela separada mostrando uma mensagem de erro.
AllowedToEdit é uma variável que é utilizada na configuração de outras telas para identificar se o usuário logado está no primeiro nível de segurança ou não.
If(
AllowedToEdit,
LookUp(
KLIOS,
ID = Value(Param("ItemId"))
),
BrowseGallery1.Selected
)
Explicação : Isso verifica se a variável AllowedToEdit está definida como true, depois mostra o registro identificado pelo parâmetro de link direto, senão mostra o selecionado da galeria.
Neste caso, estamos usando um formulário de edição, então a expressão é usada na propriedade Item. Se houver qualquer outro controle, você precisará selecionar a propriedade apropriada. Para controles individuais, você pode armazenar os valores em uma variável ou coleção para salvar chamadas de API.
Defina a variável AllowedToEdit para em branco no EditScreen oculto, para que a variável seja redefinida para qualquer outra navegação na tela e mostre o item selecionado da galeria conforme o esperado.
Tela -> OnHidden -> Set( AllowedToEdit ,false)
Nesta postagem, vimos como personalizar um aplicativo de tela do Power Apps para habilitar links diretos restritivos para aprimorar a segurança dos dados. Uma configuração pode ser usada para onde o requisito é apenas mostrar dados ou obter uma entrada em itens específicos e etc.
Espero que você tenha achado isso interessante e tenha ajudado você. Obrigado por ler! Para mais conteúdos excelentes, confira nosso blog.
O semantic link é uma ferramenta inovadora do Power BI e Microsoft Fabric que promete transformar os fluxos de trabalho…
No mundo digital de hoje, as empresas geram uma quantidade imensa de dados diariamente. Esses dados possuem o potencial de…
O Microsoft SharePoint é uma ferramenta poderosa para colaboração e gerenciamento de conteúdo, mas encontrar as informações certas rapidamente pode…