42
Assunto: Repositório de Fórmulas Visuais Projeto: TOTVS Framework Versão do Documento: 1.15 Data: 25/07/2011 Atualização: 24/02/2014 Conteúdo 1. VALIDA DATA DE ENTREGA DE IMÓVEL......................................................... 3 2. VALIDAÇÃO DE INCLUSÃO DE PROSPECT/SUSPECT................................................3 3. VALIDAÇÃO DE DUPLICIDADE DE ATENDIMENTOS.................................................4 4. ATENDIMENTO DUPLICADO - ENVIO DE EMAIL PARA SUPERINTENDENTE..............................5 5. VALIDAÇÃO DO CAMPO EMAIL - CADASTRO DE PESSOAS...........................................6 6. VALIDAÇÃO DO CAMPO TELEFONE ADICIONAL - PROSPECT.........................................6 7. VALIDAÇÃO DE DATA DA VISITA AO IMOVEL.................................................... 7 8. VALIDAÇÃO DO CAMPO EMAIL - CADASTRO DE USUÁRIOS..........................................7 9. VALIDAÇÃO DOS CAMPOS COMPLEMENTARES - FATURAMENTO DE MOVIMENTO...........................8 10. VALIDAÇÃO DO NUMERO DO CONTRATO RM SOLUM - FATURAMENTO DE MOV............................9 11. VALIDAÇÃO DE INCLUSÃO DE NOVOS PRODUTOS.................................................10 12. ENVIO DE EMAIL NOVO USUÁRIO............................................................. 10 13. ENVIO DE E-MAIL - ERRO NA ROTINA DE ENVIO DE E-MAIL´S AGENDADOS.........................11 14. ALTERA CAMPO DO CADASTRO DE EVENTO DO LABORE............................................11 15. TORNAR ATENDENTE INATIVO QUANDO FUNCIONÁRIO FOR DEMITIDO................................12 16. VALIDAÇÃO DO CAMPO CPF - CADASTRO DE FUNCIONÁRIOS.......................................13 17. VALIDAÇÃO DO CAMPO PIS - CADASTRO DE FUNCIONÁRIOS.......................................13 18. VALIDA PERFIL DE USUÁRIO LOGADO......................................................... 14 19. VALIDA APROPRIAÇÃO DE ATENDIMENTO....................................................... 14 20. VALIDA INCLUSÃO DE REQUISIÇÕES DO VITAE FORA DO PRAZO...................................15 21. VALIDAR SE O CANDIDATO ESTÁ SENDO INSCRITO EM UM CURSO MAIS DE 2 VEZES..................16 22. TRATAR EXCEÇÃO ENVIANDO EMAIL........................................................... 17 23. VALIDAR SE O CANDIDATO ESTÁ SENDO INSCRITO EM UM CURSO MAIS DE 2 VEZES..................18 24. VALIDAR INCLUSÃO E EXCLUSÃO DE RESPONSÁVEL FINANCEIRO NO EDUCACIONAL....................19 25. PREENCHIMENTO DE CAMPO COMPLEMENTAR AUTOMATICAMENTE.....................................20 26. VALIDAR DUPLICIDADE EM INCLUSÃO DE OCORRÊNCIAS PARA ALUNO...............................21 27. MOSTRAR CAMPO COMPLEMENTAR NA VISÃO DE ALUNOS...........................................21 28. ENVIAR EMAIL PARA ALUNO COM 3 OCORRÊNCIAS...............................................22 29. GRAVAR INFORMAÇÃO DO PRODUTO NO HISTÓRICO DO ITEM DE MOVIMENTO..........................23 30. VALIDAR PREENCHIMENTO DE NOME DE FUNCIONÁRIO COM ACENTO.................................24 31. VALIDAR INFORMAÇÃO ORIGINAL DO CAMPO DESCRIÇÃO DA SEÇÃO.................................24 32. VALIDAR INFORMAÇÃO DO CAMPO DESCRIÇÃO DA SEÇÃO..........................................24 33. ENVIAR EMAIL PELO VIA PROCESSO DO CADASTRO DE FUNCIONÁRIO...............................25 34. VALIDAR PREENCHIMENTO DE CENTRO DE CUSTO (CAMPO COMPLEMENTAR) POR INSUMO................26 35. VALIDAR TAMANHO DO CAMPO CODIGO DE PROJETO..............................................27 36. CANCELAR ATENDIMENTO RELACIONADO........................................................ 28 37. HABILITAR CAMPO IMPRODUTIVO PARA RECURSOS DA COMPOSIÇÃO.................................29 38. ALTERAR STATUS DO LANÇAMENTO PARA CANCELAMENTO DE LANÇAMENTO NO SGI.....................30 Analista: Felipe David Evangelista Página 1 de 42

Repositório de Fórmulas Visuais

Embed Size (px)

DESCRIPTION

Documento com Exemplos prontos de Fórmulas Visuais da Linha RM, para que possa associar as atividades e copiar o conteúdo dos parâmetros.OBS: Atente para a construção da estrutura de tabelas, pois determina quais atividades devem ficar dentro das demais.

Citation preview

MIT005 - Ata de Reunio

Assunto: Repositrio de Frmulas VisuaisProjeto: TOTVS FrameworkVerso do Documento: 1.15Data: 25/07/2011

Atualizao: 24/02/2014Contedo31.VALIDA DATA DE ENTREGA DE IMVEL

32.VALIDAO DE INCLUSO DE PROSPECT/SUSPECT

43.VALIDAO DE DUPLICIDADE DE ATENDIMENTOS

54.ATENDIMENTO DUPLICADO - ENVIO DE EMAIL PARA SUPERINTENDENTE

65.VALIDAO DO CAMPO EMAIL - CADASTRO DE PESSOAS

66.VALIDAO DO CAMPO TELEFONE ADICIONAL - PROSPECT

77.VALIDAO DE DATA DA VISITA AO IMOVEL

78.VALIDAO DO CAMPO EMAIL - CADASTRO DE USURIOS

89.VALIDAO DOS CAMPOS COMPLEMENTARES - FATURAMENTO DE MOVIMENTO

910.VALIDAO DO NUMERO DO CONTRATO RM SOLUM - FATURAMENTO DE MOV

1011.VALIDAO DE INCLUSO DE NOVOS PRODUTOS

1012.ENVIO DE EMAIL NOVO USURIO

1113.ENVIO DE E-MAIL - ERRO NA ROTINA DE ENVIO DE E-MAILS AGENDADOS

1114.ALTERA CAMPO DO CADASTRO DE EVENTO DO LABORE

1215.TORNAR ATENDENTE INATIVO QUANDO FUNCIONRIO FOR DEMITIDO

1316.VALIDAO DO CAMPO CPF - CADASTRO DE FUNCIONRIOS

1317.VALIDAO DO CAMPO PIS - CADASTRO DE FUNCIONRIOS

1418.VALIDA PERFIL DE USURIO LOGADO

1419.VALIDA APROPRIAO DE ATENDIMENTO

1520.VALIDA INCLUSO DE REQUISIES DO VITAE FORA DO PRAZO

1621.VALIDAR SE O CANDIDATO EST SENDO INSCRITO EM UM CURSO MAIS DE 2 VEZES

1722.TRATAR EXCEO ENVIANDO EMAIL

1823.VALIDAR SE O CANDIDATO EST SENDO INSCRITO EM UM CURSO MAIS DE 2 VEZES

1924.VALIDAR INCLUSO E EXCLUSO DE RESPONSVEL FINANCEIRO NO EDUCACIONAL

2025.PREENCHIMENTO DE CAMPO COMPLEMENTAR AUTOMATICAMENTE

2126.VALIDAR DUPLICIDADE EM INCLUSO DE OCORRNCIAS PARA ALUNO

2127.MOSTRAR CAMPO COMPLEMENTAR NA VISO DE ALUNOS

2228.ENVIAR EMAIL PARA ALUNO COM 3 OCORRNCIAS

2329.GRAVAR INFORMAO DO PRODUTO NO HISTRICO DO ITEM DE MOVIMENTO

2430.VALIDAR PREENCHIMENTO DE NOME DE FUNCIONRIO COM ACENTO

2431.VALIDAR INFORMAO ORIGINAL DO CAMPO DESCRIO DA SEO

2432.VALIDAR INFORMAO DO CAMPO DESCRIO DA SEO

2533.ENVIAR EMAIL PELO VIA PROCESSO DO CADASTRO DE FUNCIONRIO

2634.VALIDAR PREENCHIMENTO DE CENTRO DE CUSTO (CAMPO COMPLEMENTAR) POR INSUMO

2735.VALIDAR TAMANHO DO CAMPO CODIGO DE PROJETO

2836.CANCELAR ATENDIMENTO RELACIONADO

2937.HABILITAR CAMPO IMPRODUTIVO PARA RECURSOS DA COMPOSIO

3038.ALTERAR STATUS DO LANAMENTO PARA CANCELAMENTO DE LANAMENTO NO SGI

3139.CONFIGURAO PARA A FRMULA VISUAL FUNCIONAR

FRMULA VISUAL1. VALIDA DATA DE ENTREGA DE IMVEL

DESCRIOEsta Frmula Visual (Workflow) tem como objetivo validar o preenchimento da Data de Entrega de um imvel no Sistema SGI, e o campo parmetro do atendimento "INCLUIRSEMDATAENTREGA".

GATILHOCadastro >> Antes de Salvar o Registro >> CRM >> Atendimentos

ATIVIDADESCONSULTA SQLSELECT

CASEWHEN (SELECTXVENDA.DATAENTREGACHAVE

FROMXVENDA (NOLOCK),

XEMPREENDIMENTO (NOLOCK),

XITEMVENDA (NOLOCK)

WHERE

XEMPREENDIMENTO.COD_PESS_EMPR = XVENDA.COD_PESS_EMPR AND XEMPREENDIMENTO.CODCOLIGADA = XVENDA.CODCOLIGADA

AND XITEMVENDA.NUM_VENDA = XVENDA.NUM_VENDA AND XITEMVENDA.COD_PESS_EMPR = XVENDA.COD_PESS_EMPR

AND XVENDA.CODCOLIGADA =:CODCOLIGADA

AND XVENDA.CODCFO =:CODCFO

AND XEMPREENDIMENTO.CODEMPREENDIMENTO =:PARAMETRO_10

AND XITEMVENDA.NUM_SUB_UNID =:PARAMETRO_8 ) < GETDATE() THEN 0

ELSE 1

END AS RETORNO

FROM GCOLIGADA (NOLOCK)

WHERE CODCOLIGADA = 1

Activity=RMSWorkflow, Path=Fields["CODCFO"].AsString

Activity=RMSWorkflow, Path=Fields["CODCODCOLIGADA"].AsShort

Activity=RMSWorkflow, Path=Tables["HPARAMATENDIMENTO"].Item["PARAMETRO_10"].AsString

Activity=RMSWorkflow, Path=Tables["HPARAMATENDIMENTO"].Item["PARAMETRO_8"].AsString

