Beispiel #1
0
        public static string Excluir(TRegistro_GuardaVolume val, BancoDados.TObjetoBanco banco)
        {
            bool             st_transacao = false;
            TCD_GuardaVolume qtb_vol      = new TCD_GuardaVolume();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_vol.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_vol.Banco_Dados = banco;
                }
                try
                {
                    //Excluir
                    qtb_vol.Excluir(val);
                }
                catch
                {
                    //Cancelar
                    val.St_registro = "C";
                    qtb_vol.Gravar(val);
                }
                if (st_transacao)
                {
                    qtb_vol.Banco_Dados.Commit_Tran();
                }
                return("OK");
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_vol.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro excluir guarda volume: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_vol.deletarBanco_Dados();
                }
            }
        }
Beispiel #2
0
        public static string Gravar(TRegistro_GuardaVolume val, BancoDados.TObjetoBanco banco)
        {
            bool             st_transacao = false;
            TCD_GuardaVolume qtb_vol      = new TCD_GuardaVolume();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_vol.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_vol.Banco_Dados = banco;
                }
                val.Id_guardavolstr = CamadaDados.TDataQuery.getPubVariavel(qtb_vol.Gravar(val), "@P_ID_GUARDAVOL");
                //Excluir Itens
                val.lItensGuardaVolumeDel.ForEach(p => TCN_ItensGuardaVolume.Excluir(p, qtb_vol.Banco_Dados));
                //Gravar Itens
                val.lItensGuardaVolume.ForEach(p =>
                {
                    p.Cd_empresa      = val.Cd_empresa;
                    p.Id_guardavolstr = val.Id_guardavolstr;
                    TCN_ItensGuardaVolume.Gravar(p, qtb_vol.Banco_Dados);
                });
                if (st_transacao)
                {
                    qtb_vol.Banco_Dados.Commit_Tran();
                }
                return(val.Id_mudancastr);
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_vol.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro gravar guarda volume: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_vol.deletarBanco_Dados();
                }
            }
        }
Beispiel #3
0
        public static string RetirarItens(TRegistro_GuardaVolume val, BancoDados.TObjetoBanco banco)
        {
            bool             st_transacao = false;
            TCD_GuardaVolume qtb_vol      = new TCD_GuardaVolume();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_vol.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_vol.Banco_Dados = banco;
                }
                //Excluir Retirada
                val.lRetGuardaVolDel.ForEach(p => TCN_RetGuardaVol.Excluir(p, qtb_vol.Banco_Dados));
                //Gravar Retirada
                val.lRetGuardaVol.ForEach(p =>
                {
                    p.Cd_empresa      = val.Cd_empresa;
                    p.Id_guardavolstr = val.Id_guardavolstr;
                    TCN_RetGuardaVol.Gravar(p, qtb_vol.Banco_Dados);
                });
                //Verificar se guarda volume tem saldo a retirar finalizado.
                if (new CamadaDados.Mudanca.TCD_GuardaVolume(qtb_vol.Banco_Dados).BuscarEscalar(
                        new TpBusca[]
                {
                    new TpBusca()
                    {
                        vNM_Campo = "a.cd_empresa",
                        vOperador = "=",
                        vVL_Busca = "'" + val.Cd_empresa.Trim() + "'"
                    },
                    new TpBusca()
                    {
                        vNM_Campo = "a.id_guardavol",
                        vOperador = "=",
                        vVL_Busca = val.Id_guardavolstr
                    },
                    new TpBusca()
                    {
                        vNM_Campo = string.Empty,
                        vOperador = "not exists",
                        vVL_Busca = "(select 1 from VTB_MUD_ITENSGUARDAVOLUME x " +
                                    "where x.cd_empresa = a.cd_empresa " +
                                    "and x.id_guardavol = a.id_guardavol " +
                                    "and isnull(x.quantidade - x.qtd_retirada, 0) > 0 " +
                                    "and isnull(x.st_registro, 'A') <> 'C' )"
                    }
                }, "1") != null)
                {
                    val.St_registro = "F";
                    qtb_vol.Gravar(val);
                }
                if (st_transacao)
                {
                    qtb_vol.Banco_Dados.Commit_Tran();
                }
                return(val.Id_mudancastr);
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_vol.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro Retirar guarda volume: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_vol.deletarBanco_Dados();
                }
            }
        }