Before e After / Datas

2 respostas
E

Pessoal,
Boa tarde

Estou com um problema ilógico. Tenho o seguinte if:

//Verifica se a data foi cumprida com atraso ou se foi em adiantamento if (iniR.after(iniP)){ System.out.println("REALIZADO DPIOS DO PREVISTO! ATRASO! "); System.out.println("ID: " + rs.getString("idProcessos") + " INI R: " + iniR); System.out.println("ID: " + rs.getString("idProcessos") + " INI P: " + iniP); } else if (iniR.before(iniP)){ System.out.println("ENTREI NO ELSE IF / BEFORE, ID: " + rs.getString("idProcessos")); } else { System.out.println("ENTREI NO ELSE DO AFTER, ID: " + rs.getString("idProcessos")); }

E tenhos os dados:

  1. iniR = 16/11/2009 iniP = 28/10/2009
  2. iniR = 17/09/2009 iniP = 04/09/2009

O problema é que tanto o dado 1 quando o dado 2 deveria entrar no primeiro if, mas o dado 1 entra no if do BEFORE e o dado 2 entra no if do AFTER. Segue os dados da console:

NAO SOU IGUAL! CONFERIR! ID: 1
ENTREI NO ELSE IF / BEFORE, ID: 1
NAO SOU IGUAL! CONFERIR! ID: 2
REALIZADO DPIOS DO PREVISTO! ATRASO!
ID: 2 INI R: Fri Jan 01 00:00:00 BRT 17
ID: 2 INI P: Tue Jan 01 00:00:00 BRT 4

Na verdade os dado 1 e o dado 2 deveriam entrar no primeiro if… alguem pode explicar isso?

2 Respostas

Guilherme_Gomes

Faz um debug aí, pois acho que vc está enganado quanto aos valores qe estão chegando em iniR e iniP.
Você pode confirmar isso vendo que vc disse:

  1. iniR = 16/11/2009 iniP = 28/10/2009
  2. iniR = 17/09/2009 iniP = 04/09/2009

E na saída:

NAO SOU IGUAL! CONFERIR! ID: 1
ENTREI NO ELSE IF / BEFORE, ID: 1
NAO SOU IGUAL! CONFERIR! ID: 2
REALIZADO DPIOS DO PREVISTO! ATRASO!
ID: 2 INI R: Fri Jan 01 00:00:00 BRT 17
ID: 2 INI P: Tue Jan 01 00:00:00 BRT 4

As datas do dado 2 estão como 17/01/01 e 04/01/01
Tem algo errado antes de chegar nesse ponto

E

Guilherme Gomes:
Faz um debug aí, pois acho que vc está enganado quanto aos valores qe estão chegando em iniR e iniP.
Você pode confirmar isso vendo que vc disse:

  1. iniR = 16/11/2009 iniP = 28/10/2009
  2. iniR = 17/09/2009 iniP = 04/09/2009

E na saída:

NAO SOU IGUAL! CONFERIR! ID: 1
ENTREI NO ELSE IF / BEFORE, ID: 1
NAO SOU IGUAL! CONFERIR! ID: 2
REALIZADO DPIOS DO PREVISTO! ATRASO!
ID: 2 INI R: Fri Jan 01 00:00:00 BRT 17
ID: 2 INI P: Tue Jan 01 00:00:00 BRT 4

As datas do dado 2 estão como 17/01/01 e 04/01/01
Tem algo errado antes de chegar nesse ponto

Realmente!!! Obrigada

Resolvido!

Criado 27 de janeiro de 2011
Ultima resposta 27 de jan. de 2011
Respostas 2
Participantes 2