SE/SENAOCONDIO DECLARATIVAthis.Tables["HATENDIMENTOBASE"]["CODGRUPOATENDIMENTO"].AsString == "5" && this.Tables["HATENDIMENTOBASE"]["CODTIPOATENDIMENTO"].AsString == "8" && this.Tables[0].Rows[0].RowState == System.Data.DataRowState.Added && this.rmsConsSQLActivity1.Fields["RETORNO"].AsInteger == 1 && (this.Tables["HPARAMATENDIMENTO"]["PARAMETRO_3"].AsString == "0" || this.Tables["HPARAMATENDIMENTO"]["PARAMETRO_3"].IsNull)

GERAR EXCEOMENSAGEM DE ERROCampo "Data de Entrega das Chaves" no Sistema SGI maior que a Data Atual. Verifique o preenchimento do campo, ou verifique se o campo "Salvar atendimento para Imvel no Entregue" (Pasta Parmetros) deve ser marcado.

OBSERVAO necessria a criao de Campos Parmetros no TOTVS Gesto do Relacionamento com o Cliente.

FRMULA VISUAL2. VALIDAO DE INCLUSO DE PROSPECT/SUSPECT

DESCRIOEsta Frmula Visual tem como objetivo validar se o CPF/CNPJ do Prospect-Suspect j existe na Base de Dados de Clientes.

GATILHOCadastros >> Antes de Salvar o Registro >> CRM >> Prospect/Suspect

ATIVIDADESCONSULTA SQLSELECT COUNT (CGCCFO) AS QTD

FROM FCFO (NOLOCK)

WHERE CGCCFO = :CGCCFOActivity=RMSWorkflow, Path=Fields.Item["CGCCFO"].AsString

SE/SENAOCONDIO DECLARATIVAthis.Tables[0].Rows[0].RowState == System.Data.DataRowState.Added && this.retornaCNPJ.Fields["QTD"].AsInteger > 0

GERAR EXCEOMENSAGEM DE ERRO# Este CPF j existe no Cadastro de Clientes. Favor verificar se este registro pode ser includo. #

OBSERVAO

FRMULA VISUAL3. VALIDAO DE DUPLICIDADE DE ATENDIMENTOS

DESCRIOEsta Frmula Visual (Workflow) tem como objetivo validar duplicidade de atendimentos do Tipo 9 e 10.

GATILHOCadastro >> Antes de Salvar o Registro >> CRM >> Atendimentos

ATIVIDADESCONSULTA SQL/* CONSULTA SQL QUE RETORNA ATENDIMENTOS DUPLICADOS - VALIDACAO VIA FORMULA VISUAL*/

IF (

SELECT COUNT(VALOR) AS OCORRENCIAS

FROM HPARAMATENDIMENTO (NOLOCK), HATENDIMENTOEXT (NOLOCK)

WHERE HPARAMATENDIMENTO.CODCOLIGADA = HATENDIMENTOEXT.CODCOLIGADA AND HPARAMATENDIMENTO.CODATENDIMENTO = HATENDIMENTOEXT.CODATENDIMENTO AND HPARAMATENDIMENTO.CODLOCAL = HATENDIMENTOEXT.CODLOCAL

AND HPARAMATENDIMENTO.CODPARAMETRO = '50'

AND HPARAMATENDIMENTO.VALOR =:PARAMETRO_50

AND HATENDIMENTOEXT.CODCFO =:CODCFO

AND HATENDIMENTOEXT.CODATENDIMENTO :CODATENDIMENTO

AND CONVERT(VARCHAR(10),ABERTURA,102) >= CONVERT(VARCHAR(10),DATEADD(MONTH,-3, CONVERT(VARCHAR(10),GETDATE(),102)),102)

AND HATENDIMENTOEXT.CODSTATUS 'C'

AND HATENDIMENTOEXT.CODSTATUS 'R'

AND HATENDIMENTOEXT.CODSTATUS 'O'

AND HATENDIMENTOEXT.CODSTATUS 'F'

AND HATENDIMENTOEXT.CODSTATUS 'U' ) > 0

BEGIN

SELECT 1 AS RETORNO END

ELSE

BEGIN SELECT 0 AS RETORNO ENDActivity=RMSWorkflow, Path=Fields["CODATENDIMENTO"].AsInteger

Activity=RMSWorkflow, Path=Fields["CODCFO"].AsString

Activity=RMSWorkflow, Path=Tables["HPARAMATENDIMENTO"].Item["PARAMETRO_50"].AsString

SE/SENAOCONDIO DECLARATIVA(this.Tables["HATENDIMENTOBASE"]["CODGRUPOATENDIMENTO"].AsString == "6" && this.Tables["HATENDIMENTOBASE"]["CODTIPOATENDIMENTO"].AsString == "9" || this.Tables["HATENDIMENTOBASE"]["CODGRUPOATENDIMENTO"].AsString == "6" && this.Tables["HATENDIMENTOBASE"]["CODTIPOATENDIMENTO"].AsString == "10") && this.rmsConsSQLActivity1.Fields["RETORNO"].AsInteger == 1 && (this.Tables[0].Rows[0].RowState == System.Data.DataRowState.Added || this.Tables[0].Rows[0].RowState == System.Data.DataRowState.Modified || this.Tables["HPARAMATENDIMENTO"]["PARAMETRO_50"].IsModified) && (this.Tables["HPARAMATENDIMENTO"]["PARAMETRO_55"].AsString == "0" || this.Tables["HPARAMATENDIMENTO"]["PARAMETRO_55"].IsNull)

GERAR EXCEOMENSAGEM DE ERROTexto da Atividade Expresso

EXPRESSOEXPRESSESNewLine + 'J existe um atendimento para este CLIENTE e EMPREENDIMENTO. Verifique o preenchimento do atendimento, ou verifique se o campo "Salvar Atendimento Duplicado" (Pasta Parmetros) deve ser marcado.' + NewLine + NewLine

VALOR CALCULADOActivity=rmsThrowActivity1, Path=Message

OBSERVAO necessria a criao de Campos Parmetros no TOTVS Gesto do Relacionamento com o Cliente.

FRMULA VISUAL4. ATENDIMENTO DUPLICADO - ENVIO DE EMAIL PARA SUPERINTENDENTE

DESCRIOEsta Frmula Visual (Workflow) tem como objetivo enviar um e-mail alertando o Superintendente de Vendas quanto incluso de atendimentos duplicados do Tipo 9 e 10.

Campo a ser testado: PARAMETRO_55

Tabela: HPARAMATENDIMENTO

GATILHOCadastro >> Antes de Salvar o Registro >> CRM >> Atendimentos

ATIVIDADESSE/SENAOCONDIO DECLARATIVAthis.Tables["HPARAMATENDIMENTO"]["PARAMETRO_55"].AsString == "1"

PARA CADA ITERAOLISTA DE ITENSActivity=RMSWorkflow, Path=Tables[0].Rows

CONSULTA SQLDECLARE @GRUPO INT

SET @GRUPO = '19'

SELECT

PPESSOA.EMAIL,

PPESSOA.NOME,

@GRUPO AS GRUPO

FROM

HATENDENTE (NOLOCK)

INNER JOIN PPESSOA (NOLOCK)ON

HATENDENTE.CODPESSOA = PPESSOA.CODIGO

INNER JOIN HATENDENTEGRUPO (NOLOCK) ON

HATENDENTE.CODCOLIGADA = HATENDENTEGRUPO.CODCOLIGADA

AND HATENDENTE.CODATENDENTE = HATENDENTEGRUPO.CODATENDENTE

AND HATENDENTEGRUPO.CODGRUPO = @GRUPO

ENVIO DE EMAILASSUNTO[TOTVS CRM Informa] Incluso de Atendimento Duplicado no Setor de Vendas

DESTINATRIOActivity=rmsConsSQLActivity1, Path=Fields["EMAIL"].AsStringArray

REMETENTECompany

TEXTO DO EMAILTexto da Atividade Expresso

EXPRESSOEXPRESSES'----------------------------------------------------------------------------' + NewLine + NewLine +'Prezado(a) Superintendente de Vendas, ' + NewLine + NewLine +'O sistema [TOTVS Gesto do Relacionamento com o Cliente] constatou que um atendimento do Tipo [Ficha de Atendimento] foi includo em duplicidade para o cliente: ' + RMSWorkflow.CODCFO + '.' + NewLine + NewLine + 'Nmero do Atendimento Duplicado: ' + RMSWorkflow.CODATENDIMENTO + NewLine + NewLine + '----------------------------------------------------------------------------'

VALOR CALCULADOActivity=rmsSendEmailActivity1, Path=Body

IMAGEM

FRMULA VISUAL5. VALIDAO DO CAMPO EMAIL - CADASTRO DE PESSOAS

DESCRIOFrmula Visual que verifica se o campo EMAIL do Cadastro de Pessoas foi preenchido corretamente.Tabela: PPESSOA

Campo Validado: EMAIL

Valor: e-mail vlido

GATILHOCadastros >> Antes da Atualizao do Registro (Fim) >> Folha de Pagamento >> Pessoas

ATIVIDADESSE/SENAOCONDIO DECLARATIVA!new System.Text.RegularExpressions.Regex("^([0-9a-zA-Z]+([_.-]?[0-9a-zA-Z]+)*@[0-9a-zA-Z]+[0-9,a-z,A-Z,.,-]*(.){1}[a-zA-Z]{2,4})+$").IsMatch(this.Tables["PPESSOA"]["EMAIL"].AsString)

GERAR EXCEOMENSAGEM DE ERROTexto da Atividade Expresso

EXPRESSOEXPRESSES'----------------------------------------------------------------------------' + NewLine + NewLine +'Favor preencher o campo EMAIL com um valor vlido.' + NewLine + '( Exemplo: [email protected] )' + NewLine + NewLine +NewLine + NewLine + '----------------------------------------------------------------------------'

VALOR CALCULADOActivity=rmsThrowActivity1, Path=Message

OBSERVAO

FRMULA VISUAL6. VALIDAO DO CAMPO TELEFONE ADICIONAL - PROSPECT

DESCRIOFrmula Visual que verifica se o campo TELEFONE ADICIONAL do Cadastro de Prospect foi preenchido corretamente.Tabela: HPROSPECTCOMPL

Campo Validado: TELEFONEPROSPECT

GATILHOCadastros >> Antes de Salvar o Registro >> CRM >> Prospect/Suspect

ATIVIDADESSE/SENAOCONDIO DECLARATIVA!this.Tables["HPROSPECTCOMPL"]["TELEFONEPROSPECT"].IsNull && !new System.Text.RegularExpressions.Regex("^\\d{2}[\\s-]\\d{4}-\\d{4}$").IsMatch(this.Tables["HPROSPECTCOMPL"]["TELEFONEPROSPECT"].AsString)

GERAR EXCEOMENSAGEM DE ERROTexto da Atividade Expresso

EXPRESSOEXPRESSES'----------------------------------------------------------------------------' + NewLine + NewLine +'Favor preencher o campo TELEFONE ADICIONAL (Pasta Campos Complementares) com um valor vlido.' + NewLine + '( Padro: 31 0000-0000 )' + NewLine + NewLine +NewLine + NewLine + '----------------------------------------------------------------------------'

VALOR CALCULADOActivity=rmsThrowActivity1, Path=Message

OBSERVAO

FRMULA VISUAL7. VALIDAO DE DATA DA VISITA AO IMOVEL

