martes, 24 de marzo de 2015

Eliminar conexiones activas en Base de Datos Postgresql

Suele ocurrir que al querer eliminar una base de datos (Drop database) nos encontremos con un mensaje que nos dice que no podemos eliminar por que existen otros usuarios usando la BD al mismo tiempo o por sesiones activas, por ejm. este mensaje.

database "DB_Asistencias" is being accessed by other users
En tal caso podemos usar esta consulta que usé hoy en el trabajo, para Postgres 9.1 (la encontré en StackOverFlow)

SELECT pg_terminate_backend(pg_stat_activity.procpid)
FROM pg_stat_activity
WHERE pg_stat_activity.datname = 'DB_Asistencias'
  AND procpid <> pg_backend_pid();

domingo, 22 de marzo de 2015

Cómo vaciar o limpiar un array en JavaScript - Ejemplo

Hola si tenemos  un array en JavaScript como este por Ejm.

var array = ['hola', 'mundo'];

y lo queremos dejar vacio ya sea por un bucle o por cualquier motivo, entonces

array.length = 0;

solo con esto lo tendremos listo.

Abajo una prueba en la consola de Google Chrome, más adelante escribiré algunos artículos de como sacarle mayor provecho a esta consola.


jueves, 19 de marzo de 2015

Como obtener el valor de un inputText desde Iframe Jquery - Ejemplo

Si desde un iframe necesitamos obtener el valor de un inputText que se encuentra en la página que lo contiene debemos hacer lo siguiente:

var valor = $(parent.document).find('#inputTextEjemplo').val();

Como obtener variables entre iframes y páginas padre (contenedores, parents) usando JavaScript Ejemplo

De padre a hijo

window.frames["0"].window.variabledeiframe;

El 0 es el id del iframe, si solo se cuenta con un iframe basta con el 0.

De hijo a padre

window.parent.variabledelcontenedor;

La variable debe de ser global para ello declarela dentro de una etiqueta <SCRIPT>var variableGlobal; </SCRIPT> fuera de cualquier función.

Cambiar idioma en JQUERY JTABLE - Ejemplo Práctico


Como cambiar el idioma del JQUERY JTABLE que viene por defecto al que nosotros queramos y personalizarlo. Respondo preguntas...


$(document).ready(function () {
        $('#PuestosTablaContenidos').jtable({
            title: 'Puestos',
            paging: true,
    pageSize: 30,
            actions: {
                listAction: '<%= request.getContextPath()%>/srvPuestos?frmAccion=list',
                createAction: '<%= request.getContextPath()%>/srvPuestos?frmAccion=create',
                updateAction: '<%= request.getContextPath()%>/srvPuestos?frmAccion=update',
                deleteAction: '<%= request.getContextPath()%>/srvPuestos?frmAccion=delete'
            },
            fields: {
                 pue_codigo: {
                    title: 'Codigo',
    width: '15%',
    key: true
                },
                pue_nombre:{
                    title: 'Puesto',
                    width: '10%'
                }
            },
             messages:{
                    serverCommunicationError: 'Ocurrio un error mientras se comunicaba con el servidor.',
                    loadingMessage: 'Cargando Puestos...',
                    noDataAvailable: 'No hay datos disponibles!',
                    addNewRecord: 'Nuevo Puesto',
                    editRecord: 'Editar Puesto',
                    areYouSure: 'Estas seguro?',
                    deleteConfirmation: 'Este Puesto será eliminado. Estas seguro?',
                    save: 'Guardar',
                    saving: 'Guardando',
                    cancel: 'Cancelar',
                    deleteText: 'Eliminar',
                    deleting: 'Eliminando',
                    error: 'Error',
                    close: 'Cerrar',
                    cannotLoadOptionsFor: 'No se puede cargar opciones por campo {0}',
                    pagingInfo: 'Mostrando {0}-{1} de {2}',
                    pageSizeChangeLabel: 'Cantidad de Puestos',
                    gotoPageLabel: 'Ir a la pagina',
                    canNotDeletedRecords: 'No se puede eliminar {0} de {1} registros!',
                    deleteProggress: 'Eliminando {0} de {1} registros, procesando...'
             }
        });
        $('#PuestosTablaContenidos').jtable('load');
    });