public static int GetNextId(string Tabla, string NombreClave, System.Data.SqlClient.SqlTransaction tran) { try { SqlCommand Comando = new SqlCommand(); object Aux; int ret; PrepararConexion(Comando, tran); //Armo la Query Comando.CommandType = CommandType.Text; Comando.CommandText = "SELECT MAX(" + NombreClave + ") " + "FROM [" + Tabla + "] "; //Obtengo el Nuevo Id Aux = EjecutarScalar(Comando); //Si el resultado es un numero, le sumo 1 y lo devuelvo. //Sino, devuelvo 1. if ((bool)int.TryParse(Aux.ToString(), out ret)) { return(ret + 1); } else { return(1); } } catch (Exception ex) { throw new Exception("Error en: DataLibrary - GetNextId", ex); } }
static void AgregarIndumentaria(TiendaRopa T) { try { //PIDO DATOS AL USUARIO string _STRtipoindumentaria; int _tipoindumentaria = 0; bool flag1 = false; do { _STRtipoindumentaria = ConsolaHelper.PedirTipoIndumentaria(); flag1 = Validaciones.ValidarTipoIndumentaria(_STRtipoindumentaria, ref _tipoindumentaria); } while (!flag1); string _STRmodelo; int _modelo = 0; bool flag2 = false; do { _STRmodelo = ConsolaHelper.PedirModelo(); flag2 = Validaciones.ValidarModelo(_STRmodelo, ref _modelo); } while (!flag2); string _talle; bool flag3 = false; do { _talle = ConsolaHelper.PedirTalle(); flag3 = Validaciones.ValidarTalle(_talle); } while (!flag3); string _strPrecio; double _precio = 0; bool _flag4; do { _strPrecio = ConsolaHelper.PedirPrecio(); _flag4 = Validaciones.ValidarPrecio(_strPrecio, ref _precio); } while (!_flag4); TipoIndumentaria Tipo = null; // es una clase abstracta, no se puede instanciar switch (_tipoindumentaria) { case 1: { IndumentariaCasual Casual = new IndumentariaCasual(_tipoindumentaria); Tipo = Casual; break; } case 2: { IndumentariaDeportiva Deportiva = new IndumentariaDeportiva(_tipoindumentaria); Tipo = Deportiva; break; } case 3: { IndumentariaFormal Formal = new IndumentariaFormal(_tipoindumentaria); Tipo = Formal; break; } } Indumentaria Aux = null; // es una clase abstracta, no se puede instanciar if (_modelo == 1) { Aux = new Camisa(T.GetProximoCodigoIndum(), _talle, _precio, Tipo); } else if (_modelo == 2) { Aux = new Pantalon(T.GetProximoCodigoIndum(), _talle, _precio, Tipo); } T.AgregarIndumentaria(Aux); ConsolaHelper.MostrarMensaje("Indumentaria agregada con exito"); ConsolaHelper.MostrarMensaje(Aux.ToString()); } catch (Exception e) { ConsolaHelper.MostrarMensaje(e.Message); } }