public static string Grabar(string strDatos)
        {
            string         sElementosInsertados = "";
            string         sResul = "";
            SqlConnection  oConn  = null;
            SqlTransaction tr     = null;
            int            nAux   = 0;

            #region abrir conexión y transacción
            try
            {
                oConn = Conexion.Abrir();
                tr    = Conexion.AbrirTransaccion(oConn);
            }
            catch (Exception ex)
            {
                if (oConn.State == ConnectionState.Open)
                {
                    Conexion.Cerrar(oConn);
                }
                throw (new Exception("Error al abrir la conexión."));
            }
            #endregion

            try
            {
                if (strDatos != "") //No se ha modificado nada
                {
                    string[] aAvisos = Regex.Split(strDatos, "///");
                    foreach (string oAvisos in aAvisos)
                    {
                        if (oAvisos == "")
                        {
                            continue;
                        }
                        string[] aValores = Regex.Split(oAvisos, "##");
                        //0. Opcion BD. "I", "U", "D"
                        //1. Id del aviso
                        //2. Descripcion

                        switch (aValores[0])
                        {
                        case "I":
                            nAux = GEMO.DAL.AVISOS.Insert(tr, Utilidades.unescape(aValores[2]));
                            if (sElementosInsertados == "")
                            {
                                sElementosInsertados = nAux.ToString();
                            }
                            else
                            {
                                sElementosInsertados += "//" + nAux.ToString();
                            }
                            break;

                        case "U":
                            GEMO.DAL.AVISOS.Update(tr, short.Parse(aValores[1]), Utilidades.unescape(aValores[2]));
                            break;

                        case "D":
                            GEMO.DAL.AVISOS.Delete(tr, short.Parse(aValores[1]));
                            break;
                        }
                    }
                    Conexion.CommitTransaccion(tr);
                }
            }
            catch (Exception ex)
            {
                Conexion.CerrarTransaccion(tr);
                sResul = Errores.mostrarError("Error al grabar la lista de avisos.", ex);
            }
            finally
            {
                Conexion.Cerrar(oConn);
                if (sResul != "")
                {
                    throw (new Exception(sResul));
                }
            }
            sResul = sElementosInsertados;
            return(sResul);
        }
        public static string Grabar(
            byte byteNueva,                                                       // 0=UPDATE 1=INSERT
            short iID,                                                            // t711_idtarifa
            string sDenominacion,                                                 // t711_denominacion
            byte bIdProveedor,                                                    // t063_idproveedor
            string sCodTarProv,                                                   // t711_CodTarProv
            double dPrecio                                                        // t711_precio
            //double dDesdeAcep,                             // t711_desde_acep
            //double dHastaAcep                              // t711_hasta_acep
            )
        {
            int            nID    = -1;
            string         sResul = "";
            SqlConnection  oConn  = null;
            SqlTransaction tr     = null;

            #region abrir conexión y transacción
            try
            {
                oConn = Conexion.Abrir();
                tr    = Conexion.AbrirTransaccion(oConn);
            }
            catch (Exception ex)
            {
                if (oConn.State == ConnectionState.Open)
                {
                    Conexion.Cerrar(oConn);
                }
                throw (new Exception("Error al abrir la conexión."));
            }
            #endregion

            try
            {
                if (byteNueva == 1)
                {
                    nID = GEMO.DAL.TARIFADATOS.Insert
                          (
                        tr,
                        sDenominacion,                                             // t711_denominacion
                        bIdProveedor,                                              // t063_idproveedor
                        sCodTarProv,                                               // t711_CodTarProv
                        dPrecio                                                    // t711_precio
                        //dDesdeAcep,                                     // t711_desde_acep
                        //dHastaAcep                                      // t711_hasta_acep
                          );
                }
                else //update
                {
                    GEMO.DAL.TARIFADATOS.Update(
                        tr,
                        iID,
                        sDenominacion,                                             // t711_denominacion
                        bIdProveedor,                                              // t063_idproveedor
                        sCodTarProv,                                               // t711_CodTarProv
                        dPrecio                                                    // t711_precio
                        //dDesdeAcep,                                     // t711_desde_acep
                        //dHastaAcep                                      // t711_hasta_acep
                        );
                    nID = iID;
                }
                Conexion.CommitTransaccion(tr);
            }
            catch (Exception ex)
            {
                Conexion.CerrarTransaccion(tr);
                sResul = Errores.mostrarError("Error al grabar la línea.", ex);
            }
            finally
            {
                Conexion.Cerrar(oConn);
                if (sResul != "")
                {
                    throw (new Exception(sResul));
                }
            }
            return(nID.ToString("##,###"));
        }
