/// <summary>
    ///
    /// </summary>
    protected void ModificaDestino()
    {
        // *** DestinoExternoTelefonía => Modificación en DestinosTelefonía
        ServiciosCD40.DestinosExternos dExterno = new ServiciosCD40.DestinosExternos();
        dExterno.IdSistema   = (string)Session["idsistema"];
        dExterno.IdDestino   = TBDestino.Text;
        dExterno.TipoDestino = 1;
        dExterno.IdPrefijo   = Convert.ToUInt32(DDLPrefijo.SelectedValue);
        dExterno.IdAbonado   = (TBAbonado.Text.Length > 0) ? TBAbonado.Text : null;

        /**
         * AGL 2012.06.15. ID.125. "No se anade el grupo a la tabla de Destinos de Telefonía"
         *      nota: siguiendo el código, no veo donde se hace el mencionado "base.update()"
         */
        // Aunque IdGrupo no es de la tabla DestinosExternos,
        // la clase hereda de DestinosTelefonía y se hace una llamada a base.Update()
        dExterno.IdGrupo = (TBGrupo.Text.Length > 0) ? TBGrupo.Text : null;
        ServiceServiciosCD40.ActualizaDestino(dExterno, TBRecurso.Text, TBGrupo.Text.Length > 0 && DDLGrupo.Items.FindByText(TBGrupo.Text) == null);

        #region Sincroniza CD30
        Configuration config = WebConfigurationManager.OpenWebConfiguration("~");
        KeyValueConfigurationElement sincronizar = config.AppSettings.Settings["SincronizaCD30"];
        if ((sincronizar != null) && (Int32.Parse(sincronizar.Value) == 1))
        {
            SincronizaCD30.SincronizaCD30 sincro = new SincronizaCD30.SincronizaCD30();
            int prefijoRed = 0;
            switch (Convert.ToUInt32(DDLPrefijo.SelectedValue))
            {
            case 1:                    //LCEN
                prefijoRed = 2;
                if (TBAbonado.Text.Length > 0)
                {
                    TBAbonado.Text = "";
                }
                break;

            case 32:                    //PP
                prefijoRed = 5;
                if (TBAbonado.Text.Length > 0)
                {
                    TBAbonado.Text = "";
                }
                break;

            case 3:                    //ATS
                prefijoRed = 3;
                break;

            case 8:
                prefijoRed = 8;
                break;

            case 9:
                prefijoRed = 9;
                break;

            default:
                break;
            }
            if (prefijoRed != 0)
            {
                switch (sincro.ModificacionDestino(TBDestino.Text, prefijoRed, TBRecurso.Text, (TBGrupo.Text.Length > 0 ? Int32.Parse(TBGrupo.Text) : 0), (TBAbonado.Text.Length > 0) ? TBAbonado.Text : ""))
                {
                case 127:
                    cMsg.alert((string)GetGlobalResourceObject("Espaniol", "Cod127"));
                    break;

                case 128:
                    cMsg.alert((string)GetGlobalResourceObject("Espaniol", "Cod128"));
                    break;

                default:
                    break;
                }
            }
        }
        #endregion
    }
    /// <summary>
    ///
    /// </summary>
    protected void AnadeDestino()
    {
        try
        {
            /*
             * // Si el grupo no está en la lista, se añade a la base de datos.
             * if (TBGrupo.Text.Length > 0 && DDLGrupo.Items.FindByText(TBGrupo.Text) == null)
             * {
             * ServiciosCD40.GruposTelefonia gTel = new ServiciosCD40.GruposTelefonia();
             * gTel.IdSistema = (string)Session["idsistema"];
             * gTel.IdGrupo = TBGrupo.Text;
             *
             *      if (ServiceServiciosCD40.InsertSQL(gTel) < 0)
             * logDebugView.Warn("(DestinosTelefonia-AnadeDestino): No se han podido insertar el Grupo de Telefonia(InsertSQL)");
             * }
             */

            ServiciosCD40.DestinosExternos dExterno = new ServiciosCD40.DestinosExternos();
            dExterno.IdSistema   = (string)Session["idsistema"];
            dExterno.IdDestino   = TBDestino.Text;
            dExterno.TipoDestino = 1;
            dExterno.IdPrefijo   = Convert.ToUInt32(DDLPrefijo.SelectedValue);
            dExterno.IdAbonado   = (TBAbonado.Text.Length > 0) ? TBAbonado.Text : null;

            /**
             * AGL 2012.06.15. ID.125. "No se anade el grupo a la tabla de Destinos de Telefonía"
             *      nota: siguiendo el código, no veo donde se hace el mencionado "base.update()"
             */
            // Aunque IdGrupo no es de la tabla DestinosExternos, la clase hereda de
            // DestinosTelefonía y se hace una llamada a base.Insert()
            dExterno.IdGrupo = (TBGrupo.Text.Length > 0) ? TBGrupo.Text : null;


            ServiceServiciosCD40.AnadeDestino(dExterno, TBRecurso.Text, TBGrupo.Text.Length > 0 && DDLGrupo.Items.FindByText(TBGrupo.Text) == null);

            /*
             * if (ServiceServiciosCD40.InsertSQL(dExterno) < 0)
             * logDebugView.Warn("(DestinosTelefonia-AnadeDestino): No se han podido insertar el Destino Externo de Telefonia(InsertSQL)");
             * if (dExterno.IdPrefijo == 1)  // LCEN
             * ActualizaRecursoLCEN(dExterno, TBRecurso.Text);
             * else if (dExterno.IdPrefijo == 32)    // PP
             * ActualizaRecursoTelefonia(dExterno, TBRecurso.Text);
             */


            #region Sincroniza CD30
            Configuration config = WebConfigurationManager.OpenWebConfiguration("~");
            KeyValueConfigurationElement sincronizar = config.AppSettings.Settings["SincronizaCD30"];
            if ((sincronizar != null) && (Int32.Parse(sincronizar.Value) == 1))
            {
                SincronizaCD30.SincronizaCD30 sincro = new SincronizaCD30.SincronizaCD30();
                int prefijoRed = 0;
                switch (Convert.ToUInt32(DDLPrefijo.SelectedValue))
                {
                case 1:    //LCEN
                    prefijoRed = 2;
                    if (TBAbonado.Text.Length > 0)
                    {
                        TBAbonado.Text = "";
                    }
                    break;

                case 32:    //PP
                    prefijoRed = 5;
                    if (TBAbonado.Text.Length > 0)
                    {
                        TBAbonado.Text = "";
                    }
                    break;

                case 3:    //ATS
                    prefijoRed = 3;
                    break;

                case 4:    //RTB
                    prefijoRed = 4;
                    break;

                case 6:    //PABX
                    prefijoRed = 6;
                    break;

                case 8:
                    prefijoRed = 8;
                    break;

                case 9:
                    prefijoRed = 9;
                    break;

                default:
                    break;
                }
                if (prefijoRed != 0)
                {
                    switch (sincro.AltaDestino(TBDestino.Text, prefijoRed, TBRecurso.Text, (TBGrupo.Text.Length > 0 ? Int32.Parse(TBGrupo.Text) : 0), (TBAbonado.Text.Length > 0) ? TBAbonado.Text : ""))
                    {
                    case 127:
                        cMsg.alert((string)GetGlobalResourceObject("Espaniol", "Cod127"));
                        break;

                    case 128:
                        cMsg.alert((string)GetGlobalResourceObject("Espaniol", "Cod128"));
                        break;

                    default:
                        break;
                    }
                }
            }
            #endregion
        }
        catch (Exception e)
        {
            logDebugView.Error("(DestinosTelefonia-AnadeDestino):", e);
        }
    }