voltei para olhar esta dia abaixo e.... Pelo que pude notar, a dateutil.pas é da RxLib ??? Estou Certo ??? Se for, infelismente não poderei utilizar esta funcionalidade.
----- Original Message ----- From: "Prisma Sistemas - Moacir" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, December 01, 2004 11:59 AM Subject: Re: [delphi-br] Re: DIAS ÚTEIS > > Rogerio/Moita, > > Exato, a função retorna TRUE se for um feriado. > > Uso esta outra funçao que deve dar um bom empurrão no que vc´s querem > fazer. > > {Colocar dateutil no USES } > > Function QtdDiasUteis(nMes : Integer=0; nAno: Integer=0): Integer; > Function BoM(dData : TDateTime):TDateTime; > begin > Result := dData - ExtractDay(dData) + 1; > end; > Function EoM(dData : TDateTime):TDateTime; > begin > Result := BoM(IncMonth(dData,1))-1; > end; > var > DataIni, > DataFim : TDateTime; > Begin > Result:=0; > Try > DataIni:=StrToDateFmt('dd/mm/yyyy','01/'+StrZero(nMes,2)+'/'+StrZero(nAno,4) ); > except > Exit; > end; > DataFim:=Eom(DataIni); > While DataIni<=DataFim do > Begin > If (DayOfWeek(DataIni) in [2,3,4,5,6]) and > (Not Ve_Feriado(DataIni)) then > Inc(Result); > DataIni:=DataIni+1; > End; > End; > > > [ ]´s > Moacir > > > ----- Original Message ----- > From: "Rogério" <[EMAIL PROTECTED]> > To: <[EMAIL PROTECTED]> > Sent: Wednesday, December 01, 2004 11:32 AM > Subject: Re: [delphi-br] Re: DIAS ÚTEIS > > > > > > Acho que estamos quase chegando lá... > > Só falta eu conseguir agora, fazer a função: > > > > Acha_a_Data_Dia_Util('01/10/2004',30) > > Que Retornará: 17/11/2004 > > > > Se alguém conseguir tb... > > [ ]'s > > > > ----- Original Message ----- > > From: "Prisma Sistemas - Moacir" <[EMAIL PROTECTED]> > > To: <[EMAIL PROTECTED]> > > Sent: Wednesday, December 01, 2004 10:50 AM > > Subject: Re: [delphi-br] Re: DIAS ÚTEIS > > > > > >> > >> Paulo, > >> > >> Tenho usado esta função a um bom tempo com resultados satisfatórios: > >> > >> Function Ve_Feriado(dData : TDateTime=0) : Boolean; > >> var > >> nMes : Integer; > >> y,m,d:Word; > >> G,I,J,C,H,L: Integer; > >> E:TDateTime; > >> dSexta : TDateTime; > >> dCarnaval : TDateTime; > >> ano : integer; > >> const > >> FERIADOSFIXOS : Array [1..12] of String =('01~', // Jan > >> '', // Fev > >> '', // Mar > >> '21~', // Abr > >> '01~', // Mai > >> '', // Jun > >> '', // Jul > >> '', // Ago > >> '07~', // Set > >> '12~', // Out > >> '02~15~', // Nov > >> '25~'); // Dez > >> > >> Begin > >> If dData=0 then > >> Result:=False > >> else > >> Begin > >> Try > >> nMes :=StrToInt(FormatDateTime('mm',dData)); > >> except > >> nMes :=0; > >> end; > >> If (nMes<1) or (nMes>12) then > >> Result:=False > >> else > >> Result:=Pos(FormatDateTime('dd',dData),FERIADOSFIXOS[nMes] )<>0; > >> end; > >> //---- Calcula o Feriado de Carnaval e Sexta-Feira Santa > >> DecodeDate(dData, Y, M, D); > >> ano := y; > >> G := ano mod 19; > >> C := ano div 100; > >> H := (C-C div 4-(8*C+13) div 25 + 19*G+15)mod 30; > >> I := H-(H div 28)*(1-(H div 28)*(29 div(H+1))*((21-G)div 11)); > >> J := (ano + ano div 4 +I+2-C+C div 4) mod 7; > >> L := I-J; > >> m := 3+(L+40) div 44; > >> d := L+28-31*(m div 4); > >> //y := ano; > >> E := EncodeDate(y,m,d); > >> While DayOfWeek(E)>1 do > >> E := E+1; > >> //--- Sexta-feira Santa > >> dSexta := E - 2; > >> //--- Carnaval > >> dCarnaval := E - 47; > >> If (dData = dSexta) Or (dData = dCarnaval) then > >> Result := True; > >> End; > >> > >> > >> [ ]´s > >> Moacir > >> > >> > >> ----- Original Message ----- > >> From: "drummondfilho" <[EMAIL PROTECTED]> > >> To: <[EMAIL PROTECTED]> > >> Sent: Wednesday, December 01, 2004 8:59 AM > >> Subject: [delphi-br] Re: DIAS ÚTEIS > >> > >> > >> > >> > >> Gostaria de ajudar a montar o algoritmo se você puder me passar a > >> tabela de feriados ficaria muito feliz em poder ajudar. > >> > >> []'s > >> Paulo Drummond Filho > >> [EMAIL PROTECTED] > >> > >> > >> > >> > >> > >> -- > >> <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> > >> > >> Para ver as mensagens antigas, acesse: > >> http://br.groups.yahoo.com/group/delphi-br/messages > >> > >> Para falar com o moderador, envie um e-mail para: > >> [EMAIL PROTECTED] ou [EMAIL PROTECTED] > >> > >> Links do Yahoo! Grupos > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> -- > >> No virus found in this incoming message. > >> Checked by AVG Anti-Virus. > >> Version: 7.0.289 / Virus Database: 265.4.4 - Release Date: 30/11/2004 > >> > >> > >> > >> > >> -- > >> No virus found in this outgoing message. > >> Checked by AVG Anti-Virus. > >> Version: 7.0.289 / Virus Database: 265.4.4 - Release Date: 30/11/2004 > >> > >> > >> > >> -- > >> <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> > >> > >> Para ver as mensagens antigas, acesse: > >> http://br.groups.yahoo.com/group/delphi-br/messages > >> > >> Para falar com o moderador, envie um e-mail para: > >> [EMAIL PROTECTED] ou [EMAIL PROTECTED] > >> > >> Links do Yahoo! Grupos > >> > >> > >> > >> > >> > >> > >> > >> > > > > > > > > -- > > <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> > > > > Para ver as mensagens antigas, acesse: > > http://br.groups.yahoo.com/group/delphi-br/messages > > > > Para falar com o moderador, envie um e-mail para: > > [EMAIL PROTECTED] ou [EMAIL PROTECTED] > > > > Links do Yahoo! Grupos > > > > > > > > > > > > > > > > > > > > > > > > -- > > No virus found in this incoming message. > > Checked by AVG Anti-Virus. > > Version: 7.0.289 / Virus Database: 265.4.4 - Release Date: 30/11/2004 > > > > > > > > -- > No virus found in this outgoing message. > Checked by AVG Anti-Virus. > Version: 7.0.289 / Virus Database: 265.4.4 - Release Date: 30/11/2004 > > > > -- > <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> > > Para ver as mensagens antigas, acesse: > http://br.groups.yahoo.com/group/delphi-br/messages > > Para falar com o moderador, envie um e-mail para: > [EMAIL PROTECTED] ou [EMAIL PROTECTED] > > Links do Yahoo! Grupos > > > > > > > > -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html