public virtual string GravarPesagem(TRegistro_LanPesagem val, TObjetoBanco banco) { string retorno = string.Empty; TCD_LanPesagem qtb_pesagem = new TCD_LanPesagem(); bool pode_liberar = false; try { if (banco == null) { pode_liberar = qtb_pesagem.CriarBanco_Dados(true); } else { qtb_pesagem.Banco_Dados = banco; } retorno = qtb_pesagem.GravaPesagem(val); val.Id_ticket = Convert.ToDecimal(CamadaDados.TDataQuery.getPubVariavel(retorno, "@P_ID_TICKET")); //Gravar transbordo pesagem if (val.Tp_transbordobool) { val.lTransbordo.ForEach(p => TCN_LanTransbordo.GravarTransbordo(p, qtb_pesagem.Banco_Dados)); } if (pode_liberar) { qtb_pesagem.Banco_Dados.Commit_Tran(); } return(retorno); } catch (Exception ex) { if (pode_liberar) { qtb_pesagem.Banco_Dados.RollBack_Tran(); } throw new Exception(ex.Message); } finally { if (pode_liberar) { qtb_pesagem.deletarBanco_Dados(); } } }
public virtual string DeletarPesagem(TRegistro_LanPesagem val, TObjetoBanco banco) { string retorno = string.Empty; TCD_LanPesagem qtb_pesagem = new TCD_LanPesagem(); bool pode_liberar = false; try { if (banco == null) { pode_liberar = 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"; retorno = qtb_pesagem.GravaPesagem(val); if (pode_liberar) { qtb_pesagem.Banco_Dados.Commit_Tran(); } return(retorno); } catch (Exception ex) { if (pode_liberar) { qtb_pesagem.Banco_Dados.RollBack_Tran(); } throw new Exception(ex.Message); } finally { if (pode_liberar) { qtb_pesagem.deletarBanco_Dados(); } } }