public static string GravarCobranca(TRegistro_CobrancaClifor val, BancoDados.TObjetoBanco banco) { bool st_transacao = false; TCD_CobrancaClifor qtb_cobranca = new TCD_CobrancaClifor(); try { if (banco == null) { qtb_cobranca.CriarBanco_Dados(true); st_transacao = true; } else { qtb_cobranca.Banco_Dados = banco; } //Gravar Cobranca clifor string retorno = qtb_cobranca.GravarCobranca(val); val.Id_cobranca = Convert.ToDecimal(CamadaDados.TDataQuery.getPubVariavel(retorno, "@P_ID_COBRANCA")); //Parcelas val.lParcelas.ForEach(p => { //Cobrança x Parcela p.Id_cobranca = val.Id_cobranca; TCN_Cobranca_X_Parcelas.GravarCobranca_x_parcelas(p, qtb_cobranca.Banco_Dados); }); if (st_transacao) { qtb_cobranca.Banco_Dados.Commit_Tran(); } return(retorno); } catch (Exception ex) { if (st_transacao) { qtb_cobranca.Banco_Dados.RollBack_Tran(); } throw new Exception(ex.Message); } finally { if (st_transacao) { qtb_cobranca.deletarBanco_Dados(); } } }
public static string DeletarCobranca(TRegistro_CobrancaClifor val, BancoDados.TObjetoBanco banco) { bool st_transacao = false; TCD_CobrancaClifor qtb_cobranca = new TCD_CobrancaClifor(); try { if (banco == null) { qtb_cobranca.CriarBanco_Dados(true); st_transacao = true; } else { qtb_cobranca.Banco_Dados = banco; } //Deletar parcelas da cobranca foreach (TRegistro_Cobranca_X_Parcelas parcelas in val.lParcelas) { TCN_Cobranca_X_Parcelas.DeletarCobranca_x_parcelas(parcelas, qtb_cobranca.Banco_Dados); } //Deletar Cobranca qtb_cobranca.DeletarCobranca(val); if (st_transacao) { qtb_cobranca.Banco_Dados.Commit_Tran(); } return("OK"); } catch (Exception ex) { if (st_transacao) { qtb_cobranca.Banco_Dados.RollBack_Tran(); } throw new Exception(ex.Message); } finally { if (st_transacao) { qtb_cobranca.deletarBanco_Dados(); } } }