Beispiel #3
0
        public static string Grabar(
            byte byteNueva,                                                         // 0=UPDATE 1=INSERT
            int iID,                                                                // t708_idlinea
            Nullable <short> shPrefIntern,                                          // t708_prefintern
            long iNumLinea,                                                         // t708_numlinea
            int iNumExt,                                                            // t708_numext
            Nullable <int> iIdempresa,                                              // t313_idempresa
            Nullable <byte> bTipoTarjeta,                                           // t712_idtarjeta
            Nullable <byte> bIdProveedor,                                           // t063_idproveedor
            Nullable <short> shIdMedio,                                             // t134_idmedio
            string sModelo,                                                         // t708_modelo
            string sIMEI,                                                           // t708_IMEI
            string sICC,                                                            // t708_ICC
            string sObserva,                                                        // t708_observa
            string sEstado,                                                         // t710_idestado
            Nullable <short> shIdTarifa,                                            // t711_idtarifa
            Nullable <int> iResponsable,                                            // t001_responsable
            string sTipoUso,                                                        // t708_tipouso
            Nullable <int> iBeneficiario,                                           // t001_beneficiario
            string sDepartamento,                                                   // t708_departamento
            bool bQEQ                                                               // t708_QEQ
            )
        {
            int            nID    = -1;
            string         sResul = "";
            SqlConnection  oConn  = null;
            SqlTransaction tr     = null;

            #region abrir conexión y transacción
            try
            {
                oConn = Conexion.Abrir();
                tr    = Conexion.AbrirTransaccion(oConn);
            }
            catch (Exception ex)
            {
                if (oConn.State == ConnectionState.Open)
                {
                    Conexion.Cerrar(oConn);
                }
                throw (new Exception("Error al abrir la conexión."));
            }
            #endregion
            try
            {
                if (byteNueva == 1)
                {
                    nID = GEMO.DAL.LINEA.Insert
                          (
                        tr,
                        shPrefIntern,                                               // t708_prefintern
                        iNumLinea,                                                  // t708_numlinea
                        iNumExt,                                                    // t708_numext
                        iIdempresa,                                                 // t313_idempresa
                        bTipoTarjeta,                                               // t712_idtarjeta
                        bIdProveedor,                                               // t063_idproveedor
                        shIdMedio,                                                  // t134_idmedio
                        sModelo,                                                    // t708_modelo
                        sIMEI,                                                      // t708_IMEI
                        sICC,                                                       // t708_ICC
                        sObserva,                                                   // t708_observa
                        sEstado,                                                    // t710_idestado
                        shIdTarifa,                                                 // t711_idtarifa
                        iResponsable,                                               // t001_responsable
                        sTipoUso,                                                   // t708_tipouso
                        iBeneficiario,                                              // t001_beneficiario
                        sDepartamento,                                              // t708_departamento
                        bQEQ                                                        // t708_QEQ
                          );
                }
                else //update
                {
                    GEMO.DAL.LINEA.Update(
                        tr,
                        iID,
                        shPrefIntern,                                               // t708_prefintern
                        iNumLinea,                                                  // t708_numlinea
                        iNumExt,                                                    // t708_numext
                        iIdempresa,                                                 // t313_idempresa
                        bTipoTarjeta,                                               // t712_idtarjeta
                        bIdProveedor,                                               // t063_idproveedor
                        shIdMedio,                                                  // t134_idmedio
                        sModelo,                                                    // t708_modelo
                        sIMEI,                                                      // t708_IMEI
                        sICC,                                                       // t708_ICC
                        sObserva,                                                   // t708_observa
                        sEstado,                                                    // t710_idestado
                        shIdTarifa,                                                 // t711_idtarifa
                        iResponsable,                                               // t001_responsable
                        sTipoUso,                                                   // t708_tipouso
                        iBeneficiario,                                              // t001_beneficiario
                        sDepartamento,                                              // t708_departamento
                        bQEQ                                                        // t708_QEQ
                        );
                    nID = iID;
                }
                Conexion.CommitTransaccion(tr);
            }
            catch (Exception ex)
            {
                Conexion.CerrarTransaccion(tr);
                sResul = Errores.mostrarError("Error al grabar la linea (" + iNumLinea.ToString() + ")", ex);
            }
            finally
            {
                Conexion.Cerrar(oConn);
                if (sResul != "")
                {
                    throw (new Exception(sResul));
                }
            }
            return(nID.ToString("#,###"));
        }
