Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Índice:


      


Objetivo:


     Este documento tem por objetivo especificar a atividade “Executar Código Fonte” disponível na Fórmula Visual.

Especificação:


     A atividade “Executar Código Fonte” é uma atividade que permite que um código (que varia de Levantar uma Exceção à realizar rotinas de Selecionar Dados de Tabelas do Banco, entre outras ) seja executado. Devido a sua complexidade,esta atividade exige um nível de conhecimento avançado em Fórmula Visual e em codificação.


Image Added


Para começarmos a utilizar a atividade, temos que conhecer os parâmetros que ele recebe.


Image Added

Nome do Parâmetro

Descrição do Parâmetro

Obrigatoriedade

1ExecuteCodeCódigo à ser executadoOBRIGATÓRIO


1) Existem duas formas de preencher a Propriedade ExecuteCode:

1.1) Clicando no Ícone Amarelo ao lado da Propriedade ExecuteCode, ou no botão [...] que aparece ao lado da mesma propriedade, a tela abaixo irá aparecer.


Image Added

1.2) Clicando duas vezes em cima da Propriedade ExecuteCode, um console de programação .Net irá aparecer abaixo do diagrama do Workflow.


Image Added


A funcionalidade de Executar Código aparece também clicando:

2) Na parte branca do Workflow, através do Grupo Manipuladores:


Image Added

Nome do Parâmetro

Descrição do Parâmetro

Obrigatoriedade

1CompletedCódigo à ser executado no momento em que a execução do WorkFlow termina.
Estado
colourYellow
titleOpcional
2InitializedCódigo à ser executado no momento em que a execução do WorkFlow se inicia.
Estado
colourYellow
titleOpcional


Tanto para a Propriedade Completed, quanto para a Propriedade Initialized, existem duas formas de preenchê-las, são elas: 


2.1) Clicando no Ícone Amarelo ao lado das Propriedades Initialized / Completed ou no botão [...] que aparece ao lado das mesmas propriedades, a tela abaixo irá aparecer.


InitializedCompleted
Image Added
Image Added


2.2) Clicando duas vezes em cima das Propriedades Initialized / Completed, um console de programação .Net irá aparecer abaixo do diagrama do Workflow.


InitalizedCompleted
Image Added
Image Added


3) Na atividade Se / Senão.

3.1) No Grupo Condições Escolher Condição de Código


Image Added


3.2) Existem duas formas de preencher a Propriedade Condition:

3.2.1) Clicando no Ícone Amarelo ao lado da Propriedade Condition, ou no botão [...] que aparece ao lado da mesma propriedade, a tela abaixo irá aparecer.


Image Added


3.2.2) Clicando duas vezes em cima da Propriedade Condition, um console de programação .Net irá aparecer abaixo do diagrama do Workflow.


Image Added


A diferença do console da Propriedade Condition é que ela já vem por padrão com a linha args.Result = true;.

Como é uma atividade que necessita definir uma condição, o resultado desse código deve ser um valor booleano (ou lógico), true ou false.

Exemplo de Utilização da Atividade


EXEMPLO 1:

Iremos utilizar a atividade "Executar Web Service" em conjunto com a atividade "Executar Código".


1) Configure a atividade de Web Service [Utilizando a atividade "Executar Web Service"]


Image Added 


2) Defina o Retorno como uma Nova Propriedade clicando no botão [...] à frente da Propriedade Retorno


Image Added


2.1) A tela da Atividade ficará assim


Image Added


3) Vamos gerar uma exceção trazendo o retorno do Web Service


Image Added


O Resultado é o mesmo das telas apresentadas abaixo:


Image Added

Image Added


EXEMPLO 2: 

Iremos utilizar a atividade "Executar Consulta SQL" em conjunto com as atividades "Executar Código" "Enviar E-mail".


Image Added


1) Configure a atividade de Consulta SQL [Utilizando a atividade "Consulta SQL"]


Image Added

Bloco de código
languagesql
firstline1
titleConsulta SQL FVXML01
linenumberstrue
SELECT XMLNFE FROM TNFEMUNICIPAL (NOLOCK) WHERE CODCOLIGADA = 1 AND IDMOV = 2231


2) Configure a atividade de "Executar Código Fonte".


Image Added

Bloco de código
languagec#
firstline1
titlecodeActivity1: ExecuteCode
linenumberstrue
string Xml = null;
private void codeActivity1_ExecuteCode(object sender, System.EventArgs args)
{
    string xml = Convert.ToString(this.rmsConsSQLActivity1.Tables[0].Row[0]);
    
    System.Text.ASCIIEncoding encoding = new System.Text.ASCIIEncoding();
    this.XmlResultEmail  = encoding.GetBytes(xml); 
}
Informações
titleOUTROS EXEMPLOS DE CÓDIGO

EXEMPLO (Geração de Erro com conteúdo de SQL de uma Atividade Consulta SQL e retornando um erro):

Bloco de código
languagec#
firstline1
titlecodeActivity1: ExecuteCode
linenumberstrue
string Xml = null;
private void codeActivity1_ExecuteCode(object sender, System.EventArgs args)
{
	string xml = Convert.ToString(this.rmsConsSQLActivity1.Tables[0].Row[0]);
	
	this.rmsThrowActivity1.Message = "Erro"+xml;

	//this.XmlResult = xml;
	// outra opção que pode ser utilizada para passar o conteúdo para a Gera Exceção, porém é necessário criar um novo campo na Atividade Gera Exceção, através da 	Aba "Associar a um novo membro"
}


EXEMPLO Geração de Erro com conteúdo de SQL de dentro da Atividade Executar Código e retornando um erro:

Bloco de código
languagec#
firstline1
titlecodeActivity1: ExecuteCode
linenumberstrue
string Xml = null;
private void codeActivity1_ExecuteCode(object sender, System.EventArgs args)
{
 	string xml = Convert.ToString(DBS.QueryValue("", "SELECT XMLNFE FROM TNFEMUNICIPAL (NOLOCK) WHERE CODCOLIGADA = 1 AND IDMOV = 2231"));
 
 	this.rmsThrowActivity1.Message = "Erro"+xml;
}


3) Configure a atividade de "Enviar E-mail" [Utilizando a atividade "Enviar E-mail"].


Image Added


4) Ao executar a Fórmula Visual o E-mail com o XML da Nota Fiscal Eletrônica (Exemplo Utilizado) será enviado aos destinatários configurados.


Image Added

Image Added

Image Added

Informações
iconfalse
Informações
iconfalse

Produto: Framework

Informações
iconfalse

Versão: 12.1.17 ou Superior

Informações
iconfalse

Processo: Atividade "Executar Código Fonte" da Fórmula Visual

Informações
iconfalse
Informações
iconfalse

Status: Finalizado

Informações
iconfalse

Data:  

Informações
iconfalse

Autores:

Alexandre de Sousa José

Carlos Philippe de Farias Marques

Carlos Roberto Pereira Garcia

Diogo Damiani Ferreira

Douglas Maxwell de Oliveira

Fábio Augusto Amaral Melo Nunes

Informações
iconfalse