DESCRIOEsta Frmula Visual (Workflow) tem como objetivo validar o preenchimento da Data da Visita ao Imvel.

Campo a ser testado: HPARAMATENDIMENTO.PARAMETRO_23

Tabela: HPARAMATENDIMENTO

Valor: Menor que HATENDIMENTOBASE.ABERTURA

GATILHOCadastro >> Antes de Salvar o Registro >> CRM >> Atendimentos

ATIVIDADESSE/SENAOCONDIO DECLARATIVAthis.Tables["HATENDIMENTOBASE"]["CODGRUPOATENDIMENTO"].AsString == "6" && this.Tables["HATENDIMENTOBASE"]["CODTIPOATENDIMENTO"].AsString == "9" && this.Tables["HPARAMATENDIMENTO"]["PARAMETRO_23"].AsDateTime > this.Tables["HATENDIMENTOBASE"]["ABERTURA"].AsDateTime

GERAR EXCEOMENSAGEM DE ERROTexto da Atividade Expresso

EXPRESSOEXPRESSES'----------------------------------------------------------------------------' + NewLine + NewLine +

'O campo "Data da Visita ao Imvel" (Pasta Parmetros) deve ser preenchido com uma Data anterior ou igual a Data Atual.' + NewLine + NewLine +

NewLine + NewLine + '----------------------------------------------------------------------------'

VALOR CALCULADOActivity=rmsThrowActivity1, Path=Message

OBSERVAO necessria a criao de Campos Parmetros no TOTVS Gesto do Relacionamento com o Cliente.

FRMULA VISUAL8. VALIDAO DO CAMPO EMAIL - CADASTRO DE USURIOS

DESCRIOFrmula Visual que verifica se o campo EMAIL do Cadastro de Usurios foi preenchido corretamente.

Tabela: GUSUARIO

Campo Validado: EMAIL

Valor: e-mail vlido

GATILHOCadastros >> Antes da Atualizao do Registro (Fim) >> Globais >> Usurios

ATIVIDADESSE/SENAOCONDIO DECLARATIVA!this.Tables["GUSUARIO"]["EMAIL"].IsNull && !new System.Text.RegularExpressions.Regex("^([0-9a-zA-Z]+([_.-]?[0-9a-zA-Z]+)*@[0-9a-zA-Z]+[0-9,a-z,A-Z,.,-]*(.){1}[a-zA-Z]{2,4})+$").IsMatch(this.Tables["GUSUARIO"]["EMAIL"].AsString)

GERAR EXCEOMENSAGEM DE ERROTexto da Atividade Expresso

EXPRESSOEXPRESSES'----------------------------------------------------------------------------' + NewLine + NewLine +

'Favor preencher o campo EMAIL com um valor vlido.' + NewLine + '( Exemplo: [email protected] )' + NewLine + NewLine +

NewLine + NewLine + '----------------------------------------------------------------------------'

VALOR CALCULADOActivity=rmsThrowActivity1, Path=Message

OBSERVAO

FRMULA VISUAL9. VALIDAO DOS CAMPOS COMPLEMENTARES - FATURAMENTO DE MOVIMENTO

DESCRIOFrmula Visual que verifica se os campos PRECO (RELACAO CUSTO-BENEFICIO),PONTUAL ENTREGA NO PRAZO ESTABELECIDO,ADEQUADACAO AS NORMAS TECNICAS,INOVACAO TECNOLOGICA,ADEQUADACAO PROJ DE INTERFACE, FUNCIONALIDADE, etc, do Tipo Movimento 1.2.37 foram preenchidos, caso o Perodo do Contrato do RM SOLUM associado ao movimento seja o ltimo.Tabela: TMOVCOMPL

Campo Validado: PRECO, PONTUALIDADE, etc

Valor: No Nulo

GATILHOCadastros >> Antes de Salvar o Registro >> Estoque >> MovFaturamentoData

ATIVIDADESCONSULTA SQLSELECT

CASE

WHEN

(

SELECT DISTINCT(MPDO.IDCNT)

FROMMPDO

INNER JOIN MCNT (NOLOCK) ON MCNT.CODCOLIGADA = MPDO.CODCOLIGADA AND MCNT.IDPRJ = MPDO.IDPRJ AND MCNT.IDCNT = MPDO.IDCNT

INNER JOIN TMOV (NOLOCK) ON MPDO.IDMOV = TMOV.IDMOV AND MPDO.CODCOLIGADA = TMOV.CODCOLIGADA

WHEREMPDO.CODCOLIGADA =:CODCOLIGADA

AND MPDO.IDMOV =:IDMOVORIGEM

AND MPDO.DATAFIM = MCNT.DATAFIM

) IS NOT NULL

THEN 1

ELSE 0

END ULTIMOPERIODOSOLUM

/* CONSULTA SQL PARA FORMULA VISUAL QUE VALIDA TIPO DE MOVIMENTO 1.2.37

SE RETORNAR 1 EH PORQUE O PERIODO DO CONTRATO NO RM SOLUM EH O ULTIMO */Activity=RMSWorkflow, Path=Tables["TMOVRELAC"].Item["CODCOLORIGEM"].AsInteger

Activity=RMSWorkflow, Path=Tables["TMOVRELAC"].Item["IDMOVORIGEM"].AsInteger

SE/SENAOCONDIO DECLARATIVA(this.Tables[0].Rows[0].RowState == System.Data.DataRowState.Added || this.Tables[0].Rows[0].RowState == System.Data.DataRowState.Modified) && (this.Tables["TMOV"]["CODTMV"].AsString == "1.2.37" && this.rmsConsSQLActivity1.Fields["ULTIMOPERIODOSOLUM"].AsString == "1" && (this.Tables["TMOVCOMPL"]["PRECO"].IsNull || this.Tables["TMOVCOMPL"]["PONTUALIDADE"].IsNull || this.Tables["TMOVCOMPL"]["ADEQUADACAO"].IsNull || this.Tables["TMOVCOMPL"]["INOVACAO"].IsNull || this.Tables["TMOVCOMPL"]["ADEQPROJ"].IsNull || this.Tables["TMOVCOMPL"]["FUNCIONALIDADE"].IsNull || this.Tables["TMOVCOMPL"]["ATENDSOLCONSTR"].IsNull || this.Tables["TMOVCOMPL"]["ACOMP"].IsNull || this.Tables["TMOVCOMPL"]["RELAC"].IsNull || this.Tables["TMOVCOMPL"]["QUALIDADE"].IsNull))

GERAR EXCEOMENSAGEM DE ERROTexto da Atividade Expresso

EXPRESSOEXPRESSES'----------------------------------------------------------------------------' + NewLine +

'Favor preencher os campos da Pasta Informaes Adicionais >> Campos Complementares, visto ser o ltimo Perodo do Contrato associado no RM SOLUM. Os campos so: ' + NewLine + '"PRECO (RELACAO CUSTO-BENEFICIO)", "PONTUAL ENTREGA NO PRAZO ESTABELECIDO", "ADEQUADACAO AS NORMAS TECNICAS", "INOVACAO TECNOLOGICA", "ADEQUADACAO PROJ DE INTERFACE", "FUNCIONALIDADE", "ATEND SOLIC DA CONSTRUTORA", "ACOMP DURANTE EXECUCAO OBRA", "RELACIONAMENTO COM A CONSTRUTORA" e "QUALIDADE DAS INFOR DOS PROJETOS/LAUDOS"' + NewLine +NewLine + '----------------------------------------------------------------------------'

VALOR CALCULADOActivity=rmsThrowActivity1, Path=Message

OBSERVAO necessria a criao dos Campos Complementares no RM Nucleus e associar ao Tipo de Movimento.

FRMULA VISUAL10. VALIDAO DO NUMERO DO CONTRATO RM SOLUM - FATURAMENTO DE MOV

DESCRIOFrmula Visual que verifica se o Campo Complementar NUMERO CONTRATO EMPREITEIRO (Tipo de Movimento 1.2.37) igual ao campo NUMERO CONTRATO do Contrato do RM Solum associado ao movimento de origem (1.1.16).

Tabela: TMOVCOMPL e MCNT

Campo Validado: TMOVCOMPL.NUMEROCONTRATO e MCNT.NUMCNT

Valor: TMOVCOMPL.NUMEROCONTRATO = MCNT.NUMCNT

GATILHOCadastros >> Antes de Salvar o Registro >> Estoque >> MovFaturamentoData

ATIVIDADESCONSULTA SQLSELECT MCNT.NUMCNT

FROMMPDO (NOLOCK)

INNER JOIN MCNT (NOLOCK) ON MCNT.CODCOLIGADA = MPDO.CODCOLIGADA AND MCNT.IDPRJ = MPDO.IDPRJ AND MCNT.IDCNT = MPDO.IDCNT

INNER JOIN TMOV (NOLOCK) ON MPDO.IDMOV = TMOV.IDMOV AND MPDO.CODCOLIGADA = TMOV.CODCOLIGADA

WHEREMPDO.CODCOLIGADA =:CODCOLORIGEM

AND MPDO.IDMOV =:IDMOVORIGEM

/* CONSULTA SQL PARA FORMULA VISUAL QUE VALIDA TIPO DE MOVIMENTO 1.2.37

RETORNA O NUMERO DO CONTRATO NO RM SOLUM */

Activity=RMSWorkflow, Path=Tables["TMOVRELAC"].Item["CODCOLORIGEM"].AsShort

Activity=RMSWorkflow, Path=Tables["TMOVRELAC"].Item["IDMOVORIGEM"].AsInteger

SE/SENAOCONDIO DECLARATIVA(this.Tables[0].Rows[0].RowState == System.Data.DataRowState.Added || this.Tables[0].Rows[0].RowState == System.Data.DataRowState.Modified)

&&

(this.Tables["TMOVCOMPL"]["FATDIRETO"].AsString == "1" && (this.Tables["TMOV"]["CODTMV"].AsString == "1.2.37" && this.rmsConsSQLActivity1.Fields["NUMCNT"].AsString != this.Tables["TMOVCOMPL"]["NUMEROCONTRATO"].AsString))

GERAR EXCEOMENSAGEM DE ERROTexto da Atividade Expresso

EXPRESSOEXPRESSES'----------------------------------------------------------------------------' + NewLine +

'Favor preencher o campo NUMERO CONTRATO EMPREITEIRO (Pasta Informaes Adicionais >> Campos Complementares), com o mesmo Nmero do Contrato associado no TOTVS OBRAS E PROJETOS (RM SOLUM).' + NewLine +NewLine +'Nmero do Contrato no TOTVS OBRAS E PROJETOS: ' + rmsConsSQLActivity1.NUMCNT

+ NewLine +NewLine + '----------------------------------------------------------------------------'

VALOR CALCULADOActivity=rmsThrowActivity1, Path=Message

OBSERVAO necessria a criao dos Campos Complementares no RM Nucleus e associar ao Tipo de Movimento.

FRMULA VISUAL11. VALIDAO DE INCLUSO DE NOVOS PRODUTOS

DESCRIOFrmula Visual que envia e-mail para Grupo de Emails responsvel pela administrao do Cadastro de Produtos a cada novo produto incluso.

Tabela: TPRD

Campo Validado: IDPRD

Valor: novo registro

