SlideShare una empresa de Scribd logo
1 de 46
FÓRMULAS
Lógica de construção de fórmulas.
fabio.delboni@totvs.com.br
POR QUE FÓRMULAS?
fabio.delboni@totvs.com.br
POR QUE FÓRMULAS?
“Toda fórmula é para retornar algum dado,
seja um código, uma data ou um valor.”
fabio.delboni@totvs.com.br
CONTEXTO
fabio.delboni@totvs.com.br
PARA QUE SERVE UMA
VARIÁVEL?
fabio.delboni@totvs.com.br
PARA QUE SERVE UMA
VARIÁVEL?
“Servem para guardar um valor,
e este valor pode ser modificado”
fabio.delboni@totvs.com.br
VARIÁVEIS
fabio.delboni@totvs.com.br
E QUANDO O VALOR NÃO PODE
SER MODIFICADO?
fabio.delboni@totvs.com.br
E QUANDO O VALOR NÃO PODE
SER MODIFICADO?
“Trata-se de uma constante”
fabio.delboni@totvs.com.br
EXEMPLO DE CONSTANTE
?
fabio.delboni@totvs.com.br
EXEMPLO DE CONSTANTE
fabio.delboni@totvs.com.br
TIPO DE VARIÁVEIS
DESCRIÇÃO EXEMPLO
Data 10/07/1984
String 1.01.0085-08
Valor 1420,3876
fabio.delboni@totvs.com.br
EDITOR DE FÓRMULAS
fabio.delboni@totvs.com.br
PORQUE ALGUMAS VARIÁVEIS
NECESSITAM DE PARÂMETROS?
fabio.delboni@totvs.com.br
PORQUE ALGUMAS VARIÁVEIS
NECESSITAM DE PARÂMETROS?
“Estas são funções de fórmulas”
fabio.delboni@totvs.com.br
FUNÇÕES
fabio.delboni@totvs.com.br
EXEMPLO DE FUNÇÃO
COM 3 PARÂMETROS
fabio.delboni@totvs.com.br
EXPRESSÕES MATEMÁTICAS
fabio.delboni@totvs.com.br
EXEMPLO - EXPRESSÕES MATEMÁTICAS
fabio.delboni@totvs.com.br
DADOS EXEMPLO
fabio.delboni@totvs.com.br
NOME SITUAÇÃO SALÁRIO RESPOSTA
JOÃO A 1000
JOSÉ F 800
ARLINDO A 1200
MARIA F 2000
LISA A 5000
ESTRUTURA CONDICIONAL 1
SE CONDIÇÃO
ENTAO COMANDO
FIMSE
fabio.delboni@totvs.com.br
ESTRUTURA CONDICIONAL 2
SE CONDIÇÃO
ENTAO COMANDO1
SENAO COMANDO2
FIMSE
fabio.delboni@totvs.com.br
ESTRUTURA CONDICIONAL 3
SE CONDIÇÃO
ENTAO COMANDO1
SENAO SE CONDIÇÃO2
ENTAO COMANDO2
SENAO COMANDO3
FIMSE
FIMSE
fabio.delboni@totvs.com.br
LOG DE EXECUÇÃO
fabio.delboni@totvs.com.br
EXPRESSÃO LÓGICA
E
• Compre um salgado e um chocolate.
• Ativo e com salário menor que 1500.
OU
• Compre um salgado ou um chocolate.
• De férias ou Afastado.
fabio.delboni@totvs.com.br
EXPRESSÃO LÓGICA
• INFLUÊNCIA DOS PARÊNTESES:
• CALCULO 1
50+200/100
• CALCULO 2
(50+200)/100
fabio.delboni@totvs.com.br
EXPRESSÃO LÓGICA
• CALCULO 1
50+200/100
50 + 2 = 52
• CALCULO 2
(50+200)/100
250 / 100 = 2,50
fabio.delboni@totvs.com.br
EXPRESSÃO LÓGICA
• Situação ativa ou situação de férias e salário
menor que 1000.
( SITUAÇÃO ‘A’ )
OU
( SITUAÇÃO ‘F’ E SALARIO <= 1000 )
fabio.delboni@totvs.com.br
EXPRESSÃO LÓGICA
• Situação ativa e salário menor que 1000 ou
situação de férias.
( SITUAÇÃO ‘A’ E SALARIO <= 1000 )
OU
( SITUAÇÃO ‘F’ )
fabio.delboni@totvs.com.br
ESTRUTURA DE REPETIÇÃO
…
REPITA
COMANDOS QUE SERÃO REPETIDOS;
COMANDOS QUE SERÃO REPETIDOS;
INCREMENTO
ATE CONDIÇÃO DE PARADA;
TOTAL
fabio.delboni@totvs.com.br
REUTILIZAÇÃO DE FÓRMULAS
FOR( ‘CÓDIGO DA FÓRMULA’ )
fabio.delboni@totvs.com.br
SQL “CHAMANDO”
FÓRMULAS COMO PARÂMETRO
:FRM_CÓDIGODAFÓRMULA_TIPO
Os tipos podem ser:
_D Data
_S String
_N Número inteiro
_V Número decimal
fabio.delboni@totvs.com.br
FÓRMULA “CHAMANDO” SQL
EXECSQL(‘CÓDIGO DA SQL’);
RESULTSQL(‘CÓDIGO DA SQL’, ‘COLUNA’)
fabio.delboni@totvs.com.br
VARRENDO RESULTADO DE UMA SQL
SQL00X: SELECT * FROM PFUNC
FÓRMULA:
DECL TOTAL;
EXECSQL('SQL00X');
REPITA
SETVAR(TOTAL, TOTAL + RESULTSQL('SQL00X', 'SALARIO') )
ATE PROXREGSQL ('SQL00X') = FALSO;
TOTAL
fabio.delboni@totvs.com.br
PASSANDO PARÂMETROS
DINAMICAMENTE
fabio.delboni@totvs.com.br
PASSANDO PARÂMETROS
DINAMICAMENTE
fabio.delboni@totvs.com.br
PASSANDO PARÂMETROS
DINAMICAMENTE
fabio.delboni@totvs.com.br
PASSANDO PARÂMETROS
DINAMICAMENTE
fabio.delboni@totvs.com.br
PASSANDO PARÂMETROS
DINAMICAMENTE
fabio.delboni@totvs.com.br
PASSANDO PARÂMETROS
DINAMICAMENTE
fabio.delboni@totvs.com.br
COMO UTILIZAR UMA FÓRMULA
DENTRO DE UM RELATÓRIO?
fabio.delboni@totvs.com.br
É POSSÍVEL FAZER FILTRO?
fabio.delboni@totvs.com.br
UTILIZANDO O GERADOR PARA
VALIDAR UMA FÓRMULA.
fabio.delboni@totvs.com.br
DEBUG DE UMA
FÓRMULA “GRANDE”.
fabio.delboni@totvs.com.br
EXERCÍCIO
Dia do comerciário:
Será concedida ao empregado do comércio, no mês de Outubro, uma
gratificação correspondente a 01 (um) ou 02 (dois) dias de sua respectiva
remuneração mensal auferida no respectivo mês de outubro, a ser paga
juntamente com a remuneração, conforme proporção abaixo:
A-) Até 90 dias de contrato do comércio, no mês de outubro, o empregado
não faz jus ao benefício.
B-) De 91 até 180 dias de contrato de trabalho na empresa, o empregado faz
jus a 01 dia.
C-) Acima de 181 dias de contrato de trabalho na empresa, o empregado faz
jus a 02 dias.
fabio.delboni@totvs.com.br
SOLUÇÃO
…
fabio.delboni@totvs.com.br

