Ejemplo n.º 1
0
        public void Gravar(TB_EST_PRODUTO_BARRA barra, ref int posicaoTransacao)
        {
            try
            {
                Conexao.Iniciar(ref posicaoTransacao);

                var existente = Conexao.BancoDados.TB_EST_PRODUTO_BARRAs.FirstOrDefault(a => a.ID_BARRA == barra.ID_BARRA && a.ID_PRODUTO == barra.ID_PRODUTO);

                #region Inserção
                if (existente == null)
                {
                    barra.ID_BARRA = (Conexao.BancoDados.TB_EST_PRODUTO_BARRAs.Any(a => a.ID_PRODUTO == barra.ID_PRODUTO) ? Conexao.BancoDados.TB_EST_PRODUTO_BARRAs.Where(a => a.ID_PRODUTO == barra.ID_PRODUTO).Max(a => a.ID_BARRA) : 0) + 1;
                    Conexao.BancoDados.TB_EST_PRODUTO_BARRAs.InsertOnSubmit(barra);
                }
                #endregion

                #region Atualização
                else
                {
                    existente.ID_BARRA_REFERENCIA = barra.ID_BARRA_REFERENCIA;
                }

                #endregion

                Conexao.Enviar();

                Conexao.Finalizar(ref posicaoTransacao);
            }
            catch (Exception excessao)
            {
                Conexao.Voltar(ref posicaoTransacao);
                throw excessao;
            }
        }
Ejemplo n.º 2
0
        public void Deletar(TB_EST_PRODUTO_BARRA barra, ref int posicaoTransacao)
        {
            try
            {
                Conexao.Iniciar(ref posicaoTransacao);

                var existente = Conexao.BancoDados.TB_EST_PRODUTO_BARRAs.FirstOrDefault(a => a.ID_BARRA == barra.ID_BARRA && a.ID_PRODUTO == barra.ID_PRODUTO);
                if (existente != null)
                {
                    Conexao.BancoDados.TB_EST_PRODUTO_BARRAs.DeleteOnSubmit(existente);
                }

                Conexao.Enviar();

                Conexao.Finalizar(ref posicaoTransacao);
            }
            catch (Exception excessao)
            {
                Conexao.Voltar(ref posicaoTransacao);
                throw excessao;
            }
        }