GATILHOCadastros >> Aps Salvar o Registro >> Estoque >> Produtos

ATIVIDADESSE/SENAOCONDIO DECLARATIVAthis.Tables[0].Rows[0].RowState == System.Data.DataRowState.Added

ENVIO DE EMAILASSUNTO[TOTVS] Incluso de Novo Produto no Sistema TOTVS

[email protected]

REMETENTECompany

TEXTO DO EMAILTexto da Atividade Expresso

EXPRESSOEXPRESSES'----------------------------------------------------------------------------' + NewLine + NewLine +'Um novo Produto foi includo no sistema TOTVS.'

+ NewLine + NewLine +'Cdigo do Produto: ' + RMSWorkflow.CODIGOPRD + NewLine +

'Cdigo da Coligada: ' + RMSWorkflow.CODCOLIGADA

+ NewLine

+ NewLine + NewLine +'----------------------------------------------------------------------------'

VALOR CALCULADOActivity=rmsSendEmailActivity1, Path=Body

OBSERVAO

FRMULA VISUAL12. ENVIO DE EMAIL NOVO USURIO

DESCRIOEste Workflow tem como objetivo enviar um e-mail automtico para o usurio do sistema que tiver seu login includo no sistema, ou tiver sua senha resetada.

Campo a ser testado: "SENHA" da viso do cadastro de Usurios (GUSUARIO.SENHA).

GATILHOCadastros >> Antes da Atualizao do Registro (Fim) >> Globais >> Usurios

ATIVIDADESSE/SENAOCONDIO DECLARATIVAthis.Fields["SENHA"].IsModified

ENVIO DE EMAILASSUNTO[TOTVS] Login de acesso aos Sistemas TOTVS

DESTINATRIOActivity=RMSWorkflow, Path=Fields["EMAIL"].AsStringArray

REMETENTECompany

TEXTO DO EMAILTexto da Atividade Expresso

EXPRESSOEXPRESSES'Prezado [' + RMSWorkflow.NOME + '],' + Newline + NewLine + 'Seu cadastro como usurio nos Sistemas TOTVS foi finalizado com sucesso!' + Newline + Newline + 'Seu login de acesso : ' + RMSWorkflow.CODUSUARIO + Newline + 'Sua senha inicial: 123456' + Newline + NewLine + 'Agora voc est apto a utilizar o sistema.' + Newline + NewLine + 'Bom Trabalho!'

VALOR CALCULADOActivity=rmsSendEmailActivity1, Path=Body

OBSERVAO possvel indicar a senha que for informada no cadastro do usurio. O valor padro 123456 foi uma questo de segurana.

FRMULA VISUAL13. ENVIO DE E-MAIL - ERRO NA ROTINA DE ENVIO DE E-MAILS AGENDADOS

DESCRIOEste Workflow tem como objetivo enviar um e-mail automtico para os usurios-chave do sistema RM Agilis, caso ocorram erros durante a gerao da rotina de Envio de E-mails Automticos (servio 'Executar Frmula a partir de Consulta SQL'). Fazendo com que os usurios-chave tomem providncia.

Campo a ser testado: MENSAGEMSTATUS e DATAINIEXEC

Tabela: GJOBXEXECUCAO

GATILHOExecuo Agendada: Acessar a opo Salvar e Executar dentro da edio da Frmula Visual, e agendar a execuo

ATIVIDADESCONSULTA SQLSELECT

CASE

WHEN (SELECTCOUNT(*) FROM GJOBXEXECUCAO (NOLOCK)

WHERECONVERT(VARCHAR(10),DATAINIEXEC,105) = CONVERT(VARCHAR(10),GETDATE(),105)

AND

MENSAGEMSTATUS LIKE '%ERRO%UPDATE%GAUTOINC%') > 0 THEN 1

ELSE 0

END AS RETORNO

FROM GCOLIGADA (NOLOCK)

WHERE CODCOLIGADA = 1

SE/SENAOCONDIO DECLARATIVAthis.rmsConsSQLActivity1.Fields["RETORNO"].AsString == "1"

ENVIO DE EMAILASSUNTO[TOTVS] Ateno: Ocorreu erro durante o envio de e-mails automticos

DESTINATRIOInformar o e-mail do responsvel pelos Sistemas TOTVS na empresa

REMETENTECompany

TEXTO DO EMAILTexto da Atividade Expresso

EXPRESSOEXPRESSES'Ao Administrador dos Sistemas TOTVS: '+ Newline + NewLine +

'Favor verificar se a rotina de envio de e-mails est funcionando corretamente' + NewLine +

'(conferncia pode ser realizada atravs do RM Agilis em | Menu Utilitrios | Histrico de E-mails enviados)'

+ NewLine +

'Pois a rotina de envio de e-mail retornou o seguinte erro:'+ NewLine +

'--------------------------' + NewLine +

'ERRO: Atendimento [xx-x-xxxx] - A frmula COLIGADA no pode ser executada! A frmula COLIGADA no pode ser executada! --CRMMailServer UPDATE GAUTOINC SET VALAUTOINC = xxxx WHERE CODCOLIGADA = 0 AND CODSISTEMA = H AND CODAUTOINC = GMAILSEND AND VALAUTOINC = xxxx '+ NewLine +

'ExecuteNonQuery requires an open and available Connection. The connections current state is closed. Erro ao atualizar GAUTOINC'

+ NewLine +

'--------------------------'

+ NewLine + NewLine +

'OBS: Verificar o servio "RM.Host.Service" no servidor onde o RM Agilis est instalado.' + NewLine

VALOR CALCULADOActivity=rmsSendEmailActivity1, Path=Body

OBSERVAOEsta Frmula Visual s deve ser includa caso o servio agendado de Envio de Email esteja sendo utilizado.

FRMULA VISUAL14. ALTERA CAMPO DO CADASTRO DE EVENTO DO LABORE

DESCRIOAltera Campo do Cadastro de Evento do Labore

Campo: SEGUERATEIOSALCMP

Tabela: PEVENTO

Valor: 1

GATILHOCadastros >> Antes da Atualizao do Registro (Fim) >> Folha de Pagamento >> Evento

ATIVIDADESEXPRESSOEXPRESSES1

VALOR CALCULADOActivity=RMSWorkflow, Path=Tables["PEVENTO"].Item["SEGUERATEIOSALCMP"].AsInteger

OBSERVAOEsta Frmula Visual altera o contedo do campo independente da condio do registro.

FRMULA VISUAL15. TORNAR ATENDENTE INATIVO QUANDO FUNCIONRIO FOR DEMITIDO

DESCRIOEste Workflow tem por objetivo tornar um Atendente Inativo caso o Funcionrio seja Demitido no RM Labore.

GATILHOExecuo Agendada: Acessar a opo Salvar e Executar dentro da edio da Frmula Visual, e agendar a execuo

ATIVIDADESCONSULTA SQLSELECTCODATENDENTE,

CODCOLIGADA,

ATIVO

FROMHATENDENTE

WHERECODPESSOA =:CODPESSOA

LER REGISTRONOME DO DATASERVERCRMAtendenteData

CDIGO DO ATENDENTEActivity=RMSWorkflow, Path=Fields["CODATENDENTE"].AsInteger

COLIGADAActivity=RMSWorkflow, Path=Fields["CODCOLIGADA"].AsShort

EXPRESSOEXPRESSES0

VALOR CALCULADOActivity=rmsReadRecordActivity1, Path=Tables["HATENDENTE"].Item["ATIVO"].AsBoolean

SALVAR REGISTROFONTE DE DADOSActivity=rmsReadRecordActivity1, Path=DataSet

NOME DO DATASERVERCRMAtendenteData

IMAGEM

FRMULA VISUAL16. VALIDAO DO CAMPO CPF - CADASTRO DE FUNCIONRIOS

DESCRIOFrmula Visual que valida se o CPF do funcionrio j existe na Base de Dados.

GATILHOCadastros >> Aps da Atualizao do Registro (Fim) >> Folha de Pagamento >> Funcionrios

ATIVIDADESCONSULTA SQLSELECT CPF FROM PPESSOA

WHERE CPF =:CPF

AND CODIGO :CODIGO

SE/SENAOCONDIO DECLARATIVAthis.rmsConsSQLActivity1.DataSet.Tables[0].Rows.Count > 0

GERAR EXCEOMENSAGEM DE ERROCPF informado j existe na Base de Dados ! Favor informar outro CPF.

OBSERVAO

FRMULA VISUAL17. VALIDAO DO CAMPO PIS - CADASTRO DE FUNCIONRIOS

DESCRIOFrmula Visual que valida o preenchimento do Campo PIS do Cadastro de Funcionrios.

Caso o campo PIS estiver em branco, e o campo "Tipo de Admisso" for diferente de 'P' (1 Emprego), o Sistema ir barrar a incluso/alterao do registro.

Campo Verificado: PFUNC.PISPASEP e PFUNC.TIPOADMISSAO

GATILHOCadastros >> Antes da Atualizao do Registro (Fim) >> Folha de Pagamento >> Funcionrios

ATIVIDADESSE/SENAOCONDIO DECLARATIVAthis.Tables["PFUNC"]["PISPASEP"].IsNull && System.Convert.ToString(this.Tables["PFUNC"]["TIPOADMISSAO"].Value).ToUpper() != "P"

GERAR EXCEOMENSAGEM DE ERROCampo PIS obrigatrio, caso o Tipo de Admisso no seja '1 Emprego'.

OBSERVAO

FRMULA VISUAL18. VALIDA PERFIL DE USURIO LOGADO

DESCRIOEsta Frmula Visual (Workflow) tem como objetivo validar a incluso e alterao no cadastro de produtos com base no Perfil do Usurio logado.

GATILHOCadastro >> Antes de Salvar o Registro >> Estoque >> Produtos

ATIVIDADESCONSULTA SQLIF

(

SELECTCOUNT(*)

FROMGUSRPERFIL (NOLOCK)

WHEREGUSRPERFIL.CODUSUARIO =:FRM_USUARIO AND

GUSRPERFIL.CODCOLIGADA =:FRM_COLCOR AND

GUSRPERFIL.CODSISTEMA = 'T' AND

GUSRPERFIL.CODPERFIL = 'IMPLANTACAO'

) > 0

BEGINSELECT 1 AS RESULTADO

END

ELSESELECT 0 AS RESULTADOActivity=RMSWorkflow, Path=Context.CodColigada

Activity=RMSWorkflow, Path=Context.CodUsuario

SE/SENAOCONDIO DECLARATIVAthis.rmsConsSQLActivity1.Fields["RESULTADO"].AsInteger == 1

GERAR EXCEOMENSAGEM DE ERROEste Usurio est associado a um Perfil de Usurio que no permite incluses/alteraes no cadastro de Produtos. Favor contatar o Administrador do Sistema.

OBSERVAO necessrio informar o Perfil a ser validado dentro da Consulta SQL.

OBSERVAO 2Dentro da Condio Declarativa, ou da Consulta SQL pode-se incluir demais validaes que se fizerem necessrias.

FRMULA VISUAL19. VALIDA APROPRIAO DE ATENDIMENTO

DESCRIOEsta Frmula Visual (Workflow) tem como objetivo validar a Apropriao de Novos Atendimentos com base na quantidade de atendimentos pendentes para o Atendente associado ao Usurio logado.

