Пример #1
0
        public static string Gravar(TRegistro_EntregaPedido val, TObjetoBanco banco)
        {
            bool st_transacao    = false;
            TCD_EntregaPedido cd = new TCD_EntregaPedido();

            try
            {
                if (banco == null)
                {
                    st_transacao = cd.CriarBanco_Dados(true);
                }
                else
                {
                    cd.Banco_Dados = banco;
                }

                val.Id_entregastr = CamadaDados.TDataQuery.getPubVariavel(cd.Gravar(val), "@P_ID_ENTREGA");
                if (st_transacao)
                {
                    cd.Banco_Dados.Commit_Tran();
                }
                return(val.Id_entregastr);
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    cd.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro gravar entrega: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    cd.deletarBanco_Dados();
                }
            }
        }
Пример #2
0
        public static string GravarRecontagem(TList_EntregaPedido val, BancoDados.TObjetoBanco banco)
        {
            string            retorno      = string.Empty;
            bool              st_transacao = false;
            TCD_EntregaPedido qtb_entrega  = new TCD_EntregaPedido();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_entrega.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_entrega.Banco_Dados = banco;
                }
                val.ForEach(p =>
                {
                    if (p.St_recontar)
                    {
                        //Verificar se a conferencia ja nao foi utilizada pelo faturamento
                        object obj = new CamadaDados.Faturamento.NotaFiscal.TCD_Faturamento_Item_X_Estoque(qtb_entrega.Banco_Dados).BuscarEscalar(
                            new TpBusca[]
                        {
                            new TpBusca()
                            {
                                vNM_Campo = "a.id_entrega",
                                vOperador = "=",
                                vVL_Busca = p.Id_entrega.Value.ToString()
                            }
                        }, "1");
                        if (obj == null)
                        {
                            p.St_registro = "R";
                            qtb_entrega.Gravar(p);
                        }
                        else
                        {
                            retorno += "Id. Entrega: " + p.Id_entrega.Value.ToString() + "\r\n";
                        }
                    }
                });
                if (st_transacao)
                {
                    qtb_entrega.Banco_Dados.Commit_Tran();
                }
                if (retorno.Trim() != string.Empty)
                {
                    retorno = "As seguintes entregas ja foram consumidas pelo faturamento, portanto não podem mais ser recontadas.\r\n" + retorno.Trim();
                }
                return(retorno);
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_entrega.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro recontar: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_entrega.deletarBanco_Dados();
                }
            }
        }