Esempio n. 1
0
        /// <summary>
        /// Recupera las propiedades de la ficha de un vagón.
        /// </summary>
        /// <param name="carId">Identificador de la ficha.</param>
        /// <returns>Una instáncia de RCFremoCar.</returns>
        public OTCFremoFreightCar Item(int carId)
        {
            OleDbCommand       cmd  = null;
            OleDbDataReader    read = null;
            OTCFremoFreightCar car  = null;

            try
            {
                string sql = "SELECT carmodelid,caradminid,carnumber,carepoche,cartype,cartypepre,cartypepost, " +
                             "caruic,cardesc,carmaxspeed,carlong,carlongaxels,carweight,carloadlong,carloadsurf, " +
                             "carloadvol,carloaddesc,caroptions " +
                             "FROM cars " +
                             "WHERE carid=@carid";

                _app.Connect();
                cmd = new OleDbCommand(sql, _app.Connection);

                cmd.Parameters.Add(new OleDbParameter("@carid", OleDbType.Integer));
                cmd.Parameters["@carid"].Value = carId;

                read = cmd.ExecuteReader();
                if (read.Read())
                {
                    car                  = new OTCFremoFreightCar();
                    car.Id               = carId;
                    car.ModelId          = (read.IsDBNull(0)) ? 0 : read.GetInt32(0);
                    car.AdministrationId = (read.IsDBNull(1)) ? 0 : read.GetInt32(1);
                    car.Number           = (read.IsDBNull(2)) ? "" : read.GetString(2);
                    car.Epoche           = (OTCFremoFreightCar.FREMOEpoche)(read.IsDBNull(3) ? (int)OTCFremoFreightCar.FREMOEpoche.Undefined : read.GetInt32(3));
                    car.TypeName         = (read.IsDBNull(4)) ? "" : read.GetString(4);
                    car.TypeNamePre      = (read.IsDBNull(5)) ? "" : read.GetString(5);
                    car.TypeNamePost     = (read.IsDBNull(6)) ? "" : read.GetString(6);
                    car.UIC              = (read.IsDBNull(7)) ? "" : read.GetString(7);
                    car.Description      = (read.IsDBNull(8)) ? "" : read.GetString(8);
                    car.SpeedMax         = (read.IsDBNull(9)) ? 0 : read.GetInt32(9);
                    car.Longitude        = (read.IsDBNull(10)) ? 0 : read.GetDecimal(10);
                    car.LongBetweenAxels = (read.IsDBNull(11)) ? 0 : read.GetDecimal(11);
                    car.Weight           = (read.IsDBNull(12)) ? 0 : read.GetDecimal(12);
                    car.LoadLongitude    = (read.IsDBNull(13)) ? 0 : read.GetDecimal(13);
                    car.LoadSurface      = (read.IsDBNull(14)) ? 0 : read.GetDecimal(14);
                    car.LoadVolume       = (read.IsDBNull(15)) ? 0 : read.GetDecimal(15);
                    car.LoadComments     = (read.IsDBNull(16)) ? "" : read.GetString(16);
                    car.Options          = (read.IsDBNull(17)) ? 0 : read.GetInt32(17);
                }
                read.Close();

                return(car);
            }
            catch (Exception e)
            {
                throw e;
            }
            finally
            {
                read.Dispose();
                cmd.Dispose();
            }
        }
