ADICIONAR FERIADOS A FOLHA DE PONTO

KURTGU 13/08/2015 20:03:42
#449953
Gostaria de uma ajuda ou melhor ideia de como adicionar pontos facultativos e feriados nacionais e em sao paulo em uma folha de ponto...
TUNUSAT 14/08/2015 07:57:38
#449965
KURTGU,

Você pode adicionar uma tabela ao banco de dados indicando quais são os feriados FIXOS e ao montar o relatório acima lançar os nomes dos feriados a lista.
Mas os feriados móveis a conversa muda, pois é preciso calcula-los. Tem também os feriados municipais e estaduais... devem ser colocados?

===============================================
Feriados Móveis
https://aprendervb.wordpress.com/2011/09/19/feriados-moveis-2/
Posted on 19 de Setembro de 2011 by aprendervb

Deixo aqui uma função que devolve os dias dos feriados móveis consoante o ano…
Function FeriadoMovel(ByVal Ano As Long, ByRef Carnaval As Date, ByRef SextaFeiraSanta As Date, ByRef Pascoa As Date, ByRef CorpusChristi As Date) As Boolean

Dim a, b, c, d, e, f, g, h, i, k, l, m, p, q As Integer
Dim feriado(3) As Date

FeriadoMovel = False

a = Ano Mod 19
b = Int(Ano / 100)
c = Ano Mod 100
d = Int(b / 4)
e = b Mod 4
f = Int((b + 8) / 25)
g = Int((b – f + 1) / 3)
h = (19 * a + b – d – g + 15) Mod 30
i = Int(c / 4)
k = c Mod 4
l = (32 + 2 * e + 2 * i – h – k) Mod 7
m = Int((a + 11 * h + 22 * l) / 451)
p = Int((h + l – 7 * m + 114) / 31)
q = (h + l – 7 * m + 114) Mod 31

‘ *** A Páscoa será no dia Q + 1, do mês P ***
feriado(0) = CDate((q + 1) & “-” & p & “-” & Ano)

‘ *** Carnaval: 47 dias antes da Páscoa ***

feriado(1) = feriado(0).AddDays(-47)
‘ *** Sexta Feira Santa (Paixão): 2 dias antes da Páscoa ***
feriado(2) = feriado(0).AddDays(-2)
‘ *** Corpus Christi: 60 dias após a Páscoa ***
feriado(3) = feriado(0).AddDays(60)
Carnaval = feriado(1)
SextaFeiraSanta = feriado(2)
Pascoa = feriado(0)
CorpusChristi = feriado(3)

FeriadoMovel = True
Exit Function

errHandle:
Debug.Print(Err.Number & vbTab & Err.Description)
FeriadoMovel = False
End Function

===============================================

Veja também:

Apesar de ser em Portugal, pode ser adaptado para o Brasil:
===============================================
[VB.NET] Cálculo dos Feriados (Portugal)
http://www.portugal-a-programar.pt/topic/30994-vbnet-calculo-dos-feriados-portugal/
===============================================
Cálculo de data para férias
http://www.portugal-a-programar.pt/topic/52052-calculo-de-data-para-ferias/
===============================================
Calculo de Feriados Móveis
http://www.vbweb.com.br/dicas_visual.asp?Codigo=2033
Postada em 26/10/2003 por Riciê
===============================================

[][ô]s,
Tunusat.
KURTGU 14/08/2015 11:23:38
#449976
Tunusat achei muito complicado entao fiz da seguinte forma, coloquei uma textbox e um button a pessoa digita o dia e pronto ele marca como feriado, agora estou tentando fazer da seguinte forma ela coloca 5 ele acha o dia 5 na lista e coloca como feriado, agora estou tentando fazer desta forma ela colocar 5,6,7,8 separado por virgula e ele marcar como feriado todos os dias mais nao estou conseguindo...

Codigo que estou usando para localizar e modifcar o subitem...
Dim DiaFeriado As String = TextBox1.Text
Dim AcharItem As ListViewItem = ListView1.Items.Cast(Of ListViewItem).FirstOrDefault(Function(i) i.Text = DiaFeriado)
If AcharItem IsNot Nothing Then
AcharItem.SubItems(1).Text = ([Ô]FERIADO[Ô])
End If




KURTGU 14/08/2015 11:50:00
#449980
up....













KURTGU 14/08/2015 17:18:35
#449998
Resolvido...

Tópico encerrado , respostas não são mais permitidas