コード例 #1
0
    protected string Grabar(string strDatos)
    {
        string sResul = "";

        try
        {
            oConn = Conexion.Abrir();
            tr    = Conexion.AbrirTransaccion(oConn);
        }
        catch (Exception ex)
        {
            if (oConn.State == ConnectionState.Open)
            {
                Conexion.Cerrar(oConn);
            }
            sResul = "Error@#@" + Errores.mostrarError("Error al abrir la conexión", ex);
            return(sResul);
        }

        try
        {
            string[] aMoneda = Regex.Split(strDatos, "///");
            foreach (string oMoneda in aMoneda)
            {
                if (oMoneda == "")
                {
                    continue;
                }
                string[] aValores = Regex.Split(oMoneda, "##");

                //0. Opcion BD. "D"
                //1. ID Moneda
                //2. Denominación importes
                //3. Cambio actual
                //4. Cambio siguiente
                //5. A partir de
                //6. Gestión - estado
                //7. Visibilidad - estado

                switch (aValores[0])
                {
                case "U":
                    MONEDA.Update(tr, aValores[1], "", (aValores[6] == "1") ? true : false, (aValores[3] == "") ? null : (decimal?)decimal.Parse(aValores[3]), (aValores[4] == "") ? null : (decimal?)decimal.Parse(aValores[4]), (aValores[5] == "") ? null : (int?)int.Parse(aValores[5]), Utilidades.unescape(aValores[2]), (aValores[7] == "1") ? true : false);
                    break;
                }
            }
            Conexion.CommitTransaccion(tr);

            sResul = "OK@#@";
            if (HttpContext.Current.Cache["Lista_Monedas"] != null)
            {
                HttpContext.Current.Cache.Remove("Lista_Monedas");
            }
        }
        catch (Exception ex)
        {
            Conexion.CerrarTransaccion(tr);
            sResul = "Error@#@" + Errores.mostrarError("Error al grabar las monedas.", ex) + "@#@";
        }
        finally
        {
            Conexion.Cerrar(oConn);
        }

        return(sResul);
    }