Ir para conteúdo
Seja Membro VIP - Remova Banners de Propagandas, Tenha Liberado Qualquer Download, Além de Acessos em Áreas Exclusivas!! ×
Quer acesso a todas as Áreas do Fórum, até aquelas só para membros VIPs? Também quer poder baixar qualquer ARQUIVO? ×

Formula Para Reateio Do Desconto Nos Itens


Iran

Posts Recomendados


  • Tópicos Que Criei:  1
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  6
  • Conteúdo/Dia:  0.00
  • Reputação:   0
  • Pontos/Conquistas:  40
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline

Gostaria que a formula me trouxesse este mesmo resultado

SELECT SUM(X.VALOR) TOTALCALC

FROM (

select nseqitmmov, ROUND((TITMMOV.quantidade*precounitario) - (((TITMMOV.quantidade*precounitario)/TMOV.VALORBRUTO)*TMOV.VALORDESC),2) AS VALOR

from TITMMOV inner join TMOV on TITMMOV.CODCOLIGADA = TMOV.CODCOLIGADA and TITMMOV.IDMOV = TMOV.IDMOV where TITMMOV.IDMOV = :IDMOV

and TITMMOV.CODCOLIGADA = :CODCOLIGADA) X

Alguém sabe como?

Obrigado

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  46
  • Tópicos/Dia:  0.01
  • Meu Conteúdo:  1.197
  • Conteúdo/Dia:  0.20
  • Reputação:   17
  • Pontos/Conquistas:  6.422
  • Conteúdo Resolvido:  0
  • Dias Ganho:  9
  • Status:  Offline

Iran,

Acredito ser algo mais ou menos assim:

(TABITM ('QUANTIDADETOTAL' , 'V') *TABITM ('PRECOUNITARIO' , 'V')) - (TABITM ('QUANTIDADETOTAL' , 'V') *TABITM ('PRECOUNITARIO' , 'V')) / TABMOV ('VALORBRUTO' , 'V')* TABMOV ('VALORDESC' , 'V')

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  110
  • Tópicos/Dia:  0.02
  • Meu Conteúdo:  1.391
  • Conteúdo/Dia:  0.21
  • Reputação:   17
  • Pontos/Conquistas:  8.047
  • Conteúdo Resolvido:  0
  • Dias Ganho:  9
  • Status:  Offline
  • Idade:  47
  • Dispositivo:  Windows

Cria uma fórmula pra trazer o IDMOV, outra pra pegar a CODCOLIGADA e outra com o NSEQITMMOV.

Cria a sua sentença SQL e nos parâmetros passa o IDMOV, CODCOLIGADA e NSEQITMMOV das fórmulas criadas.

Ai você consegue criar uma fórmula, chamando esta SQL.

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  1
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  6
  • Conteúdo/Dia:  0.00
  • Reputação:   0
  • Pontos/Conquistas:  40
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline

Edson Silva,

Iran,

Acredito ser algo mais ou menos assim:

(TABITM ('QUANTIDADETOTAL' , 'V') *TABITM ('PRECOUNITARIO' , 'V')) - (TABITM ('QUANTIDADETOTAL' , 'V') *TABITM ('PRECOUNITARIO' , 'V')) / TABMOV ('VALORBRUTO' , 'V')* TABMOV ('VALORDESC' , 'V')

Neste caso vem so de um item, na verdade preciso que venha o valor de todos os items, tem como?

Obrigado

Cria uma fórmula pra trazer o IDMOV, outra pra pegar a CODCOLIGADA e outra com o NSEQITMMOV.

Cria a sua sentença SQL e nos parâmetros passa o IDMOV, CODCOLIGADA e NSEQITMMOV das fórmulas criadas.

Ai você consegue criar uma fórmula, chamando esta SQL.

Não posso usar SQL pois o calculo é feito antes de gravar no banco, tem que ser por formula.

Obrigado

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  46
  • Tópicos/Dia:  0.01
  • Meu Conteúdo:  1.197
  • Conteúdo/Dia:  0.20
  • Reputação:   17
  • Pontos/Conquistas:  6.422
  • Conteúdo Resolvido:  0
  • Dias Ganho:  9
  • Status:  Offline

Apenas para saber onde você está usando a formula?

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  1
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  6
  • Conteúdo/Dia:  0.00
  • Reputação:   0
  • Pontos/Conquistas:  40
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline

Apenas para saber onde você está usando a formula?

Eventos contabeis

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  46
  • Tópicos/Dia:  0.01
  • Meu Conteúdo:  1.197
  • Conteúdo/Dia:  0.20
  • Reputação:   17
  • Pontos/Conquistas:  6.422
  • Conteúdo Resolvido:  0
  • Dias Ganho:  9
  • Status:  Offline

Neste caso a situação é outra então, não seria algo assim: MVP*MDT

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  1
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  6
  • Conteúdo/Dia:  0.00
  • Reputação:   0
  • Pontos/Conquistas:  40
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline

Neste caso a situação é outra então, não seria algo assim: MVP*MDT

Estou arredondado os valores de um movimento que existe vários item e quando arrendondo da diferença de debito e credito, onde credito uso a formula NU003 e debito uso a formula NU036, o problema e ao gravar o movimento a consulta SQL não traz a diferença que deveria gravar no primeiro item do movimento, segue as formulas:

Credito

************************************************NU003*********************************

ARREDVALOR (MOU - MDT + MDZ + MSG + MFR + VLT ('IPI') + MVT('ICMSST'),2)

Debito

************************************************NU036*********************************

decl f051; setvar(f051, FOR('NU051'));

SE TABITM ('NSEQITMMOV' , 'V') = 1 E f051 >= - 0.35 E f051 <= 0.35 E f051 <> 0

ENTAO

ARREDVALOR((KQT * KPU) - TABITM ('RATEIODESC' , 'V') + TABITM ('RATEIODESP' , 'V')+ TABITM ('RATEIOFRETE' , 'V')+ TABITM ('RATEIOSEGURO' , 'V')+ LVL ('IPI') ,2)+ARREDVALOR(FOR('NU037'),2) + f051

SENAO

ARREDVALOR((KQT * KPU) - TABITM ('RATEIODESC' , 'V') + TABITM ('RATEIODESP' , 'V')+ TABITM ('RATEIOFRETE' , 'V')+ TABITM ('RATEIOSEGURO' , 'V')+ LVL ('IPI') ,2)+ARREDVALOR(FOR('NU037'),2)

FIMSE

************************************************NU037*********************************

ARREDVALOR((( MVT ('ICMSST') * 1000) / MVB) * (KQT*KPU)/1000,2)

************************************************NU051*********************************

SE EXECSQL ('CONT_CALC') = VERDADE

ENTAO FOR('NU003') - RESULTSQL ('CONT_CALC' , 'TOTALCALC')

SENAO 0

FIMSE

*******************************************CONT_CALC*****************************

SELECT SUM(X.VALOR) TOTALCALC

FROM (

select nseqitmmov, ROUND((TITMMOV.quantidade*precounitario) - (((TITMMOV.quantidade*precounitario)/TMOV.VALORBRUTO)*TMOV.VALORDESC),2) AS VALOR

from TITMMOV inner join TMOV on TITMMOV.CODCOLIGADA = TMOV.CODCOLIGADA and TITMMOV.IDMOV = TMOV.IDMOV where TITMMOV.IDMOV = :IDMOV

and TITMMOV.CODCOLIGADA = :CODCOLIGADA) X

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.