예제 #1
0
        public static void IncluirAdiantamento(TRegistro_Viagem val,
                                               CamadaDados.Financeiro.Adiantamento.TRegistro_LanAdiantamento rAdto,
                                               BancoDados.TObjetoBanco banco)
        {
            bool       st_transacao = false;
            TCD_Viagem qtb_viagem   = new TCD_Viagem();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_viagem.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_viagem.Banco_Dados = banco;
                }
                //Gravar Adiantamento
                CamadaNegocio.Financeiro.Adiantamento.TCN_LanAdiantamento.Gravar(rAdto, qtb_viagem.Banco_Dados);
                //Gravar Viagem X Adiantamento
                TCN_AdtoViagem.Gravar(new TRegistro_AdtoViagem()
                {
                    Cd_empresa = val.Cd_empresa,
                    Id_viagem  = val.Id_viagem,
                    Id_adto    = rAdto.Id_adto
                }, qtb_viagem.Banco_Dados);
                if (st_transacao)
                {
                    qtb_viagem.Banco_Dados.Commit_Tran();
                }
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_viagem.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro incluir adiantamento viagem: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_viagem.deletarBanco_Dados();
                }
            }
        }
예제 #2
0
        public static string Excluir(TRegistro_Viagem val, BancoDados.TObjetoBanco banco)
        {
            bool       st_transacao = false;
            TCD_Viagem qtb_viagem   = new TCD_Viagem();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_viagem.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_viagem.Banco_Dados = banco;
                }
                val.St_viagem = "C";
                qtb_viagem.Gravar(val);
                if (st_transacao)
                {
                    qtb_viagem.Banco_Dados.Commit_Tran();
                }
                return(val.Id_viagemstr);
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_viagem.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro excluir Viagem " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_viagem.deletarBanco_Dados();
                }
            }
        }
예제 #3
0
        public static string Gravar(TRegistro_Viagem val, BancoDados.TObjetoBanco banco)
        {
            bool       st_transacao = false;
            TCD_Viagem qtb_viagem   = new TCD_Viagem();

            try
            {
                if (st_transacao)
                {
                    st_transacao = qtb_viagem.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_viagem.Banco_Dados = banco;
                }
                val.Id_viagemstr = CamadaDados.TDataQuery.getPubVariavel(qtb_viagem.Gravar(val), "@P_ID_VIAGEM");
                //Rota
                val.lRotaDel.ForEach(p =>
                                     TCN_Viagem_X_Rota.Excluir(new TRegistro_Viagem_X_Rota()
                {
                    Cd_empresa = val.Cd_empresa,
                    Id_viagem  = val.Id_viagem,
                    Id_rota    = p.Id_rota
                }, qtb_viagem.Banco_Dados));
                val.lRota.ForEach(p =>
                                  TCN_Viagem_X_Rota.Gravar(new TRegistro_Viagem_X_Rota()
                {
                    Cd_empresa = val.Cd_empresa,
                    Id_viagem  = val.Id_viagem,
                    Id_rota    = p.Id_rota
                }, qtb_viagem.Banco_Dados));
                //Frete
                val.lFreteDel.ForEach(p =>
                                      TCN_Viagem_X_Frete.Excluir(new TRegistro_Viagem_X_Frete()
                {
                    Cd_empresa    = val.Cd_empresa,
                    Id_viagem     = val.Id_viagem,
                    Nr_lanctoCTRC = p.Nr_lanctoCTRC
                }, qtb_viagem.Banco_Dados));
                val.lFrete.ForEach(p =>
                                   TCN_Viagem_X_Frete.Gravar(new TRegistro_Viagem_X_Frete()
                {
                    Cd_empresa    = val.Cd_empresa,
                    Id_viagem     = val.Id_viagem,
                    Nr_lanctoCTRC = p.Nr_lanctoCTRC
                }, qtb_viagem.Banco_Dados));
                //Despesas
                val.lDespesasDel.ForEach(p => TCN_DespesasViagem.Excluir(p, qtb_viagem.Banco_Dados));
                val.lDespesas.ForEach(p =>
                {
                    p.Cd_empresa = val.Cd_empresa;
                    p.Id_viagem  = val.Id_viagem;
                    TCN_DespesasViagem.Gravar(p, qtb_viagem.Banco_Dados);
                });
                if (st_transacao)
                {
                    qtb_viagem.Banco_Dados.Commit_Tran();
                }
                return(val.Id_viagemstr);
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_viagem.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro gravar Viagem: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_viagem.deletarBanco_Dados();
                }
            }
        }