Changeset 9262abf in observatorio


Ignore:
Timestamp:
Oct 16, 2014, 4:32:31 PM (10 years ago)
Author:
Ing. Roldan Vargas <rvargas@…>
Branches:
master
Children:
0bdec62
Parents:
a68fbee
Message:

se sustituye funcion para cargar los años de consulta en los indicadores, en su lugar se hace una consulta a la base de datos segun la opcion seleccionada para cargar los respectivos años de consulta disponibles

File:
1 edited

Legend:

Unmodified
Added
Removed
  • procesos/media/geocadena/js/formularios.js

    r4376b17 r9262abf  
     1/**
     2 * @file formularios.js
     3 * Contiene los formularios de consulta de la aplicación
     4 * @author Ing. Roldan D. Vargas G. rvargas@cenditel.gob.ve
     5 * @author Centro Nacional de Desarrollo e Investigación en Tecnologías Libres (CENDITEL) nodo Mérida
     6 * @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     7 * @date 15-10-2014
     8 * @version 1.0.0
     9 */
    110Ext.QuickTips.init();
    211// Habilita mensaje de error al lado del campo a nivel global
     
    413
    514/**
    6  * @brief Crea los formularios de consulta para filtrar información representada en el mapa sobre las cadenas de producción
     15 * @brief Crea los formularios de consulta para filtrar información representada en el mapa sobre las cadenas de
     16 * producción
    717 *
    818 * @author Ing. Roldan Vargas rvargas@cenditel.gob.ve
     
    4858
    4959/**
    50  * @brief Variable que contiene el formulario con las opciones de los indicadores estadísticos disponibles para la consulta
     60 * @brief Variable que contiene el formulario con las opciones de los indicadores estadísticos disponibles para la
     61 * consulta
    5162 *
    5263 * @author Ing. Roldan Vargas rvargas@cenditel.gob.ve
     
    8192                            console.log("Consulta sobre empleos generados");
    8293                            if (checked) {
    83                                 // Instrucciones que permiten mostrar solo los campos necesarios para la consulta del indicador seleccionado
     94                                // Instrucciones que permiten mostrar solo los campos necesarios para la consulta del
     95                                // indicador seleccionado
    8496                                Ext.getCmp('periodo_consulta').hide();
    8597                                Ext.getCmp('anho').allowBlank = true;
     
    96108                    boxLabel: 'Proporción de empleos generados',
    97109                    name: 'indicador',
    98                     inputValue: 2, // Valor dado al indicador relacionado a la proporción de empleos registrados en SIGESIC
     110                    inputValue: 2, // Valor dado al indicador relacionado a la proporción de empleos registrados en
     111                    // SIGESIC
    99112                    listeners: {
    100113                        check: function(radio, checked) {
    101114                            console.log("Consulta sobre proporción de empleos generados");
    102115                            if (checked) {
    103                                 // Instrucciones que permiten mostrar solo los campos necesarios para la consulta del indicador seleccionado
     116                                // Instrucciones que permiten mostrar solo los campos necesarios para la consulta del
     117                                // indicador seleccionado
    104118                                Ext.getCmp('actividad_ciiu').hide();
    105119                                Ext.getCmp('actividad_ciiu').allowBlank = true;
     
    116130                    boxLabel: 'Índice de especialización',
    117131                    name: 'indicador',
    118                     inputValue: 5, // Valor dado al indicador relacionado al índice de especialización según datos del SIGESIC
     132                    inputValue: 5, // Valor dado al indicador relacionado al índice de especialización según datos del
     133                    // SIGESIC
    119134                    listeners: {
    120135                        check: function(radio, checked) {
    121136                            console.log("Consulta sobre el índice de especialización");
    122137                            if (checked) {
    123                                 // Instrucciones que permiten mostrar solo los campos necesarios para la consulta del indicador seleccionado
     138                                // Instrucciones que permiten mostrar solo los campos necesarios para la consulta del
     139                                // indicador seleccionado
    124140                                Ext.getCmp('actividad_ciiu').show();
    125141                                Ext.getCmp('actividad_ciiu').allowBlank = false;
     
    136152                    boxLabel: 'Proporción de la producción',
    137153                    name: 'indicador',
    138                     inputValue: 6, // Valor dado al indicador relacionado a la proporción de la producción según región seleccionada
     154                    inputValue: 6, // Valor dado al indicador relacionado a la proporción de la producción según región
     155                    // seleccionada
    139156                    listeners: {
    140157                        check: function(radio, checked) {
    141158                            console.log("Consulta sobre la proporción de la producción");
    142159                            if (checked) {
    143                                 // Instrucciones que permiten mostrar solo los campos necesarios para la consulta del indicador seleccionado
     160                                // Instrucciones que permiten mostrar solo los campos necesarios para la consulta del
     161                                // indicador seleccionado
    144162                                Ext.getCmp('actividad_ciiu').hide();
    145163                                Ext.getCmp('actividad_ciiu').allowBlank = true;
     
    150168                                Ext.getCmp('parroquia').show();
    151169                                Ext.getCmp('municipio').show();
     170                                // Instrucciones que permiten cargar los datos de años disponibles para el tipo de
     171                                // consulta a realizar
     172                                cargar_datos_formulario(url_datos_ind, radio.getGroupValue());
    152173                            }
    153174                        }
     
    157178                    boxLabel: 'Consumo Intermedio',
    158179                    name: 'indicador',
    159                     inputValue: 7, // Valor dado al indicador relacionado al consumo intermedio de las principales regiones del pais según datos del INE
     180                    inputValue: 7, // Valor dado al indicador relacionado al consumo intermedio de las principales
     181                    // regiones del pais según datos del INE
    160182                    listeners: {
    161183                        check: function(radio, checked) {
    162184                            console.log("Consulta sobre el consumo de bienes intermedios necesarios para la producción");
    163185                            if (checked) {
    164                                 // Instrucciones que permiten mostrar solo los campos necesarios para la consulta del indicador seleccionado
     186                                // Instrucciones que permiten mostrar solo los campos necesarios para la consulta del
     187                                // indicador seleccionado
    165188                                Ext.getCmp('actividad_ciiu').hide();
    166189                                Ext.getCmp('actividad_ciiu').allowBlank = true;
     
    171194                                Ext.getCmp('parroquia').show();
    172195                                Ext.getCmp('municipio').show();
     196                                cargar_datos_formulario(url_datos_ind, radio.getGroupValue());
    173197                            }
    174198                        }
     
    178202                    boxLabel: 'Proporción de bienes intermedios importados',
    179203                    name: 'indicador',
    180                     inputValue: 9, // Valor dado al indicador relacionado a la proporción de bienes intermedios importados requeridos para la producción nacional
     204                    inputValue: 9, // Valor dado al indicador relacionado a la proporción de bienes intermedios
     205                    // importados requeridos para la producción nacional
    181206                    listeners: {
    182207                        check: function(radio, checked) {
    183208                            console.log("Consulta sobre la proporción de bienes intermedios importados");
    184209                            if (checked) {
    185                                 // Instrucciones que permiten mostrar solo los campos necesarios para la consulta del indicador seleccionado
     210                                // Instrucciones que permiten mostrar solo los campos necesarios para la consulta del
     211                                // indicador seleccionado
    186212                                Ext.getCmp('actividad_ciiu').hide();
    187213                                Ext.getCmp('actividad_ciiu').allowBlank = true;
     
    192218                                Ext.getCmp('parroquia').show();
    193219                                Ext.getCmp('municipio').show();
     220                                cargar_datos_formulario(url_datos_ind, radio.getGroupValue());
    194221                            }
    195222                        }
     
    200227                    boxLabel: 'Población Económicamente Activa',
    201228                    name: 'indicador',
    202                     inputValue: 3, // Valor dado al indicador relacionado a la población económicamente activa según datos del INE
     229                    inputValue: 3, // Valor dado al indicador relacionado a la población económicamente activa según
     230                    // datos del INE
    203231                    listeners: {
    204232                        check: function(radio, checked) {
    205233                            console.log("Consulta sobre la población económicamente activa");
    206234                            if (checked) {
    207                                 // Instrucciones que permiten mostrar solo los campos necesarios para la consulta del indicador seleccionado
     235                                // Instrucciones que permiten mostrar solo los campos necesarios para la consulta del
     236                                // indicador seleccionado
    208237                                Ext.getCmp('actividad_ciiu').hide();
    209238                                Ext.getCmp('actividad_ciiu').allowBlank = true;
     
    214243                                Ext.getCmp('parroquia').hide();
    215244                                Ext.getCmp('municipio').hide();
     245                                cargar_datos_formulario(url_datos_ind, radio.getGroupValue());
    216246                            }
    217247                        }
     
    226256                            console.log("Consulta sobre la tasa de desempleo");
    227257                            if (checked) {
    228                                 // Instrucciones que permiten mostrar solo los campos necesarios para la consulta del indicador seleccionado
     258                                // Instrucciones que permiten mostrar solo los campos necesarios para la consulta del
     259                                // indicador seleccionado
    229260                                Ext.getCmp('actividad_ciiu').hide();
    230261                                Ext.getCmp('actividad_ciiu').allowBlank = true;
     
    235266                                Ext.getCmp('parroquia').hide();
    236267                                Ext.getCmp('municipio').hide();
     268                                cargar_datos_formulario(url_datos_ind, radio.getGroupValue());
    237269                            }
    238270                        }
     
    242274                    boxLabel: 'Índice Nacional de Precios al Consumidor',
    243275                    name: 'indicador',
    244                     inputValue: 8, // Valor dado al indicador relacionado al índice nacional de precios al consumidor (INPC)
     276                    inputValue: 8, // Valor dado al indicador relacionado al índice nacional de precios al consumidor
     277                    // (INPC)
    245278                    listeners: {
    246279                        check: function(radio, checked) {
    247280                            console.log("Consulta sobre el índice nacional de precios al consumidor");
    248281                            if (checked) {
    249                                 // Instrucciones que permiten mostrar solo los campos necesarios para la consulta del indicador seleccionado
     282                                // Instrucciones que permiten mostrar solo los campos necesarios para la consulta del
     283                                // indicador seleccionado
    250284                                Ext.getCmp('actividad_ciiu').hide();
    251285                                Ext.getCmp('actividad_ciiu').allowBlank = true;
     
    256290                                Ext.getCmp('parroquia').hide();
    257291                                Ext.getCmp('municipio').hide();
     292                                cargar_datos_formulario(url_datos_ind, radio.getGroupValue());
    258293                            }
    259294                        }
     
    266301
    267302/**
    268  * @brief Función que permite cargar los años de consulta para los indicadores estadísticos
     303 * @brief Variable que contiene la configuración requerida para el store de años
    269304 *
    270305 * @author Ing. Roldan Vargas rvargas@cenditel.gob.ve
    271306 * @author Centro Nacional de Desarrollo e Investigación en Tecnologías Libres (CENDITEL) nodo Mérida
    272307 * @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
    273  * @date 18-08-2014
    274  * @returns {Array} con los anhos a mostrar para la consulta
    275  */
    276 function cargar_anho() {
    277     var anhos = [];
    278     var d = new Date();
    279 
    280     count = 0;
    281     for (i=2010; i<= d.getFullYear(); i++) {
    282         anhos[count] = [i, i];
    283         count++;
    284     }
    285 
    286     return anhos;
    287 
    288 }
     308 * @date 16-10-2014
     309 * @type {autoDestroy: boolean, storeId: string, fields: {name: string, type: string}
     310 */
     311var anhos_store = new Ext.data.ArrayStore({
     312    autoDestroy: true,
     313    storeId: 'anhos_store',
     314    fields: [
     315        {name: 'display', type: 'string'},
     316        {name: 'value', type: 'string'}
     317    ]
     318});
    289319
    290320/**
     
    308338        {
    309339            xtype: 'combo',
    310             editable: true,
     340            editable: false,
    311341            id: 'anho',
    312342            name: 'anho',
    313343            fieldLabel: 'Año',
    314344            allowBlank: false,
    315             lazyRender: true,
    316             selectOnFocus: true,
     345            lazyRender: false,
     346            selectOnFocus: false,
    317347            forceSelection: true,
    318348            emptyText: 'Seleccione año a consultar',
    319             store: cargar_anho()
     349            store: anhos_store,//cargar_anho()
     350            valueField: 'value',
     351            displayField: 'display',
     352            mode: 'local',
     353            triggerAction: 'all',
     354            listeners: {
     355               'afterrender': function(combo) {
     356                    var selectedRecord = combo.getStore().getAt(0);
     357                    combo.setValue(selectedRecord);
     358                }
     359            }
    320360        },
    321361        {
     
    342382
    343383/**
    344  * @brief Variable que contiene el formulario para la consulta de la actividad económica a georeferenciar en los indicadores estadísticos
     384 * @brief Variable que contiene el formulario para la consulta de la actividad económica a georeferenciar en los
     385 * indicadores estadísticos
    345386 *
    346387 * @author Ing. Roldan Vargas rvargas@cenditel.gob.ve
     
    370411
    371412/**
    372  * @brief Variable que contiene el formulario con las capas disponibles a geoireferenciar para los indicadores estadísticos
     413 * @brief Variable que contiene el formulario con las capas disponibles a geoireferenciar para los indicadores
     414 * estadísticos
    373415 *
    374416 * @author Ing. Roldan Vargas rvargas@cenditel.gob.ve
     
    487529                });
    488530
    489                 // Reglas que permiten mostrar la información sobre las distintas densidades de la capa dispuestas para los indicadores
     531                // Reglas que permiten mostrar la información sobre las distintas densidades de la capa dispuestas para
     532                // los indicadores
    490533                var rules = [
    491534                    new OpenLayers.Rule({
     
    672715    }]
    673716});
     717
     718/**
     719 * @brief Función que permite cargar los años de consulta para los indicadores estadísticos
     720 *
     721 * @author Ing. Roldan Vargas rvargas@cenditel.gob.ve
     722 * @author Centro Nacional de Desarrollo e Investigación en Tecnologías Libres (CENDITEL) nodo Mérida
     723 * @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     724 * @date 16-10-2014
     725 */
     726function cargar_datos_formulario(url, opcion) {
     727    $.getJSON(url, {opcion: opcion}, function(datos) {
     728        if (datos.resultado) {
     729            // Variable que inicializa un arreglo vacío
     730            var data = Array();
     731
     732            for (i=0; i<=datos.anhos.length; i++) {
     733                if (typeof (datos.anhos[i]) != "undefined") {
     734                    // Agrega los elementos que serán mostrados en el combo de años
     735                    data.push([datos.anhos[i], datos.anhos[i]]);
     736                }
     737            }
     738           
     739            // carga los datos de los anhos de acuerdo a la opción seleccionada
     740            anhos_store.loadData(data,false);
     741            Ext.getCmp('anho').reset();
     742            // carga los datos en el combo correspondiente a los años
     743            Ext.getCmp('anho').store.reload(data);
     744
     745        }
     746        else {
     747            // Muestra un mensaje de alerta al usuario en caso de no poderse procesar la petición
     748            Ext.Msg.alert('Error', e);
     749        }
     750    });
     751}
Note: See TracChangeset for help on using the changeset viewer.