FECHAMENTO POR MES

TRTNCG 20/03/2012 22:07:09
#397757
Pessoal estou sem conseguir enxergar uma idéia para por exemplo:

Tenho um cadastro de bens, nele tenho os campos: VALOR DO BEM, DEPRECIAÇÃO ANUAL E DATA DE INCORPORAÇÃO. por exemplo tenho o seguintes dados:

VALOR DO BEM | DEPRECIAÇÃO ANUAL | DATA DE INCORPORAÇÃO
134,50 20% 01/01/2010

Por exemplo tenho que fazer os cálculos de depreciação por mês

Janeiro de 2010 foi de .... (A DIFERENÇA ENTRE A DATA DE INCORPORAÇÃO E O ÚLTIMO DIA DO MÊS)
Fevereiro de 2010...

Até o mês atual por exemplo sendo que só é feito no último dia de cada mês

Alguém teria alguma idéia
JWCELYO 20/03/2012 23:35:28
#397763
Citação:

:
Pessoal estou sem conseguir enxergar uma idéia para por exemplo:

Tenho um cadastro de bens, nele tenho os campos: VALOR DO BEM, DEPRECIAÇÃO ANUAL E DATA DE INCORPORAÇÃO. por exemplo tenho o seguintes dados:

VALOR DO BEM | DEPRECIAÇÃO ANUAL | DATA DE INCORPORAÇÃO
134,50 20% 01/01/2010

Por exemplo tenho que fazer os cálculos de depreciação por mês

Janeiro de 2010 foi de .... (A DIFERENÇA ENTRE A DATA DE INCORPORAÇÃO E O ÚLTIMO DIA DO MÊS)
Fevereiro de 2010...

Até o mês atual por exemplo sendo que só é feito no último dia de cada mês

Alguém teria alguma idéia



Tem como você mostrar um exemplo de sua tabela com mais de um mês, três por exemplo

LVFIOROT 20/03/2012 23:37:29
#397764
Resposta escolhida
UM EXEMPLO

          Dim data1 As Date
Dim data2 As Date
Dim valor As Decimal

data1 = [Ô]2011-01-01[Ô]
data2 = Now
valor = 12458.12

DateAddL(data1, 0)

Do While data1 < data2
valor = valor - (valor * 0.2)
Debug.Print(CStr(data1) + [Ô] - [Ô] + FormatCurrency(valor))
DateAddL(data1, 1)
Loop

Function DateAddL(ByRef d As Date, ByVal m As Integer) As Date
d = DateAdd([Ô]D[Ô], m, d)

Dim x As Date
x = DateAdd([Ô]D[Ô], 1, d)

Do While DatePart([Ô]M[Ô], x) = DatePart([Ô]M[Ô], d)
d = x
x = DateAdd([Ô]D[Ô], 1, x)
Loop

DateAddL = d

End Function

TRTNCG 21/03/2012 09:10:33
#397786
Bem é o seguinte por exemplo: tenho um bem que custou 4.200

Valor do Bem | Taxa de depreciação Anual | Valor Depreciado
4200 | 20% ou 0.2 | ?

O cálculo é feito da seguinte forma: pega o valor inicial do bem e multiplica pela taxa anual = (4200 * 0.2) = 840,00

depois pega o 840 que é o valor que é depreciado por ano e divide por 12 que é a quantidade de mês = 840 / 12 = 70,00

depois pego o valor de 74,00 que é o valor da depreciação por 1 mês e divido por 30 dias = 70/30 = 2,33 que é o valor da depreciação por dia

por exemplo o bem foi incorporado dia 21/01/2012 até o fim do mês de janeiro, foram 10 dias de diferença então 2,333 * 10 = 23,33 = então janeiro deprecio 23,33

Já em Fevereiro foi o mês completo, ou seja deprecio 70,00 = por exemplo até 29/02 o bem teve uma depreciação total de 93,33.

Por exemplo, se por ventura se fosse dia 31 de março, hoje o bem estaria com uma depreciação de 93,33 + 70 = 163,33

Só que não estou tendo a idéia de como fazer isso
LVFIOROT 21/03/2012 13:27:45
#397844
o calculo nao pode ser por dia pq nao ficará uma resposta correta

exemplo:

o item foi cadastrado dia 2/1/2011... se for contar os dias ate o fim do mes será = 30, multipicando da o resultado de 1 mes, e nao e verdade
o item foi cadastrado dia 2/2/2011... se for contar os dias ate o fim do mes será = 27, multipicando da o resultado de 27 dias, mas falta 1 para fechar o mes...

entao, acho que deveria ser computado por mes, ou seja, se o mes foi ou nao foi completo será contabilizado com 1 mes contabil, se nao o caso fica extremamente complexo.
LVFIOROT 21/03/2012 13:37:06
#397846
ou duvida...

sua duvida é para select/store procedure???
pq vc abriu o topido para sql e nao para uma liguagem de programação(vb/vb.net...)
TRTNCG 21/03/2012 14:30:01
#397867
na verdade tenho que salva em uma tabela o cálculo feito da depreciação por mês
LVFIOROT 21/03/2012 14:45:35
#397873
bom, então voltamos ao problemas dos dias...
TRTNCG 25/03/2012 16:14:58
#398206
Bom pessoal resolvi o problema acrescentando, incrementando a dia do amigo LVFIOROT
Tópico encerrado , respostas não são mais permitidas