public static string Gravar(TRegistro_Expedicao val, BancoDados.TObjetoBanco banco) { bool st_transacao = false; TCD_Expedicao cd = new TCD_Expedicao(); try { if (banco == null) { st_transacao = cd.CriarBanco_Dados(true); } else { cd.Banco_Dados = banco; } val.Id_expedicaostr = CamadaDados.TDataQuery.getPubVariavel(cd.Gravar(val), "@P_ID_EXPEDICAO"); //Excluir Itens val.lItensDel.ForEach(p => TCN_ItensExpedicao.Excluir(p, cd.Banco_Dados)); //Gravar Itens val.lItens.Where(p => p.St_processar).ToList().ForEach(p => { p.Cd_empresa = val.Cd_empresa; p.Id_expedicao = val.Id_expedicao; TCN_ItensExpedicao.Gravar(p, cd.Banco_Dados); }); if (st_transacao) { cd.Banco_Dados.Commit_Tran(); } return(val.Id_expedicaostr); } catch (Exception ex) { if (st_transacao) { cd.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro gravar EXPEDICAO: " + ex.Message.Trim()); } finally { if (st_transacao) { cd.deletarBanco_Dados(); } } }
public static string Gravar(TRegistro_Expedicao val, TObjetoBanco banco) { bool st_transacao = false; TCD_Expedicao query = new TCD_Expedicao(); try { if (banco == null) { st_transacao = query.CriarBanco_Dados(true); } else { query.Banco_Dados = banco; } val.Id_expedicao = Convert.ToInt32(CamadaDados.TDataQuery.getPubVariavel(query.Gravar(val), "@P_ID_EXPEDICAO")); if (st_transacao) { query.Banco_Dados.Commit_Tran(); } return(val.Id_expedicao.ToString()); } catch (Exception ex) { if (st_transacao) { query.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro gravar expedição: " + ex.Message.Trim()); } finally { if (st_transacao) { query.deletarBanco_Dados(); } } }