Más contenido relacionado

La actualidad más candente

TOTVS Gestão de Estoque, Compras e Faturamento - Novidades 11.40
TOTVS Gestão de Estoque, Compras e Faturamento - Novidades 11.40TOTVS Gestão de Estoque, Compras e Faturamento - Novidades 11.40
TOTVS Gestão de Estoque, Compras e Faturamento - Novidades 11.40TOTVS Connect
 
TOTVS Gestão Financeira - Novidades 11.80
TOTVS Gestão Financeira - Novidades 11.80TOTVS Gestão Financeira - Novidades 11.80
TOTVS Gestão Financeira - Novidades 11.80TOTVS Connect
 
Customização RM Fluxus - TOTVS - Rateio por Centro de Custo e Natureza Orç. F...
Customização RM Fluxus - TOTVS - Rateio por Centro de Custo e Natureza Orç. F...Customização RM Fluxus - TOTVS - Rateio por Centro de Custo e Natureza Orç. F...
Customização RM Fluxus - TOTVS - Rateio por Centro de Custo e Natureza Orç. F...Bruno Moreira
 
Normalização - Banco de Dados
Normalização - Banco de DadosNormalização - Banco de Dados
Normalização - Banco de DadosRoberto Grande
 
05 - Sincronização de Threads - I
05 - Sincronização de Threads - I05 - Sincronização de Threads - I
05 - Sincronização de Threads - IFabio Moura Pereira
 
