public static List <string> TrataRetorno(string aXml, string aTag, TipoRetorno aTipoRetorno) { List <string> retorno = new List <string>(); XmlDocument _xml = new XmlDocument(); _xml.LoadXml(aXml); XPathNavigator nav = _xml.CreateNavigator(); XPathExpression expr; expr = nav.Compile("//*"); XPathNodeIterator iterator = nav.Select(expr); try { while (iterator.MoveNext()) { XPathNavigator nav2 = iterator.Current.Clone(); if (nav2.Name == aTag) { if (aTipoRetorno == TipoRetorno.Codigo) { retorno.Add(nav2.Value); } else { //retorno.Add(new Erro(int.Parse(nav2.Value)).Instrucao); } } } } catch (Exception ex) { throw ex; } return(retorno); }
public string RecuperarResultado(int idSolicitacao, TipoRetorno tipoRetorno) { string resultado = String.Empty; using (NpgsqlConnection conexao = new NpgsqlConnection(this.connectionString)) { string consultarDadosResultadoDb = @"select distinct c.id_tipo_consulta as tipo_consulta, r.nb,r.resultado from resultado r join consulta c on id_consulta = c.id where c.id_solicitacao = @id_solicitacao and contem_erro <> '1' order by nb,tipo_consulta;"; NpgsqlCommand cmd = new NpgsqlCommand(consultarDadosResultadoDb, conexao); cmd.Parameters.AddWithValue("@id_solicitacao", idSolicitacao); cmd.CommandTimeout = 0; conexao.Open(); if (tipoRetorno == TipoRetorno.csv) { resultado = new Parser().GerarCsvResultado(cmd.ExecuteReader()); } else { resultado = new Parser().GeraXmlResultado(cmd.ExecuteReader()); } } return(resultado); }
protected object EjecutarODBC(object Sql, TipoRetorno TipoRetorno, Transaccion Transaccion, string CnnStrDB, string nombreODBC) { switch (Sql.GetType().FullName.ToString()) { case "System.String[]": sqls = (string[])Sql; break; default: //case "System.String": sqls = new String[] { (string)Sql }; break; } cantReg = new int[sqls.Length]; switch (Transaccion) { case (Transaccion.Acepta): usaTransaccion = (sqls.Length > 1); break; case (Transaccion.NoAcepta): usaTransaccion = false; break; default: //(Transaccion.Usa): usaTransaccion = true; break; } if (usaTransaccion) ODBCTransaccion = ODBCConexion.BeginTransaction(); try { ODBCConexion = new OdbcConnection("dsn=" + nombreODBC + ";uid=" + sesion.Usuario.Id + ";pwd=" + sesion.Usuario.Password + ";"); ODBCConexion.Open(); ODBCComando = new OdbcCommand(Sql.ToString(), ODBCConexion); ds = new DataSet(); for(i = 0; i < sqls.Length; i++) { System.Diagnostics.Debug.WriteLine(sqls[i]); ODBCAdapter = new OdbcDataAdapter(sqls[i], ODBCConexion); if(usaTransaccion) { ODBCAdapter.SelectCommand.Transaction = ODBCTransaccion; } ODBCAdapter.SelectCommand.CommandTimeout = 90; if(i == 0) { ODBCAdapter.Fill(ds); } else { ds.Tables.Add(); ODBCAdapter.Fill(ds.Tables[ds.Tables.Count - 1]); } } return ds; } catch (Exception ex) { throw new CondecoEX.db.Conexion(ex); } }
protected object Ejecutar(object Sql, TipoRetorno TipoRetorno, Transaccion Transaccion, string CnnStrDB) { /* ESTE ES EL UNICO METODO QUE ACCEDE A LA BASE DE DATOS Y NO DEBE SER PUBLICO PARA QUE NO SEA INVOCADO NI DESDE LA CAPA DE REGLA DE NEGOCIO NI DE LA DE PRESENTACION Sql: 1) un string con una o mas instrucciones SQL. 2) un string array con uno o mas strings que contengan una o mas instrucciones SQL cada uno. TipoRetorno: 1) None: se ejecuta como un comando y no devuelve ningun resultado 2) CantReg: se ejecuta como un comando y devuelve un integer, o un integer array (uno por cada Sql string array), indicando la cantidad registros se vieron afectados. 3) Dv: devuelve un dataview o un dataview array (cada uno con una tabla), segun los datos obtenidos de la DB. 4) ds: devuelve un dataset con una o mas tablas segun los datos obtenidos de la DB. Transaccion: 1) Acepta: en el caso de recibir un Sql string array, activa la transaccion. 2) NoAcepta: no activa la trasaccion 3) Usa: activa la transaccion */ if (CnnStrDB != null && CnnStrDB.Contains("Microsoft.Jet.OLEDB")) { string StrConexion = CnnStrDB; OleDbConnection Conexion = new OleDbConnection(StrConexion); OleDbDataAdapter Adapter = new OleDbDataAdapter(Sql.ToString(), Conexion); OleDbCommandBuilder SQLComandos = new OleDbCommandBuilder(Adapter); switch (TipoRetorno) { case (TipoRetorno.None): case (TipoRetorno.CantReg): Conexion.Open(); Adapter.Fill(ds); cantReg[0] = ds.Tables[0].Rows.Count; Conexion.Close(); break; case (TipoRetorno.DS): case (TipoRetorno.DV): case (TipoRetorno.TB): Conexion.Open(); ds = new DataSet(); Adapter.Fill(ds); Conexion.Close(); switch (TipoRetorno) { case (TipoRetorno.DV): if (ds.Tables.Count > 0) { dv = new DataView[ds.Tables.Count]; for (i = 0; i < ds.Tables.Count; i++) { dv[i] = ds.Tables[i].DefaultView; } } break; case (TipoRetorno.TB): if (ds.Tables.Count > 0) { tb = new DataTable[ds.Tables.Count]; for (i = 0; i < ds.Tables.Count; i++) { tb[i] = ds.Tables[i]; } } break; default: break; } break; } switch(TipoRetorno) { case TipoRetorno.None: return new System.Object(); case TipoRetorno.CantReg: return cantReg; case TipoRetorno.DS: return ds; case TipoRetorno.TB: switch(ds.Tables.Count) { case 0: return new DataTable(); case 1: return tb[0]; default: return tb; } default: //case TipoRetorno.Dv: switch(ds.Tables.Count) { case 0: return new DataView(); case 1: return dv[0]; default: return dv; } } } else //SQL Server { switch(Sql.GetType().FullName.ToString()) { case "System.String[]": sqls = (string[])Sql; break; default: //case "System.String": sqls = new String[] { (string)Sql }; break; } cantReg = new int[sqls.Length]; try { sqlConexion = new SqlConnection(CnnStrDB); sqlConexion.Open(); switch(Transaccion) { case (Transaccion.Acepta): usaTransaccion = (sqls.Length > 1); break; case (Transaccion.NoAcepta): usaTransaccion = false; break; default: //(Transaccion.Usa): usaTransaccion = true; break; } if(usaTransaccion) sqlTransaccion = sqlConexion.BeginTransaction(); switch(TipoRetorno) { case (TipoRetorno.None): case (TipoRetorno.CantReg): sqlCommand = new SqlCommand(); sqlCommand.Connection = sqlConexion; sqlCommand.CommandTimeout = 90; if(usaTransaccion) { sqlCommand.Transaction = sqlTransaccion; } for(i = 0; i < sqls.Length; i++) { sqlCommand.CommandText = sqls[i]; System.Diagnostics.Debug.WriteLine(sqlCommand.CommandText); cantReg[i] = sqlCommand.ExecuteNonQuery(); } break; case (TipoRetorno.DS): case (TipoRetorno.DV): case (TipoRetorno.TB): ds = new DataSet(); for(i = 0; i < sqls.Length; i++) { System.Diagnostics.Debug.WriteLine(sqls[i]); sqlAdapter = new SqlDataAdapter(sqls[i], sqlConexion); if(usaTransaccion) { sqlAdapter.SelectCommand.Transaction = sqlTransaccion; } sqlAdapter.SelectCommand.CommandTimeout = 90; if(i == 0) { sqlAdapter.Fill(ds); } else { ds.Tables.Add(); sqlAdapter.Fill(ds.Tables[ds.Tables.Count - 1]); } } switch(TipoRetorno) { case (TipoRetorno.DV): if(ds.Tables.Count > 0) { dv = new DataView[ds.Tables.Count]; for(i = 0; i < ds.Tables.Count; i++) { dv[i] = ds.Tables[i].DefaultView; } } break; case (TipoRetorno.TB): if(ds.Tables.Count > 0) { tb = new DataTable[ds.Tables.Count]; for(i = 0; i < ds.Tables.Count; i++) { tb[i] = ds.Tables[i]; } } break; default: break; } break; } if(usaTransaccion) { sqlTransaccion.Commit(); } sqlConexion.Close(); switch(TipoRetorno) { case TipoRetorno.None: return new System.Object(); case TipoRetorno.CantReg: if(sqls.Length > 1) { return cantReg; } else { return cantReg[0]; } case TipoRetorno.DS: return ds; case TipoRetorno.TB: switch(ds.Tables.Count) { case 0: return new DataTable(); case 1: return tb[0]; default: return tb; } default: //case TipoRetorno.Dv: switch(ds.Tables.Count) { case 0: return new DataView(); case 1: return dv[0]; default: return dv; } } } catch(System.Data.SqlClient.SqlException ex1) { if(((System.Data.SqlClient.SqlException)(ex1)).Procedure == "ConnectionOpen (Connect()).") { throw new CondecoEX.db.Conexion(ex1); } else { if(usaTransaccion) { try { sqlTransaccion.Rollback(); throw new CondecoEX.db.EjecucionConRollback(ex1); } catch (CondecoEX.db.EjecucionConRollback) { throw new CondecoEX.db.EjecucionConRollback(ex1); } catch { throw new CondecoEX.db.Rollback(ex1); } } else { throw new CondecoEX.db.Ejecucion(ex1); } } } } }
protected object Ejecutar(object Sql, TipoRetorno TipoRetorno, Transaccion Transaccion, string CnnStrDB) { /* * ESTE ES EL UNICO METODO QUE ACCEDE A LA BASE DE DATOS Y NO DEBE SER PUBLICO PARA QUE NO SEA INVOCADO NI * DESDE LA CAPA DE REGLA DE NEGOCIO NI DE LA DE PRESENTACION * Sql: 1) un string con una o mas instrucciones SQL. * 2) un string array con uno o mas strings que contengan una o mas instrucciones SQL * cada uno. * TipoRetorno: 1) None: se ejecuta como un comando y no devuelve ningun resultado * 2) CantReg: se ejecuta como un comando y devuelve un integer, o un integer array * (uno por cada Sql string array), indicando la cantidad registros se vieron afectados. * 3) Dv: devuelve un dataview o un dataview array (cada uno con una tabla), * segun los datos obtenidos de la DB. * 4) ds: devuelve un dataset con una o mas tablas segun los datos obtenidos de la DB. * Transaccion: 1) Acepta: en el caso de recibir un Sql string array, activa la transaccion. * 2) NoAcepta: no activa la trasaccion * 3) Usa: activa la transaccion */ if (CnnStrDB != null && CnnStrDB.Contains("Microsoft.Jet.OLEDB")) { string StrConexion = CnnStrDB; OleDbConnection Conexion = new OleDbConnection(StrConexion); OleDbDataAdapter Adapter = new OleDbDataAdapter(Sql.ToString(), Conexion); OleDbCommandBuilder SQLComandos = new OleDbCommandBuilder(Adapter); switch (TipoRetorno) { case (TipoRetorno.None): case (TipoRetorno.CantReg): Conexion.Open(); Adapter.Fill(ds); cantReg[0] = ds.Tables[0].Rows.Count; Conexion.Close(); break; case (TipoRetorno.DS): case (TipoRetorno.DV): case (TipoRetorno.TB): Conexion.Open(); ds = new DataSet(); Adapter.Fill(ds); Conexion.Close(); switch (TipoRetorno) { case (TipoRetorno.DV): if (ds.Tables.Count > 0) { dv = new DataView[ds.Tables.Count]; for (i = 0; i < ds.Tables.Count; i++) { dv[i] = ds.Tables[i].DefaultView; } } break; case (TipoRetorno.TB): if (ds.Tables.Count > 0) { tb = new DataTable[ds.Tables.Count]; for (i = 0; i < ds.Tables.Count; i++) { tb[i] = ds.Tables[i]; } } break; default: break; } break; } switch (TipoRetorno) { case TipoRetorno.None: return(new System.Object()); case TipoRetorno.CantReg: return(cantReg); case TipoRetorno.DS: return(ds); case TipoRetorno.TB: switch (ds.Tables.Count) { case 0: return(new DataTable()); case 1: return(tb[0]); default: return(tb); } default: //case TipoRetorno.Dv: switch (ds.Tables.Count) { case 0: return(new DataView()); case 1: return(dv[0]); default: return(dv); } } } else //SQL Server { switch (Sql.GetType().FullName.ToString()) { case "System.String[]": sqls = (string[])Sql; break; default: //case "System.String": sqls = new String[] { (string)Sql }; break; } cantReg = new int[sqls.Length]; try { sqlConexion = new SqlConnection(CnnStrDB); sqlConexion.Open(); switch (Transaccion) { case (Transaccion.Acepta): usaTransaccion = (sqls.Length > 1); break; case (Transaccion.NoAcepta): usaTransaccion = false; break; default: //(Transaccion.Usa): usaTransaccion = true; break; } if (usaTransaccion) { sqlTransaccion = sqlConexion.BeginTransaction(); } switch (TipoRetorno) { case (TipoRetorno.None): case (TipoRetorno.CantReg): sqlCommand = new SqlCommand(); sqlCommand.Connection = sqlConexion; sqlCommand.CommandTimeout = 90; if (usaTransaccion) { sqlCommand.Transaction = sqlTransaccion; } for (i = 0; i < sqls.Length; i++) { sqlCommand.CommandText = sqls[i]; System.Diagnostics.Debug.WriteLine(sqlCommand.CommandText); cantReg[i] = sqlCommand.ExecuteNonQuery(); } break; case (TipoRetorno.DS): case (TipoRetorno.DV): case (TipoRetorno.TB): ds = new DataSet(); for (i = 0; i < sqls.Length; i++) { System.Diagnostics.Debug.WriteLine(sqls[i]); sqlAdapter = new SqlDataAdapter(sqls[i], sqlConexion); if (usaTransaccion) { sqlAdapter.SelectCommand.Transaction = sqlTransaccion; } sqlAdapter.SelectCommand.CommandTimeout = 90; if (i == 0) { sqlAdapter.Fill(ds); } else { ds.Tables.Add(); sqlAdapter.Fill(ds.Tables[ds.Tables.Count - 1]); } } switch (TipoRetorno) { case (TipoRetorno.DV): if (ds.Tables.Count > 0) { dv = new DataView[ds.Tables.Count]; for (i = 0; i < ds.Tables.Count; i++) { dv[i] = ds.Tables[i].DefaultView; } } break; case (TipoRetorno.TB): if (ds.Tables.Count > 0) { tb = new DataTable[ds.Tables.Count]; for (i = 0; i < ds.Tables.Count; i++) { tb[i] = ds.Tables[i]; } } break; default: break; } break; } if (usaTransaccion) { sqlTransaccion.Commit(); } sqlConexion.Close(); switch (TipoRetorno) { case TipoRetorno.None: return(new System.Object()); case TipoRetorno.CantReg: if (sqls.Length > 1) { return(cantReg); } else { return(cantReg[0]); } case TipoRetorno.DS: return(ds); case TipoRetorno.TB: switch (ds.Tables.Count) { case 0: return(new DataTable()); case 1: return(tb[0]); default: return(tb); } default: //case TipoRetorno.Dv: switch (ds.Tables.Count) { case 0: return(new DataView()); case 1: return(dv[0]); default: return(dv); } } } catch (System.Data.SqlClient.SqlException ex1) { if (((System.Data.SqlClient.SqlException)(ex1)).Procedure == "ConnectionOpen (Connect()).") { throw new CedServicios.EX.db.Conexion(ex1); } else { if (usaTransaccion) { try { sqlTransaccion.Rollback(); throw new CedServicios.EX.db.EjecucionConRollback(ex1); } catch (CedServicios.EX.db.EjecucionConRollback) { throw new CedServicios.EX.db.EjecucionConRollback(ex1); } catch { throw new CedServicios.EX.db.Rollback(ex1); } } else { throw new CedServicios.EX.db.Ejecucion(ex1); } } } } }
protected object EjecutarODBC(object Sql, TipoRetorno TipoRetorno, Transaccion Transaccion, string CnnStrDB, string nombreODBC) { switch (Sql.GetType().FullName.ToString()) { case "System.String[]": sqls = (string[])Sql; break; default: //case "System.String": sqls = new String[] { (string)Sql }; break; } cantReg = new int[sqls.Length]; switch (Transaccion) { case (Transaccion.Acepta): usaTransaccion = (sqls.Length > 1); break; case (Transaccion.NoAcepta): usaTransaccion = false; break; default: //(Transaccion.Usa): usaTransaccion = true; break; } if (usaTransaccion) { ODBCTransaccion = ODBCConexion.BeginTransaction(); } try { ODBCConexion = new OdbcConnection("dsn=" + nombreODBC + ";uid=" + sesion.Usuario.Id + ";pwd=" + sesion.Usuario.Password + ";"); ODBCConexion.Open(); ODBCComando = new OdbcCommand(Sql.ToString(), ODBCConexion); ds = new DataSet(); for (i = 0; i < sqls.Length; i++) { System.Diagnostics.Debug.WriteLine(sqls[i]); ODBCAdapter = new OdbcDataAdapter(sqls[i], ODBCConexion); if (usaTransaccion) { ODBCAdapter.SelectCommand.Transaction = ODBCTransaccion; } ODBCAdapter.SelectCommand.CommandTimeout = 90; if (i == 0) { ODBCAdapter.Fill(ds); } else { ds.Tables.Add(); ODBCAdapter.Fill(ds.Tables[ds.Tables.Count - 1]); } } return(ds); } catch (Exception ex) { throw new CedServicios.EX.db.Conexion(ex); } }
private Object ExecSQL(string strConexao, string proc_SQL, SqlParameter[] parametros, CommandType tipoComando, TipoRetorno retorno) { string connection; if (Usuario == null) { connection = ConfigurationManager.ConnectionStrings[strConexao].ConnectionString; } else { connection = ConfigurationManager.ConnectionStrings[strConexao].ConnectionString + " ;Application Name=PF: " + Usuario; } using (SqlConnection conexao = new SqlConnection(connection)) using (SqlCommand command = new SqlCommand(proc_SQL, conexao)) { try { command.CommandType = tipoComando; command.Parameters.Clear(); if (parametros != null) { command.Parameters.AddRange(parametros); } conexao.Open(); switch (retorno) { case TipoRetorno.Scalar: return(command.ExecuteScalar()); case TipoRetorno.DataTable: using (SqlDataAdapter adapter = new SqlDataAdapter(command)) { DataTable ds = new DataTable(); adapter.Fill(ds); return(ds); } case TipoRetorno.SQLReader: leReader(command.ExecuteReader()); return(null); case TipoRetorno.NonQuery: command.ExecuteNonQuery(); return(null); default: return(null); } } catch { throw; } finally { if (conexao.State == ConnectionState.Open) { conexao.Close(); } } } }
public RetornoTransacao(string mensagem, TipoRetorno retorno) { NumeroTransacao = Guid.NewGuid(); Mensagem = mensagem; Retorno = retorno; }
/// <summary> /// Faz um mapeamento entre um modelo de Proposta e os dados de PropostaViewModel /// </summary> /// <param name="proposta"></param> private void CarregarProposta(Proposta proposta) { if (proposta == null) { return; } this.Id = proposta.Id; this.InvestimentoIncial = proposta.InvestimentoInicial; this.InvestimentoMensal = proposta.InvestimentoMensal; this.Perfil = proposta.Perfil.Id; this.RendaEsperadaMes = proposta.RendaEsperadaMes; this.TempoInvestimento = proposta.TempoInvestimento; this.TempoRecebimento = proposta.TempoRecebimento; this.TipoRetornoEsperado = proposta.TipoRetornoEsperado; this.Aprovada = proposta.Aprovada; this.Cliente = proposta.Cliente.Nome; this.IdCliente = proposta.Cliente.Id; this.CPF = proposta.Cliente.Cpf; this.RendaFamiliar = proposta.Cliente.RendaFamiliar; }
protected object Ejecutar(object Sql, TipoRetorno TipoRetorno, Transaccion Transaccion, string CnnStrDB) { /* ESTE ES EL UNICO METODO QUE ACCEDE A LA BASE DE DATOS Y NO DEBE SER PUBLICO PARA QUE NO SEA INVOCADO NI DESDE LA CAPA DE REGLA DE NEGOCIO NI DE LA DE PRESENTACION Sql: 1) un string con una o mas instrucciones SQL. 2) un string array con uno o mas strings que contengan una o mas instrucciones SQL cada uno. TipoRetorno: 1) None: se ejecuta como un comando y no devuelve ningun resultado 2) CantReg: se ejecuta como un comando y devuelve un integer, o un integer array (uno por cada Sql string array), indicando la cantidad registros se vieron afectados. 3) DV: devuelve un dataview o un dataview array (cada uno con una tabla), segun los datos obtenidos de la DB. 4) DS: devuelve un dataset con una o mas tablas segun los datos obtenidos de la DB. Transaccion: 1) Acepta: en el caso de recibir un Sql string array, activa la transaccion. 2) NoAcepta: no activa la trasaccion 3) Usa: activa la transaccion */ TesteoConexion(CnnStrDB); switch (Sql.GetType().FullName.ToString()) { case "System.String[]": Sqls = (string[]) Sql; break; default: //case "System.String": Sqls = new String[] {(string) Sql}; break; } CantReg = new int [ Sqls.Length ]; try { if (m_MySqlConnection != null) { m_MySqlConnection.Open(); } else { m_SqlConexion = new SqlConnection(CnnStrDB); m_SqlConexion.Open(); } switch (Transaccion) { case (Transaccion.Acepta): UsaTransaccion = (Sqls.Length > 1); break; case (Transaccion.NoAcepta): UsaTransaccion = false; break; default: //(Transaccion.Usa): UsaTransaccion = true; break; } if (UsaTransaccion) m_SqlTransaccion = m_SqlConexion.BeginTransaction(); switch (TipoRetorno) { case (TipoRetorno.None): case (TipoRetorno.CantReg): if (m_MySqlConnection != null) { m_MySqlCommand = new SqlCommand(); m_MySqlCommand.Connection = m_MySqlConnection; m_MySqlCommand.CommandTimeout = commandTimeOut; if (UsaTransaccion) { m_MySqlCommand.Transaction = m_MySqlTransaction; } for (i = 0; i < Sqls.Length; i++) { m_MySqlCommand.CommandText = Sqls[i]; System.Diagnostics.Debug.WriteLine(m_MySqlCommand.CommandText); CantReg[i] = m_MySqlCommand.ExecuteNonQuery(); } } else { m_SqlCommand = new SqlCommand(); m_SqlCommand.Connection = m_SqlConexion; m_SqlCommand.CommandTimeout = commandTimeOut; if (UsaTransaccion) { m_SqlCommand.Transaction = m_SqlTransaccion; } for (i = 0; i < Sqls.Length; i++) { m_SqlCommand.CommandText = Sqls[i]; System.Diagnostics.Debug.WriteLine(m_SqlCommand.CommandText); CantReg[i] = m_SqlCommand.ExecuteNonQuery(); } } break; case (TipoRetorno.DS): case (TipoRetorno.DV): case (TipoRetorno.TB): DS = new DataSet(); for (i = 0; i<Sqls.Length; i++) { System.Diagnostics.Debug.WriteLine(Sqls[i]); if (m_MySqlConnection != null) { m_MySqlDataAdapter = new SqlDataAdapter(Sqls[i], m_MySqlConnection); if (UsaTransaccion) { m_MySqlDataAdapter.SelectCommand.Transaction = m_MySqlTransaction; } m_MySqlDataAdapter.SelectCommand.CommandTimeout = commandTimeOut; if (i == 0) { m_MySqlDataAdapter.Fill(DS); } else { DS.Tables.Add(); m_MySqlDataAdapter.Fill(DS.Tables[DS.Tables.Count - 1]); } } else { m_SqlAdapter = new SqlDataAdapter(Sqls[i], m_SqlConexion); if (UsaTransaccion) { m_SqlAdapter.SelectCommand.Transaction = m_SqlTransaccion; } m_SqlAdapter.SelectCommand.CommandTimeout = commandTimeOut; if (i == 0) { m_SqlAdapter.Fill(DS); } else { DS.Tables.Add(); m_SqlAdapter.Fill(DS.Tables[DS.Tables.Count - 1]); } } } switch (TipoRetorno) { case (TipoRetorno.DV): if (DS.Tables.Count > 0) { DV = new DataView[DS.Tables.Count]; for (i = 0; i<DS.Tables.Count; i++) { DV[i] = DS.Tables[i].DefaultView; } } break; case (TipoRetorno.TB): if (DS.Tables.Count > 0) { TB = new DataTable[DS.Tables.Count]; for (i = 0; i<DS.Tables.Count; i++) { TB[i] = DS.Tables[i]; } } break; default: break; } break; }//end switch if (UsaTransaccion) {m_SqlTransaccion.Commit();} if (m_MySqlConnection != null) { m_MySqlConnection.Close(); } else { m_SqlConexion.Close(); } switch (TipoRetorno) { case TipoRetorno.None: return new System.Object(); case TipoRetorno.CantReg: if (Sqls.Length > 1) { return CantReg; } else { return CantReg[0]; } case TipoRetorno.DS: return DS; case TipoRetorno.TB: switch (DS.Tables.Count) { case 0: return new DataTable(); case 1: return TB[0]; default: return TB; } default: //case TipoRetorno.DV: switch (DS.Tables.Count) { case 0: return new DataView(); case 1: return DV[0]; default: return DV; } } } catch (System.Data.SqlClient.SqlException ex1) { if (((System.Data.SqlClient.SqlException)(ex1)).Procedure=="ConnectionOpen (Connect()).") { throw new Cedeira.Ex.db.Conexion(ex1); } else { if (UsaTransaccion) { try { m_SqlTransaccion.Rollback(); throw new Cedeira.Ex.db.EjecucionConRollback(ex1); } catch (Cedeira.Ex.db.EjecucionConRollback) { throw new Cedeira.Ex.db.EjecucionConRollback(ex1); } catch { throw new Cedeira.Ex.db.Rollback(ex1); } } else { throw new Cedeira.Ex.db.Ejecucion(ex1) ; } } } }
protected object Ejecutar(object Sql, TipoRetorno TipoRetorno, Transaccion Transaccion, string CnnStrDB, int CommandTimeOut) { commandTimeOut=CommandTimeOut; return Ejecutar(Sql, TipoRetorno, Transaccion, CnnStrDB); }