Compartilhar via


Exemplo de funções e ações da API Web (PowerShell)

Este exemplo do PowerShell versão 7.4.0 demonstra como chamar funções e ações associadas e não associadas, incluindo ações personalizadas, usando a API Web do Microsoft Dataverse. Este exemplo implementa as operações do Dataverse e a saída do console detalhadas no Exemplo de Ações e Funções da API Web.

Este exemplo usa as funções auxiliares do PowerShell da API Web do Dataverse para gerenciar a autenticação e fornecer funções reutilizáveis para executar operações comuns. Esses scripts são referenciados usando o dot sourcing com as seguintes linhas:

. $PSScriptRoot\..\Core.ps1
. $PSScriptRoot\..\TableOperations.ps1
. $PSScriptRoot\..\CommonFunctions.ps1

Observação

Este exemplo deve funcionar com Windows, Linux e macOS, mas só foi testado no Windows.

Pré-requisitos

Antes de executar este exemplo, você deve ler estes artigos que explicam os conceitos e padrões usados por estes exemplos:

Esses artigos têm os mesmos pré-requisitos.

Instalar ou verificar se os seguintes estão instalados

Verifique a instalação

  1. Abra o Visual Studio Code.

  2. No menu Terminal, selecione Novo Terminal.

  3. No painel de navegação do Visual Studio Code, selecione o ícone para a extensão do PowerShell.

  4. Copie e cole o seguinte script na janela do terminal do Visual Studio Code:

    Write-Host 'PowerShell Version:'$PSVersionTable.PSVersion.ToString()
    Write-Host 'PowerShell Az version:'(Get-InstalledModule Az).Version
    
  5. Pressione Enter. O resultado deve ser assim:

    PowerShell Version: 7.4.0
    PowerShell Az version: 11.1.0
    

Se você não vir resultados como este, instale ou atualize os pré-requisitos.

Você também precisará

  • Uma conta de usuário válida para um ambiente do Dataverse
  • A URL para o ambiente do Dataverse ao qual você deseja se conectar. Veja Exibir recursos do desenvolvedor para saber como encontrá-lo. Parece algo assim: https://yourorg.crm.dynamics.com/, onde yourorg.crm é diferente.
  • Compreensão básica da linguagem de script do PowerShell

Como executar este exemplo

  1. Clone ou baixe o repositório PowerApps-Samples .

  2. Abra o arquivo FunctionsAndActions.ps1 usando o Visual Studio Code

  3. Edite esta linha para usar a URL do ambiente ao qual você deseja se conectar:

    Connect 'https://yourorg.crm.dynamics.com/' # change this

  4. (Opcional) Defina a $deleteCreatedRecords variável para $false se você não quiser excluir os registros que este exemplo cria.

  5. Pressione F5 para executar o exemplo.

  6. Na primeira vez que você executar o exemplo, uma janela do navegador será aberta. Na janela do navegador, insira ou selecione as credenciais que você deseja usar para autenticar.

Para se conectar como um usuário diferente, execute o comandoDisconnect-AzAccount e tente novamente.

Code

O código deste exemplo está em: PowerApps-Samples/dataverse/webapi/PS/FunctionsAndActions/FunctionsAndActions.ps1

Demonstra

Este exemplo tem nove regiões:

Seção 1: Função Não Associada WhoAmI

Operações: chame a função WhoAmI para recuperar informações sobre o usuário atual.

Seção 2: Formato de Função Não Vinculada FormatAddress

Operações:

  • Chame o FormatAddress Function com parâmetros para um endereço nos Estados Unidos.
  • Chame a mesma função com parâmetros para um endereço no Japão para demonstrar formatação diferente.

Seção 3: Função não vinculada InitializeFrom

Operações:

  • Crie um registro de conta como o registro original.
  • Chame a função InitializeFrom para obter dados de um novo registro com base no original.
  • Crie um novo registro de conta usando os dados retornados.InitializeFrom

Seção 4: Função Desvinculada RetrieveCurrentOrganization

Operações: chame a função RetrieveCurrentOrganization para recuperar informações sobre a organização atual.

Seção 5: Função Não Vinculada RetrieveTotalRecordCount

Operações: chame a função RetrieveTotalRecordCount para recuperar o número total de registros para tabelas especificadas.

Seção 6: Função Vinculada IsSystemAdmin da API personalizada

Operações:

  • Detecte se a sample_IsSystemAdmin API personalizada está instalada na organização.
  • Se não estiver instalado, importe a solução gerenciada que contém a API personalizada.
  • Recupere os registros do usuário do sistema e teste cada um usando a sample_IsSystemAdmin função para determinar se ele tem a função de segurança administrador do sistema.

Seção 7: Ação Não Associada GrantAccess

Operações:

  • Crie um registro de conta para compartilhar.
  • Recupere um usuário habilitado diferente do usuário atual.
  • Use a função RetrievePrincipalAccess para verificar os direitos de acesso do usuário.
  • Use a Ação GrantAccess para conceder direitos de acesso adicionais ao usuário.
  • Verifique se os direitos de acesso foram concedidos usando RetrievePrincipalAccess novamente.

Seção 8: Ação Vinculada AddPrivilegesRole

Operações:

  • Crie uma função de segurança associada à unidade de negócios do usuário atual.
  • Recupere a função com privilégios expandidos para mostrar privilégios padrão.
  • Recupere informações sobre privilégios específicos a serem adicionados à função.
  • Use a Ação AddPrivilegesRole para adicionar privilégios à função.
  • Recupere a função novamente para confirmar se os privilégios foram adicionados.

Seção 9: Excluir registros de exemplo

Operações: uma referência a cada registro criado neste exemplo foi adicionada a uma lista à medida que foi criada. Esta seção percorre essa lista e exclui cada registro.

Limpeza

Por padrão, este exemplo exclui todos os registros criados nele. Se você quiser exibir os registros criados após a conclusão do exemplo, altere a deleteCreatedRecords variável false para e você será solicitado a decidir se deseja excluir os registros.

Consulte também

Utilizar a API Web do Dataverse
Usar funções de API Web
Use ações API da Web
API Web de início rápido com PowerShell e Visual Studio Code
Usar o PowerShell e o Visual Studio Code com a API Web do Dataverse
Exemplos de API Web
Exemplo de ações e funções de API Web
Exemplo de ações e funções da API Web (C#)
Exemplo de ações e funções da API Web (JavaScript do lado do cliente)