Esempio n. 2
0
        /// <summary>
        /// Actualiza los datos de una ficha de vagón.
        /// </summary>
        /// <param name="model">Una instáncia de RCFremoCar.</param>
        public void Update(OTCFremoFreightCar car)
        {
            OleDbCommand cmd = null;

            try
            {
                string sql = "UPDATE cars SET " +
                             "carmodelid=@carmodelid, " +
                             "caradminid=@caradminid, " +
                             "carnumber=@carnumber, " +
                             "carepoche=@carepoche, " +
                             "cartype=@cartype, " +
                             "cartypepre=@cartypepre, " +
                             "cartypepost=@cartypepost, " +
                             "caruic=@caruic, " +
                             "cardesc=@cardesc, " +
                             "carmaxspeed=@carmaxspeed, " +
                             "carlong=@carlong, " +
                             "carlongaxels=@carlongaxels, " +
                             "carweight=@carweight, " +
                             "carloadlong=@carloadlong, " +
                             "carloadsurf=@carloadsurf, " +
                             "carloadvol=@carloadvol, " +
                             "carloaddesc=@carloaddesc, " +
                             "caroptions=@caroptions " +
                             "WHERE carid=@carid";

                _app.Connect();
                cmd = new OleDbCommand(sql, _app.Connection);

                cmd.Parameters.Add(new OleDbParameter("@carmodelid", OleDbType.Integer));
                cmd.Parameters["@carmodelid"].Value = car.ModelId;

                cmd.Parameters.Add(new OleDbParameter("@caradminid", OleDbType.Integer));
                cmd.Parameters["@caradminid"].Value = car.AdministrationId;

                cmd.Parameters.Add(new OleDbParameter("@carnumber", OleDbType.WChar, 64));
                cmd.Parameters["@carnumber"].Value = car.Number;

                cmd.Parameters.Add(new OleDbParameter("@carepoche", OleDbType.Integer));
                cmd.Parameters["@carepoche"].Value = (int)car.Epoche;

                cmd.Parameters.Add(new OleDbParameter("@cartype", OleDbType.WChar, 25));
                cmd.Parameters["@cartype"].Value = car.TypeName;

                cmd.Parameters.Add(new OleDbParameter("@cartypepre", OleDbType.WChar, 25));
                cmd.Parameters["@cartypepre"].Value = car.TypeNamePre;

                cmd.Parameters.Add(new OleDbParameter("@cartypepost", OleDbType.WChar, 25));
                cmd.Parameters["@cartypepost"].Value = car.TypeNamePost;

                cmd.Parameters.Add(new OleDbParameter("@caruic", OleDbType.WChar, 25));
                cmd.Parameters["@caruic"].Value = car.UIC;

                cmd.Parameters.Add(new OleDbParameter("@cardesc", OleDbType.WChar, 128));
                cmd.Parameters["@cardesc"].Value = car.Description;

                cmd.Parameters.Add(new OleDbParameter("@carmaxspeed", OleDbType.Integer));
                cmd.Parameters["@carmaxspeed"].Value = car.SpeedMax;

                cmd.Parameters.Add(new OleDbParameter("@carlong", OleDbType.Decimal));
                cmd.Parameters["@carlong"].Value = car.Longitude;

                cmd.Parameters.Add(new OleDbParameter("@carlongaxels", OleDbType.Decimal));
                cmd.Parameters["@carlongaxels"].Value = car.LongBetweenAxels;

                cmd.Parameters.Add(new OleDbParameter("@carweight", OleDbType.Decimal));
                cmd.Parameters["@carweight"].Value = car.Weight;

                cmd.Parameters.Add(new OleDbParameter("@carloadlong", OleDbType.Decimal));
                cmd.Parameters["@carloadlong"].Value = car.LoadLongitude;

                cmd.Parameters.Add(new OleDbParameter("@carloadsurf", OleDbType.Decimal));
                cmd.Parameters["@carloadsurf"].Value = car.LoadSurface;

                cmd.Parameters.Add(new OleDbParameter("@carloadvol", OleDbType.Decimal));
                cmd.Parameters["@carloadvol"].Value = car.LoadVolume;

                cmd.Parameters.Add(new OleDbParameter("@carloaddesc", OleDbType.WChar, 255));
                cmd.Parameters["@carloaddesc"].Value = car.LoadComments;

                cmd.Parameters.Add(new OleDbParameter("@caroptions", OleDbType.Integer));
                cmd.Parameters["@caroptions"].Value = car.Options;

                cmd.Parameters.Add(new OleDbParameter("@carid", OleDbType.Integer));
                cmd.Parameters["@carid"].Value = car.Id;

                cmd.ExecuteNonQuery();
            }
            catch
            {
                throw;
            }
            finally
            {
                cmd.Dispose();
            }
        }