AJUDE COM WHILE...
No Crystal reports preciso fazer um relatório que conte somente os dias úteis, sendo assim fiz essa função:
Local NumberVar x := 0;
While ({CO17T1.CO17DTLIB}) <= Date({CO23T.CO23DTEMIS}) Do (
({CO17T1.CO17DTLIB}) + 1;
If (DayOfWeek ({CO17T1.CO17DTLIB})) = 1 Or (DayOfWeek ({CO17T1.CO17DTLIB})) = 7 Then
x := x + 1
);
x
Porém ele me da essa mensagem:
A loop was evaluated more than the maximum number of times allowed
Me ajuda, por favor... Preciso deste relatório pronto até sexta-feira. =/
Local NumberVar x := 0;
While ({CO17T1.CO17DTLIB}) <= Date({CO23T.CO23DTEMIS}) Do (
({CO17T1.CO17DTLIB}) + 1;
If (DayOfWeek ({CO17T1.CO17DTLIB})) = 1 Or (DayOfWeek ({CO17T1.CO17DTLIB})) = 7 Then
x := x + 1
);
x
Porém ele me da essa mensagem:
A loop was evaluated more than the maximum number of times allowed
Me ajuda, por favor... Preciso deste relatório pronto até sexta-feira. =/
Eu particularmente nunca fiz isso, mas veja os exemplos.
http://www.maximumimpactsolutions.co.uk/blog/comments.asp?bd=114
http://stackoverflow.com/questions/9368993/regarding-calculating-business-days-holidays
http://www.maximumimpactsolutions.co.uk/blog/comments.asp?bd=114
http://stackoverflow.com/questions/9368993/regarding-calculating-business-days-holidays
7 e 1 são respectivamente sabado e domingo, até ai esta correto seu erro esta em comparar como igual, pois na realidade deveria fazer a contagem quando fosse diferente, ex
If dia<>1 or dia<>7 then
c=c+1
End if
o código acima ira contar apenas os dias uteis.
If dia<>1 or dia<>7 then
c=c+1
End if
o código acima ira contar apenas os dias uteis.
Tópico encerrado , respostas não são mais permitidas