Gestão de departamento fiscal
Gestão de departamento fiscalGestão de departamento fiscal
Gestão de departamento fiscalD S Correia Silva
 
Force.com canvas入門ガイド
Force.com canvas入門ガイドForce.com canvas入門ガイド
Force.com canvas入門ガイドKazuki Nakajima
 
Introdução à Banco de Dados
Introdução à Banco de DadosIntrodução à Banco de Dados
Introdução à Banco de DadosBruno Siqueira
 
Exercicios resolvidos contabilidade geral aula 01 cathedra
Exercicios resolvidos contabilidade geral   aula 01 cathedraExercicios resolvidos contabilidade geral   aula 01 cathedra
Exercicios resolvidos contabilidade geral aula 01 cathedracontacontabil
 
Inspirage Webinar on Epm integration agent
Inspirage Webinar on Epm integration agentInspirage Webinar on Epm integration agent
Inspirage Webinar on Epm integration agentDayalan Punniyamoorthy
 
[Curso Java Basico] Aula 12: Lendo dados do teclado usando a classe Scanner
[Curso Java Basico] Aula 12: Lendo dados do teclado usando a classe Scanner[Curso Java Basico] Aula 12: Lendo dados do teclado usando a classe Scanner
[Curso Java Basico] Aula 12: Lendo dados do teclado usando a classe ScannerLoiane Groner
 
Dcasp teoria - são paulo
Dcasp   teoria - são pauloDcasp   teoria - são paulo
Dcasp teoria - são pauloValmir
 
Funções Grupo Oracle
Funções Grupo OracleFunções Grupo Oracle
Funções Grupo OraclePablo Garcia
 
Introduction to Salesforce UI API
Introduction to Salesforce UI APIIntroduction to Salesforce UI API
Introduction to Salesforce UI APIAtul Gupta(8X)
 
Analise servuction
Analise servuctionAnalise servuction
Analise servuctionAna Tomás
 

La actualidad más candente (20)

TOTVS Gestão de Estoque, Compras e Faturamento - Novidades 11.40
TOTVS Gestão de Estoque, Compras e Faturamento - Novidades 11.40TOTVS Gestão de Estoque, Compras e Faturamento - Novidades 11.40
TOTVS Gestão de Estoque, Compras e Faturamento - Novidades 11.40
 
TOTVS Gestão Financeira - Novidades 11.80
TOTVS Gestão Financeira - Novidades 11.80TOTVS Gestão Financeira - Novidades 11.80
TOTVS Gestão Financeira - Novidades 11.80
 
Customização RM Fluxus - TOTVS - Rateio por Centro de Custo e Natureza Orç. F...
Customização RM Fluxus - TOTVS - Rateio por Centro de Custo e Natureza Orç. F...Customização RM Fluxus - TOTVS - Rateio por Centro de Custo e Natureza Orç. F...
Customização RM Fluxus - TOTVS - Rateio por Centro de Custo e Natureza Orç. F...
 
Normalização - Banco de Dados
Normalização - Banco de DadosNormalização - Banco de Dados
Normalização - Banco de Dados
 
05 - Sincronização de Threads - I
05 - Sincronização de Threads - I05 - Sincronização de Threads - I
05 - Sincronização de Threads - I
 
Engenharia reversa
Engenharia reversaEngenharia reversa
Engenharia reversa
 
Gestão de departamento fiscal
Gestão de departamento fiscalGestão de departamento fiscal
Gestão de departamento fiscal
 
Force.com canvas入門ガイド
Force.com canvas入門ガイドForce.com canvas入門ガイド
Force.com canvas入門ガイド
 
Aula dlpa
Aula dlpaAula dlpa
Aula dlpa
 
Apex Design Patterns
Apex Design PatternsApex Design Patterns
Apex Design Patterns
 
