Jump to content

Recommended Posts

Bom dia.

 

Estou tentado criar uma expressão onde 

=se(X>0;X*0,34;0)

Inseri essa expressão, mas ela retorna erro

IF (DECIMAL(Relatório.Texto44) - DECIMAL (Relatório.Texto61) - DECIMAL(Relatório.Texto63) - DECIMAL(Relatório.Texto65) - DECIMAL(Relatório.Texto47) - DECIMAL(Relatório.Texto67) - DECIMAL(Relatório.Texto46) - DECIMAL(Relatório.Texto52) - DECIMAL(Relatório.Texto56)>DECIMAL(0);DECIMAL  (Relatório.Texto44) - (DECIMAL(Relatório.Texto61) + DECIMAL(Relatório.Texto63) + DECIMAL(Relatório.Texto65) + DECIMAL(Relatório.Texto47) + DECIMAL(Relatório.Texto67) + DECIMAL(Relatório.Texto46) + DECIMAL(Relatório.Texto52) + DECIMAL(Relatório.Texto56)) *DECIMAL(0,34); DECIMAL(0)

 

Erro ao executar relatório
Erro ao executar relatório
Erro ao gerar o relatório para memória
Erro ao criar documento


Parâmetros informados incorretamente.


Parâmetros informados incorretamente.


Parâmetros informados incorretamente.
Usuário da execução: METROENG\MTPLAN02$

 

 

Aguem pode me ajudar com essa questão? Me solicitaram essa inclusão achando que seria simples como uma fórmula no excel. 

Poderia ser feio via SQL, mas a query para chegar nesse resultado seria enorme, causando uma redundância muito grande na execução do relatório que já está bastante lenta.
 

Share this post


Link to post
Share on other sites
Em 31/05/2019 at 11:20, HENRIQUE CARVALHO disse:

Bom dia.

 

Estou tentado criar uma expressão onde 

=se(X>0;X*0,34;0)

Inseri essa expressão, mas ela retorna erro

IF (DECIMAL(Relatório.Texto44) - DECIMAL (Relatório.Texto61) - DECIMAL(Relatório.Texto63) - DECIMAL(Relatório.Texto65) - DECIMAL(Relatório.Texto47) - DECIMAL(Relatório.Texto67) - DECIMAL(Relatório.Texto46) - DECIMAL(Relatório.Texto52) - DECIMAL(Relatório.Texto56)>DECIMAL(0);DECIMAL  (Relatório.Texto44) - (DECIMAL(Relatório.Texto61) + DECIMAL(Relatório.Texto63) + DECIMAL(Relatório.Texto65) + DECIMAL(Relatório.Texto47) + DECIMAL(Relatório.Texto67) + DECIMAL(Relatório.Texto46) + DECIMAL(Relatório.Texto52) + DECIMAL(Relatório.Texto56)) *DECIMAL(0,34); DECIMAL(0)

 

Erro ao executar relatório
Erro ao executar relatório
Erro ao gerar o relatório para memória
Erro ao criar documento


Parâmetros informados incorretamente.


Parâmetros informados incorretamente.


Parâmetros informados incorretamente.
Usuário da execução: METROENG\MTPLAN02$

 

 

Aguem pode me ajudar com essa questão? Me solicitaram essa inclusão achando que seria simples como uma fórmula no excel. 

Poderia ser feio via SQL, mas a query para chegar nesse resultado seria enorme, causando uma redundância muito grande na execução do relatório que já está bastante lenta.
 

Bom dia Henrique,

Tente assim:

If(Decimal(Relatório.Texto44)-Decimal(Relatório.Texto61)-Decimal(Relatório.Texto63)-Decimal(Relatório.Texto65)-Decimal(Relatório.Texto47)-Decimal(Relatório.Texto67)-Decimal(Relatório.Texto46)-Decimal(Relatório.Texto52)-Decimal(Relatório.Texto56)>Decimal(0),(Decimal(Relatório.Texto44)-Decimal(Relatório.Texto61)-Decimal(Relatório.Texto63)-Decimal(Relatório.Texto65)-Decimal(Relatório.Texto47)-Decimal(Relatório.Texto67)-Decimal(Relatório.Texto46)-Decimal(Relatório.Texto52)-Decimal(Relatório.Texto56))*Decimal(0.34),0)

 

Haviam três pequenos erros na sua expressão, sendo:

1 - Os parênteses, de modo que se separe a subtração da multiplicação.

2 - Os campos da expressão são separados com vírgula e não ponto e vírgula.

3 - A multiplicação deve ser realizada por (0.34) e não (0,34).

 

Atenciosamente,

Filipe Pimenta
 

Edited by Filipeejc

Share this post


Link to post
Share on other sites

Bom dia, brother Filipe.

 

Realizei a alteração que você sugeriu. Agora tá trazendo esse erro.

 

Erro ao executar relatório
Erro ao executar relatório
Erro ao gerar o relatório para memória
Erro ao criar documento


Uma exceção foi acionada pelo destino de uma chamada.
Não é possível converter o tipo  para decimal.


Uma exceção foi acionada pelo destino de uma chamada.
Não é possível converter o tipo  para decimal.


Uma exceção foi acionada pelo destino de uma chamada.
Não é possível converter o tipo  para decimal.

 

 

Share this post


Link to post
Share on other sites
1 hora atrás, Filipeejc disse:

Bom dia Henrique,

Tente assim:

If(Decimal(Relatório.Texto44)-Decimal(Relatório.Texto61)-Decimal(Relatório.Texto63)-Decimal(Relatório.Texto65)-Decimal(Relatório.Texto47)-Decimal(Relatório.Texto67)-Decimal(Relatório.Texto46)-Decimal(Relatório.Texto52)-Decimal(Relatório.Texto56)>Decimal(0),(Decimal(Relatório.Texto44)-Decimal(Relatório.Texto61)-Decimal(Relatório.Texto63)-Decimal(Relatório.Texto65)-Decimal(Relatório.Texto47)-Decimal(Relatório.Texto67)-Decimal(Relatório.Texto46)-Decimal(Relatório.Texto52)-Decimal(Relatório.Texto56))*Decimal(0.34),0)

 

Haviam três pequenos erros na sua expressão, sendo:

1 - Os parênteses, de modo que se separe a subtração da multiplicação.

2 - Os campos da expressão são separados com vírgula e não ponto e vírgula.

3 - A multiplicação deve ser realizada por (0.34) e não (0,34).

 

Atenciosamente,

Filipe Pimenta
 

Bom dia, brother Filipe.

 

Realizei a alteração que você sugeriu. Agora tá trazendo esse erro.

 

Erro ao executar relatório
Erro ao executar relatório
Erro ao gerar o relatório para memória
Erro ao criar documento


Uma exceção foi acionada pelo destino de uma chamada.
Não é possível converter o tipo  para decimal.


Uma exceção foi acionada pelo destino de uma chamada.
Não é possível converter o tipo  para decimal.


Uma exceção foi acionada pelo destino de uma chamada.
Não é possível converter o tipo  para decimal.

 

Share this post


Link to post
Share on other sites

Henrique,

 

Pelo que entendi os campos desse relatório são do tipo texto, e você está convertendo para decimal.

Já verificou se todos os campos estão preenchidos com números?

 

Gerei um relatório aqui com essa expressão e deu certo.

Share this post


Link to post
Share on other sites
1 hora atrás, Filipeejc disse:

Henrique,

 

Pelo que entendi os campos desse relatório são do tipo texto, e você está convertendo para decimal.

Já verificou se todos os campos estão preenchidos com números?

 

Gerei um relatório aqui com essa expressão e deu certo.

Brother, muito obrigado pela sua ajuda.

Verifiquei os campos, estão todos formatados como número (0;n2)

Colei novamente a expressão que você enviou, e retornou o erro abaixo

 

Erro ao executar relatório
Erro ao executar relatório
Erro ao gerar o relatório para memória
Erro ao criar documento


Uma exceção foi acionada pelo destino de uma chamada.
O índice estava fora do intervalo. Ele deve ser não-negativo e menor que o tamanho da coleção.
Nome do parâmetro: index


Uma exceção foi acionada pelo destino de uma chamada.
O índice estava fora do intervalo. Ele deve ser não-negativo e menor que o tamanho da coleção.
Nome do parâmetro: index


Uma exceção foi acionada pelo destino de uma chamada.
O índice estava fora do intervalo. Ele deve ser não-negativo e menor que o tamanho da coleção.
Nome do parâmetro: index

 

EXPRESSÃO

If(Decimal(Relatório.Texto44)-Decimal(Relatório.Texto61)-Decimal(Relatório.Texto63)-Decimal(Relatório.Texto65)-Decimal(Relatório.Texto47)-Decimal(Relatório.Texto67)-Decimal(Relatório.Texto46)-Decimal(Relatório.Texto52)-Decimal(Relatório.Texto56)>Decimal(0),(Decimal(Relatório.Texto44)-Decimal(Relatório.Texto61)-Decimal(Relatório.Texto63)-Decimal(Relatório.Texto65)-Decimal(Relatório.Texto47)-Decimal(Relatório.Texto67)-Decimal(Relatório.Texto46)-Decimal(Relatório.Texto52)-Decimal(Relatório.Texto56))*Decimal(0.34),0)
 

 

Existe alguma restrição quanto à resultados negativos?

Edited by HENRIQUE CARVALHO

Share this post


Link to post
Share on other sites

Em tese não deveria haver essa restrição.

Se o valor é maior que 0 a expressão trás o valor da subtração multiplicado por 0.34.

Se o valor é menor que 0, ou seja, negativo, a expressão deveria trazer 0.

 

Você consegue alterar os valores desses campos? 

Caso consiga, sugiro alterar de modo que os valores fiquem positivos e você consiga testar.

 

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Similar Content

    • By ALINE REIS
      Boa tarde!
      Criei um relatório no RM Reports, utilizando SQL para retornar dados da empresa e suas filiais (total de 13 linhas de registro). Para isso, defini a seguinte estrutura:
      - Cabeçalho (inclui o título do relatório e dados gerais (data, hora, página)
      -Detalhe1
      -Subdetalhe2 (vinculei em dados | tabela: SQL Dados Empresa x Filial)
      -Detalhe3 (nesta parte inseri as informações da empresa: nome | CNPJ | endereço)
      -Subdetalhe3 (vinculei em dados | tabela: SQL Dados Empresa x Filial)
      - Detalhe 4 (inclui os dados das filiais: nome filial | CNPJ)
      -Rodapé (inclui informação de assinatura)
      Necessito que o relatório seja quebrado por empresa e que os dados das filiais apareçam sequencialmente.
      Quando gero o relatório está ocorrendo repetição dos registros (looping).
      Alguém saberia me informar como soluciono este problema.
    • By JonathanPrates
      Bom dia. Trabalhei por mutos anos com os sistemas da Senior de Blumenau e estou iniciando agora com o RM. Desenvolvi meu primeiro relatório com o RM Reports e de forma geral não tive muita dificuldade, mas tem um detalhe que eu não consegui resolver e venho pedir a ajude de vocês.
      Montei um relatório de títulos liquidados no contas a receber por período (preview.jpg em anexo), onde no filtro (filtro.jpg em anexo) eu seleciono o período desejado. Até aí tudo bem, o meu problema é que eu preciso recuperar essas datas e colocá-las no cabeçalho do relatório, indicando ao usuário final qual o período referente do relatório.
      Agradeço desde já qualquer ajuda.


    • By ChromusMaster
      Alguem teria algum relatório de alunos matriculados por disciplina ? Por exemplo se preciso ver quais os alunos estão na disciplina ARQ01 utilizava o relatorio.
    • By ChromusMaster
      Bom dia ,estamos desenvolvendo um relatório que realizara a impressão da chapa de funcionário como um código de barras e um código gerado automático logo acima do referido código de barras. 
      Qual o tipo de configuração precisa ser feita para imprimir em papel etiqueta ? O gerador já tem o tipo definido ?
    • By william.kuwiecinski
      Pessoal,
      Eu criei um relatório no RM reports e agora vou publica-lo no Portal do RM, porém não sei como deixar esse relatório dinâmico para que o usuário logado no portal visualize somente os dados da sua chapa.
      Encontrei no TDN um post sobre variável dinâmica ( :$CHAPAFUNCIONARIO ) mas não consegui fazer funcionar.
      Poderiam me ajudar?
    • By Raphael Luiz Schettino
      Amigos estou tentando colocar uma expressão em um relatório padrão totvs (exportei e importei com outro nome), tentei colocar uma expressão para multiplicar um valor de um campo por 2, porém não aparece nada no relatório, estou enviando as imagens, já tentei com decimal antes do nome do campo, mas também não tive êxito.
      Alguém poderia me dar alguma dica? Parece que no relatório as horas são como string, ´porém mesmo quando coloquei decimal nada ocorreu.
      É o espelho do cartão de ponto.


    • By raphaelluizschettino
      Caros amigos, estou com essa expressão:
      if ((and(Relatório.EXTRAANT1-Relatório.ATRASOANT1-Relatório.FALTAANT1+Relatório.EXTRAATU1-Relatório.ATRASOATU1-Relatório.FALTAATU1)>0;Relatório.Totalizador5>0),Relatório.EXTRAANT1-Relatório.ATRASOANT1-Relatório.FALTAANT1+Relatório.EXTRAATU1-Relatório.ATRASOATU1-Relatório.FALTAATU1,0) 
      coloquei um 'and' para que caso um cálculo específico seja maior que 0 e se um totalizador específico for maior que zero, aparecer tal cálculo se não aparecer 0.
      porém está aparecendo tudo zerado, mesmo se eu coloque decimal(Relatório.Totalizador5)>0.
      não encontrei informação sobre o uso de if e and então tentei como no excel  if(and(condição1;condição2,então,senão))
       
    • By Raimundo Neto
      Boa Tarde Pessoal
       
      Estou anexando um fluxo que esta funcionando certinho, porem estou com um problema, gostaria dele sintético, como puxo da tabela de rateio o mesmo, ele esta puxando natureza e projeto deste lançamento, porem quando tivesse lançamentos com o mesmo projeto e mesma natureza, gostaria que os mesmos apenas somassem.
      Se alguém puder me ajudar o arquivo esta em anexo, lembrando que o SQL que utilizei neste arquivo tem customizações de acordo com a empresa.
      06 - FLUXO DE CAIXA CONTAS A PAGAR X RECEBER.TotvsReport
    • By raphaelluizschettino
      Meus amigos, estou anexando arquivos como imagem para posterior análise.
      Quis fazer 2 sqles para conseguir verificar quem trabalhou fim de semana e suas horas extras em tais dias, então criei uma sql para os funcionários (verificando quem trabalhou tais dias) e outra sql só que está para as horas extras do funcionário, então a ideia foi ligar através de parâmetros as duas sql, ou seja liguei a sql de hora extra através do campo p_chapa que representa a chapa do funcionário na sql anterior (funcionários), mas oque ocorre é que tais dados tanto em uma consulta quanto na outra estão ficando repetidos, estão corretos, está aparecendo o nome do funcionário e logo abaixo sua hora extra, porém essa informação para o mesmo funcionário estão se repetindo. Em anexo encontra-se minhas 2 sqles a estrutura do relatório e o resultado.




    • By tania cristina alves
      Boa tarde !!
      Como utilizo a expressão Count() no Rm Reports ?
      Escrevo Count(Relatório.Texto29) e quando executo só me mostra a expressão escrita e não o valor da expressão.
      Fiz também Count(Integer(Relatório.Texto29)) e nada.
      Peguei o campo da tabela Count(Base.FIN0101.CODCOLIGADA) e não mostrou nem a expressão.)
      Desejo que me mostre quantas vezes esse campo tem conteúdo, assim como no sql.
      O que devo fazer ? Qual a linguagem utilizada nessas expressões ?
      Podem me ajudar ?
      Obrigada
      Tânia
  • Recent

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.