Beispiel #4
0
        public static void Procesar(string strDatos)
        {
            SqlConnection  oConn = null;
            SqlTransaction tr    = null;

            string sResul = "";

            int idLin = 0, responsable_origen = 0, responsable_destino = 0;

            try
            {
                GEMO.DAL.REASIGLINEA.Delete(null, int.Parse(HttpContext.Current.Session["IDFICEPI"].ToString()));

                string[] aDatos = Regex.Split(strDatos, "///");
                foreach (string oLinea in aDatos)
                {
                    try
                    {
                        if (oLinea == "")
                        {
                            continue;
                        }
                        string[] aLinea = Regex.Split(oLinea, "##");
                        ///aLinea[0] = idLin
                        ///aLinea[1] = responsable_origen
                        ///aLinea[2] = responsable_destino
                        ///aLinea[3] = procesado

                        idLin = int.Parse(aLinea[0]);
                        responsable_origen  = int.Parse(aLinea[1]);
                        responsable_destino = int.Parse(aLinea[2]);

                        GEMO.DAL.REASIGLINEA.Insert(null, idLin, int.Parse(HttpContext.Current.Session["IDFICEPI"].ToString()), responsable_destino, false, "");

                        if (aLinea[3] == "1" || aLinea[1] == aLinea[2])
                        {
                            GEMO.DAL.REASIGLINEA.Update(null, idLin, int.Parse(HttpContext.Current.Session["IDFICEPI"].ToString()), responsable_destino, true, "");
                            continue;
                        }
                        #region abrir conexión y transacción
                        try
                        {
                            oConn = Conexion.Abrir();
                            tr    = Conexion.AbrirTransaccionSerializable(oConn);
                        }
                        catch (Exception ex)
                        {
                            if (oConn.State == ConnectionState.Open)
                            {
                                Conexion.Cerrar(oConn);
                            }
                            throw (new Exception("Error al abrir la conexión."));
                        }
                        #endregion

                        GEMO.DAL.LINEA.UpdateReasigRes(tr, idLin, responsable_destino);

                        //update proceso OK
                        GEMO.DAL.REASIGLINEA.Update(null, idLin, int.Parse(HttpContext.Current.Session["IDFICEPI"].ToString()), responsable_destino, true, "");

                        Conexion.CommitTransaccion(tr);
                    }
                    catch (Exception ex)
                    {
                        Conexion.CerrarTransaccion(tr);
                        //update proceso KO
                        GEMO.DAL.REASIGLINEA.Update(null, idLin, int.Parse(HttpContext.Current.Session["IDFICEPI"].ToString()), responsable_destino, false, ex.Message);
                        sResul = "Error@#@" + Errores.mostrarError("Error al procesar la reasignación.", ex);
                    }
                    finally
                    {
                        Conexion.Cerrar(oConn);
                        if (sResul != "")
                        {
                            throw (new Exception(sResul));
                        }
                    }
                }// fin foreach
            }
            catch (Exception ex)
            {
                sResul = "Error@#@" + Errores.mostrarError("Error al procesar la reasignación.", ex);
            }
            finally
            {
                Conexion.Cerrar(oConn);
                if (sResul != "")
                {
                    throw (new Exception(sResul));
                }
            }
        }
        public static void Grabar(string strFiguras)
        {
            string         sResul = "";
            SqlConnection  oConn  = null;
            SqlTransaction tr     = null;

            #region abrir conexión y transacción
            try
            {
                oConn = Conexion.Abrir();
                tr    = Conexion.AbrirTransaccion(oConn);
            }
            catch (Exception ex)
            {
                if (oConn.State == ConnectionState.Open)
                {
                    Conexion.Cerrar(oConn);
                }
                throw (new Exception("Error al abrir la conexión."));
            }
            #endregion

            try
            {
                if (strFiguras != "") //No se ha modificado nada de la pestaña de Figuras
                {
                    string[] aUsuarios = Regex.Split(strFiguras, "///");
                    foreach (string oUsuario in aUsuarios)
                    {
                        if (oUsuario == "")
                        {
                            continue;
                        }
                        string[] aFig = Regex.Split(oUsuario, "##");

                        ///aFig[0] = bd
                        ///aFig[1] = t001_idficepi
                        ///aFig[2] = Figuras
                        ///aFig[3] = Correo controladores
                        ///
                        if (aFig[0] == "D")
                        {
                            GEMO.DAL.FIGURAS_PROFESI.DeleteALL(tr, int.Parse(aFig[1]));
                        }
                        else
                        {
                            string[] aFiguras = Regex.Split(aFig[2], ",");
                            foreach (string oFigura in aFiguras)
                            {
                                if (oFigura == "")
                                {
                                    continue;
                                }
                                string[] aFig2 = Regex.Split(oFigura, "@");
                                ///aFig2[0] = bd
                                ///aFig2[1] = Figura
                                ///
                                if (aFig2[0] == "D")
                                {
                                    GEMO.DAL.FIGURAS_PROFESI.Delete(tr, int.Parse(aFig[1]), aFig2[1]);
                                }
                                else
                                {
                                    GEMO.DAL.FIGURAS_PROFESI.Insert(tr, int.Parse(aFig[1]), aFig2[1], aFig[3]);
                                }
                            }
                        }
                    }
                }
                Conexion.CommitTransaccion(tr);
            }
            catch (Exception ex)
            {
                Conexion.CerrarTransaccion(tr);
                sResul = Errores.mostrarError("Error al grabar la lista de figuras.", ex);
            }
            finally
            {
                Conexion.Cerrar(oConn);
                if (sResul != "")
                {
                    throw (new Exception(sResul));
                }
            }
        }