コード例 #1
0
        public static string Gravar(TRegistro_CadFatDireto val, BancoDados.TObjetoBanco banco)
        {
            bool             st_transacao = false;
            TCD_CadFatDireto qtb_orc      = new TCD_CadFatDireto();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_orc.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_orc.Banco_Dados = banco;
                }
                val.Id_faturamentostr = CamadaDados.TDataQuery.getPubVariavel(qtb_orc.Gravar(val), "@P_ID_FATURAMENTO");
                val.lFicha.Where(p => p.st_agregar).ToList().ForEach(p =>
                {
                    TRegistro_CadFatDireto_Item item = new TRegistro_CadFatDireto_Item();
                    item.Id_orcamentostr             = p.Id_orcamentostr;
                    item.Id_projetostr  = p.Id_projetostr;
                    item.Nr_versaostr   = p.Nr_versaostr;
                    item.Id_registro    = p.Id_registro;
                    item.quantidade     = p.quantidade_agregar;
                    item.id_faturamento = Convert.ToDecimal(val.Id_faturamento);
                    item.id_ficha       = p.Id_fichastr;
                    item.cd_empresa     = p.Cd_empresa;
                    TCN_CadFatDiretoItem.Gravar(item, qtb_orc.Banco_Dados);
                });


                if (st_transacao)
                {
                    qtb_orc.Banco_Dados.Commit_Tran();
                }
                return(val.Id_faturamentostr);
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_orc.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro gravar orçamento: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_orc.deletarBanco_Dados();
                }
            }
        }
コード例 #2
0
        public static string Excluir(TRegistro_Orcamento val, BancoDados.TObjetoBanco banco)
        {
            bool             st_transacao = false;
            TCD_CadFatDireto qtb_orc      = new TCD_CadFatDireto();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_orc.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_orc.Banco_Dados = banco;
                }
                //Excluir despesas
                val.lDespesas.ForEach(p => TCN_Despesas.Excluir(p, qtb_orc.Banco_Dados));
                val.lDespesasDel.ForEach(p => TCN_Despesas.Excluir(p, qtb_orc.Banco_Dados));
                //Excluir Projetos
                val.lOrcProjeto.ForEach(p => TCN_OrcProjeto.Excluir(p, qtb_orc.Banco_Dados));
                val.lOrcProjetoDel.ForEach(p => TCN_OrcProjeto.Excluir(p, qtb_orc.Banco_Dados));
                //Excluir Orcamento
                // qtb_orc.Excluir(val);
                if (st_transacao)
                {
                    qtb_orc.Banco_Dados.Commit_Tran();
                }
                return("OK");
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_orc.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro excluir orçamento: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_orc.deletarBanco_Dados();
                }
            }
        }