Long totalRegistros01 = 0L;
List sistemasExistentes = getSistemasAtivos();
List contasOrcamentarias = itemEstContaDao.listar(EfItemEstContaEfiec.class, new String[] {"contaSistemaOrcEfiec", "asc"});
ConfigSisExecFinanCsef sistemaValido = null;
boolean existeSistema = false;
//Inicializa��o do Total
BigDecimal[] total = new BigDecimal[6];
for(int i = 0; i < 6; i++)
total[i] = new BigDecimal("0");
if(contasOrcamentarias == null)
contasOrcamentarias = new ArrayList();
try{
BufferedReader in = new BufferedReader (new FileReader(arquivoGravado));
String linha="";
//Dados para TR00
String sistema = "";
String mesIni = "";
String anoIni = "";
String mesFim = "";
String anoFim = "";
String dataHoraGeracao = "";
String dataHoraCarga = "";
long registrosLidos = 0;
while ((linha=in.readLine()) != null) {
String tr = "";
try{
tr = linha.substring(0, 2);
}catch (StringIndexOutOfBoundsException siobe) {
//N�o conseguiu executar substring de 2 posi��es na linha
//ou seja, a linha tem zero ou s� um caracter.
relatarOcorrencia("TR deve ser v�lido - " + linha + " linha:" + registrosLidos,
ocorrencias,
new TipoOcorrencia(TipoOcorrencia.TR_INVALIDO),
dadosImportacao);
//this.logger.error(siobe); //N�o � necess�rio logar essa exce��o
continue;
}
if(TR_HEADER.equals(tr)){ //00
registrosLidos++;
sistema = linha.substring(2,8);
mesIni = linha.substring(8,10);
anoIni = linha.substring(10,14);
mesFim = linha.substring(14,16);
anoFim = linha.substring(16,20);
dataHoraGeracao = linha.substring(20,34);
inicioPeriodo = new SimpleDateFormat("MMyyyy").parse(mesIni + anoIni);
fimPeriodo = new SimpleDateFormat("MMyyyy").parse(mesFim + anoFim);
try{
dataHoraCarga = linha.substring(34,48);
}catch (StringIndexOutOfBoundsException siobe) {
//DataHora Carga inv�lida: O Arquivo n�o foi gerado para importa��o!!!
relatarOcorrencia("TR" + TR_HEADER + " linha:" + registrosLidos + " - Data/Hora da carga n�o informada.",
ocorrencias,
new TipoOcorrencia(TipoOcorrencia.DATA_HORA_CARGA_INEXISTENTE),
dadosImportacao);
//this.logger.error(siobe); //N�o � necess�rio logar essa exce��o
continue;
}
//Verificar se o Sistema existe
sistema = sistema.trim();
Iterator itSis = sistemasExistentes.iterator();
while(itSis.hasNext()){
ConfigSisExecFinanCsef sis = (ConfigSisExecFinanCsef) itSis.next();
if(sistema.equals(sis.getSiglaCsef())){
sistemaValido = sis;
existeSistema = true;
break;
}
}