Ir para conteúdo
AVISO AOS MEMBROS:

Fizemos uma atualização em 18/06/2023, e a forma de acesso ao Fórum mudou. Não mais está sendo aceito o login pelo Nome de Exibição cadastrado. Agora, apenas pelo email e pelos integradores de Login do Facebook, Google e Microsoft. O Facebook estava com uma validação pendente e já foi normalizado o acesso, já o Google, ainda estamos verificando o que está ocorrendo que não está funcionando.
Caso precisem de ajuda para o login pelo email acesse o link << Esqueci minha senha de acesso>> ou nos envie um pedido de ajuda pelo email admin@forumrm.com.br

Administração
ForumRM


HENRIQUE CARVALHO

Posts Recomendados


  • Tópicos Que Criei:  2
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  8
  • Conteúdo/Dia:  0.00
  • Reputação:   0
  • Pontos/Conquistas:  61
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline
  • Idade:  42

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.
 

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  2
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  35
  • Conteúdo/Dia:  0.01
  • Reputação:   11
  • Pontos/Conquistas:  212
  • Conteúdo Resolvido:  0
  • Dias Ganho:  7
  • Status:  Offline
  • Idade:  40
  • Dispositivo:  Windows

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
 

Editado por Filipeejc
Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  2
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  8
  • Conteúdo/Dia:  0.00
  • Reputação:   0
  • Pontos/Conquistas:  61
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline
  • Idade:  42

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.

 

 

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  2
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  8
  • Conteúdo/Dia:  0.00
  • Reputação:   0
  • Pontos/Conquistas:  61
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline
  • Idade:  42

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.

 

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  2
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  35
  • Conteúdo/Dia:  0.01
  • Reputação:   11
  • Pontos/Conquistas:  212
  • Conteúdo Resolvido:  0
  • Dias Ganho:  7
  • Status:  Offline
  • Idade:  40
  • Dispositivo:  Windows

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.

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  2
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  8
  • Conteúdo/Dia:  0.00
  • Reputação:   0
  • Pontos/Conquistas:  61
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline
  • Idade:  42

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?

Editado por HENRIQUE CARVALHO
Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  2
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  35
  • Conteúdo/Dia:  0.01
  • Reputação:   11
  • Pontos/Conquistas:  212
  • Conteúdo Resolvido:  0
  • Dias Ganho:  7
  • Status:  Offline
  • Idade:  40
  • Dispositivo:  Windows

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.

 

 

Link para comentar
Compartilhar em outros sites

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.

Visitante
Responder esse tópico

×   Você colou conteúdo com formatação.   Remover formatação

  Only 75 emoji are allowed.

×   Seu link foi automaticamente inserido no corpo do post.   Exibir como um link

×   Seu conteúdo anterior foi restaurado.   Limpar conteúdo do editor

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

×
×
  • Criar Novo...

Informação Importante

Usando este site, você concorda com nossos Termos de Uso e nossa Política de Privacidade.