Erro na function UltimoDiaDoMes

Destinado ao auxílio e Troca de informações sobre a ferramenta Xmaker
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1236: count(): Parameter must be an array or an object that implements Countable
Leão
Mensagens: 149
Registrado em: Junho 24th, 2011, 10:06 am
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1236: count(): Parameter must be an array or an object that implements Countable

Erro na function UltimoDiaDoMes

Mensagempor Leão » Julho 2nd, 2013, 10:19 am

Olá, estar rotina, que retorna o último dia do mês, existe um erro que não estou conseguindo
identificar, solicito ao suporte que analise-a.
Exemplo:
informo a data 01/09/2013
retorna vazio

informo a data 02/07/2013
retorna "/07/" is not valid integer value.

e outras data também.

uso assim:
XDateEdit2.Text:=UltimoDiaDoMes(XDateEdit1.DateText)+'/'+Mes(XDateEdit1.DateValue)+'/'+Ano(XDateEdit1.DateValue);



function UltimoDiaDoMes( MesAno: string ): string;
var
sMes: string;
sAno: string;
begin
sMes := Copy( MesAno, 1, 2 );
sAno := Copy( MesAno, 3, 4 );
if Pos( sMes, '01 03 05 07 08 10 12' ) > 0 then
UltimoDiaDoMes := '31'
else
if sMes <> '02' then
UltimoDiaDoMes := '30'
else
// if ( StrToInt( sAno ) mod 4 ) = 0 then
if (sMes = '02') and (StrtoInt(sAno) mod 4 = 0) then
UltimoDiaDoMes := '29'
else
UltimoDiaDoMes := '28';
end;


Obrigado,
Leão

Suporte
Site Admin
Mensagens: 145
Registrado em: Dezembro 20th, 2010, 10:05 pm
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1236: count(): Parameter must be an array or an object that implements Countable

Re: Erro na function UltimoDiaDoMes

Mensagempor Suporte » Julho 3rd, 2013, 12:12 am

Olá,

O erro esta no valor passado para a função, veja a forma correta seria como no exemplo abaixo:

Ultimo_dia := UltimoDiadoMes(Mes(DataAtual) + Ano(DataAtual));

Ou seja, o valor que deve ir para a função é uma string com apenas o mês e o ano, não a data com formatação.

Esperamos estar auxiliando, conte sempre conosco!
Att,

Suporte - suporte@xmaker.com.br
Equipe Xmaker
_______________
http://www.xmaker.com.br

Leão
Mensagens: 149
Registrado em: Junho 24th, 2011, 10:06 am
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1236: count(): Parameter must be an array or an object that implements Countable

Re: Erro na function UltimoDiaDoMes

Mensagempor Leão » Julho 4th, 2013, 11:22 pm

Olá Suporte,

testei a forma acima, retorna apenas o dia do mês e errado:

var
data1:string;
begin
XDateEdit2.Text:=UltimoDiaDoMes(Mes(XDateEdit1.DateValue)+Ano(XDateEdit1.DateValue));

data1 := UltimoDiaDoMes(Mes(DataAtual) + Ano(DataAtual));

ShowMessage('mes e ano...: '+data1);

informe o dia 01/06/2013
retornará 31

Obrigado e aguardo
Leão

adassoft
Mensagens: 51
Registrado em: Outubro 14th, 2011, 1:09 am
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1236: count(): Parameter must be an array or an object that implements Countable

Re: Erro na function UltimoDiaDoMes

Mensagempor adassoft » Agosto 3rd, 2013, 4:46 am

Eu uso o seguinte:
Exemplo: Edit1.Text := IntToStr(DaysInAMonth(YearOf(DATE), MonthOf(DATE)));

No exemplo o edit irá receber o último dia do mês tomando como base a data do computador.

Leão
Mensagens: 149
Registrado em: Junho 24th, 2011, 10:06 am
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1236: count(): Parameter must be an array or an object that implements Countable

Re: Erro na function UltimoDiaDoMes

Mensagempor Leão » Novembro 23rd, 2013, 11:25 am

Cara, onde você encontrou essa função DaysInAMonth ?

Teste e ocorreu erro nela...

Leão

Leão
Mensagens: 149
Registrado em: Junho 24th, 2011, 10:06 am
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1236: count(): Parameter must be an array or an object that implements Countable

Re: Erro na function UltimoDiaDoMes

Mensagempor Leão » Novembro 23rd, 2013, 11:28 am

encontrei a resposta tem que informar na uses DateUtils

obrigado,
Leão


[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1236: count(): Parameter must be an array or an object that implements Countable
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1236: count(): Parameter must be an array or an object that implements Countable

Voltar para “Xmaker”

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 76 visitantes