Eventos
Campeonato Mundial de Visualização de Dados do Power BI
14 de fev., 16 - 31 de mar., 16
Com 4 chances de participar, você pode ganhar um pacote de conferência e chegar à Grande Final AO VIVO em Las Vegas
Saiba maisNão há mais suporte para esse navegador.
Atualize o Microsoft Edge para aproveitar os recursos, o suporte técnico e as atualizações de segurança mais recentes.
As etapas a seguir explicam como um usuário no administrador do sistema, no desenvolvedor de relatórios eletrônicos ou na função consultor funcional de relatórios eletrônicos pode configurar parâmetros da estrutura ER, criar as configurações de ER necessárias de uma nova solução ER para acessar os dados de um domínio comercial específico e gerar um relatório personalizado no formato do Microsoft Office. Essas etapas podem ser concluídas na empresa USMF.
Criar um mapeamento de modelo para o modelo de dados configurado
Crie uma nova configuração de mapeamento de modelo
Desenvolver artefatos de aplicativos para chamar o relatório criado
Ajustar uma solução de ER criada
Modifique um mapeamento de modelo
Executar um formato do aplicativo para visualizá-lo como um documento PDF
Neste exemplo, você criará uma nova solução ER para o módulo Questionário. Essa nova solução ER permite criar um relatório usando uma planilha do Microsoft Excel como modelo. Em seguida, você pode gerar o relatório Questionário no formato Excel ou PDF, além de gerar o relatório Serviços de Relatório do SQL Server (SSRS) existente. Você também pode modificar o novo relatório posteriormente, quando solicitado. Nenhum código é necessário.
Para executar o relatório existente, acesse Questionário>Design>Relatório Questionários.
Na caixa de diálogo Relatório Questionários, especifique os critérios de seleção. Aplique um filtro para que o relatório inclua somente o questionário SBCCrsExam.
A ilustração a seguir mostra a versão gerada do relatório SSRS para o questionário SBCCrsExam.
Como usuário na função de Desenvolvedor de Relatório Eletrônico, você deve configurar o conjunto mínimo de parâmetros de ER antes de começar a usar a estrutura de ER para criar uma nova solução ER.
Acesse Administração da organização>Espaços de trabalho>Relatório eletrônico.
No espaço de trabalho Relatório eletrônico, selecione Parâmetros de relatório eletrônico.
Na página Parâmetros de relatório eletrônico, na guia Geral, defina a opção Habilitar modo de design como Sim.
Na guia Anexos, defina os seguintes parâmetros:
Para obter mais informações sobre parâmetros de ER, consulte Configurar a estrutura de ER.
Toda configuração de ER é marcada como pertencente a um provedor de configuração de ER. Por isso você deve ativar um provedor de configuração de ER no espaço de trabalho Relatório eletrônico antes de começar a adicionar ou editar configurações de ER.
Observação
Somente o proprietário de uma configuração de ER pode editá-la. Assim, para que uma configuração de ER possa ser editada, o provedor de configuração de ER apropriado deve estar ativado no espaço de trabalho Relatório eletrônico.
https://www.litware.com
), ignore o próximo procedimento, Adicionar um novo provedor de configuração de ER.https://www.litware.com
.Para obter mais informações sobre provedores de configuração de ER, consulte Criar provedores de configuração e marcá-los como ativos.
Você deve criar uma nova configuração de ER que contenha um componente de modelo de dados para o domínio comercial Questionário. Esse modelo de dados será usado posteriormente como uma fonte de dados quando você criar um formato ER para gerar o relatório Questionário.
Ao concluir as etapas na seção Importar uma nova configuração do modelo de dados, você pode importar o modelo de dados necessário do arquivo XML fornecido. Como alternativa, você pode concluir as etapas na seção Criar uma nova configuração do modelo de dados para criar esse modelo de dados desde o início.
Para continuar, ignore o próximo procedimento, Criar uma nova configuração de modelo de dados.
Na página Designer de modelo de dados, selecione Novo.
Na caixa de diálogo suspensa para adicionar um nó de modelo de dados, siga estas etapas:
Esse descritor raiz será usado para fornecer dados para o relatório Questionário. Um único modelo de dados pode ter vários descritores. Cada descritor pode ser especificado para um único formato ER, a fim de identificar os dados necessários para gerar o relatório.
Selecione Novo novamente e, na caixa de diálogo suspensa para adicionar um nó de modelo de dados, siga estas etapas:
Este campo é necessário para passar o nome da empresa atual para um relatório ER que consome esse modelo de dados como uma fonte de dados.
Selecione Novo novamente e, na caixa de diálogo suspensa para adicionar um nó de modelo de dados, siga estas etapas:
Este campo será usado para passar a lista de questionários para um relatório ER que consome esse modelo de dados como uma fonte de dados.
Selecione o nó Questionário.
Continue a adicionar os campos obrigatórios do modelo de dados editável da mesma forma até concluir a estrutura de modelo de dados a seguir.
Caminho do campo | Tipo de dados | Designação de campo/valor retornado |
---|---|---|
Raiz | O ponto de referência para solicitar dados de questionário. | |
Raiz\CompanyName | Sequência de caracteres | O nome da empresa atual. |
Raiz\ExecutionContext | Registrar | Detalhes da execução de formato. |
Raiz\ExecutionContext\FormatName | Sequência de caracteres | O nome do formato ER que está sendo executado. |
Raiz\Questionário | Lista de registros | A lista de questionários |
Raiz\Questionário\Ativo | Sequência de caracteres | O status do questionário atual. |
Raiz\Questionário\Código | Sequência de caracteres | O código do questionário atual. |
Raiz\Questionário\Descrição | Sequência de caracteres | A descrição do questionário atual. |
Raiz\Questionário\QuestionnaireType | Sequência de caracteres | O tipo do questionário atual. |
Raiz\Questionário\QuestionOrder | Sequência de caracteres | A ordem numérica do questionário atual. |
Raiz\Questionário\ResultsGroup | Registrar | As parâmetros de resultado do questionário atual. |
Raiz\Questionário\ResultsGroup\Código | Sequência de caracteres | O código de identificação do grupo de resultados atual. |
Raiz\Questionário\ResultsGroup\Descrição | Sequência de caracteres | A descrição do grupo de resultados atual. |
Raiz\Questionário\ResultsGroup\MaxNumberOfPoints | Real | O número máximo de pontos a ser obtido. |
Raiz\Questionário\Pergunta | Lista de registros | A lista de perguntas do questionário atual. |
Raiz\Questionário\Pergunta\CollectionSequenceNumber | Inteiro | O número de sequência da coleção de respostas atual. |
Raiz\Questionário\Pergunta\Id | Sequência de caracteres | O código de identificação da pergunta atual. |
Raiz\Questionário\Pergunta\MustBeCompleted | Sequência de caracteres | Um sinalizador que indica se a pergunta atual deve ser respondida. |
Raiz\Questionário\Pergunta\PrimaryQuestion | Sequência de caracteres | Um sinalizador que indica se a pergunta atual é a principal. |
Raiz\Questionário\Pergunta\SequenceNumber | Inteiro | O número de sequência da pergunta atual. |
Raiz\Questionário\Pergunta\Texto | Sequência de caracteres | O texto da pergunta atual. |
Raiz\Questionário\Pergunta\Resposta | Lista de registros | A lista de respostas para a pergunta atual. |
Raiz\Questionário\Pergunta\Resposta\CorrectAnswer | Sequência de caracteres | Um sinalizador que indica se a pergunta resposta atual está correta. |
Raiz\Questionário\Pergunta\Resposta\Pontos | Real | Os pontos ganhos quando a resposta atual é selecionada. |
Raiz\Questionário\Pergunta\Resposta\SequenceNumber | Inteiro | O número de sequência da resposta atual. |
Raiz\Questionário\Pergunta\Resposta\Texto | Sequência de caracteres | O texto da resposta atual. |
A ilustração a seguir mostra o modelo de dados editável preenchido na página Designer do modelo de dados.
Salve as alterações.
Feche a página Designer de modelo de dados.
O status da versão 1 dessa configuração é alterado de Rascunho para Concluído. A versão 1 não pode mais ser alterada. Esta versão contém o modelo de dados configurado e pode ser usada como base para outras configurações de ER. A versão 2 dessa configuração é criada e tem um status Rascunho. Você pode editar esta versão para ajustar o modelo de dados Questionário.
Para obter mais informações sobre como usar versões para configurações de ER, consulte Visão geral de relatório eletrônico (ER).
Observação
O modelo de dados configurado é sua representação abstrata do domínio comercial de Questionário e não contém relações para artefatos que são específicos do Microsoft Microsoft Dynamics 365 Finance.
Como usuário na função de Desenvolvedor de Relatório Eletrônico, você deve criar uma nova configuração de ER que contenha um componente de mapeamento de modelos para o modelo de dados Questionário. Como esse componente implementa o modelo de dados configurado para o Finance, ele é específico do Finance. Você deve configurar o componente de mapeamento de modelos para especificar os objetos de aplicativo que devem ser usados para preencher o modelo de dados configurado com os dados do aplicativo no tempo de execução. Para concluir essa tarefa, você deve estar ciente dos detalhes da implementação da estrutura de dados do domínio comercial Questionário no Finance.
Ao concluir as etapas na seção Importar uma nova configuração de mapeamento de modelo a seguir, você pode importar a configuração de mapeamento de modelo necessário a partir do arquivo XML fornecido. Como alternativa, você pode concluir as etapas na seção Criar uma nova configuração de mapeamento do modelo para criar esse mapeamento de modelo do zero.
Para continuar, ignore o próximo procedimento, Criar uma nova configuração de mapeamento de modelo.
Acesse Administração da organização>Relatório eletrônico>Configurações.
Na página Configurações, na árvore de configurações, selecione Modelo de questionário.
Selecione Criar configuração.
Na caixa de diálogo suspensa, siga estas etapas:
Um novo mapeamento é adicionado automaticamente à definição Raiz. Esse mapeamento tem a direção Para modelo. Portanto, esse mapeamento pode ser usado para preencher um modelo de dados com os dados necessários.
Você deve configurar fontes de dados para acessar as tabelas do aplicativo que contêm detalhes do questionário.
Na página Designer de mapeamento de modelo, no painel Tipos de fontes de dados, selecione Dynamics 365 for Operations\Registros de tabela.
Adicione uma nova fonte de dados que será usada para acessar a tabela KMCollection, em que cada registro representa um único questionário:
No painel Tipos de fonte de dados, selecione Dynamics 365 for Operations\Registros de tabela.
Adicione uma nova fonte de dados que será usada para acessar a tabela KMQuestion, em que cada registro representa uma única pergunta em um questionário:
No painel Tipos de fonte de dados, selecione Dynamics 365 for Operations\Registros de tabela.
Adicione uma nova fonte de dados que será usada para acessar a tabela KMAnswer, em que cada registro representa uma única resposta a uma pergunta em um questionário:
No painel Tipos de fonte de dados, selecione Funções\Campo calculado.
Adicione um novo campo calculado que será usado para acessar um registro da tabela KMQuestionResultGroup a partir de cada registro da tabela KMCollection pai:
No painel Tipos de fonte de dados, selecione Funções\Campo calculado.
Adicione um novo campo calculado que será usado para acessar registros de perguntas da tabela KMQuestion a partir de cada registro da tabela KMCollectionQuestion pai:
No painel Tipos de fonte de dados, selecione Funções\Campo calculado.
Adicione um novo campo calculado que será usado para acessar registros de resposta da tabela KMAnswer a partir de cada registro da tabela KMQuestion pai:
No painel Tipos de fonte de dados, selecione Dynamics 365 for Operations\Tabela.
Adicione uma nova fonte de dados que será usada para acessar métodos da tabela CompanyInfo. Observe que o método find() dessa tabela retorna um registro que representa uma empresa da atual instância de Finanças que este mapeamento é chamado nesse contexto.
Você deve configurar fontes de dados para acessar enumerações de aplicativos e comparar valores com os valores dos campos do tipo Enumeração nas tabelas de aplicativos. Você deve usar o resultado da comparação para preencher os campos adequados do modelo de dados.
Na página Designer de mapeamento de modelo, no painel Tipos de fontes de dados, selecione Dynamics 365 for Operations\Enumeração.
Adicione uma nova fonte de dados que será usada para acessar valores da enumeração EnumAppNoYes.
No painel Tipos de fonte de dados, selecione Dynamics 365 for Operations\Enumeração.
Adicione uma nova fonte de dados que será usada para acessar os valores da enumeração KMCollectionQuestionMode.
Você pode adicionar rótulos de ER para configurar algumas fontes de dados para retornar valores que dependam do idioma definido no contexto da chamada do mapeamento de modelos.
Na página Designer de mapeamento de modelo, no painel Fontes de dados, selecione Responder e Editar.
Ative o campo Rótulo.
Selecione Traduzir.
Na caixa de diálogo Tradução de texto, siga estas etapas:
Feche a caixa de diálogo Tradução de texto.
Selecione Cancelar.
Você inseriu rótulos de ER somente para o idioma padrão. Para obter informações sobre como os rótulos ER podem ser traduzidos para outros idiomas, consulte Criar relatórios multilíngues.
Como você deve transformar os resultados da comparação entre valores de enumeração e valores de texto várias vezes para diferentes fontes, convém configurar essa lógica como uma única fonte de dados. No entanto, para tornar essa fonte de dados reutilizável, você deve configurá-la como a fonte de dados parametrizada. Para obter mais informações, consulte Suporte a chamadas parametrizadas de fontes de dados do ER do tipo do campo Calculado.
Na página Designer de mapeamento de modelo, no painel Tipos de fontes de dados, selecione Geral\Contêiner vazio.
Adicionar uma nova fonte de dados de contêiner:
No painel Tipos de fonte de dados, selecione Funções\Campo calculado.
Adicionar uma nova fonte de dados:
No painel Fontes de dados, selecione Auxiliar.
Selecione Adicionar.
Na caixa de diálogo suspensa, no campo Nome , insira NoYesEnumToString.
Selecione Editar fórmula.
No editor de fórmulas, selecione Parâmetros.
Siga estas etapas para especificar parâmetros para a expressão configurada:
No campo Fórmula, insira IF (Argument = true, @"GER‑LABEL:PositiveAnswer", "GER‑LABEL:NegativeAnswer") para retornar o texto do rótulo de ER apropriado, dependendo do idioma do contexto de execução e do valor do parâmetro especificado.
Selecione Salvar e feche o editor de fórmula.
Selecione OK para adicionar a nova fonte de dados.
Você deve vincular fontes de dados configuradas aos campos do modelo de dados para especificar como o modelo de dados será preenchido com os dados do aplicativo no tempo de execução.
Na página Designer de mapeamento de modelo, no painel Modelo de dados, selecione CompanyName.
No painel Fontes de dados, expanda CompanyInfo e siga estas etapas:
No painel Modelo de dados, selecione Questionário.
No painel Fontes de dados, selecione Questionário e, depois, Adicionar para preencher registros de questionário.
No painel Modelo de dados, expanda Questionário e siga estas etapas:
Continue a associar fontes de dados a campos de modelo de dados da mesma maneira até atingir o resultado a seguir.
Caminho do campo | Tipo de dados | Ação | Expressão de associação |
---|---|---|---|
CompanyName | Sequência de caracteres | Associar | CompanyInfo.'find()'.Name |
Questionário | Lista de registros | Associar | Questionário |
Questionário\Ativo | Sequência de caracteres | Editar | Helper.NoYesEnumToString(@.active = EnumAppNoYes.Yes) |
Questionário\Código | Sequência de caracteres | Associar | @.kmCollectionId |
Questionário\Descrição | Sequência de caracteres | Associar | @.Description |
Questionário\QuestionnaireType | Sequência de caracteres | Associar | @.'>Relations'.kmCollectionTypeId.Description |
Questionário\QuestionOrder | Sequência de caracteres | Editar | CASE (@.questionMode, EnumAppQuestionOrder.Conditional, "Conditional", EnumAppQuestionOrder.Random, "aleatório (porcentagem no questionário)", EnumAppQuestionOrder.RandomGroup, "aleatório (porcentagem no grupo de resultados)", EnumAppQuestionOrder.Sequence, "Sequencial", "") |
Questionário\ResultsGroup | Registrar | ||
Questionário\ResultsGroup\Code | Sequência de caracteres | Associar | @.'$ResultGroup'.kmQuestionResultGroupId |
Questionário\ResultsGroup\Descrição | Sequência de caracteres | Associar | @.'$ResultGroup'.description |
Questionário\ResultsGroup\MaxNumberOfPoints | Real | Associar | @.'$ResultGroup'.maxPoint |
Questionário\Pergunta | Lista de registros | Associar | @.'<Relations'.KMCollectionQuestion |
Questionário\Pergunta\CollectionSequenceNumber | Inteiro | Associar | @.answerCollectionSequenceNumber |
Questionário\Pergunta\Id | Sequência de caracteres | Associar | @.kmQuestionId |
Questionário\Pergunta\MustBeCompleted | Sequência de caracteres | Editar | Helper.NoYesEnumToString(@.mandatory = EnumAppNoYes.Yes) |
Questionário\Pergunta\PrimaryQuestion | Sequência de caracteres | Associar | @.parentQuestionId |
Questionário\Pergunta\SequenceNumber | Inteiro | Associar | @.SequenceNumber |
Questionário\Pergunta\Texto | Sequência de caracteres | Associar | @.'$Question'.text |
Questionário\Pergunta\Resposta | Lista de registros | Associar | @.'$Question'.'$Answer' |
Questionário\Pergunta\Resposta\CorrectAnswer | Sequência de caracteres | Editar | Helper.NoYesEnumToString(@.correctAnswer = EnumAppNoYes.Yes) |
Questionário\Pergunta\Resposta\Pontos | Real | Associar | @.point |
Questionário\Pergunta\Resposta\SequenceNumber | Inteiro | Associar | @.sequenceNumber |
Questionário\Pergunta\Resposta\Texto | Sequência de caracteres | Associar | @.text |
A ilustração a seguir mostra o estado final do mapeamento de modelo configurado na página Designer de mapeamento de modelo.
Salve as alterações.
Feche a página Designer de mapeamento de modelo.
O status da versão 1.1 dessa configuração é alterado de Rascunho para Concluído. A versão 1.1 não pode mais ser alterada. Esta versão contém o mapeamento de modelo configurado e pode ser usada como base para outras configurações de ER. A versão 1.2 dessa configuração é criada e tem um status Rascunho. Você pode editar esta versão para ajustar a configuração de Mapeamento de questionário.
Observação
O mapeamento de modelo configurado é a implementação específica do Finance do modelo de dados abstratos que representa o domínio comercial de Questionário.
A estrutura de ER gera usa modelos predefinidos para gerar relatórios nos formatos do Microsoft Office (pastas de trabalho do Excel ou documentos do Word). Enquanto o relatório necessário está sendo gerado, um modelo é preenchido com os dados necessários de acordo com o fluxo de dados configurado. Portanto, você deve primeiro criar um modelo para o relatório personalizado. Esse modelo deve ser criado como uma pasta de trabalho do Excel cuja estrutura representa o layout de um relatório personalizado. Você deve nomear todos os itens do Excel que pretende preencher com os dados necessários.
Como mostra a ilustração a seguir, o modelo baixado foi projetado para imprimir questionários especificados que apresentam as perguntas de um questionário junto com as respostas apropriadas.
Os nomes do Excel foram adicionados a este modelo para preencher os detalhes do questionário. Você pode usar o Gerenciador de nomes para revisar os nomes do Excel.
Os rótulos de relatório foram adicionados como texto fixo no idioma inglês. Você pode substituir os rótulos de relatório por novos nomes do Excel que preenchem os rótulos com o texto dependente do idioma, usando os rótulos do formato ER, como fez para expressões dependentes de idioma no mapeamento de modelo configurado. Nesse caso, os rótulos de ER devem ser adicionadas ao formato ER editável.
Como mostra a ilustração a seguir, o cabeçalho do relatório personalizado foi especificado para habilitar a paginação do Excel.
Como usuário na função de consultor funcional de relatório eletrônico, você deve criar uma nova configuração do ER contendo um componente de formato. Você deve configurar o componente de formato para especificar como um modelo de relatório será preenchido com dados necessários no tempo de execução.
Ao concluir as etapas na seção Importar uma configuração de formato projetado, você pode importar o formato necessário a partir do arquivo XML fornecido. Como alternativa, você pode concluir as etapas na seção Criar uma nova configuração de formato para criar esse formato do zero.
Para continuar, ignore o próximo procedimento, Criar uma nova configuração de formato.
Acesse Administração da organização>Relatório eletrônico>Configurações.
Na página Configurações, na árvore de configurações, selecione Modelo de questionário.
Selecione Criar configuração.
Na caixa de diálogo suspensa, siga estas etapas:
No campo Novo, selecione Formato baseado no modelo de dados Questionários.
No campo Nome, insira Relatório de questionário.
No campo Versão de modelo de dados, selecione 1.
Observação
No campo Definição do modelo de dados, selecione a definição Raiz.
Selecione Criar configuração para criar a configuração.
Na página Configurações, na árvore de configurações, selecione Relatório de questionário.
Selecione Designer para começar a configurar um formato personalizado.
Na página Designer de formato, no Painel de Ações, selecione Importar>Importar do Excel.
Na caixa de diálogo, siga estas etapas:
O formato Excel\Arquivo é adicionado automaticamente ao formato editável como um elemento raiz. Além disso, o elemento de formato Excel\Intervalo ou o elemento de formato Excel\Célula é automaticamente adicionado a cada nome do Excel reconhecido do modelo importado. O formato Excel\Cabeçalho que tem o elemento Cadeia de caracteres aninhado é automaticamente adicionado para refletir as configurações de cabeçalho do modelo importado.
Na página Designer de formato, na árvore de formatos, selecione o elemento raiz do Excel.
Na guia Formatar no lado direito da página, no campo Nome, insira Relatório.
No campo Preferência de idioma, selecione a Preferência de usuário para executar o relatório no idioma preferencial do usuário.
No campo Preferência de cultura, selecione a Preferência de usuário para executar o relatório na cultura preferencial do usuário.
Para obter informações sobre como especificar o idioma e os contextos de cultura para um processo ER, consulte Criar relatórios multilíngues.
Na árvore de formatos, expanda o nó raiz e selecione ResultsGroup.
Na guia Formatar, no campo Direção da replicação, selecione Sem replicação, porque você não espera ter vários grupos de resultados para um único questionário.
Selecione Salvar.
Você deve especificar uma associação de dados para um elemento de formato que é usado para preencher o título de um relatório gerado.
Na página Designer de formato, na guia Mapeamento à direita, selecione o elemento Relatório\ReportTitle.
Selecione Editar fórmula.
No editor de fórmulas, selecione Traduzir.
Na caixa de diálogo Tradução de texto, siga estas etapas:
Feche o editor de fórmulas.
Você pode usar essa técnica para tornar todos os outros rótulos do modelo atual dependentes de idioma. Para obter informações sobre como os rótulos adicionados de uma única configuração de ER podem ser traduzidos em todos os idiomas com suporte, consulte Criar relatórios multilíngues.
Para especificar como um modelo é preenchido no tempo de execução, você deve associar todos os elementos de formato associados a um nome do Excel apropriado a um único campo da fonte de dados desse formato.
Na página Designer de formato, na árvore de formatos, selecione o elemento Relatório\CompanyName.
Na guia Mapeamento, selecione o campo de fonte de dados model.CompanyName do tipo Cadeia de caracteres.
Selecione Associar para inserir um nome de empresa em um modelo.
Na árvore de formatos, selecione o elemento Relatório\Questionário.
Na guia Mapeamento, selecione o campo de fonte de dados model.Questionnaire do tipo Lista de registros.
Selecione Associar.
Selecione Mostrar detalhes para ver mais detalhes dos elementos de formato.
O elemento de formato do intervalo Questionário é configurado como replicado verticalmente. Quando ele está associado a uma fonte de dados do tipo Lista de registros, o intervalo de Questionário apropriado do modelo do Excel é repetido para cada registro da fonte de dados associada.
Como o intervalo Questionário do modelo do Excel é definido entre as linhas 5 e 14, essas linhas são repetidas para todos os questionários relatados.
Configure associações semelhantes para os elementos de formato restantes, conforme descrito na tabela a seguir.
Observação
Nesta tabela, as informações na coluna "Caminho da fonte de dados" supõem que o recurso do ER caminho relativo está ativado.
Caminho do elemento de formato | Caminho da fonte de dados |
---|---|
Excel\ReportTitle | @"GER_LABEL:ReportTitle" |
Excel\CompanyName | model.CompanyName |
Excel\Questionário | model.Questionnaire |
Excel\Questionário\Ativo | @.Active, onde @ é model.Questionnaire |
Excel\Questionário\Código | @.Code |
Excel\Questionário\Descrição | @.Description |
Excel\Questionário\QuestionnaireType | @.QuestionnaireType |
Excel\Questionário\QuestionOrder | @.QuestionOrder |
Excel\Questionnaire\ResultsGroup\Code_ | @.ResultsGroup.Code |
Excel\Questionnaire\ResultsGroup\Description_ | @.ResultsGroup.Description |
Excel\Questionário\ResultsGroup\MaxNumberOfPoints | @.ResultsGroup.MaxNumberOfPoint |
Excel\Questionário\Pergunta | @.Question |
Excel\Questionário\Pergunta\CollectionSequenceNumber | @.CollectionSequenceNumber, onde @ é model.Questionnaire.Question |
Excel\Questionário\Pergunta\Id | @.Id |
Excel\Questionário\Pergunta\MustBeCompleted | @.MustBeCompleted |
Excel\Questionário\Pergunta\PrimaryQuestion | @.PrimaryQuestion |
Excel\Questionário\Pergunta\SequenceNumber | @.SequenceNumber |
Excel\Questionário\Pergunta\Texto | @.Text |
Excel\Questionário\Pergunta\Resposta | @.Answer |
Excel\Questionário\Pergunta\Resposta\CorrectAnswer | @.CorrectAnswer, onde @ é model.Questionnaire.Answer |
Excel\Questionário\Pergunta\Resposta\Pontos | @.Points |
Excel\Questionário\Pergunta\Resposta\Texto | @.Text |
Quando terminar, selecione Salvar.
A ilustração a seguir mostra o estado final de associações de dados configuradas na página Designer de formato.
Importante
Toda a coleção de fontes de dados e associações especificadas representa um componente de mapeamento de formato do formato configurado. Esse mapeamento de formato é chamado quando você executa o formato configurado para a geração de relatórios.
Agora você pode executar um formato criado para fins de teste na página Configurações.
Por padrão, um relatório gerado é entregue como um arquivo do Excel que pode ser baixado. As ilustrações a seguir mostram duas páginas do relatório gerado no formato Excel.
Por padrão, um documento gerado é nomeado usando o alias do usuário atual. Ao modificar o formato, você pode alterar esse comportamento para que um documento gerado seja nomeado com base na lógica personalizada. Por exemplo, o nome de um documento gerado pode se basear na data e na hora da sessão atual e no título do relatório.
As perguntas não são ordenadas corretamente em um relatório gerado. Você pode alterar a ordem modificando o formato.
Na página Designer de formato, selecione o item de raiz Relatório.
Na guia Mapeamento, na árvore de formatos, expanda Relatório\Questionário\Pergunta.
Na guia Mapeamento, selecione model.Questionnaire.
Selecione Adicionar>Funções\Campo calculado e, no campo Nome, insira OrderedQuestions.
Selecione Editar fórmula.
No editor de fórmulas, no campo Fórmula, insira ORDERBY (model.Questionnaire.Question, model.Questionnaire.Question.SequenceNumber) para ordenar a lista de perguntas do questionário atual pelo número da ordem de sequência.
Selecione Salvar e feche o editor de fórmula.
Selecione OK para concluir a entrada de um novo campo calculado.
Na guia Mapeamento, selecione model.Questionnaire.OrderedQuestions.
Na árvore de formatos, selecione Excel\Questionário\Pergunta.
Selecione Associar e confirme se o caminho model.Questionnaire.Questions atual é substituído pelo novo caminho model.Questionnaire.OrderedQuestions em todas as associações de elementos aninhados.
Selecione Salvar.
Agora você pode executar um formato modificado para fins de teste a partir da estrutura de ER.
A ilustração a seguir mostra um relatório gerado no formato Excel, no qual as perguntas estão corretamente ordenadas.
O status da versão 1.1 dessa configuração é alterado de Rascunho para Concluído. A versão 1.1 não pode mais ser alterada. Esta versão contém o formato configurado e pode ser usada para imprimir o relatório personalizado. A versão 1.2 dessa configuração é criada e tem um status Rascunho. Você pode editar esta versão para ajustar a formatar o relatório Questionário.
Observação
O formato configurado é o design do relatório Questionário e não contém relações com artefatos específicos do Finance.
Como um usuário na função Administrador do sistema, você deve desenvolver uma nova lógica para que o formato ER configurado possa ser chamado a partir da interface do usuário do aplicativo (IU) para gerar o relatório personalizado. No momento, o ER não oferece recursos para a configuração desse tipo de lógica. Portanto, é necessário algum trabalho de engenharia.
Para desenvolver a nova lógica, você deve implantar uma topologia que dê suporte à compilação contínua. Para obter mais informações, consulte Implantar topologias que dão suporte à contínua automação de compilações e testes. Você também deve ter acesso ao ambiente de desenvolvimento para essa topologia. Para obter mais informações sobre a API de ER disponível, consulte API da estrutura de ER.
Adicione a nova classe QuestionnairesErReportContract ao projeto Microsoft Visual Studio e escreva o código que especifica o contrato de dados que deve ser usado para executar o formato ER configurado.
/// <summary>
/// This class is the data contract class for the <c>QuestionnairesErReportDP</c> class.
/// </summary>
/// <remarks>
/// This is the data contract class for the Questionnaires ER report.
/// </remarks>
[
DataContractAttribute,
SysOperationContractProcessingAttribute(classStr(QuestionnairesErReportUIBuilder))
]
public class QuestionnairesErReportContract extends ERFormatMappingRunBaseContract implements SysOperationValidatable
{
ERFormatMappingId formatMapping;
/// <summary>
/// Validates the report parameters.
/// </summary>
/// <returns>
/// true if no errors; otherwise, false.
/// </returns>
public boolean validate()
{
boolean ret = true;
if (!formatMapping)
{
ret = checkFailed(strFmt("@SYS26332", new SysDictType(extendedTypeNum(ERFormatMappingId)).label()));
}
return ret;
}
[
DataMemberAttribute('FormatMapping'),
SysOperationLabelAttribute(literalstr("@ElectronicReporting:FormatMapping")),
SysOperationHelpTextAttribute(literalstr("@ElectronicReporting:FormatMapping"))
]
public ERFormatMappingId parmFormatMapping(ERFormatMappingId _formatMapping = formatMapping)
{
formatMapping = _formatMapping;
return formatMapping;
}
}
Adicione a nova classe QuestionnairesErReportUIBuilder ao projeto do Visual Studio e escreva o código para gerar uma caixa de diálogo em tempo de execução que será usada para pesquisar a ID de mapeamento do formato do formato de ER que deve ser executado. O código fornecido pesquisa somente os formatos de ER que contêm uma fonte de dados do tipo Modelo de dados, que se refere ao modelo de dados Questionários, por meio do uso da definição Raiz.
Observação
Como alternativa, você pode usar os pontos de integração de ER para filtrar os formatos de ER. Para obter mais informações, consulte API para mostrar uma pesquisa de mapeamento de formato.
/// <summary>
/// The UIBuilder class for Questionnaires ER report
/// </summary>
class QuestionnairesErReportUIBuilder extends SysOperationAutomaticUIBuilder
{
public const str ERQuestionnairesModel = 'Questionnaires';
public const str ERQuestionnairesDataContainer = 'Root';
/// <summary>
/// Action after build of the dialog UI.
/// </summary>
public void postBuild()
{
DialogField formatMapping;
super();
formatMapping = this.bindInfo().getDialogField(this.dataContractObject(),
methodStr(QuestionnairesErReportContract, parmFormatMapping));
formatMapping.registerOverrideMethod(
methodStr(FormReferenceControl, lookupReference),
methodStr(QuestionnairesErReportUIBuilder, formatMappingLookup),
this);
}
/// <summary>
/// Performs the lookup form for format mapping.
/// </summary>
/// <param name="_referenceGroupControl">
/// The control to perform lookup form.
/// </param>
public void formatMappingLookup(FormReferenceControl _referenceGroupControl)
{
ERObjectsFactory::createFormatMappingTableLookupForControlAndModel(
_referenceGroupControl,
ERQuestionnairesModel,
ERQuestionnairesDataContainer).performFormLookup();
}
}
Adicione a nova classe QuestionnairesErReportDP ao projeto Visual Studio e escreva o código que apresenta o provedor de dados que deve ser usado para executar o formato de ER configurado. O código fornecido inclui somente o contrato de dados deste provedor de dados.
/// <summary>
/// Data provider class for Questionnaires ER report.
/// </summary>
public class QuestionnairesErReportDP
{
QuestionnairesErReportContract contract;
public static QuestionnairesErReportDP construct()
{
QuestionnairesErReportDP dataProvider;
dataProvider = new QuestionnairesErReportDP();
return dataProvider;
}
}
Adicione o novo arquivo de rótulos QuestionnairesErReportLabelsen-US ao projeto do Visual Studio e especifique os rótulos a seguir para novos recursos da interface do usuário:
Adicione a nova classe QuestionnairesErReportService ao projeto do Visual Studio e escreva o código que chama um formato de ER, o identifica por uma ID de mapeamento de formato e fornece um contrato de dados como um parâmetro.
using Microsoft.Dynamics365.LocalizationFramework;
/// <summary>
/// The electronic reporting service class for Questionnaires ER report
/// </summary>
class QuestionnairesErReportService extends SysOperationServiceBase
{
public const str ERModelDataSourceName = 'model';
public const str DefaultExportedFileName = 'Questionnaires report';
public const str ParametersDataSourceName = 'RunTimeParameters';
/// <summary>
/// Generates report by using Electronic reporting framework
/// </summary>
/// <param name = "_contract">The Questionnaires report contract</param>
public void generateReportByGER(QuestionnairesErReportContract _contract)
{
ERFormatMappingId formatMappingId;
QuestionnairesErReportDP dataProvider;
dataProvider = QuestionnairesErReportDP::construct();
formatMappingId = _contract.parmFormatMapping();
if (formatMappingId)
{
try
{
ERIModelDefinitionParamsAction parameters = new ERModelDefinitionParamsUIActionComposite()
.add(new ERModelDefinitionObjectParameterAction(ERModelDataSourceName, ParametersDataSourceName, _contract, true));
// Call ER to generate the report.
ERIFormatMappingRun formatMappingRun = ERObjectsFactory::createFormatMappingRunByFormatMappingId(formatMappingId, DefaultExportedFileName);
if (formatMappingRun.parmShowPromptDialog(true))
{
formatMappingRun.withParameter(parameters);
formatMappingRun.withFileDestination(_contract.getFileDestination());
formatMappingRun.run();
}
}
catch
{
// An error occurred while exporting data.
error("@SYP4861341");
}
}
else
{
// There is no data available.
info("@SYS300117");
}
}
}
Quando você precisa usar um formato de ER que executa dados de aplicativo, deve configurar uma fonte de dados do tipo Modelo de dados no mapeamento de formato. Essa fonte de dados se refere a uma parte específica do modelo de dados especificado usando uma única definição de raiz. Quando o formato de ER é executado, ele chama essa fonte de dados para acessar o mapeamento do modelo de ER apropriado configurado para determinada definição de modelo e raiz.
Todas as informações que você pode preparar no código-fonte e no armazenamento como parte do contrato de dados podem ser passadas para o formato de ER em execução usando um mapeamento do modelo de ER deste tipo. No mapeamento do modelo de ER, você deve configurar uma fonte de dados do tipo Objeto que se refere à classe QuestionnairesErReportContract. Para identificar um mapeamento de modelos, você deve especificar uma fonte de dados que chame esse mapeamento de modelo. No código fornecido, essa fonte de dados especificada pela constante ERModelDataSourceName que tem o valor do modelo. Para identificar qual fonte de dados é usada para expor o contrato de dados no mapeamento do modelo, você deve especificar um nome de fonte de dados. No código fornecido, esse nome é especificado pela constante ParametersDataSourceName que tem o valor RunTimeParameters.
Observação
Em um novo ambiente, talvez seja necessário atualizar os metadados ER para que esse tipo de classe esteja disponível no designer de mapeamento do modelo ER. Para obter mais informações, consulte Configurar a estrutura do ER.
Adicione a nova classe QuestionnairesErReportController ao projeto do Visual Studio e escreva o código que executa um formato de ER no modo síncrono ou no modo de lotes, como preferir, na caixa de diálogo criada com base na lógica da classe QuestionnairesErReportUIBuilder fornecida.
/// <summary>
/// The controller for Questionnaires ER report
/// </summary>
class QuestionnairesErReportController extends ERFormatMappingRunBaseController
{
/// <summary>
/// The main entrance of the controller
/// </summary>
/// <param name = "args">The arguments</param>
public static void main(Args args)
{
QuestionnairesErReportController operation;
operation = new QuestionnairesErReportController(
classStr(QuestionnairesErReportService),
methodStr(QuestionnairesErReportService, generateReportByGER),
SysOperationExecutionMode::Synchronous);
operation.startOperation();
}
/// <summary>
/// Gets caption of the dialog.
/// </summary>
/// <returns>Caption of the dialog</returns>
public ClassDescription defaultCaption()
{
ClassDescription batchDescription;
batchDescription = "Questionnaires report (powered by ER)";
return batchDescription;
}
}
Adicione o novo item de menu QuestionnairesErReport ao projeto do Visual Studio. Na propriedade Objeto, esse item de menu se refere à classe QuestionnairesErReportController e é usado para especificar uma permissão de usuário para selecionar e executar um formato de ER. Na propriedade Rótulo, esse item de menu se refere ao rótulo @QuestionnairesReport que você criou anteriormente, de forma que o texto correto seja apresentado na interface do usuário do aplicativo.
Adicione o menu KM existente ao projeto do Visual Studio. Você deve adicionar um novo item QuestionnairesErReport do tipo Saída a este menu. Este item deve se referir ao item de menu QuestionnairesErReport descrito na seção anterior.
Crie seu projeto para disponibilizar um novo item de menu para os usuários.
Acesse Questionário>Design>Relatório Questionários (alimentado pelo ER).
Na caixa de diálogo, no campo Mapeamento de formato, selecione relatório Questionários.
Selecione OK.
Na caixa de diálogo Parâmetros de relatório eletrônico, na FastTab Registros a serem incluídos, configure a opção de filtragem para que somente o questionário SBCCrsExam seja incluído.
Selecione OK para confirmar a opção de filtragem.
Selecione OK para executar o relatório.
Revise o relatório gerado.
Você pode modificar a solução de ER configurada de forma que use a classe de provedor de dados que desenvolveu para acessar detalhes da execução do formato de ER e para que ela insira o nome do formato de ER em um relatório gerado.
A fonte de dados adicionada fornece informações sobre a ID de registro do mapeamento de formato de ER em execução.
Continue para editar o mapeamento de modelos selecionado, adicionando uma fonte de dados para acessar registros de mapeamento de formato de ER.
Continue para editar o mapeamento de modelos selecionado, adicionando uma fonte de dados para acessar o registro de mapeamento do formato de ER em execução.
Continue para editar o mapeamento de modelo selecionado, de forma que o nome do formato ER em execução seja inserido no modelo de dados.
Como você utilizou o campo FormatName, o mapeamento do modelo configurado agora expõe o nome de um formato de ER que chama esse mapeamento de modelo durante a execução.
O status da versão 1.2 dessa configuração é alterado de Rascunho para Concluído. A versão 1.2 não pode mais ser alterada. Esta versão contém o mapeamento de modelo configurado e pode ser usada como base para outras configurações de ER. A versão 1.3 dessa configuração é criada e tem um status Rascunho. Você pode editar esta versão para ajustar o mapeamento de modelo Questionário.
Você pode modificar o formato de ER configurado de forma que o nome dele apareça no rodapé de um relatório que é gerado quando o formato de ER é executado.
O formato configurado foi modificado para que o nome dele seja inserido no rodapé de um relatório gerado usando o elemento Rodapé\Cadeia de caracteres.
O status da versão 1.2 dessa configuração é alterado de Rascunho para Concluído. A versão 1.2 não pode mais ser alterada. Esta versão contém o formato configurado e pode ser usada como base para outras configurações de ER. A versão 1.3 dessa configuração é criada e tem um status Rascunho. Você pode editar esta versão para ajustar o relatório Questionário.
Observe que o rodapé do relatório gerado contém o nome do formato de ER que foi usado para gerá-lo.
Observe que o rodapé do relatório gerado não contém o nome do formato de ER que foi usado para gerá-lo, pois o objeto de contrato de dados não foi passado para o mapeamento do modelo em execução quando ele foi chamado pelo formato de ER executado a partir de ER.
Acesse Questionário>Design>Relatório Questionários (alimentado pelo ER).
Na caixa de diálogo, no campo Mapeamento de formato, selecione relatório Questionários.
Selecione OK.
Na caixa de diálogo Parâmetros de relatório eletrônico, na FastTab Registros a serem incluídos, configure a opção de filtragem para que somente o questionário SBCCrsExam seja incluído.
Selecione OK para confirmar a opção de filtragem.
Na FastTab Destinos, observe que o campo Saída está definido como Tela. Se desejar alterar o destino configurado, selecione Alterar.
Selecione OK para executar o relatório.
Revise o relatório gerado no formato PDF.
Eventos
Campeonato Mundial de Visualização de Dados do Power BI
14 de fev., 16 - 31 de mar., 16
Com 4 chances de participar, você pode ganhar um pacote de conferência e chegar à Grande Final AO VIVO em Las Vegas
Saiba maisTreinamento
Módulo
Configurar relatórios eletrônicos no Dynamics 365 Finance - Training
Configurar e usar uma ferramenta de relatórios eletrônicos para adotar novos requisitos regulatórios e gerar documentos comerciais.
Certificação
Microsoft Certified: Dynamics 365 Finance Functional Consultant Associate - Certifications
Analise e converta requisitos de negócios financeiros em processos e soluções que implementam práticas recomendadas pelo setor.