GATILHOProcesso >> Antes da Execuo >> Apropriar-se de um atendimento em uma fila

ATIVIDADESCONSULTA SQLSELECTCOUNT (H.CODATENDIMENTO) AS CONTADOR

FROMHATENDIMENTOBASE H (NOLOCK)

INNER JOIN HATENDENTE HA (NOLOCK)

ON HA.CODCOLIGADA = H.CODCOLIGADARESP

AND HA.CODATENDENTE = H.CODATENDENTERESP

WHEREHA.CODUSUARIO =:CODUSUARIO

AND H.CODSTATUS IN ('A')Activity=RMSWorkflow, Path=Context.CodUsuario

SE/SENAOCONDIO DECLARATIVAthis.rmsConsSQLActivity1.Fields["CONTADOR"].AsInteger > 4

GERAR EXCEOMENSAGEM DE ERROVoc j possui mais de 5 atendimentos PENDENTES. Favor atuar sobre os atendimentos sob sua responsabilidade antes de apropriar de mais atendimentos.

OBSERVAOA consulta SQL est considerando apenas o Status Pendente (A).

OBSERVAO 2Dentro da Condio Declarativa, ou da Consulta SQL pode-se incluir demais validaes que se fizerem necessrias.

FRMULA VISUAL20. VALIDA INCLUSO DE REQUISIES DO VITAE FORA DO PRAZO

DESCRIOEsta Frmula Visual (Workflow) tem como objetivo validar a incluso de Requisies de Treinamento (RM Vitae) para que sejam inclusas considerando um Prazo de 7 dias corridos para a Data Prevista.

GATILHOCadastros >> Antes de Salvar o Registro >> RhuReqTreinamentoData

ATIVIDADESSE/SENAOCONDIO DECLARATIVAthis.Tables["VTREINAMENTOCOMPL"]["TIPOTRE"].AsString == "01" && this.Tables["VREQTREINAMENTO"]["DATAPREVISTA"].AsDateTime > Antes da Atualizaes do Registro (Fim) >> RhuParticipantesData

ATIVIDADESCONSULTA SQLSELECT COUNT(CODPESSOA) AS QTDEPARTICIPOU,

VTURMA.CODPESSOA,

VTURMAS.CODCURSO

FROM VTURMAS

INNER JOIN VTURMA (NOLOCK) ON VTURMAS.CODTURMA = VTURMA.CODTURMA

AND VTURMAS.CODCOLIGADA = VTURMA.CODCOLIGADA

WHERE

VTURMA.CODPESSOA=:CODPESSOA

AND VTURMAS.CODCURSO='1000015'

AND VTURMA.DTDESISTENCIA IS NULL

GROUP BY VTURMA.CODPESSOA, VTURMAS.CODCURSO, VTURMA.DTDESISTENCIA

HAVING COUNT(CODPESSOA)>=2Activity=RMSWorkflow, Path=Tables["VTURMA"].Item["CODPESSOA"].AsInteger

CONSULTA SQLSELECT DISTINCT VTURMAS.CODCURSO

FROM VTURMAS

INNER JOIN VTURMA (NOLOCK) ON VTURMAS.CODTURMA = VTURMA.CODTURMA

AND VTURMAS.CODCOLIGADA = VTURMA.CODCOLIGADA

WHERE

VTURMA.CODTURMA=:CODTURMA

AND VTURMA.CODCOLIGADA=:CODCOLIGADAActivity=RMSWorkflow, Path=Fields["CODCOLIGADA"].AsShort

Activity=RMSWorkflow, Path=Tables["VTURMA"].Item["CODTURMA"].AsString

CONSULTA SQLSELECT COUNT(CODUSUARIO) AS USU

FROM GUSRPERFIL (NOLOCK)

WHERE CODPERFIL = 'AUT_TREINAMENTO'

AND GUSRPERFIL.CODUSUARIO =:CODUSUARIOActivity=RMSWorkflow, Path=Context.CodUsuario

SE/SENAOCONDIO DECLARATIVAthis.rmsConsSQLActivity1.Fields["CODCURSO"].AsString == "1000015" && this.Tables["VTURMA"]["DTDESISTENCIA"].IsNull && this.Tables["VTURMA"]["CODPESSOA"].AsInteger == this.rmsConsSQLActivity1.Fields["CODPESSOA"].AsInteger && (this.Tables[0].Rows[0].RowState == System.Data.DataRowState.Added || this.Tables[0].Rows[0].RowState == System.Data.DataRowState.Modified)

EXPRESSOEXPRESSES'Prezado usurio, o colaborador selecionado excedeu o limite de reciclagem aceito pela empresa. Favor procurar a coordenao do treinamento. Requisio no ser gravada.'

VALOR CALCULADOActivity=rmsThrowActivity1, Path=Message

GERAR EXCEOMENSAGEM DE ERROIMPRIME MENSAGEM DA ATIVIDADE EXPRESSO

OBSERVAO 1Dentro da Condio Declarativa, ou da Consulta SQL pode-se incluir demais validaes que se fizerem necessrias.

FRMULA VISUAL22. TRATAR EXCEO ENVIANDO EMAIL

DESCRIOEsta Frmula Visual (Workflow) tem como objetivo enviar um email para um endereo eletrnico fixo quando o processo de envio de email da Frmula Visual no encontrar o destinatrio, dentro do processo de incluso de Requisio de Transferncia do RM Vitae.

GATILHOCadastros >> Antes da Atualizaes do Registro (Fim) >> RhuReqTransferenciaData

ATIVIDADESENVIO DE EMAILASSUNTOIndicar o assunto do email que enviado em condies normais.

DESTINATRIOIndicar o email dos usurios que devem receber o email da rotina.

REMETENTECompany

TEXTO DO EMAILTexto do email que sempre enviado pelo sistema

SEQUNCIAAcessar FAULT HANDLERS

Associar uma Atividade TRATAR EXCEOFAULTTYPESystem.Exception

Associar uma Atividade ENVIO DE EMAILInformar os campos da atividade para que um email vlido seja avisado sobre a exceo.

OBSERVAO 1Dentro da Condio Declarativa, ou da Consulta SQL pode-se incluir demais validaes que se fizerem necessrias.

OBSERVAO 2A primeira atividade ENVIO DE EMAIL ser inclusa dentro da atividade SEQUENCIA, antes de acessar a configurao do Fault Handlers. A configurao do Fault Handlers realizada clicando com o boto direito sobre a atividade que ir tratar a Exceo.

OBSERVAO 3A atividade SEQUENCIA permite encapsular a exceo que ser tratada. Neste caso apenas um erro no envio de email da primeira atividade ENVIO DE EMAIL ser tratada, enviando um outro email, porm para um endereo vlido.

FRMULA VISUAL23. VALIDAR SE O CANDIDATO EST SENDO INSCRITO EM UM CURSO MAIS DE 2 VEZES

DESCRIOEsta Frmula Visual (Workflow) tem como objetivo validar se existe vaga para a Funo e Seo, baseado no Quadro de Lotao (RM Vitae | Menu Cadastros | Cargos/Funes | Funes | Anexos: Quadro de Lotao).

GATILHOCadastros >> Antes da Atualizaes do Registro (Fim) >> RhuReqTransferenciaData

ATIVIDADESCONSULTA SQLDECLARE @CODIGOSECAO VARCHAR(50),@CODIGOCHAPA VARCHAR(100)

SET @CODIGOSECAO =:CODSECAO

SET @CODIGOCHAPA =:CHAPA

SELECTSUM (TAB.POTENCIAL) AS POTENCIAL

FROM

(

SELECTSUM(NUMVAGAS) AS POTENCIAL

FROMVREQAUMENTOQUADRO (NOLOCK)

WHEREVREQAUMENTOQUADRO.CODSTATUS IN ('1','3','5','7')

AND VREQAUMENTOQUADRO.DATACANCELAMENTO IS NULL

AND VREQAUMENTOQUADRO.CODSECAO =@CODIGOSECAO

AND VREQAUMENTOQUADRO.CODFUNCAO IN ( SELECT CODFUNCAO

FROM PFUNC (NOLOCK)

WHERE PFUNC.CHAPA =@CODIGOCHAPA

)

UNION ALL

SELECTCOUNT(*) AS POTENCIAL

FROMVREQSUBSTITUICAO (NOLOCK)

WHEREVREQSUBSTITUICAO.CODSTATUS IN ('1','3','5','7')

AND VREQSUBSTITUICAO.CODSECAO =@CODIGOSECAO

AND VREQSUBSTITUICAO.CODFUNCAO IN ( SELECT CODFUNCAO

FROM PFUNC (NOLOCK)

WHERE PFUNC.CHAPA =@CODIGOCHAPA

)

UNION ALL

SELECT COUNT(*) AS POTENCIAL

FROM PFUNC (NOLOCK)

WHERE

CODSITUACAO 'D'

AND CODTIPO 'A'

AND PFUNC.CODSECAO =@CODIGOSECAO

AND PFUNC.CODFUNCAO IN (SELECTCODFUNCAO

FROMPFUNC (NOLOCK)

WHEREPFUNC.CHAPA =@CODIGOCHAPA

)

UNION ALL

SELECT (

(SELECT VLOTACAO.LIMITEVAGAS AS LIMITEVAGAS

FROM VLOTACAO (NOLOCK)

WHERE

VLOTACAO.CODSECAO =@CODIGOSECAO

AND VLOTACAO.CODFUNCAO IN (

SELECTCODFUNCAO

FROMPFUNC (NOLOCK)

WHEREPFUNC.CHAPA =@CODIGOCHAPA

)

) -

(SELECT COUNT(*) AS ALOCADOS

FROM PFUNC (NOLOCK)

WHERE

CODSITUACAO 'D'

AND CODTIPO 'A'

AND PFUNC.CODSECAO =@CODIGOSECAO

AND PFUNC.CODFUNCAO IN (SELECTCODFUNCAO

FROMPFUNC (NOLOCK)

WHEREPFUNC.CHAPA =@CODIGOCHAPA

)

)

) POTENCIAL

)AS TAB

/*

Legenda campo CODSTATUS

1 - em andamento

2 - reprovada

3 - aprovada

4 - concluida

5 - pendente

6 - cancelada

7 - suspensa

*/Activity=RMSWorkflow, Path=Tables["VREQTRANSFERENCIA"].Item["CHAPA"].AsString

Activity=RMSWorkflow, Path=Tables["VREQTRANSFERENCIA"].Item["CODSECAO"].AsString

SE/SENAOCONDIO DECLARATIVAthis.rmsConsSQLActivity1.Fields["POTENCIAL"].AsInteger < 1 && (this.Tables[0].Rows[0].RowState == System.Data.DataRowState.Added || this.Tables[0].Rows[0].RowState == System.Data.DataRowState.Modified)

CONSULTA SQLSELECTPPESSOA.NOME,PPESSOA.EMAIL

FROMPFUNC (NOLOCK)

INNER JOIN PPESSOA (NOLOCK) ON PFUNC.CODPESSOA = PPESSOA.CODIGO

WHEREPFUNC.CHAPA =:CHAPAActivity=RMSWorkflow, Path=Tables["VREQTRANSFERENCIA"].Item["CHAPA"].AsString