Introdução à Banco de Dados
Introdução à Banco de DadosIntrodução à Banco de Dados
Introdução à Banco de Dados
 
Exercicios resolvidos contabilidade geral aula 01 cathedra
Exercicios resolvidos contabilidade geral   aula 01 cathedraExercicios resolvidos contabilidade geral   aula 01 cathedra
Exercicios resolvidos contabilidade geral aula 01 cathedra
 
Tecnologia totvs rm rev.8
Tecnologia totvs rm   rev.8Tecnologia totvs rm   rev.8
Tecnologia totvs rm rev.8
 
Inspirage Webinar on Epm integration agent
Inspirage Webinar on Epm integration agentInspirage Webinar on Epm integration agent
Inspirage Webinar on Epm integration agent
 
[Curso Java Basico] Aula 12: Lendo dados do teclado usando a classe Scanner
[Curso Java Basico] Aula 12: Lendo dados do teclado usando a classe Scanner[Curso Java Basico] Aula 12: Lendo dados do teclado usando a classe Scanner
[Curso Java Basico] Aula 12: Lendo dados do teclado usando a classe Scanner
 
Dcasp teoria - são paulo
Dcasp   teoria - são pauloDcasp   teoria - são paulo
Dcasp teoria - são paulo
 
Funções Grupo Oracle
Funções Grupo OracleFunções Grupo Oracle
Funções Grupo Oracle
 
Introduction to Salesforce UI API
Introduction to Salesforce UI APIIntroduction to Salesforce UI API
Introduction to Salesforce UI API
 
Exploring the Salesforce REST API
Exploring the Salesforce REST APIExploring the Salesforce REST API
Exploring the Salesforce REST API
 
Analise servuction
Analise servuctionAnalise servuction
Analise servuction
 

Más de Tiago Henrique Ribeiro Ferreira (16)

Casa de apoio engefril
Casa de apoio engefrilCasa de apoio engefril
Casa de apoio engefril
 
Casa de apoio engefril
Casa de apoio engefrilCasa de apoio engefril
Casa de apoio engefril
 
Casa de apoio engefril
Casa de apoio engefrilCasa de apoio engefril
Casa de apoio engefril
 
Rm1150230212 totvs gestao_bibliotecaria
Rm1150230212 totvs gestao_bibliotecariaRm1150230212 totvs gestao_bibliotecaria
Rm1150230212 totvs gestao_bibliotecaria
 
Rm1150230112 totvs controle_infec_hosp
Rm1150230112 totvs controle_infec_hospRm1150230112 totvs controle_infec_hosp
Rm1150230112 totvs controle_infec_hosp
 
Rm1150221112 tap
Rm1150221112 tapRm1150221112 tap
Rm1150221112 tap
 
Rm1150150212 totvs autom_ponto
Rm1150150212  totvs autom_pontoRm1150150212  totvs autom_ponto
Rm1150150212 totvs autom_ponto
 
TOTVS - Rotinas anuais
TOTVS - Rotinas anuaisTOTVS - Rotinas anuais
TOTVS - Rotinas anuais
 
Test Lab Guide: Windows Server 2012 R2 Base Configuration
Test Lab Guide: Windows Server 2012 R2 Base ConfigurationTest Lab Guide: Windows Server 2012 R2 Base Configuration
Test Lab Guide: Windows Server 2012 R2 Base Configuration
 
Resumo ITIL
Resumo ITILResumo ITIL
Resumo ITIL
 
ITIL V3 Study Guide
ITIL V3 Study GuideITIL V3 Study Guide
ITIL V3 Study Guide
 
Apostila ITIL TI_Exames
Apostila ITIL TI_ExamesApostila ITIL TI_Exames
Apostila ITIL TI_Exames
 
Apostila ITIL - COBIT
Apostila ITIL - COBITApostila ITIL - COBIT
Apostila ITIL - COBIT
 
Apostila ITIL
Apostila ITILApostila ITIL
Apostila ITIL
 
Fundamentos ITIL Português Completo
Fundamentos ITIL Português CompletoFundamentos ITIL Português Completo
Fundamentos ITIL Português Completo
 
Microsoft SQL Server Analysis Services Multidimensional
Microsoft SQL Server Analysis Services MultidimensionalMicrosoft SQL Server Analysis Services Multidimensional
Microsoft SQL Server Analysis Services Multidimensional
 

Construção Fórmulas Lógica