public TList_LanAplicacaoPedido Select(TpBusca[] vBusca, Int32 vTop, string vNM_Campo) { TList_LanAplicacaoPedido lista = new TList_LanAplicacaoPedido(); SqlDataReader reader; bool podeFecharBco = false; if (Banco_Dados == null) { this.CriarBanco_Dados(false); podeFecharBco = true; } try { if (vNM_Campo == "") { reader = this.ExecutarBusca(this.SqlCodeBusca(vBusca, Convert.ToInt16(vTop), "")); } else { reader = this.ExecutarBusca(this.SqlCodeBusca(vBusca, Convert.ToInt16(vTop), vNM_Campo)); } while (reader.Read()) { TRegistro_LanAplicacaoPedido lanAplicacao = new TRegistro_LanAplicacaoPedido(); if (!reader.IsDBNull(reader.GetOrdinal("ID_Aplicacao"))) { lanAplicacao.Id_aplicacao = reader.GetDecimal(reader.GetOrdinal("ID_Aplicacao")); } if (!reader.IsDBNull(reader.GetOrdinal("NR_Pedido"))) { lanAplicacao.Nr_pedido = reader.GetDecimal(reader.GetOrdinal("NR_Pedido")); } if (!reader.IsDBNull(reader.GetOrdinal("CD_Produto"))) { lanAplicacao.Cd_produto = reader.GetString(reader.GetOrdinal("CD_Produto")); } if (!(reader.IsDBNull(reader.GetOrdinal("DS_Produto")))) { lanAplicacao.Ds_produto = reader.GetString(reader.GetOrdinal("DS_Produto")); } if (!reader.IsDBNull(reader.GetOrdinal("CD_Empresa"))) { lanAplicacao.Cd_empresa = reader.GetString(reader.GetOrdinal("CD_Empresa")); } if (!reader.IsDBNull(reader.GetOrdinal("NM_Empresa"))) { lanAplicacao.Nm_empresa = reader.GetString(reader.GetOrdinal("NM_Empresa")); } if (!(reader.IsDBNull(reader.GetOrdinal("ID_LanctoEstoque")))) { lanAplicacao.Id_lanctoestoque = reader.GetDecimal(reader.GetOrdinal("ID_LanctoEstoque")); } if (!(reader.IsDBNull(reader.GetOrdinal("ID_Ticket")))) { lanAplicacao.Id_ticket = reader.GetDecimal(reader.GetOrdinal("ID_Ticket")); } if (!(reader.IsDBNull(reader.GetOrdinal("TP_Pesagem")))) { lanAplicacao.Tp_pesagem = reader.GetString(reader.GetOrdinal("TP_Pesagem")); } if (!(reader.IsDBNull(reader.GetOrdinal("ID_Item")))) { lanAplicacao.Id_item = reader.GetDecimal(reader.GetOrdinal("ID_Item")); } if (!(reader.IsDBNull(reader.GetOrdinal("ID_Desdobro")))) { lanAplicacao.Id_desdobro = reader.GetDecimal(reader.GetOrdinal("ID_Desdobro")); } if (!(reader.IsDBNull(reader.GetOrdinal("QTD_Aplicado")))) { lanAplicacao.Qtd_aplicado = reader.GetDecimal(reader.GetOrdinal("QTD_Aplicado")); } if (!(reader.IsDBNull(reader.GetOrdinal("Vl_Unitario")))) { lanAplicacao.Vl_unitario = reader.GetDecimal(reader.GetOrdinal("Vl_Unitario")); } if (!(reader.IsDBNull(reader.GetOrdinal("Vl_SubTotal")))) { lanAplicacao.Vl_subtotal = reader.GetDecimal(reader.GetOrdinal("Vl_SubTotal")); } if (!(reader.IsDBNull(reader.GetOrdinal("CD_Autoriz")))) { lanAplicacao.Cd_autoriz = reader.GetDecimal(reader.GetOrdinal("CD_Autoriz")); } if (!(reader.IsDBNull(reader.GetOrdinal("Vl_TaxaSecagem")))) { lanAplicacao.Vl_taxasecagem = reader.GetDecimal(reader.GetOrdinal("Vl_TaxaSecagem")); } lista.Add(lanAplicacao); } } finally { if (podeFecharBco) { this.deletarBanco_Dados(); } } return(lista); }
public static string Excluir(TRegistro_PesagemDiversas val, BancoDados.TObjetoBanco banco) { //Verificar se pesagem não tem aplicação TList_LanAplicacaoPedido lAplicacao = TCN_LanAplicacaoPedido.Buscar(string.Empty, string.Empty, string.Empty, val.Cd_empresa, string.Empty, val.Id_ticket.ToString(), val.Tp_pesagem, banco); if (lAplicacao.Count > 0) { string msg = ""; for (int i = 0; i < lAplicacao.Count; i++) { msg += "Aplicação...: " + lAplicacao[i].Id_aplicacao.ToString() + "\r\n" + "Pedido......: " + lAplicacao[i].Nr_pedido.ToString() + "\r\n" + "Nota Fiscal.: " + lAplicacao[i].Nr_notafiscalaplic.ToString() + "\r\n" + "Serie NF....: " + lAplicacao[i].Nr_serieaplic.ToString() + "\r\n" + "--------------------------------------\r\n"; } throw new Exception("Não é possivel excluir pesagem porque existe aplicação.\r\n\r\n" + "-------Dados da Pesagem-------\r\n" + "Empresa.....: " + val.Cd_empresa + "\r\n" + "Ticket......: " + val.Id_ticket.ToString() + "\r\n" + "TP. Pesagem.: " + val.Tp_pesagem + "\r\n\r\n" + "--------Dados Aplicação---------\r\n" + msg); } bool st_transacao = false; TCD_PesagemDiversas qtb_pesagem = new TCD_PesagemDiversas(); try { if (st_transacao) { st_transacao = qtb_pesagem.CriarBanco_Dados(true); } else { qtb_pesagem.Banco_Dados = banco; } //Setar ST_Registro para C, pois a exclusão é somente lógica. val.St_registro = "C"; qtb_pesagem.Gravar(val); if (st_transacao) { qtb_pesagem.Banco_Dados.Commit_Tran(); } return("OK"); } catch (Exception ex) { if (st_transacao) { qtb_pesagem.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro cancelar pesagem avulsa: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb_pesagem.deletarBanco_Dados(); } } }
public static string GravaPesagemGMO(TRegistro_LanFaturamento_Item val, string vTp_Movimento, TObjetoBanco banco) { string retorno = string.Empty; TList_RegLanAplicacao_NotaFiscal lPesagemGmo = TCN_LanAplicacao_NotaFiscal.Buscar(val.Cd_empresa, val.Nr_lanctofiscal.ToString(), val.Id_nfitem.ToString(), string.Empty, false, banco); if (lPesagemGmo.Count > 0) { TList_LanAplicacaoPedido lAplicPedido = TCN_LanAplicacaoPedido.Buscar(lPesagemGmo[0].Id_aplicacao.ToString(), string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, banco); if (lAplicPedido.Count > 0) { TList_RegLanPesagemGraos lPsgraos = CamadaNegocio.Balanca.TCN_LanPesagemGraos.Busca(lAplicPedido[0].Cd_empresa, lAplicPedido[0].Id_ticket.ToString(), lAplicPedido[0].Tp_pesagem, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, decimal.Zero, string.Empty, string.Empty, 0, string.Empty, banco); if (lPsgraos.Count > 0) { //procurar GRAVA GMO NOTA TList_Lan_NotaFiscalGMO NfGMO = TCN_Lan_NotaFiscalGMO.Buscar(string.Empty, lAplicPedido[0].Cd_empresa, val.Nr_lanctofiscal.ToString(), val.Id_nfitem.ToString(), banco); decimal Id_lanctoGMO = decimal.Zero; if (lPsgraos[0].Tp_prodpesagem.Trim().ToUpper().Equals("ID") && NfGMO.Count > 0) { Id_lanctoGMO = NfGMO[0].id_LanctoGmo.Value; } else if (lPsgraos[0].Tp_prodpesagem.Trim().ToUpper().Equals("IT")) { Id_lanctoGMO = Convert.ToDecimal(GravaGMO(new TList_RegLanFaturamento_Item() { val }, true, false, vTp_Movimento, banco)); } else if (lPsgraos[0].Tp_prodpesagem.Trim().ToUpper().Equals("ID") && (NfGMO.Count < 1)) { Id_lanctoGMO = Convert.ToDecimal(GravaGMO(new TList_RegLanFaturamento_Item() { val }, false, true, vTp_Movimento, banco)); } if ((!string.IsNullOrEmpty(lAplicPedido[0].Cd_empresa)) && (lAplicPedido[0].Id_ticket > 0) && (!string.IsNullOrEmpty(lAplicPedido[0].Tp_pesagem)) && (Id_lanctoGMO > 0)) { // GRAVA O LANCTO DO PESAGEM GMO retorno += CamadaNegocio.Graos.TCN_LanPesagemGMO.Gravar(new CamadaDados.Graos.TRegistro_LanPesagemGMO() { ID_Ticket = lAplicPedido[0].Id_ticket, CD_Empresa = lAplicPedido[0].Cd_empresa, TP_Pesagem = lAplicPedido[0].Tp_pesagem, ID_LanctoGMO = Id_lanctoGMO }, banco); } } } } return(retorno); }