Ejemplo n.º 1
0
        public virtual void UpdateCodigoOrden()
        {
            bool es_numero = false;

            CodigoOrden = string.Empty;

            for (int i = 0; i < Codigo.Length; i++)
            {
                if (Codigo[i] != '.')
                {
                    if (char.IsNumber(Codigo[i]))
                    {
                        if (!es_numero)
                        {
                            es_numero = true;
                            if (!CodigoOrden.EndsWith(".") &&
                                CodigoOrden != string.Empty)
                            {
                                CodigoOrden += ".";
                            }
                        }
                    }
                    else
                    {
                        if (es_numero)
                        {
                            es_numero = false;
                            if (!CodigoOrden.EndsWith(".") &&
                                CodigoOrden != string.Empty)
                            {
                                CodigoOrden += ".";
                            }
                        }
                    }
                }
                CodigoOrden += Codigo[i];
            }

            string codigo = CodigoOrden;

            // Actualizamos el campo de ordenación
            if (codigo.IndexOf(".") == -1)
            {
                CodigoOrden = codigo;
                CodigoOrden = codigo;
            }
            else
            {
                CodigoOrden = string.Empty;
                string cadena = codigo;
                while (cadena != string.Empty)
                {
                    int    pos      = cadena.IndexOf(".");
                    string prepunto = string.Empty;

                    if (pos == -1)
                    {
                        prepunto = cadena;
                        cadena   = string.Empty;
                    }
                    else
                    {
                        prepunto = cadena.Substring(0, pos);
                        cadena   = cadena.Substring(pos + 1);
                    }

                    try
                    {
                        int valor = Convert.ToInt32(prepunto);
                        CodigoOrden += valor.ToString("00");
                    }
                    catch
                    {
                        CodigoOrden += prepunto;
                    }

                    if (cadena != string.Empty)
                    {
                        CodigoOrden += ".";
                    }
                }
                CodigoOrden = CodigoOrden;
            }
        }
Ejemplo n.º 2
0
        public virtual void UpdateCodigoOrden()
        {
            // Actualizamos el campo de ordenación
            //if (_codigo.IndexOf(".") == -1)
            //{
            //    _codigo_orden = _codigo;
            //    CodigoOrden = _codigo;
            //}
            //else
            //{
            //    string pospunto = _codigo.Substring(_codigo.IndexOf(".") + 1);

            //    try
            //    {
            //        //Comprobamos que es un nº
            //        Convert.ToInt32(pospunto);

            //        if (!pospunto.StartsWith("0") && pospunto.Length == 1)
            //        {
            //            _codigo_orden = _codigo.Substring(0, _codigo.IndexOf(".") + 1) + "0" + pospunto;
            //            CodigoOrden = _codigo_orden;
            //        }
            //        else
            //        {
            //            _codigo_orden = _codigo;
            //            CodigoOrden = _codigo;
            //        }

            //    }
            //    catch
            //    {
            //        _codigo_orden = _codigo;
            //        CodigoOrden = _codigo;
            //    }
            //}// Actualizamos el campo de ordenación

            bool es_numero = false;

            CodigoOrden = string.Empty;

            for (int i = 0; i < Codigo.Length; i++)
            {
                if (Codigo[i] != '.')
                {
                    if (char.IsNumber(Codigo[i]))
                    {
                        if (!es_numero)
                        {
                            es_numero = true;
                            if (!CodigoOrden.EndsWith(".") &&
                                CodigoOrden != string.Empty)
                            {
                                CodigoOrden += ".";
                            }
                        }
                    }
                    else
                    {
                        if (es_numero)
                        {
                            es_numero = false;
                            if (!CodigoOrden.EndsWith(".") &&
                                CodigoOrden != string.Empty)
                            {
                                CodigoOrden += ".";
                            }
                        }
                    }
                }
                CodigoOrden += Codigo[i];
            }

            string codigo = CodigoOrden;


            if (codigo.IndexOf(".") == -1)
            {
                CodigoOrden = codigo;
                CodigoOrden = codigo;
            }
            else
            {
                CodigoOrden = string.Empty;
                string cadena = codigo;
                while (cadena != string.Empty)
                {
                    int    pos      = cadena.IndexOf(".");
                    string prepunto = string.Empty;

                    if (pos == -1)
                    {
                        prepunto = cadena;
                        cadena   = string.Empty;
                    }
                    else
                    {
                        prepunto = cadena.Substring(0, pos);
                        cadena   = cadena.Substring(pos + 1);
                    }

                    try
                    {
                        int valor = Convert.ToInt32(prepunto);
                        CodigoOrden += valor.ToString("00");
                    }
                    catch
                    {
                        CodigoOrden += prepunto;
                    }

                    if (cadena != string.Empty)
                    {
                        CodigoOrden += ".";
                    }
                }
                CodigoOrden = CodigoOrden;
            }
        }