CONSULTA SQLDECLARE @CODIGOSECAO VARCHAR(50)

SET @CODIGOSECAO =:CODSECAO

IF

@CODIGOSECAO LIKE '____.300' /* SECAO DE LOJAS - SUPERVISORES */

(SELECTTOP 1 PPESSOA.EMAIL,PFUNC.CHAPA

FROMPFUNC (NOLOCK)

INNER JOIN PPESSOA (NOLOCK) ON PFUNC.CODPESSOA = PPESSOA.CODIGO

INNER JOIN PSUBSTSUP (NOLOCK) ON PSUBSTSUP.CODCOLIGADA = PFUNC.CODCOLIGADA AND PSUBSTSUP.CHAPASUBST = PFUNC.CHAPA

WHEREPSUBSTSUP.CODSECAO = @CODIGOSECAO)

ELSE

(SELECTTOP 1 PPESSOA.EMAIL,PFUNC.CHAPA

FROMPFUNC (NOLOCK)

INNER JOIN PPESSOA (NOLOCK) ON PFUNC.CODPESSOA = PPESSOA.CODIGO

INNER JOIN PSUBSTCHEFE (NOLOCK) ON PSUBSTCHEFE.CODCOLSUBST = PFUNC.CODCOLIGADA AND PSUBSTCHEFE.CHAPASUBST = PFUNC.CHAPA

WHEREPSUBSTCHEFE.CODSECAO = @CODIGOSECAO)Activity=RMSWorkflow, Path=Tables["VREQTRANSFERENCIA"].Item["CODSECAO"].AsString

EXPRESSOEXPRESSES'Prezado responsvel,'+NewLine+NewLine+'Foi realizada uma tentativa de transferncia do colaborador '+

rmsConsSQLActivity2.NOME + ' para a sua rea, porm devido a falta de vaga essa requisio no foi concluda.'+NewLine+'Pedimos a gentileza de incluir uma requisio de Aumento de Quadro para que seja possvel realizar tal demanda.' +NewLine+NewLine+'E-mail automtico do sistema TOTVS Gesto de Pessoas.'+NewLine+'Favor no responder este e-mail.'+NewLine

VALOR CALCULADOActivity=rmsSendEmailActivity1, Path=Body

GERAR EXCEOMENSAGEM DE ERROIMPRIME MENSAGEM DA ATIVIDADE EXPRESSO

ENVIO DE EMAILASSUNTOIndicar o assunto do email que enviado em condies normais.

DESTINATRIOIndicar o email dos usurios que devem receber o email da rotina.

REMETENTECompany

TEXTO DO EMAILTexto do email que sempre enviado pelo sistema

OBSERVAO 1Dentro da Condio Declarativa, ou da Consulta SQL pode-se incluir demais validaes que se fizerem necessrias.

FRMULA VISUAL24. VALIDAR INCLUSO E EXCLUSO DE RESPONSVEL FINANCEIRO NO EDUCACIONAL

DESCRIOWorkflow que tem por objetivo Validar a incluso/alterao do Responsvel Financeiro do cadastro de Contrato do Aluno ( Menu Tesouraria | Contratos | Pasta Responsvel Financeiro ).

O sistema ir exibir mensagem no caso de serem localizados lanamentos financeiros que possuam Data de Vencimento menor que a Data Atual do sistema, e o Status seja igual a "Em aberto".

GATILHOCadastros >> Antes de Salvar o Registro >> EduContratoData

ATIVIDADESPARA CADA ITERAOLISTA DE ITENSActivity=RMSWorkflow, Path=Tables["SResponsavelContrato"].Rows

Atividade:

SEQUNCIAAtividade:

CONSULTA SQLDECLARE @PERFIL VARCHAR(40)

SET

@PERFIL = 'MATINADIMPLENTE' /* INFORME AQUI O PERFIL QUE TEM PERMISSO PARA INCLUIR RESPONSVEL FINANCEIRO INADIMPLENTE NO CONTRATO */

IF

(

SELECTCOUNT(*)

FROMGUSRPERFIL (NOLOCK)

WHEREGUSRPERFIL.CODUSUARIO =:USUARIO AND

GUSRPERFIL.CODCOLIGADA =:CODCOL AND

GUSRPERFIL.CODSISTEMA = 'S' AND

GUSRPERFIL.CODPERFIL = @PERFIL

) > 0

BEGINSELECT 0 AS CONTADOR

END

ELSE

(SELECTCOUNT(*) AS CONTADOR

FROMFLAN (NOLOCK)

WHEREFLAN.CODCFO =:CODCFO AND

FLAN.CODCOLCFO =:CODCOLIGADA AND

CONVERT(VARCHAR(10),FLAN.DATAVENCIMENTO,105) < CONVERT(VARCHAR(10),GETDATE(),105) AND

FLAN.PAGREC = '1' AND

FLAN.STATUSLAN = '0')Activity=rmsForEachActivity1, Path=Fields["CODCFO"].AsString

Activity=RMSWorkflow, Path=Context.CodColigada

Activity=rmsForEachActivity1, Path=Fields["CODCOLIGADA"].AsString

Activity=RMSWorkflow, Path=Context.CodUsuario

Atividade:

CONSULTA SQLSELECTCODCFO,NOMEFANTASIA

FROMFCFO (NOLOCK)

WHERECODCFO =:CODCFO AND

CODCOLIGADA =:CODCOLIGADAActivity=rmsForEachActivity1, Path=Fields["CODCFO"].AsString

Activity=rmsForEachActivity1, Path=Fields["CODCOLIGADA"].AsString

Atividade:

SE/SENAOCONDIO DECLARATIVA(this.rmsForEachActivity1.Fields.IsDeleted || this.rmsForEachActivity1.Fields["CODCFO"].IsModified) && this.rmsConsSQLActivity1.Fields["CONTADOR"].AsInteger != 0

Atividade:

EXPRESSOEXPRESSESNewLine +

'Responsvel Financeiro com Pendncia Financeira.' +

NewLine +

'Excluso/Incluso de Responsvel Financeiro no permitida. Favor acionar o Setor Financeiro, para que a Pendncia Financeira seja analisada, e o registro atual possa ser gravado.' +

NewLine +

NewLine +

'Ateno ao Responsvel Financeiro com restrio: ' + rmsConsSQLActivity2.CODCFO + ' - ' + rmsConsSQLActivity2.NOMEFANTASIA +

NewLine +

NewLine

VALOR CALCULADOActivity=rmsThrowActivity1, Path=Message

Atividade:GERAR EXCEOMENSAGEM DE ERRO'teste' + Activity=rmsForEachActivity1, Path=Fields["CODCFO"].AsString

OBSERVAO 1Deve-se cadastrar um PERFIL sob cdigo MATINADIMPLENTE, e associar ao cadastro do usurio que tenha permisso para associar Responsvel Financeiro inadimplente ao Contrato.

FRMULA VISUAL25. PREENCHIMENTO DE CAMPO COMPLEMENTAR AUTOMATICAMENTE

DESCRIOWorkflow que tem por objetivo ( Menu Cadastros | Clientes/Fornecedores | Pasta Campos Complementares ).

O sistema ir localizar o CNPJ informado na tabela FCFO, e caso exista ir preencher o campo NOME automaticamente, com o valor do campo NOME FANTASIA do registro localizado.

GATILHOCadastros >> Antes da Atualizao do Registro (Incio)>> FinCFODataBR

ATIVIDADESAtividade:

CONSULTA SQLDECLARE @CNPJ VARCHAR(20)

SET

@CNPJ = REPLACE( REPLACE( REPLACE(:CODCNPJ, '.', ''), '/', ''), '-', '' )

SELECTTOP 1 REPLACE( REPLACE( REPLACE(CGCCFO, '.', ''), '/', ''), '-', '' ) AS CODCNPJ,

NOMEFANTASIA

FROMFCFO (NOLOCK)

WHEREREPLACE( REPLACE( REPLACE(CGCCFO, '.', ''), '/', ''), '-', '' ) = @CNPJActivity=RMSWorkflow, Path=Tables["FCFOCOMPL"].Item["CODCNPJ"].AsString

Atividade:SE/SENOIterao 1CONDIO DECLARATIVAthis.rmsConsSQLActivity1.Fields["NOMEFANTASIA"].IsNull && this.Tables["FCFOCOMPL"]["CODCNPJ"].AsString != ""

Atividade:EXPRESSOEXPRESSES'*** EMPRESA NO LOCALIZADA ***'

VALOR CALCULADOActivity=RMSWorkflow, Path=Tables["FCFOCOMPL"].Item["NOMECFO"].AsString

Iterao 2CONDIO DECLARATIVA!this.rmsConsSQLActivity1.Fields["NOMEFANTASIA"].IsNull && !this.Tables["FCFOCOMPL"]["CODCNPJ"].IsNull

Atividade:EXPRESSOEXPRESSESrmsConsSQLActivity1.NOMEFANTASIA

VALOR CALCULADOActivity=RMSWorkflow, Path=Tables["FCFOCOMPL"].Item["NOMECFO"].AsString

Iterao 3CONDIO DECLARATIVANenhum

Atividade:EXPRESSOEXPRESSES' '

VALOR CALCULADOActivity=RMSWorkflow, Path=Tables["FCFOCOMPL"].Item["NOMECFO"].AsString

OBSERVAO 1 necessrio que seja criados os campos complementares (Cliente/Fornecedor): CODCNPJ e NOMECFO

FRMULA VISUAL26. VALIDAR DUPLICIDADE EM INCLUSO DE OCORRNCIAS PARA ALUNO

DESCRIOWorkflow que tem por objetivo validar ocorrncias semelhantes em um perodo menor que 90 dias.

GATILHOCadastros >> Antes da Atualizao do Registro (Fim) >> EduOcorrenciaAlunoData

ATIVIDADESAtividade:

CONSULTA SQLDECLARE@DATAOCORRENCIA DATETIME;

SET

@DATAOCORRENCIA =:DTOCORRENCIA;

SELECTCOUNT(*) AS TOTAL

FROMSOCORRENCIAALUNO (NOLOCK)

WHERESOCORRENCIAALUNO.RA

=:RA

AND SOCORRENCIAALUNO.CODCOLIGADA

=:CODCOLIGADA

AND SOCORRENCIAALUNO.CODOCORRENCIAGRUPO =:CODOCORRENCIAGRUPO

AND SOCORRENCIAALUNO.CODOCORRENCIATIPO=:CODOCORRENCIATIPO

AND CONVERT( DATETIME, CONVERT ( VARCHAR(10), SOCORRENCIAALUNO.DATAOCORRENCIA, 102 ))

BETWEENCONVERT( DATETIME, CONVERT ( VARCHAR(10), @DATAOCORRENCIA-90, 102 ))

AND CONVERT( DATETIME, CONVERT ( VARCHAR(10), @DATAOCORRENCIA+90, 102 ))Activity=RMSWorkflow, Path=Fields["CODCOLIGADA"].AsShort

Activity=RMSWorkflow, Path=Fields["CODOCORRENCIAGRUPO"].AsShort

Activity=RMSWorkflow, Path=Fields["CODOCORRENCIATIPO"].AsInteger

Activity=RMSWorkflow, Path=Fields["RA"].AsString

