public void Atualizar(Doc_NotaFiscal p, List <ProdutoDocumento> listaItens, EventoDocumento eventoDocumento, List <AnexoDocumento> ListaAnexoDocumento, List <ParcelaDocumento> ListaParcelaDocumento) { try { Doc_NotaFiscal p2 = new Doc_NotaFiscal(); p2 = PesquisarDocumento(Convert.ToInt32(p.CodigoDocumento)); GerarLog(p, p2); AbrirConexao(); strSQL = "update [DOCUMENTO] set CD_TIPO_DOCUMENTO = @v1," + "CD_EMPRESA = @v2," + "DT_HR_EMISSAO = @v3," + "DG_DOCUMENTO = @v5," + "DG_SR_DOCUMENTO = @v6," + "VL_TOTAL_GERAL = @v7," + "OB_DOCUMENTO = @v8," + "CD_TIPO_COBRANCA = @v9," + "CD_CND_PAGAMENTO = @v10," + "DT_HR_SAIDA = @v11," + "CD_SITUACAO = @v12," + "CD_CLASSIFICACAO = @v13," + "CD_NAT_OPERACAO = @v15," + "VL_ST = @v16," + "CD_FINALIDADE = @v17," + "CD_REG_TRIBUTARIO = @v18," + "VL_PESO = @v19," + "CD_INDICADOR_PRESENCA = @v20," + "VL_FRETE = @v21," + "NR_WEB = @v22," + "CD_DOC_ORIGINAL = @v23," + "CD_TIPO_OPERACAO = @v24," + "CD_CONSUMIDOR_FINAL = @v25," + "CD_MOD_FRETE = @v26," + "VL_CUBAGEM = @v27 Where [CD_DOCUMENTO] = @CODIGO"; Cmd = new SqlCommand(strSQL, Con); Cmd.Parameters.AddWithValue("@CODIGO", p.CodigoDocumento); Cmd.Parameters.AddWithValue("@v1", 9); Cmd.Parameters.AddWithValue("@v2", p.CodigoEmpresa); Cmd.Parameters.AddWithValue("@v3", p.DataHoraEmissao); Cmd.Parameters.AddWithValue("@v5", p.DGNumeroDocumento); Cmd.Parameters.AddWithValue("@v6", p.DGSerieDocumento); Cmd.Parameters.AddWithValue("@v7", p.ValorTotalDocumento); Cmd.Parameters.AddWithValue("@v8", p.DescricaoDocumento); Cmd.Parameters.AddWithValue("@v9", p.CodigoTipoCobranca); Cmd.Parameters.AddWithValue("@v10", p.CodigoCondicaoPagamento); if (p.DataHoraSaida.HasValue) { Cmd.Parameters.AddWithValue("@v11", p.DataHoraSaida); } else { Cmd.Parameters.AddWithValue("@v11", DBNull.Value); } Cmd.Parameters.AddWithValue("@v12", p.CodigoSituacao); Cmd.Parameters.AddWithValue("@v13", p.CodigoTipoOrcamento); Cmd.Parameters.AddWithValue("@v15", p.CodigoNaturezaOperacao); Cmd.Parameters.AddWithValue("@v16", p.ValorICMSST); Cmd.Parameters.AddWithValue("@v17", p.CodigoFinalidadeNF); Cmd.Parameters.AddWithValue("@v18", p.CodigoRegimeTributario); Cmd.Parameters.AddWithValue("@v19", p.ValorPesoBruto); Cmd.Parameters.AddWithValue("@v20", p.CodigoIndicadorPresenca); Cmd.Parameters.AddWithValue("@v21", p.ValorFrete); Cmd.Parameters.AddWithValue("@v22", p.NumeroWeb); Cmd.Parameters.AddWithValue("@v23", p.CodigoDocumentoOriginal); Cmd.Parameters.AddWithValue("@v24", p.CodigoTipoOperacao); Cmd.Parameters.AddWithValue("@v25", p.CodigoConsumidorFinal); Cmd.Parameters.AddWithValue("@v26", p.CodigoModalidadeFrete); Cmd.Parameters.AddWithValue("@v27", p.ValorCubagem); Cmd.ExecuteNonQuery(); } catch (Exception ex) { throw new Exception("Erro ao atualizar nota fiscal: " + ex.Message.ToString()); } finally { FecharConexao(); AtualizarPessoaDocumento(p.CodigoDocumento, p.Cpl_CodigoPessoa, 14); AtualizarPessoaDocumento(p.CodigoDocumento, p.Cpl_CodigoTransportador, 15); if (eventoDocumento != null) { EventoDocumentoDAL eventoDAL = new EventoDocumentoDAL(); eventoDAL.Inserir(eventoDocumento, p.CodigoDocumento); } AnexoDocumentoDAL AnexoDAL = new AnexoDocumentoDAL(); AnexoDAL.Inserir(p.CodigoDocumento, ListaAnexoDocumento); ProdutoDocumentoDAL ItemDAL = new ProdutoDocumentoDAL(); ItemDAL.Inserir(p.CodigoDocumento, listaItens); ParcelaDocumentoDAL ParcelaDAL = new ParcelaDocumentoDAL(); ParcelaDAL.Inserir(p.CodigoDocumento, ListaParcelaDocumento); } }
public void Inserir(Doc_NotaFiscal p, List <ProdutoDocumento> listaItens, EventoDocumento eventoDocumento, List <AnexoDocumento> ListaAnexoDocumento, List <ParcelaDocumento> ListaParcelaDocumento) { try { AbrirConexao(); strSQL = "insert into DOCUMENTO (CD_TIPO_DOCUMENTO," + "CD_EMPRESA," + "DT_HR_EMISSAO," + "DT_HR_ENTRADA," + "NR_DOCUMENTO," + "DG_DOCUMENTO," + "DG_SR_DOCUMENTO," + "VL_TOTAL_GERAL," + "OB_DOCUMENTO," + "CD_TIPO_COBRANCA," + "CD_CND_PAGAMENTO," + "DT_HR_SAIDA," + "CD_SITUACAO," + "CD_CLASSIFICACAO," + "CD_GER_SEQ_DOC," + "CD_NAT_OPERACAO," + "VL_ST," + "CD_FINALIDADE," + "CD_REG_TRIBUTARIO," + "VL_PESO," + "CD_INDICADOR_PRESENCA," + "VL_FRETE," + "NR_WEB," + "CD_DOC_ORIGINAL," + "CD_TIPO_OPERACAO," + "CD_CONSUMIDOR_FINAL," + "CD_MOD_FRETE," + "VL_CUBAGEM) values (@v1,@v2,@v3,@v4,@v5,@v6,@v7,@v8,@v9,@v10,@v11,@v12,@v13,@v14,@v15,@v16,@v17,@v18,@v19,@v20,@v21,@v22,@v23,@v24,@v25,@v26,@v27,@v28) SELECT SCOPE_IDENTITY();"; Cmd = new SqlCommand(strSQL, Con); decimal CodigoGerado = 0; GeradorSequencialDocumentoEmpresaDAL gerDAL = new GeradorSequencialDocumentoEmpresaDAL(); if (p.Cpl_NomeTabela != null) { CodigoGerado = gerDAL.IncluirTabelaGerador(p.Cpl_NomeTabela, Convert.ToInt32(p.CodigoGeracaoSequencialDocumento), p.Cpl_Usuario, p.Cpl_Maquina); } Cmd.Parameters.AddWithValue("@v1", 9); Cmd.Parameters.AddWithValue("@v2", p.CodigoEmpresa); Cmd.Parameters.AddWithValue("@v3", p.DataHoraEmissao); Cmd.Parameters.AddWithValue("@v4", p.DataHoraEmissao); Cmd.Parameters.AddWithValue("@v5", CodigoGerado); Cmd.Parameters.AddWithValue("@v6", p.DGNumeroDocumento); Cmd.Parameters.AddWithValue("@v7", p.DGSerieDocumento); Cmd.Parameters.AddWithValue("@v8", p.ValorTotalDocumento); Cmd.Parameters.AddWithValue("@v9", p.DescricaoDocumento); Cmd.Parameters.AddWithValue("@v10", p.CodigoTipoCobranca); Cmd.Parameters.AddWithValue("@v11", p.CodigoCondicaoPagamento); if (p.DataHoraSaida.HasValue) { Cmd.Parameters.AddWithValue("@v12", p.DataHoraSaida); } else { Cmd.Parameters.AddWithValue("@v12", DBNull.Value); } Cmd.Parameters.AddWithValue("@v13", p.CodigoSituacao); Cmd.Parameters.AddWithValue("@v14", p.CodigoTipoOrcamento); Cmd.Parameters.AddWithValue("@v15", p.CodigoGeracaoSequencialDocumento); Cmd.Parameters.AddWithValue("@v16", p.CodigoNaturezaOperacao); Cmd.Parameters.AddWithValue("@v17", p.ValorICMSST); Cmd.Parameters.AddWithValue("@v18", p.CodigoFinalidadeNF); Cmd.Parameters.AddWithValue("@v19", p.CodigoRegimeTributario); Cmd.Parameters.AddWithValue("@v20", p.ValorPesoBruto); Cmd.Parameters.AddWithValue("@v21", p.CodigoIndicadorPresenca); Cmd.Parameters.AddWithValue("@v22", p.ValorFrete); Cmd.Parameters.AddWithValue("@v23", p.NumeroWeb); Cmd.Parameters.AddWithValue("@v24", p.CodigoDocumentoOriginal); Cmd.Parameters.AddWithValue("@v25", p.CodigoTipoOperacao); Cmd.Parameters.AddWithValue("@v26", p.CodigoConsumidorFinal); Cmd.Parameters.AddWithValue("@v27", p.CodigoModalidadeFrete); Cmd.Parameters.AddWithValue("@v28", p.ValorCubagem); p.CodigoDocumento = Convert.ToDecimal(Cmd.ExecuteScalar()); } catch (SqlException ex) { if (ex.Errors.Count > 0) // Assume the interesting stuff is in the first error { switch (ex.Errors[0].Number) { case 2601: // Primary key violation throw new DuplicateNameException("Inclusão não Permitida!!! Chave já consta no Banco de Dados. Mensagem :" + ex.Message.ToString(), ex); case 2627: // Primary key violation throw new DuplicateNameException("Inclusão não Permitida!!! Chave já consta no Banco de Dados. Mensagem :" + ex.Message.ToString(), ex); default: throw new Exception("Erro ao Incluir nota fiscal: " + ex.Message.ToString()); } } } catch (Exception ex) { throw new Exception("Erro ao gravar nota fiscal: " + ex.Message.ToString()); } finally { FecharConexao(); InserirPessoaDocumento(p.CodigoDocumento, p.Cpl_CodigoTransportador, 15); //Pessoa do Documento Transportador InserirPessoaDocumento(p.CodigoDocumento, p.Cpl_CodigoPessoa, 14); //Pessoa do Documento if (eventoDocumento != null) { EventoDocumentoDAL eventoDAL = new EventoDocumentoDAL(); eventoDAL.Inserir(eventoDocumento, p.CodigoDocumento); } AnexoDocumentoDAL AnexoDAL = new AnexoDocumentoDAL(); AnexoDAL.Inserir(p.CodigoDocumento, ListaAnexoDocumento); ProdutoDocumentoDAL ItemDAL = new ProdutoDocumentoDAL(); ItemDAL.Inserir(p.CodigoDocumento, listaItens); ParcelaDocumentoDAL ParcelaDAL = new ParcelaDocumentoDAL(); ParcelaDAL.Inserir(p.CodigoDocumento, ListaParcelaDocumento); } }