Jair - Fórmula Postado 12 de Junho de 2008 Tópicos Que Criei: 899 Tópicos/Dia: 0.14 Meu Conteúdo: 8.841 Conteúdo/Dia: 1.34 Reputação: 310 Pontos/Conquistas: 106.574 Conteúdo Resolvido: 0 Dias Ganho: 195 Status: Offline Idade: 52 Dispositivo: Windows Denunciar Compartilhar Postado 12 de Junho de 2008 Quero ver as contribuições aqui da Galera heim !!!!! No módulo de Fórmulas dos Aplicativos RM, existem várias Funções e Comandos que não são comuns para o uso diário, e por isso, muitos não têm a mínima idéia de como que funcionam, e consequentemente, nunca conseguem usar. Vamos ajudar aos demais membros citando alguns casos que conheçam, citando como que usa ? Podemos fazer o seguinte, quem souber, coloca mais ou menos assim: Comando: Repita Ate - Executa um comando ou sequencia de comandos até que atenda certa situação. Exemplo de Fórmula: Decl(calcular); Setvar(calcular, 1); Repita SetVar(Calcular, Calcular + 1) Ate Calcular > 9; Calcular Ao rodar esta fórmula, observe que, o retorno será 10, ou seja: - Declaramos a variável Calcular - Setou a variável Calcular em 1 - Rodou o comando dentro do "Repita Ate" várias vezes, somando sempre + 1 ao valor de "Calculo" - Quando Calcular ficou mais que 9 finalizou e saiu do loop - Retorna Calcular, que estava em 10. Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Maffra Postado 12 de Junho de 2008 Tópicos Que Criei: 15 Tópicos/Dia: 0.00 Meu Conteúdo: 548 Conteúdo/Dia: 0.09 Reputação: 1 Pontos/Conquistas: 2.891 Conteúdo Resolvido: 0 Dias Ganho: 1 Status: Offline Idade: 44 Denunciar Compartilhar Postado 12 de Junho de 2008 Jair, Segue minha contribuição: PARMQRY (STRING) A função PARMQRY é bem interessante quando você precisa fazer algum cálculo, retorno de um dado de qualquer tipo e ainda utilizá-la para filtro no relatório. Para fazer uma função PARMQRY você precisa ter é claro um relatório criado e: a) saber as informações que a sentença SQL do relatórios possui. Para isso gere o relatório e abra a pasta do aplicativo (c:\corporerm\rmnucleus) e abra o arquivo SQL.TXT; b) com posse do nome do campo na SELECT do relatório crie a fórmula da seguinte forma: PARMQRY ('NOME DO CAMPO') c) adicione a fórmula criada na linha de detalhe correspondete ao SELECT do arquivo txt d) quando gerar o relatório a fórmula será executada e o resultado será impresso A fórmula PARMQRY ode ser usada simplesmente para retornar um campo: PARMQRY ('CODCOLIGADA') Pode ser usada para retornar um campo de uma Consulta SQL inserida no relatório, ou seja, não precisa ser campo da base; Pode ser utilizada para cálculos, como por exemplo: SE ( PARMQRY('PRECO1') + PARMQRY('PRECO2') + PARMQRY('PRECO3') + PARMQRY('PRECO4') + PARMQRY('PRECO5') ) > 0 ENTAO 1 SENAO 0 FIMSE E também para filtros nos relatórios!!! Ou seja, essa fórmula é campeã Att, Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Donaldson Postado 13 de Junho de 2008 Tópicos Que Criei: 28 Tópicos/Dia: 0.00 Meu Conteúdo: 342 Conteúdo/Dia: 0.05 Reputação: 0 Pontos/Conquistas: 1.990 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Idade: 49 Denunciar Compartilhar Postado 13 de Junho de 2008 Excelente Tópico Jair! E mais ainda as contribuições... Eu vou começar contribuindo com uma informação de como não usar. CALCMED é uma função que você pode pegar o valor calculado de média de um determinado tipo de evento (férias, 13o., etc), só que, é uma função que NÃO deve ser usada em uma fórmula adicional para cálculos de férias, 13o, etc., fazendo com que aborte o Labore. A justificativa é que ela faz o cálculo entrar em looping abortando a aplicação. Portanto, NÃO utilize CALCMED em fórmulas adicionais que irá abortar o Labore. Abs. Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Donaldson Postado 13 de Junho de 2008 Tópicos Que Criei: 28 Tópicos/Dia: 0.00 Meu Conteúdo: 342 Conteúdo/Dia: 0.05 Reputação: 0 Pontos/Conquistas: 1.990 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Idade: 49 Denunciar Compartilhar Postado 13 de Junho de 2008 Segue mais uma: No Labore existe a função G ou GTD que servem para calcular anuênio, biênio, triênio do funcionário. Esta função, muita gente não sabe, mas ela não baseia o cálculo na data de admissão do funcionário e sim pela data base, ou seja, caso exista algum funcionário que foi readmitido mas terá que pagar o benefício com início em uma data anterior à data de admissão poderá alterar esta data: Ex.: Data de admissão: 01/01/2007 Qtde atual de anuênio: 1 Alterando a database para: 01/01/2006 Qtde atual de anuênio: 2 Sem precisar fazer fórmulas milaborantes para fazer com que o cálculo pegue uma data diferenciada da admissão. Abs. Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Maffra Postado 13 de Junho de 2008 Tópicos Que Criei: 15 Tópicos/Dia: 0.00 Meu Conteúdo: 548 Conteúdo/Dia: 0.09 Reputação: 1 Pontos/Conquistas: 2.891 Conteúdo Resolvido: 0 Dias Ganho: 1 Status: Offline Idade: 44 Denunciar Compartilhar Postado 13 de Junho de 2008 Pessoal, Mais outras funções que gosto muito também: TABINI - retorna 0 e 1 para identificar se está no início da tabela TABFIM - retorna 0 e 1 para identificar se está no fim da tabela TABIRINI - vai para o primeiro registro da tabela TABIRFIM - vai para o último registro da tabela TABAVANCA - vai para o próximo registro da tabela Vou postar agora um exemplo que preciso somar os valores dos itens na tabela de Itens do Movimento apenas de produtos específicos. Utilizei também a declaração de variáveis e o Repita, mas estes já foram demonstrados no início deste tópico. TABIRINI ('TITMMOV'); DECL SOMA; SETVAR(SOMA,0); REPITA SE TABITM ('IDPRD' , 'S') = 3762 ENTAO SETVAR(SOMA, SOMA + TABITM ('VALORTOTALITEM' , 'V')) FIMSE; TABAVANCA ('TITMMOV') ATE TABFIM ('TITMMOV') = 1; SOMA Como nem tudo é perfeito, essa fórmula poderosíssima tem uma limitação: só funciona para algumas tabelas. Att, Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Jair - Fórmula Postado 13 de Junho de 2008 Tópicos Que Criei: 899 Tópicos/Dia: 0.14 Meu Conteúdo: 8.841 Conteúdo/Dia: 1.34 Reputação: 310 Pontos/Conquistas: 106.574 Conteúdo Resolvido: 0 Dias Ganho: 195 Status: Offline Idade: 52 Dispositivo: Windows Autor Denunciar Compartilhar Postado 13 de Junho de 2008 Vamos lá, mais quatro contribuições de uma só vez... Função DECL - Declarar ( inicializa ) uma variável pra poder usar durante a fórmula. UTIL DEMAIS !!! * quando usada esta função, automaticamente tem que usar a SETVAR pra setar valores para a variável que criou. Função TABCLIFOR - Retorna o conteúdo de um determinado campo na tabela de Cli/For * existe função semelhante pra outras tabelas também. Sintaxe: TABCLIFOR ('STRING', 'STRING', VALOR, 'STRING') Sendo esses quatro parametros: - nome do campo desejado; - tipo do campo desejado (valor, inteiro, string, data); - valor da coligada do cliente; - código do cliente desejado. * nos parametros podem ser usadas outras funções, ou campos digitados (fixos). Função CONCAT ( ou CONCAT2 ) - Concatena ( junta ) dois campos strings. O CONCAT deixa exatamente juntos os campos. Já o CONCAT2 coloca um espaço entre os campos. Sintaxe: CONCAT ('CAMPOA', 'CAMPOB') - Resultado: 'CAMPOACAMPOB' Sintaxe: CONCAT2 ('CAMPOA', 'CAMPOB') - Resultado: 'CAMPOA CAMPOB' Função SUBSTR - Retorna uma parte de um campo ou de um texto qualquer. Sintaxe: SUBSTR ('STRING', Valor, Valor) Sendo: - no primeiro parametro, o texto ou campo com texto para tratar ; - no segundo parametro, a posição inicial a tratar ( capturar ) no texto; - no terceiro parametro, a quantidade de caracteres para 'pegar' . Exemplos abaixo: Decl ( xCEP ); Setvar( xCEP, TABCLIFOR ( 'CEP', 'S', 0 , '102647' ) ); CONCAT2 ( SUBSTR (xCEP, 1, 5) , SUBSTR (xCEP, 7, 3) ) Aqui acima, tratamos os quatro funções citadas e o retorno será por exemplo: '02730 000', para a leitura do CEP '02730-000'. Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Alexandre Gondim Postado 8 de Julho de 2008 Tópicos Que Criei: 65 Tópicos/Dia: 0.01 Meu Conteúdo: 654 Conteúdo/Dia: 0.11 Reputação: 1 Pontos/Conquistas: 3.926 Conteúdo Resolvido: 0 Dias Ganho: 1 Status: Offline Idade: 44 Dispositivo: Windows Denunciar Compartilhar Postado 8 de Julho de 2008 Já foi mencionada a função mas gostaria de registrar um exemplo pra facilitar: TABCLIFOR ('CODCOLTCF' , 'S' ,TABMOV ('CODCOLCFO' , 'I'),TABMOV('CODCFO' , 'S')) A função acima serve pra buscar o tipo de cliente fornecedor, podendo ser analisado com um SE etc. Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Jair - Fórmula Postado 8 de Julho de 2008 Tópicos Que Criei: 899 Tópicos/Dia: 0.14 Meu Conteúdo: 8.841 Conteúdo/Dia: 1.34 Reputação: 310 Pontos/Conquistas: 106.574 Conteúdo Resolvido: 0 Dias Ganho: 195 Status: Offline Idade: 52 Dispositivo: Windows Autor Denunciar Compartilhar Postado 8 de Julho de 2008 E ai... mais alguém ?? com certeza podemos ter mais exemplos aqui !! 1 Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Jully Postado 16 de Julho de 2008 Tópicos Que Criei: 21 Tópicos/Dia: 0.00 Meu Conteúdo: 125 Conteúdo/Dia: 0.02 Reputação: 0 Pontos/Conquistas: 835 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Idade: 43 Denunciar Compartilhar Postado 16 de Julho de 2008 Excelente Tópico Jair! E mais ainda as contribuições... Eu vou começar contribuindo com uma informação de como não usar. CALCMED é uma função que você pode pegar o valor calculado de média de um determinado tipo de evento (férias, 13o., etc), só que, é uma função que NÃO deve ser usada em uma fórmula adicional para cálculos de férias, 13o, etc., fazendo com que aborte o Labore. A justificativa é que ela faz o cálculo entrar em looping abortando a aplicação. Portanto, NÃO utilize CALCMED em fórmulas adicionais que irá abortar o Labore. Abs. Oi Donaldson. Só uma observação. Eu tive esse problema de fazer uma fórmula com CALCMED e o sistema abortar, mas isso acontecia durante a execução da fórmula mesmo na hora de testar. Eu precisava pagar a média de um evento no 13º, mas para ele fazer as médias conforme o sindicato do funcionário (tempo, valor, hora, etc..) era preciso usar essa variável. Descobri que o problema não estava em usar a variável no cálculo e sim que a versão do BDE estava desatualizada. Quando fiz a atualização para a versão 5.20 o sistema não abortou mais. Abçs. Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Fábio Maia Postado 5 de Janeiro de 2009 Tópicos Que Criei: 32 Tópicos/Dia: 0.00 Meu Conteúdo: 565 Conteúdo/Dia: 0.09 Reputação: 10 Pontos/Conquistas: 3.159 Conteúdo Resolvido: 0 Dias Ganho: 5 Status: Offline Idade: 43 Dispositivo: Windows Denunciar Compartilhar Postado 5 de Janeiro de 2009 Pessoal, essa dica contém um recurso muito útil na minha opinião. Como todos sabem o debug de fórmulas é interessante mas quando você possui muitas condições torna-se trabalhosa a análise para identificar qual condição foi atendida. Temos clientes em que as fórmulas chegam a 15, 20 condições e analisar isso tudo é complicado. Utilizando esta dica você pode mapear por onde você passou.... Vamos ao exemplo. Vejam o anexo. Com isso você pode dizer 'Passei no bloco 1', 'Entrei aqui', enfim fica muito mais fácil analisar o debug. Anexei também o debug de cálculo dos testes que realizei com a fórmula. Boa leitura e ótimo proveito. Abraço a todos. Teste1.txt Teste2.txt Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
mclpaltrin Postado 6 de Janeiro de 2009 Tópicos Que Criei: 86 Tópicos/Dia: 0.02 Meu Conteúdo: 255 Conteúdo/Dia: 0.05 Reputação: 0 Pontos/Conquistas: 2.325 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Denunciar Compartilhar Postado 6 de Janeiro de 2009 Prezados - Fiz o curso do Gerador de Relatório, no ultimo dia me passaram um exemplo de Fórmula, mas foi tão "simples" e bem "vagabunda" que algumas pessoas do curso não aprenderam outras mais ou menos como eu. - Vendo os post, percebi que hj não sei nada a respeito de Fórmula, isso me deixa muito preocupa na minha função aqui na empresa, estou engatinhado no Desenvolvimento de relatório com muita dificuldade. - Meu Deus! Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Jair - Fórmula Postado 6 de Janeiro de 2009 Tópicos Que Criei: 899 Tópicos/Dia: 0.14 Meu Conteúdo: 8.841 Conteúdo/Dia: 1.34 Reputação: 310 Pontos/Conquistas: 106.574 Conteúdo Resolvido: 0 Dias Ganho: 195 Status: Offline Idade: 52 Dispositivo: Windows Autor Denunciar Compartilhar Postado 6 de Janeiro de 2009 Maia... detalhe muito simples e pratico, realmente... ajuda e muito. Valeu a dica ae pra galera. Pessoal, essa dica contém um recurso muito útil na minha opinião. Como todos sabem o debug de fórmulas é interessante mas quando você possui muitas condições torna-se trabalhosa a análise para identificar qual condição foi atendida.Temos clientes em que as fórmulas chegam a 15, 20 condições e analisar isso tudo é complicado. Utilizando esta dica você pode mapear por onde você passou.... Vamos ao exemplo. Vejam o anexo. Com isso você pode dizer 'Passei no bloco 1', 'Entrei aqui', enfim fica muito mais fácil analisar o debug. Anexei também o debug de cálculo dos testes que realizei com a fórmula. Boa leitura e ótimo proveito. Abraço a todos. Prezados- Fiz o curso do Gerador de Relatório, no ultimo dia me passaram um exemplo de Fórmula, mas foi tão "simples" e bem "vagabunda" que algumas pessoas do curso não aprenderam outras mais ou menos como eu. - Vendo os post, percebi que hj não sei nada a respeito de Fórmula, isso me deixa muito preocupa na minha função aqui na empresa, estou engatinhado no Desenvolvimento de relatório com muita dificuldade. - Meu Deus! mclpaltrn, o detalhe é o seguinte... o curso de GERADOR não ensina Formulas mesmo não. o recurso de fórmulas é do aplicativo, e existe um curso especifico para formulas. O Gerador até usa este recurso, e em muitos casos ajuda muito, mas é separado. Se for o caso, procure se existe na unidade TOTVS que o atende esse curso de FORMULAS, que, este sim, poderá ajudá-lo bastante no uso do sistema e para relatórios. Abraço Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Jully Postado 14 de Janeiro de 2009 Tópicos Que Criei: 21 Tópicos/Dia: 0.00 Meu Conteúdo: 125 Conteúdo/Dia: 0.02 Reputação: 0 Pontos/Conquistas: 835 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Idade: 43 Denunciar Compartilhar Postado 14 de Janeiro de 2009 Pessoal, essa dica contém um recurso muito útil na minha opinião. Como todos sabem o debug de fórmulas é interessante mas quando você possui muitas condições torna-se trabalhosa a análise para identificar qual condição foi atendida.Temos clientes em que as fórmulas chegam a 15, 20 condições e analisar isso tudo é complicado. Utilizando esta dica você pode mapear por onde você passou.... Vamos ao exemplo. Vejam o anexo. Com isso você pode dizer 'Passei no bloco 1', 'Entrei aqui', enfim fica muito mais fácil analisar o debug. Anexei também o debug de cálculo dos testes que realizei com a fórmula. Boa leitura e ótimo proveito. Abraço a todos. Fabio, sem palavras. Algo simples que facilita e muito a nossa vida... e eu desconhecia! Eureka! vlw a dica. Abraços. Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Visitante Treinamentos RM (não cadastrado) Postado 2 de Março de 2010 Denunciar Compartilhar Postado 2 de Março de 2010 "e existe um curso especifico para formulas" Jair, quando você vai ministrar este treinamento? rs Aposto que tem bastante demanda. Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Cassio Hospitais Postado 28 de Outubro de 2010 Tópicos Que Criei: 2 Tópicos/Dia: 0.00 Meu Conteúdo: 56 Conteúdo/Dia: 0.01 Reputação: 0 Pontos/Conquistas: 310 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Idade: 44 Denunciar Compartilhar Postado 28 de Outubro de 2010 Jair, boa tarde Não sei se era desses tipos de fórmulas que estava falando, caso não seja favor exclui-las. Obrigado Fórmula para cálculo de Insalubridade SE TABFUNC ('CODFUNCAO' , 'S')='5' OU TABFUNC ('CODFUNCAO' , 'S')='13' ENTAO (0.4*760)/30*(N('0002')+N('0145')) SENAO (0.2*MINGA)/30*(N('0002') +N('0145')) FIMSE /*20% do mínimo garantido do sindicado = R$ 490,00*/ Fórmula para buscar o último salário da pessoa se rc > 0 entao rc + (MV(MES,ANO,'0074')+MV(MES,ANO,'0075')+MV(MES,ANO,'0095')) senao ACUMFF(MES,ANO,'03') FIMSE Função para buscar nome da mãe do funcionário FNOMEMAE FÓRMULAS UTILIZADAS NO RM NÚCLEUS Valor Bruto do Movimento (KQT*KPU) -KDE + KDS Fórmula para validação de campo complementar ( O campo não pode estar nulo) SE TABMOVCOMPL ('SITUACAO' , 'V') <> '' ENTAO 1 SENAO 0 FIMSE Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
VavaLeonel Postado 14 de Junho de 2011 Tópicos Que Criei: 68 Tópicos/Dia: 0.01 Meu Conteúdo: 174 Conteúdo/Dia: 0.04 Reputação: 4 Pontos/Conquistas: 1.534 Conteúdo Resolvido: 0 Dias Ganho: 4 Status: Offline Denunciar Compartilhar Postado 14 de Junho de 2011 Pesssoal segue mais algumas formulas: INDENIZAÇÃO LEI 7.238/84 SE DTD > '03/01/2011' E DTD < '01/03/2011' E TABFUNC ('TIPODEMISSAO' , 'V') = 2 ENTAO FOR ('Remuner') SENAO 0 FIMSE Zerar valores de eventos SE CREC = 'M' ENTAO TOTDESC - TOTPROV SENAO 0 FIMSE Valores Alterado Manualmente -- Crítica da folha DECL VALOR; SE EXECSQL ('FOR1.009') = VERDADE ENTAO REPITA SETVAR(VALOR,RESULTSQL('FOR1.009','VALORESFORCADOS')) ATE PROXREGSQL('FOR1.009') = FALSO; VALOR SENAO 0 FIMSE Sexo - utilizado no relatorio Seguro Desemprego SE (TABPESSOA('SEXO','S') = 'M') ENTAO 1 SENAO 2 FIMSE Referência do Evento Empréstimo Consignação Bradesco TABEMPRESTIMO ('NROPARCPAGAS' , 'V' , '01') Referência do Evento Empréstimo Consignação Bradesco Rescisão SE TABEMPRESTIMO ('SALDODEVEDOR' , 'V' , '01') > (TOTPROV * 0.30) ENTAO 30 SENAO 0 FIMSE Liquido de Salario p/contabilização /* ATENÇÃO PARA A CONTABILIZAÇÃO MES A MES DEVE-SE ALTERAR OS CODIGOS FIXOS 'MES' E 'ANO' PARA O MES E ANO QUE ESTÁ SENDO CONTABILIZADO*/ LIQUIDOFF (F ('Ano'),F ('Mes') , 1) + LIQUIDOFF (F ('Ano'),F ('Mes') , 2) + LIQUIDOFF (F ('Ano'),F ('Mes') , 10) + LIQUIDOFF (F ('Ano'),F ('Mes') , 13) /*LIQUIDOFF (2010,6 , 1) + LIQUIDOFF (2010,6 , 2) + LIQUIDOFF (2010,6 , 10) + LIQUIDOFF (2010,6 , 13) */ INFORME DE RENDIMENTOS – NOME DO RESPONSAVEL PELA PENSAO SE EXECSQL ('DEPEND') =1 ENTAO DECL IMPRESSAO, CONT, X; REPITA SETVAR (CONT, RESULTSQL ('DEPEND','NRODEPEND')); SETVAR (IMPRESSAO,CONCAT5("RESPONSAVEL PENSAO:",TABDEP ('RESPONSAVEL','S',CONT)," -", "CPF:", RESULTSQL ('DEPEND','CPFRESP'))); SETVAR (X, X+1) ATE PROXREGSQL ('DEPEND') = 0 OU X=1 FIMSE; IMPRESSAO INDENIZAÇÃO - TEMPO DE SERVIÇO SE NMESES >= 12 ENTAO SE TABFUNC('TIPODEMISSAO','V') = 2 ENTAO (TCASA) * 3 * RC / 30 SENAO 0 FIMSE SENAO 0 FIMSE Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Jair - Fórmula Postado 14 de Junho de 2011 Tópicos Que Criei: 899 Tópicos/Dia: 0.14 Meu Conteúdo: 8.841 Conteúdo/Dia: 1.34 Reputação: 310 Pontos/Conquistas: 106.574 Conteúdo Resolvido: 0 Dias Ganho: 195 Status: Offline Idade: 52 Dispositivo: Windows Autor Denunciar Compartilhar Postado 14 de Junho de 2011 Cálculo de Disciplinas Filhas ( Educacional ) - pelo membro Frederico: Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
VavaLeonel Postado 15 de Junho de 2011 Tópicos Que Criei: 68 Tópicos/Dia: 0.01 Meu Conteúdo: 174 Conteúdo/Dia: 0.04 Reputação: 4 Pontos/Conquistas: 1.534 Conteúdo Resolvido: 0 Dias Ganho: 4 Status: Offline Denunciar Compartilhar Postado 15 de Junho de 2011 (editado) segue mais formulas Pessoal vamos ajudar Prorrogação de experiência 45 dias DTA+44 Prorrogração de experiência 90 dias DTA + 89 SALDO FERIAS 5 DIAS ANO ANTERIOR SE CREC = 'H' ENTAO (FOR ('SALCOMP') / 30)*5 SENAO (RC) / 30*5 FIMSE CTA FGTS /*SE TABFUNC ('CONTAFGTS' , 'S') = ' ' ENTAO 0 SENAO TABFUNC ('CONTAFGTS' , 'S') FIMSE*/ 0 Abraços Vagner Leonel Editado 15 de Junho de 2011 por Jair - Fórmula Colocado Negrito nos Titulos das Formulas Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Jorge Postado 15 de Junho de 2011 Tópicos Que Criei: 51 Tópicos/Dia: 0.01 Meu Conteúdo: 1.005 Conteúdo/Dia: 0.16 Reputação: 12 Pontos/Conquistas: 5.527 Conteúdo Resolvido: 0 Dias Ganho: 8 Status: Offline Idade: 51 Denunciar Compartilhar Postado 15 de Junho de 2011 Variavel PAR no Labore... Sintaxe básica VAL(SUBSTR(PAR,1,20)) Baseado no help "Pasta Funcionários da Folha Analítica", o formato de PAR é MM-AAAA-P-C. Nesse caso para obter o período deve-se ler a posição 12, como já é feito na fórmula descrita na solicitação. FOLHA ANALITICA: ===== ========= O resultado será : 05-2006-3-4, onde: 05 - é o mês desejado 2006 - é o ano desejado 3 - é o período desejado 4 - é o caixa desejado Já para a geração de encargos deve-se ler a posição 9, poir o formato de PAR descrito no help "Pasta de Dados Contábeis do Encargo" é MM-AAAA-P. CONTABILIZAÇÃO: ============== O resultado será : 05-2006-3, onde: 05 - é o mês desejado 2006 - é o ano desejado 3 - é o período desejado Exemplo: Desejo buscar o valor liquido do mês,ano e periodo informados no momento da geração do lote contábil, com isso a fórmula será: LIQUIDOFF(VAL(SUBSTR(PAR,4,4)),VAL(SUBSTR(PAR,1,2)),VAL(SUBSTR(PAR,9,1))) Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Jair - Fórmula Postado 15 de Junho de 2011 Tópicos Que Criei: 899 Tópicos/Dia: 0.14 Meu Conteúdo: 8.841 Conteúdo/Dia: 1.34 Reputação: 310 Pontos/Conquistas: 106.574 Conteúdo Resolvido: 0 Dias Ganho: 195 Status: Offline Idade: 52 Dispositivo: Windows Autor Denunciar Compartilhar Postado 15 de Junho de 2011 segue mais formulas Pessoal vamos ajudar Prorrogação de experiência 45 dias DTA+44 Prorrogração de experiência 90 dias DTA + 89 SALDO FERIAS 5 DIAS ANO ANTERIOR SE CREC = 'H' ENTAO (FOR ('SALCOMP') / 30)*5 SENAO (RC) / 30*5 FIMSE CTA FGTS /*SE TABFUNC ('CONTAFGTS' , 'S') = ' ' ENTAO 0 SENAO TABFUNC ('CONTAFGTS' , 'S') FIMSE*/ 0 Abraços Vagner Leonel Vagner, essa parte lá no meio, acho que dará erro na sua formula heim !!! Poderia verificar por favor? E se possivel, procure dar exemplo da necessidade da Formula, quando for, tipo essa ultima, pois, é um exemplo que seja usual ou mesmo que é importante ter, ou seria alguma fórmula criada na sua empresa apenas? Não seria algo especifico que foi criado para alguma necessidade particular na sua empresa, isso que quero dizer CTA FGTS Essa parte tambem será um problema, na mesma formula, pois, chama uma outra formula a qual você não citou antes, e não existindo essa formula, é erro na certa: ENTAO (FOR ('SALCOMP') / 30)*5 Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
VavaLeonel Postado 15 de Junho de 2011 Tópicos Que Criei: 68 Tópicos/Dia: 0.01 Meu Conteúdo: 174 Conteúdo/Dia: 0.04 Reputação: 4 Pontos/Conquistas: 1.534 Conteúdo Resolvido: 0 Dias Ganho: 4 Status: Offline Denunciar Compartilhar Postado 15 de Junho de 2011 Beleza jair vou verificar abraços Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
FLAVIO JOSE Postado 20 de Maio de 2012 Tópicos Que Criei: 0 Tópicos/Dia: 0 Meu Conteúdo: 1 Conteúdo/Dia: 0.00 Reputação: 0 Pontos/Conquistas: 5 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Denunciar Compartilhar Postado 20 de Maio de 2012 Pesssoal segue mais algumas formulas: INDENIZAÇÃO LEI 7.238/84 SE DTD > '03/01/2011' E DTD < '01/03/2011' E TABFUNC ('TIPODEMISSAO' , 'V') = 2 ENTAO FOR ('Remuner') SENAO 0 FIMSE Zerar valores de eventos SE CREC = 'M' ENTAO TOTDESC - TOTPROV SENAO 0 FIMSE Valores Alterado Manualmente -- Crítica da folha DECL VALOR; SE EXECSQL ('FOR1.009') = VERDADE ENTAO REPITA SETVAR(VALOR,RESULTSQL('FOR1.009','VALORESFORCADOS')) ATE PROXREGSQL('FOR1.009') = FALSO; VALOR SENAO 0 FIMSE Sexo - utilizado no relatorio Seguro Desemprego SE (TABPESSOA('SEXO','S') = 'M') ENTAO 1 SENAO 2 FIMSE Referência do Evento Empréstimo Consignação Bradesco TABEMPRESTIMO ('NROPARCPAGAS' , 'V' , '01') Referência do Evento Empréstimo Consignação Bradesco Rescisão SE TABEMPRESTIMO ('SALDODEVEDOR' , 'V' , '01') > (TOTPROV * 0.30) ENTAO 30 SENAO 0 FIMSE Liquido de Salario p/contabilização /* ATENÇÃO PARA A CONTABILIZAÇÃO MES A MES DEVE-SE ALTERAR OS CODIGOS FIXOS 'MES' E 'ANO' PARA O MES E ANO QUE ESTÁ SENDO CONTABILIZADO*/ LIQUIDOFF (F ('Ano'),F ('Mes') , 1) + LIQUIDOFF (F ('Ano'),F ('Mes') , 2) + LIQUIDOFF (F ('Ano'),F ('Mes') , 10) + LIQUIDOFF (F ('Ano'),F ('Mes') , 13) /*LIQUIDOFF (2010,6 , 1) + LIQUIDOFF (2010,6 , 2) + LIQUIDOFF (2010,6 , 10) + LIQUIDOFF (2010,6 , 13) */ INFORME DE RENDIMENTOS – NOME DO RESPONSAVEL PELA PENSAO SE EXECSQL ('DEPEND') =1 ENTAO DECL IMPRESSAO, CONT, X; REPITA SETVAR (CONT, RESULTSQL ('DEPEND','NRODEPEND')); SETVAR (IMPRESSAO,CONCAT5("RESPONSAVEL PENSAO:",TABDEP ('RESPONSAVEL','S',CONT)," -", "CPF:", RESULTSQL ('DEPEND','CPFRESP'))); SETVAR (X, X+1) ATE PROXREGSQL ('DEPEND') = 0 OU X=1 FIMSE; IMPRESSAO INDENIZAÇÃO - TEMPO DE SERVIÇO SE NMESES >= 12 ENTAO SE TABFUNC('TIPODEMISSAO','V') = 2 ENTAO (TCASA) * 3 * RC / 30 SENAO 0 FIMSE SENAO 0 FIMSE Vavá, Muito boa a sua contribuição, mas, será que você poderia me dar uma ajudinha ainda mais profunda. O que estou precisando é entender a sintaxe das fórmulas. Porque usar aspas? para que e quando o parêntese? etc.... Se puder serei muito grato. Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
ti-cst Postado 31 de Agosto de 2012 Tópicos Que Criei: 59 Tópicos/Dia: 0.01 Meu Conteúdo: 141 Conteúdo/Dia: 0.03 Reputação: 1 Pontos/Conquistas: 1.296 Conteúdo Resolvido: 0 Dias Ganho: 1 Status: Offline Idade: 46 Denunciar Compartilhar Postado 31 de Agosto de 2012 Desculpe entrar neste topico, mas eu preciso de uma ajuda. Tenho que desenvolver uma formula de consistencia no Nucleus dentro do tipo de movimento para tratar 4 situações diferentes e independentes a estrutura esta assim: /*VALIDA DATA DO IRRF*/ SE (TABMOV ('DATAEMISSAO' , 'D') <= FOR('9999E') E MVT('IRRF') > 0) ENTAO 0 SENAO 1 FIMSE; /*VALIDA CHAVE NFE*/ EXECSQL ('VALIDACHAVE'); SE TABMOV ('CODTDO' , 'S') = 'NFe' OU TABMOV ('CODTDO' , 'S') = 'CTe' ENTAO SE RESULTSQL ('VALIDACHAVE','RESULTADO') = 1 ENTAO 1 SENAO 0 FIMSE SENAO 1 FIMSE; /*VALIDA CAMPOS COMPLEMENTARES*/ SE TABMOV('CODFILIAL', 'V') = 2 E (TABMOV ('CODTMV' , 'S') ='1.2.26' OU TABMOV ('CODTMV' , 'S') ='1.2.25' OU TABMOV ('CODTMV' , 'S') ='1.2.97') ENTAO SE TABMOVCOMPL('TIPODOC', 'S') <> ' ' E TABMOVCOMPL('NFE', 'S') <> ' ' ENTAO 1 SENAO 0 FIMSE SENAO 1 FIMSE; /*VALIDA NOTA DUPLICADA*/ EXECSQL('SQLIDMOV'); SE EXECSQL('SQLIDMOV') = VERDADE ENTAO 1 SENAO /*DECL AUX;*/ SETVAR(AUX,0); SE EXECSQL('SQLDUPLI') = VERDADE ENTAO SETVAR(AUX, RESULTSQL('SQLDUPLI','VALOR')) SENAO SETVAR(AUX, 0) FIMSE SE TABMOV ('CODTMV' , 'S') <> '1.1.02' E TABMOV ('CODTMV' , 'S') <> '1.1.03' E TABMOV ('CODTMV' , 'S') <> '1.1.04' E TABMOV ('CODTMV' , 'S') <> '1.1.06' E TABMOV ('CODTMV' , 'S') <> '1.1.07' E TABMOV ('CODTMV' , 'S') <> '3.1.00' E TABMOV ('CODTMV' , 'S') <> '1.1.08' ENTAO SE (AUX = 1) ENTAO SE(usuariocorrente = 'Eber' ou usuariocorrente = 'mestre') /*LIBERA NF DUPLICADA*/ ENTAO 1 SENAO 0 FIMSE SENAO 1 FIMSE FIMSE FIMSE Desta forma so esta validando a ultima. Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Jair - Fórmula Postado 31 de Agosto de 2012 Tópicos Que Criei: 899 Tópicos/Dia: 0.14 Meu Conteúdo: 8.841 Conteúdo/Dia: 1.34 Reputação: 310 Pontos/Conquistas: 106.574 Conteúdo Resolvido: 0 Dias Ganho: 195 Status: Offline Idade: 52 Dispositivo: Windows Autor Denunciar Compartilhar Postado 31 de Agosto de 2012 ti-cst, esse topico é para uso de Exemplos de Fórmulas para os membros... Abra um novo tópico com a sua dúvida para que possa ser ajudado ok? Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
ti-cst Postado 31 de Agosto de 2012 Tópicos Que Criei: 59 Tópicos/Dia: 0.01 Meu Conteúdo: 141 Conteúdo/Dia: 0.03 Reputação: 1 Pontos/Conquistas: 1.296 Conteúdo Resolvido: 0 Dias Ganho: 1 Status: Offline Idade: 46 Denunciar Compartilhar Postado 31 de Agosto de 2012 OK - Ja abri, você pode me dar uma idéia? Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Posts Recomendados
Participe da conversa
Você pode postar agora, e se registrar mais tarde. Se você tiver uma conta, faça o login agora para postar com sua conta.