Atividade:SE/SENOCONDIO DECLARATIVAthis.rmsConsSQLActivity1.Fields["TOTAL"].AsInteger > 0

Atividade:GERAR EXCEOMensagem de ErroNo permitida a incluso de ocorrncia duplicada de Cobrana de Documentao em perodo inferior a 3 meses.

FRMULA VISUAL27. MOSTRAR CAMPO COMPLEMENTAR NA VISO DE ALUNOS

DESCRIOWorkflow que tem por objetivo disponibilizar na viso do cadastro de Alunos uma Coluna com Campo Complementar criado pelo usurio.

GATILHOCadastros >> Aps Leitura da Viso >> EduAlunoData

ATIVIDADESAtividade:PARA CADA ITERAOAtividade:

SEQUENCIAAtividade:

CONSULTA SQLSELECTSALUNOCOMPL.PIS

FROMSALUNO (NOLOCK),

SALUNOCOMPL (NOLOCK)

WHERESALUNO.CODCOLIGADA = SALUNOCOMPL.CODCOLIGADA AND SALUNO.RA = SALUNOCOMPL.RA

AND SALUNO.RA =:RACADEMICO

AND SALUNO.CODCOLIGADA =1

Activity=rmsForEachActivity1, Path=Fields["RA"].AsString

Atividade:

EXPRESSOExpressesrmsConsSQLActivity1.PIS

Valor CalculadoActivity=rmsForEachActivity1, Path=Fields["PIS"].AsString

Lista de ItensActivity=RMSWorkflow, Path=Tables[0].Rows

FRMULA VISUAL28. ENVIAR EMAIL PARA ALUNO COM 3 OCORRNCIAS

DESCRIOWorkflow que tem por objetivo enviar email para aluno que possuir ocorrncias semelhantes em um perodo menor que 90 dias.

GATILHOCadastros >> Aps Salvar o Registro >> EduOcorrenciaAlunoData

ATIVIDADESAtividade:

CONSULTA SQLDECLARE@DATAREFERENCIA DATETIME;

SET

@DATAREFERENCIA = GETDATE();

SELECTCOUNT(*) AS TOTAL

FROMSOCORRENCIAALUNO (NOLOCK)

WHERESOCORRENCIAALUNO.RA

=:RA

AND SOCORRENCIAALUNO.CODCOLIGADA

=:CODCOLIGADA

AND SOCORRENCIAALUNO.CODOCORRENCIAGRUPO =:CODOCORRENCIAGRUPO

AND CONVERT( DATETIME, CONVERT ( VARCHAR(10), SOCORRENCIAALUNO.DATAOCORRENCIA, 102 )) >

CONVERT( DATETIME, CONVERT ( VARCHAR(10), @DATAREFERENCIA-90, 102 ))Activity=RMSWorkflow, Path=Fields["CODCOLIGADA"].AsShort

Activity=RMSWorkflow, Path=Fields["CODOCORRENCIAGRUPO"].AsShort

Activity=RMSWorkflow, Path=Fields["RA"].AsString

Atividade:SE/SENOCONDIO DECLARATIVAthis.rmsConsSQLActivity1.Fields["TOTAL"].AsInteger > 1 && this.DataSet.Tables[0].Rows[0].RowState == System.Data.DataRowState.Added

Atividade:CONSULTA SQLSELECTPPESSOA.EMAIL,PPESSOA.NOME

FROMSALUNO (NOLOCK),

PPESSOA (NOLOCK)

WHERESALUNO.CODPESSOA = PPESSOA.CODIGO

AND SALUNO.RA =:REGISTROACADEMICOActivity=RMSWorkflow, Path=Fields["RA"].AsString

Atividade:ENVIO DE EMAILAssunto[Informe Acadmico] Ocorrncias por Aluno

DestinatriosActivity=rmsConsSQLActivity2, Path=Fields["EMAIL"].AsStringArray

Atividade:

EXPRESSO

Expresses'Prezado Aluno "' + rmsConsSQLActivity2.NOME + '",' +

NewLine+

NewLine+

'Foi registrada uma nova ocorrncia em seu Registro Acadmico, totalizando 3 (trs) ocorrncias em um perodo de 3 (trs) meses.'+

NewLine+

NewLine+

'Solicitamos que entre em contato com a Secretaria para maiores esclarecimentos.'+

NewLine+

NewLine+

NewLine+

'Setor de Registro Acadmico do Colgio TOTVS'+

'Favor no responder este email.'

NewLine+

NewLine

Valor CalculadoActivity=rmsSendEmailActivity1, Path=Body

OBSERVAO 1

FRMULA VISUAL29. GRAVAR INFORMAO DO PRODUTO NO HISTRICO DO ITEM DE MOVIMENTO

DESCRIOWorkflow que tem por objetivo gravar informaes do Anexo "Cliente/Fornecedor" do cadastro do Produto no campo Histrico do Item de Movimento, ao salvar o movimento.

GATILHOCadastros >> Antes da Atualizao do Registro (Incio) >> MovMovimentoAction

ATIVIDADESPARA CADA ITERAOLISTA DE ITENSActivity=RMSWorkflow, Path=Tables["TITMMOV"].Rows

CONSULTA SQLSELECTTPRDCFO.CODNOFORN,

TPRDCFO.CODCFO,

TPRD.CODIGOPRD,

TPRDCFO.CAMPOLIVRE

FROMTPRDCFO (NOLOCK)

INNER JOIN TPRD (NOLOCK) ON TPRDCFO.CODCOLIGADA = TPRD.CODCOLIGADA

AND TPRDCFO.IDPRD = TPRD.IDPRD

WHERETPRDCFO.IDPRD =:ID_ITEM

AND TPRD.CODCOLIGADA =:COLIGADA

AND TPRDCFO.CODCFO =:CLIFORActivity=RMSWorkflow, Path=Tables["TMOV"].Item["CODCFO"].AsString

Activity=rmsForEachActivity1, Path=Fields["CODCOLIGADA"].AsShort

Activity=rmsForEachActivity1, Path=Fields["IDPRD"].AsInteger

EXPRESSOEXPRESSES'Histrico Anterior: ' +rmsForEachActivity1.HISTORICOCURTO +NewLine +NewLine +'CODNOFORN: ' +rmsConsSQLActivity1.CODNOFORN +

NewLine +'CAMPO LIVRE: ' +rmsConsSQLActivity1.CAMPOLIVRE

VALOR CALCULADOActivity=rmsForEachActivity1, Path=Fields["HISTORICOCURTO"].AsString

IMAGEM

OBSERVAO 1O campo Histrico Curto deve estar habilitado/parametrizado no item de movimento.

FRMULA VISUAL30. VALIDAR PREENCHIMENTO DE NOME DE FUNCIONRIO COM ACENTO

DESCRIOFrmula Visual que tem por objetivo impedir que sejam cadastrados funcionrios com nomes acentuados, ou com .

GATILHOCadastros >> Antes de Salvar o Registro >> FopFuncAction

ATIVIDADESAtividade:SE/SENOCONDIO DECLARATIVAnew System.Text.RegularExpressions.Regex("[----]").IsMatch(this.Tables["PFUNC"]["NOME"].AsString)

GERAR EXCEOMensagem de ErroNo permitido utilizar acento no campo NOME do Funcionrio.

OBSERVAO 1

FRMULA VISUAL31. VALIDAR INFORMAO ORIGINAL DO CAMPO DESCRIO DA SEO

DESCRIOFrmula Visual que tem por objetivo validar a informao original do campo Descrio do cadastro de Seo.

GATILHOCadastros >> Antes de Salvar o Registro >> FopSecaoAction

ATIVIDADESAtividade:SE/SENOCONDIO DECLARATIVAthis.Tables[PSECAO][DESCRICAO]. OriginalValue.ToString().ToLower().Contains("rm sistemas")

GERAR EXCEOMensagem de ErroCadastro INATIVO. No permitido alteraes em Sees RM SISTEMAS.

OBSERVAO 1

FRMULA VISUAL32. VALIDAR INFORMAO DO CAMPO DESCRIO DA SEO

DESCRIOFrmula Visual que tem por objetivo validar a informao do campo Descrio do cadastro de Seo.

GATILHOCadastros >> Antes de Salvar o Registro >> FopSecaoAction

ATIVIDADESAtividade:SE/SENOCONDIO DECLARATIVAthis.Tables["PSECAO"]["DESCRICAO"].AsString.ToLower().Contains("rm sistemas")

GERAR EXCEOMensagem de ErroNo permitido utilizar Sees RM SISTEMAS.

OBSERVAO 1

FRMULA VISUAL33. ENVIAR EMAIL PELO VIA PROCESSO DO CADASTRO DE FUNCIONRIO

DESCRIOEnviar Email via Processo do Cadastro de Funcionrios.

GATILHOProcessos de Frmula Visual >> FopFuncAction >> Tipo de Ligao: Viso com registros selecionados

ATIVIDADESPARA CADA ITERAOLISTA DE ITENSActivity=RMSWorkflow, Path=Tables[0].Rows

SEQUNCIAEXPRESSOEXPRESSESrmsForEachActivity1.CHAPA

VALOR CALCULADOActivity=rmsSendEmailActivity1, Path=Body

ENVIO DE EMAILASSUNTO[TOTVS] Teste envio de email

[email protected]

REMETENTEGlobalCompany

TEXTO DO EMAILSer preenchido pela atividade Expresso

IMAGEM

OBSERVAO 1

FRMULA VISUAL34. VALIDAR PREENCHIMENTO DE CENTRO DE CUSTO (CAMPO COMPLEMENTAR) POR INSUMO

DESCRIOFrmula Visual que tem por objetivo impedir que seja informado um Centro de Custo invlido na Pasta Campos Complementares do Cadastro de Insumos.

GATILHOCadastros >> Antes de Salvar Registro >> PrjIsmData

ATIVIDADESCONSULTA SQL/*Cliente: Utilizao: Integrao com Frmula Visual para validao de incluso de Rateio de Centro de Custo por Atividade e Incluso de InsumosMdulo: TOTVS Obras e ProjetosAutor: Felipe David EvangelistaData Criao: 06/06/2013Data Alterao: 07/06/2013*/DECLARE @FILIALRM VARCHAR(10), @CENTROCUSTORM VARCHAR(50)

SET @FILIALRM = ( SELECT IDINTEGRACAOFROM MPRJ (NOLOCK)INNER JOIN GFILIAL (NOLOCK) ON MPRJ.CODCOLIGADA = GFILIAL.CODCOLIGADA AND MPRJ.CODFILIAL = GFILIAL.CODFILIAL WHERE MPRJ.IDPRJ =:ID_PROJETOAND MPRJ.CODCOLIGADA =:COLIGADA)SET @CENTROCUSTORM = ( SELECT CODREDUZIDOFROM GCCUSTO (NOLOCK)WHERE GCCUSTO.CODCCUSTO =:CODCUSTO) SELECT COUNT(*) CONTADORFROM VW_CTT020 (NOLOCK)WHERE VW_CTT020.CTT_FILIAL = @FILIALRMAND VW_CTT020.CTT_CUSTO = @CENTROCUSTORMAND VW_CTT020.CTT_BLOQ = 2/*LegendaCTT_BLOQ = 1 (bloqueado)CTT_BLOQ = 2 (desbloqueado) Ponto de AtencaoEh necessario a criacao da VIEW 'VW_CTT020' no banco de dados CorporeRM, visto o no funcionamento de consultas com relacionamento entre tabelas utilizando o recurso 'Banco de dados externo', e Linked Server.*/

