public void TestaEdicaoOS()
 {
     this.CriaInstancia();
     Empresa emp = new Empresa();
     emp.Codigo = "99";
     Filial fil = new Filial();
     fil.Codigo = "99";
     INegocio<OrdemServico, int> umaOrdemServicoBUS = new OrdemServicoBUS(Conexao.Instacia, emp, fil);
     OrdemServico umaOrdemServico;
     this.PreencherObjeto(out umaOrdemServico);
     umaOrdemServico.Codigo = 54;
     umaOrdemServicoBUS.Editar(umaOrdemServico);
 }
        public ActionResult Edit(int id, OrdemServico os)
        {
            try
            {
                Conexao.Ativar(true);
                Usuario usu = (Usuario)Session["UsuarioLogado"];
                os.Codigo = id;
                os.Funcionario = usu.Funcionario;
                if (os.Remoto)
                {
                    IOrdemServicoRemotoNegocio umaOrdemServicoRemotoBUS;
                    OrdemServicoRemoto umaOrdemServicoRemota;
                    PrepararOsRemota(os, usu, out umaOrdemServicoRemotoBUS, out umaOrdemServicoRemota);
                    umaOrdemServicoRemotoBUS.Editar(umaOrdemServicoRemota);
                }
                else
                {
                    OrdemServicoBUS umaOSBUS = new OrdemServicoBUS(Conexao.Instacia, usu.Funcionario.Empresa, usu.Funcionario.Filial);
                    umaOSBUS.Editar(os);
                }
                AtualizarOS(usu, os.Data);
                return RedirectToAction("Index", new { st = "ok" });

            }
            catch (Exception ex)
            {
                return RedirectToAction("Index", new { st = "er" });
            }
            finally
            {
                if (Conexao.Instacia.State == ConnectionState.Open)
                {
                    Conexao.Ativar(false);
                }
            }
        }