public void TestaCadastroOS()
 {
     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);
     umaOrdemServicoBUS.Cadastrar(umaOrdemServico);
 }
        public ActionResult Create(OrdemServico os)
        {
            try
            {
                Usuario usu = (Usuario)Session["UsuarioLogado"];
                Conexao.Ativar(true);

                if (Session["FuncAgendamento"] != null)
                {
                    os.Funcionario = (Funcionario)Session["FuncAgendamento"];
                    Session["FuncAgendamento"] = null;
                }
                else
                {
                    os.Funcionario = usu.Funcionario;
                }

                if (os.Remoto)
                {
                    IOrdemServicoRemotoNegocio umaOrdemServicoRemotoBUS;
                    OrdemServicoRemoto umaOrdemServicoRemota;
                    PrepararOsRemota(os, usu, out umaOrdemServicoRemotoBUS, out umaOrdemServicoRemota);
                    umaOrdemServicoRemotoBUS.Cadastrar(umaOrdemServicoRemota);
                }
                else
                {
                    OrdemServicoBUS umaOSBUS = new OrdemServicoBUS(Conexao.Instacia, usu.Funcionario.Empresa, usu.Funcionario.Filial);
                    umaOSBUS.Cadastrar(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);
                }
            }
        }