Activity=RMSWorkflow, Path=Tables["MISMCOMPL"].Item["CC"].AsString

Activity=RMSWorkflow, Path=Tables["MIsm"].Item["CODCOLIGADA"].AsShort

Activity=RMSWorkflow, Path=Tables["MIsm"].Item["IDPRJ"].AsInteger

CONSULTA SQL/*Cliente: Utilizao: Integrao com Frmula Visual para validao de Incluso de InsumosMdulo: TOTVS Obras e ProjetosAutor: Felipe David EvangelistaData Criao: 07/06/2013Data Alterao: 07/06/2013*/

SELECT MASCARACC FROM GCCUPAR (NOLOCK)

WHERE CODCOLIGADA =:COLIGADA

Activity=RMSWorkflow, Path=Tables["MIsm"].Item["CODCOLIGADA"].AsShort

Atividade:SE/SENOCONDIO DECLARATIVA(this.DataSet.Tables[0].Rows[0].RowState == System.Data.DataRowState.Added || this.DataSet.Tables[0].Rows[0].RowState == System.Data.DataRowState.Modified) && this.rmsConsSQLActivity1.Fields["CONTADOR"].AsInteger < 1 && !this.Tables["MISMCOMPL"]["CC"].IsNull

EXPRESSOExpresso'Centro de Custo informado nos Campos Complementares invlido.' +

NewLine +

NewLine +

' Possveis causas: ' +

NewLine +

' - Cdigo informado fora da mscara (' + rmsConsSQLActivity2.MASCARACC + ');' +

NewLine +

' - Centro de Custo no localizado na Base de Dados do Protheus, ou bloqueado;' +

NewLine +

NewLine

Valor CalculadoActivity=rmsThrowActivity1, Path=Message

GERAR EXCEOMensagem de Erroteste

OBSERVAO 1Deve existir o campo complementar MISMCOMPL.CC cadastrado na base de dados.

FRMULA VISUAL35. VALIDAR TAMANHO DO CAMPO CODIGO DE PROJETO

DESCRIOFrmula Visual que tem por objetivo validar o tamanho do campo Cdigo do Projeto no TOTVS Obras e Projetos (RM Solum).

GATILHOCadastros >> Antes de Salvar Registro >> PrjPrjData

ATIVIDADESAtividade:SE/SENOCONDIO DECLARATIVAthis.Tables["MPRJ"]["CODPRJ"].AsString.Length > 10

GERAR EXCEOMensagem de ErroTamanho do campo Cdigo do Projeto deve ser no mximo 10 dgitos.

OBSERVAO 1

FRMULA VISUAL36. CANCELAR ATENDIMENTO RELACIONADO

DESCRIOEsta Frmula Visual tem o objetivo de CANCELAR o atendimento PAI relacionado a um atendimento FILHO que tenha sido CANCELADO.

GATILHOProcessos >> Aps a Execuo >> Avanar Etapa

ATIVIDADESCONSULTA SQLSELECTHATENDIMENTOSRELACIONADOS.CODCOLIGADA,

HATENDIMENTOSRELACIONADOS.CODLOCAL,

HATENDIMENTOSRELACIONADOS.CODATENDIMENTO,

H2.CODSTATUS,

HATENDIMENTOSRELACIONADOS.CODCOLIGADAFILHO,

HATENDIMENTOSRELACIONADOS.CODLOCALFILHO,

HATENDIMENTOSRELACIONADOS.CODATENDIMENTOFILHO,

HATENDIMENTOBASE.CODSTATUS CODSTATUSFILHO

FROMHATENDIMENTOBASE

INNER JOIN HATENDIMENTOSRELACIONADOS

ON HATENDIMENTOSRELACIONADOS.CODCOLIGADAFILHO = HATENDIMENTOBASE.CODCOLIGADA

AND HATENDIMENTOSRELACIONADOS.CODLOCALFILHO = HATENDIMENTOBASE.CODLOCAL

AND HATENDIMENTOSRELACIONADOS.CODATENDIMENTOFILHO = HATENDIMENTOBASE.CODATENDIMENTO

INNER JOIN HATENDIMENTOBASE H2

ON HATENDIMENTOSRELACIONADOS.CODCOLIGADA = H2.CODCOLIGADA

AND HATENDIMENTOSRELACIONADOS.CODLOCAL = H2.CODLOCAL

AND HATENDIMENTOSRELACIONADOS.CODATENDIMENTO = H2.CODATENDIMENTO

WHERE HATENDIMENTOBASE.CODSTATUS = 'C'

AND HATENDIMENTOBASE.CODTIPOATENDIMENTO = '8'

AND H2.CODSTATUS 'C'

PARA CADA ITERAOLISTA DE ITENSActivity=rmsConsSQLActivity1, Path=Tables["Resultado"].Rows

SEQUENCIAAVANCAR ETAPACdigo do AtendimentoActivity=rmsForEachActivity1, Path=Fields["CODATENDIMENTO"].AsInteger

Coligada do AtendimentoActivity=rmsForEachActivity1, Path=Fields["CODCOLIGADA"].AsInteger

Localidade do AtendimentoActivity=rmsForEachActivity1, Path=Fields["CODLOCAL"].AsInteger

Cdigo da ColigadaActivity=rmsForEachActivity1, Path=Fields["CODCOLIGADA"].AsInteger

Usuriomestre

Motivo de Repasse5

Prxima Etapa47

IMAGEM

FRMULA VISUAL37. HABILITAR CAMPO IMPRODUTIVO PARA RECURSOS DA COMPOSIO

DESCRIOWorkflow que tem por objetivo habilitar o campo improdutivo para os Recursos das Composies selecionadas na viso de Composies.

GATILHOProcessos de Frmula Visual >> PrjCmpAction >> Viso com registros selecionados

ATIVIDADESAtividade:

PARA CADA ITERAOLISTA DE ITENSActivity=RMSWorkflow, Path=Tables["MCmp"].Rows

Atividade:

SEQUENCIAAtividade:

CONSULTA SQLSELECT

MRECCMP.CODCOLIGADA,

MRECCMP.IDPRJ,

MRECCMP.IDREC,

MRECCMP.IDPRJREC,

MRECCMP.IDISM,

MRECCMP.IDCMP

FROMMRECCMP (NOLOCK),

MISM (NOLOCK),

MCMP (NOLOCK)

WHEREMRECCMP.CODCOLIGADA = MISM.CODCOLIGADA

AND MRECCMP.IDPRJ = MISM.IDPRJ

AND MRECCMP.IDISM = MISM.IDISM

AND MRECCMP.CODCOLIGADA = MCMP.CODCOLIGADA

AND MRECCMP.IDPRJ = MCMP.IDPRJ

AND MRECCMP.IDCMP = MCMP.IDCMP

AND MRECCMP.CODCOLIGADA =:COLIGADA

AND MRECCMP.IDPRJ =:ID_PROJETO

AND MRECCMP.IDCMP =:ID_COMPOSICAO

AND SUBSTRING (MISM.CODISM,1,2) IN ('IP','IH','DE')

AND SUBSTRING (MCMP.CODCMP,1,2) IN ('IE')Activity=rmsForEachActivity1, Path=Fields["CODCOLIGADA"].AsShort

Activity=rmsForEachActivity1, Path=Fields["IDCMP"].AsInteger

Activity=rmsForEachActivity1, Path=Fields["IDPRJ"].AsInteger

Atividade:PARA CADA ITERAOAtividade:SEQUENCIAAtividade:

SE/SENOCONDIO DECLARATIVA!this.rmsForEachActivity2.Fields["IDISM"].IsNull

Atividade:LER REGISTROActivity=rmsForEachActivity2, Path=Fields["CODCOLIGADA"].AsShort

Activity=rmsForEachActivity2, Path=Fields["IDCMP"].AsInteger

Activity=rmsForEachActivity2, Path=Fields["IDREC"].AsInteger

Activity=rmsForEachActivity2, Path=Fields["IDPRJREC"].AsInteger

Activity=rmsForEachActivity2, Path=Fields["IDISM"].AsInteger

1

Atividade:EXPRESSAOExpresso1

Valor CalculadoActivity=rmsReadRecordActivity1, Path=Fields["IMPRODUTIVO"].AsInteger

Atividade:SALVAR REGISTROrmsReadRecordActivity1

IMAGEM

OBSERVAO 1Quais insumos sero alterados est definido na Consulta SQL.

FRMULA VISUAL38. ALTERAR STATUS DO LANAMENTO PARA CANCELAMENTO DE LANAMENTO NO SGI

DESCRIOEsta Frmula Visual tem o objetivo de ALTERAR o Status do Lanamento Financeiro do TOTVS Gesto Financeira ao Cancelar lanamento do TOTVS Gesto Imobiliria relacionado ao lanamento financeiro.

GATILHOProcessos >> FinLanAction

ATIVIDADESCONSULTA SQLEXECUTE UPDATE_STATUSFLAN :CODCOLIGADA, :IDLAN

SELECT GCOLIGADA.CODCOLIGADA

FROM GCOLIGADA(NOLOCK)

WHEREGCOLIGADA.CODCOLIGADA =:CODCOLIGADA

CODCOLIGADAActivity=RMSWorkflow, Path=Fields.Item["CODCOLIGADA"].AsInteger

IDLANActivity=RMSWorkflow, Path=Fields["IDLAN"].AsInteger

ProcedureUSE [CORPORERM_TESTE]

GO

/****** Object: StoredProcedure [dbo].[UPDATE_STATUSFLAN] Script Date: 02/24/2014 14:48:27 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER PROCEDURE [dbo].[UPDATE_STATUSFLAN]

@CODCOLIGADA VARCHAR(2),

@IDLAN VARCHAR(10)

AS

BEGIN

TRANSACTION

UPDATEFLAN

SET

FLAN.STATUSLAN = 2

FROMFLAN(NOLOCK)

WHEREFLAN.CODCOLIGADA = @CODCOLIGADA AND

FLAN.IDLAN = @IDLAN AND

FLAN.STATUSLAN 1 AND

FLAN.CODAPLICACAO = 'X'

IF @@ERROR 0

ROLLBACK

ELSE

COMMIT

39. CONFIGURAO PARA A FRMULA VISUAL FUNCIONAR

i. Parar o servio RM.Host.Service;

ii. Localizar o arquivo RM.Host.Service.exe.config (geralmente localizado em C:\totvs\CorporeRM\RM.Net);

1. Caso no exista a linha dentro do arquivo, insira a linha seguindo o exemplo abaixo:

Observao:

- Caso a linha j exista no arquivo, deve-se verificar se o valor true est informado logo aps a palavra value.- Este procedimento dever ser realizado em todas as estaes onde a validao atravs da Frmula Visual ser realizada (estaes dos usurios).- Este procedimento no ser necessrio em verses superiores 11.82.

...

...

Analista: Felipe David Evangelista Pgina 2 de 30