private void bgRecuperarVisitantes_DoWork(object sender, DoWorkEventArgs e) { if (listaDatasRelevantes.Itens.Count == 0) { DAdicionarDataRelevante métodoAdicionarDataRelevante = new DAdicionarDataRelevante(AdicionarDatasRelevantes); DataRelevante[] datas; foreach (Setor setor in setores) { datas = DataRelevante.ObterPróximasDatasRelevantes(setor, 0); listaDatasRelevantes.BeginInvoke(métodoAdicionarDataRelevante, new object[] { datas }); } datas = DataRelevante.ObterPróximasDatasRelevantes(Setor.ObterSetor(SetorSistema.NãoEspecificado), 0); listaDatasRelevantes.BeginInvoke(métodoAdicionarDataRelevante, new object[] { datas }); } e.Result = Visita.ObterVisitasRelevantes(Funcionário.FuncionárioAtual, setores); }
private void Carregar() { try { ArrayList itens = new ArrayList(); DCriEntPesIte métodoCriarEntidadePessoaItem; lock (this) { AlterarCursor(Cursors.AppStarting); listaDatasRelevantes.Itens.Clear(); métodoCriarEntidadePessoaItem = new DCriEntPesIte(CriarEntidadePessoaItem); DAdicionarDataRelevante métodoAdicionarDataRelevante = new DAdicionarDataRelevante(AdicionarDatasRelevantes); DataRelevante[] datas = DataRelevante.ObterPróximasDatasRelevantes(null, QuantidadeDeDiasParaObtençãoDeDatasRelevantes); CarregaTelefones(datas); object resultado = listaDatasRelevantes.Invoke(métodoAdicionarDataRelevante, new object[] { datas }); } AlterarCursor(Cursors.Default); } catch (Exception e) { AlterarCursor(Cursors.No); MessageBox.Show("Ocorreu um erro enquanto carregava clientes provenientes de setores específicos." + "\n\n" + e.ToString(), "Erro carregando dados", MessageBoxButtons.OK, MessageBoxIcon.Error); Acesso.Comum.Usuários.UsuárioAtual.RegistrarErro(e); } }