var importador = mapperFactory.createMapperMult(["Importador", "ProcessarNfe"]);
var i = 0;
var obj = message.get("obj");

try {
    
    var checkin = importador.selectOne("listarEstNfSaiCheckInEntrada",obj);
    if(checkin){
        throw {code: 599, message: 'Nota de Saida com checkin realizado no destino, Exlusão Não permitida.'};
    }
    var cdNf = importador.selectOne("listarEstNfSaiCdNf",obj);
    
    if(cdNf){
	    importador.insert("excluirEstNfSai",obj);
	    
	    var o = {};
    	o.cdFilial = obj.get("cdFilial");
    	o.cdFornCli = obj.get("cdFornCli");
    	o.nrNf = obj.get("nfNf");
    	o.serie = obj.get("serie");
    	o.dtEmiNf = obj.get("dtEmiNf");
    	
    	var rs = importador.selectOne("cdControleExiste", o);
    	
    	if(rs){
    	    importador.update("alterarStatusImportacao", {
                                            "stsImport": 3,
                                            "cdControle": rs.get("CD_CONTROLE")
                                        });
    	}
    	importador.commit();
    	msg = 'Nota ' + obj.get("nfNf") + ' excluida com sucesso ';
    }else{
        throw {code: 599, message: 'Nota de Saida ' + obj.get("nfNf") + ' nao encontrada para exclusao.'};
    }
	
}catch(err) {
	java.lang.System.out.println(err);
	importador.rollback();
	if(err.code){
		throw JSON.stringify(err);
	}
	throw "{erro:true,  message:'" + escape(err)+"', log: " + JSON.stringify(log) + "}";
}
