Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

TOTVS LINHA RM - FÓRMULAS - Lógica de construção de fórmulas

22,105 views

Published on

TOTVS LINHA RM - FÓRMULAS - Lógica de construção de fórmulas

Published in: Technology

TOTVS LINHA RM - FÓRMULAS - Lógica de construção de fórmulas

  1. 1. FÓRMULAS<br />Lógica de construção de fórmulas.<br />fabio.delboni@totvs.com.br<br />
  2. 2. POR QUE FÓRMULAS?<br />fabio.delboni@totvs.com.br<br />
  3. 3. POR QUE FÓRMULAS?<br />“Toda fórmula é pararetornaralgum dado, seja um código, uma data ou um valor.”<br />fabio.delboni@totvs.com.br<br />
  4. 4. CONTEXTO<br />fabio.delboni@totvs.com.br<br />
  5. 5. PARA QUE SERVE UMA VARIÁVEL?<br />fabio.delboni@totvs.com.br<br />
  6. 6. PARA QUE SERVE UMA VARIÁVEL?<br />“Servemparaguardar um valor,<br />e este valor pode ser modificado”<br />fabio.delboni@totvs.com.br<br />
  7. 7. VARIÁVEIS<br />fabio.delboni@totvs.com.br<br />
  8. 8. E QUANDO O VALOR NÃO PODE SER MODIFICADO?<br />fabio.delboni@totvs.com.br<br />
  9. 9. E QUANDO O VALOR NÃO PODE SER MODIFICADO?<br />“Trata-se de umaconstante”<br />fabio.delboni@totvs.com.br<br />
  10. 10. EXEMPLO DE CONSTANTE<br /> ?<br />fabio.delboni@totvs.com.br<br />
  11. 11. EXEMPLO DE CONSTANTE<br />fabio.delboni@totvs.com.br<br />
  12. 12. TIPO DE VARIÁVEIS<br />DESCRIÇÃO EXEMPLO<br /> Data 10/07/1984<br /> String 1.01.0085-08<br /> Valor 1420,3876<br />fabio.delboni@totvs.com.br<br />
  13. 13. EDITOR DE FÓRMULAS<br />fabio.delboni@totvs.com.br<br />
  14. 14. PORQUE ALGUMAS VARIÁVEIS NECESSITAM DE PARÂMETROS?<br />fabio.delboni@totvs.com.br<br />
  15. 15. PORQUE ALGUMAS VARIÁVEIS NECESSITAM DE PARÂMETROS?<br />“Estassãofunções de fórmulas”<br />fabio.delboni@totvs.com.br<br />
  16. 16. FUNÇÕES<br />fabio.delboni@totvs.com.br<br />
  17. 17. EXEMPLO DE FUNÇÃOCOM 3 PARÂMETROS<br />fabio.delboni@totvs.com.br<br />
  18. 18. EXPRESSÕES MATEMÁTICAS<br />fabio.delboni@totvs.com.br<br />
  19. 19. EXEMPLO - EXPRESSÕES MATEMÁTICAS<br />fabio.delboni@totvs.com.br<br />
  20. 20. DADOS EXEMPLO<br />fabio.delboni@totvs.com.br<br />
  21. 21. ESTRUTURA CONDICIONAL 1<br />SE CONDIÇÃO<br /> ENTAO COMANDO<br />FIMSE<br />fabio.delboni@totvs.com.br<br />
  22. 22. ESTRUTURA CONDICIONAL 2<br />SE CONDIÇÃO<br /> ENTAO COMANDO1<br /> SENAO COMANDO2<br />FIMSE<br />fabio.delboni@totvs.com.br<br />
  23. 23. ESTRUTURA CONDICIONAL 3<br />SE CONDIÇÃO<br /> ENTAO COMANDO1<br /> SENAO SE CONDIÇÃO2<br /> ENTAO COMANDO2<br /> SENAO COMANDO3<br /> FIMSE<br />FIMSE<br />fabio.delboni@totvs.com.br<br />
  24. 24. LOG DE EXECUÇÃO<br />fabio.delboni@totvs.com.br<br />
  25. 25. EXPRESSÃO LÓGICA<br />E<br />Compre um salgado e um chocolate.<br />Ativo e com saláriomenorque 1500.<br />OU<br />Compre um salgadoou um chocolate.<br />De fériasouAfastado.<br />fabio.delboni@totvs.com.br<br />
  26. 26. EXPRESSÃO LÓGICA<br />INFLUÊNCIA DOS PARÊNTESES:<br />CALCULO 1<br /> 50+200/100<br />CALCULO 2<br /> (50+200)/100<br />fabio.delboni@totvs.com.br<br />
  27. 27. EXPRESSÃO LÓGICA<br />CALCULO 1<br /> 50+200/100<br /> 50 + 2 = 52<br /> <br />CALCULO 2<br /> (50+200)/100<br /> 250 / 100 = 2,50<br />fabio.delboni@totvs.com.br<br />
  28. 28. EXPRESSÃO LÓGICA<br />Situaçãoativaousituação de férias e saláriomenorque 1000.<br />( SITUAÇÃO ‘A’ )<br />OU<br />( SITUAÇÃO ‘F’ E SALARIO <= 1000 )<br />fabio.delboni@totvs.com.br<br />
  29. 29. EXPRESSÃO LÓGICA<br />Situaçãoativa e saláriomenorque 1000 ousituação de férias.<br />( SITUAÇÃO ‘A’ E SALARIO <= 1000 )<br />OU<br />( SITUAÇÃO ‘F’ )<br />fabio.delboni@totvs.com.br<br />
  30. 30. ESTRUTURA DE REPETIÇÃO<br />…<br />REPITA<br />COMANDOS QUE SERÃO REPETIDOS;<br /> COMANDOS QUE SERÃO REPETIDOS;<br /> INCREMENTO<br />ATE CONDIÇÃO DE PARADA;<br />TOTAL<br />fabio.delboni@totvs.com.br<br />
  31. 31. REUTILIZAÇÃO DE FÓRMULAS<br />FOR( ‘CÓDIGO DA FÓRMULA’ )<br />fabio.delboni@totvs.com.br<br />
  32. 32. SQL “CHAMANDO”FÓRMULAS COMO PARÂMETRO<br />:FRM_CÓDIGODAFÓRMULA_TIPO<br />Os tipospodem ser:<br />_D Data<br />_S String<br />_N Númerointeiro<br />_V Número decimal<br />fabio.delboni@totvs.com.br<br />
  33. 33. FÓRMULA “CHAMANDO” SQL<br />EXECSQL(‘CÓDIGO DA SQL’);<br />RESULTSQL(‘CÓDIGO DA SQL’, ‘COLUNA’)<br />fabio.delboni@totvs.com.br<br />
  34. 34. VARRENDO RESULTADO DE UMA SQL<br />SQL00X: SELECT * FROM PFUNC<br />FÓRMULA:<br />DECL TOTAL;<br />EXECSQL('SQL00X');<br />REPITA<br />SETVAR(TOTAL, TOTAL + RESULTSQL('SQL00X', 'SALARIO') )<br />ATE PROXREGSQL ('SQL00X') = FALSO;<br />TOTAL<br />fabio.delboni@totvs.com.br<br />
  35. 35. PASSANDO PARÂMETROS DINAMICAMENTE<br />fabio.delboni@totvs.com.br<br />
  36. 36. PASSANDO PARÂMETROS DINAMICAMENTE<br />fabio.delboni@totvs.com.br<br />
  37. 37. PASSANDO PARÂMETROS DINAMICAMENTE<br />fabio.delboni@totvs.com.br<br />
  38. 38. PASSANDO PARÂMETROS DINAMICAMENTE<br />fabio.delboni@totvs.com.br<br />
  39. 39. PASSANDO PARÂMETROS DINAMICAMENTE<br />fabio.delboni@totvs.com.br<br />
  40. 40. PASSANDO PARÂMETROS DINAMICAMENTE<br />fabio.delboni@totvs.com.br<br />
  41. 41. COMO UTILIZAR UMA FÓRMULA DENTRO DE UM RELATÓRIO?<br />fabio.delboni@totvs.com.br<br />
  42. 42. É POSSÍVEL FAZER FILTRO?<br />fabio.delboni@totvs.com.br<br />
  43. 43. UTILIZANDO O GERADOR PARA VALIDAR UMA FÓRMULA.<br />fabio.delboni@totvs.com.br<br />
  44. 44. DEBUG DE UMAFÓRMULA “GRANDE”.<br />fabio.delboni@totvs.com.br<br />
  45. 45. EXERCÍCIO<br />Dia do comerciário:<br />Seráconcedidaaoempregado do comércio, no mês de Outubro, umagratificaçãocorrespondente a 01 (um) ou 02 (dois) dias de suarespectivaremuneração mensal auferida no respectivomês de outubro, a ser pagajuntamente com a remuneração, conformeproporçãoabaixo:<br />A-) Até 90 dias de contrato do comércio, no mês de outubro, o empregadonãofaz jus aobenefício.<br />B-) De 91 até 180 dias de contrato de trabalhonaempresa, o empregadofaz jus a 01 dia.<br />C-) Acima de 181 dias de contrato de trabalhonaempresa, o empregadofaz jus a 02 dias.<br />fabio.delboni@totvs.com.br<br />
  46. 46. SOLUÇÃO<br />…<br />fabio.delboni@totvs.com.br<br />

×