/// <summary>
        /// Carrega todos os clientes em memória.
        /// </summary>
        /// <returns></returns>
        public ActionResult CarregarListaClientes()
        {
            #region MONTA PAGINA COM GRID DE CLIENTES A SEREM ALTERADOS

            Task<JsonResult> t = Task.Factory.StartNew(() =>
            {
                try
                {
                    // na primeira vez, Lista todos, na CodSubRota, verifica se a lista ja esta montada em memoria e usa essa lista
                    DateTime antes = DateTime.Now;
                    if (clientes == null)
                    {
                        using (var clientesSapiensBLL = new ClienteSapiensBLL())
                        {
                            var codFilial = Convert.ToInt32(Session["CodigoFilial"]);

                            codFilial = codFilial == 0 ? 1 : codFilial; // se for zero , use 1;

                            // clientes = clientesSapiensBLL.ListarPorFilial(codFilial);
                            // listar todos

                            // clientes = clientesSapiensBLL.ListarTodos();
                            clientes = clientesSapiensBLL.ListarClientesSapiens();
                        }
                    }
                    DateTime agora = DateTime.Now;

                    return Json(String.Format("Clientes Carregados em {0} segundos.", (agora - antes).TotalSeconds), JsonRequestBehavior.DenyGet);
                }

                catch (Exception ex)
                {
                    return Json("Erro ao tentar carregar os clientes: " + ex.Message, JsonRequestBehavior.DenyGet);
                }
            });

            return t.Result;

            #endregion
        }