Guía 28 – Situar el servidor en un «timezone» concreto

Aquellos que alquilamos un hosting para nuestros desarrollos, yo me encuentro en este caso, vemos que nuestras máquinas unas veces están en un país y otras veces en otro, y que sobre todo ni el sistema operativo ni el gestor de base de datos está en la zona horaria que a mi me interesa. En algunos casos, a través de CPanel se puede configurar el PHP y se puede indicar la zona horaria (time_zone), pero no así el gestor de base de datos, estando normalmente en configuración UTC.

También, puede ser que aún teniendo la capacidad de ajustar el servidor, requieras que diferentes aplicaciones tengan zonas horarias diferentes.

En mi caso concreto, al residir en Madrid, el server, tanto en SO como en DB, están en una hora menos.

Objetivo

Configurar las aplicaciones de PHPRunner para situarla en una zona horaria independientemente de la zona horaria del servidor.

DEMO: https://fhumanes.com/change_time/

Si te interesa este tema sigue leyendo el artículo de este enlace.

Convertir documento MS Office a PDF (actualización)

He hecho una pequeña modificación a la solución y es que las opciones de programa de conversión se envíen desde el cliente.

Las opciones las podéis consultar aquí . Veréis que hay muchas y que algunas son diferentes si se convierte un documento Word o un documento Excel.

Para que el programa «server_pdf» sirva para cualquier propósito, he añadido al cliente la opción de enviar las opciones del programa «OfficeToPDF».

Podéis consultar el artículo a través de este enlace.

Guía 27 – Validaciones por AJAX personalizados

Estamos acostumbrados a que PHPRunner hace algunas validaciones utilizando Ajax (comunicación asíncrona), por ejemplo para validar que un campo no esté duplicado, pero no está claro cómo añadir este tipo de validaciones personalizadas cuando el usuario está rellenando un formulario de datos.

En jerga de tecnología, se indica que se desea comunicación por Ajax entre el navegador y el servidor de aplicaciones.

Este tipo de comunicaciones se puede utilizar para validar un dato o recuperar una información del servidor partiendo de la información ya informada en el formulario.

Objetivo

Describir de forma sencilla y clara cómo hacer comunicaciones Ajax (entre navegador y servidor de aplicaciones) para validad y/o recuperar datos

DEMO: https://fhumanes.com/guia27/

Si estas interesado en este tema haz clic en este enlace al artículo completo y a la descarga del proyecto

Guía 26 – Gestión de registros seleccionados de página LIST

Este ejemplo es bastante simple pero parece que a los desarrolladores de PHPRunner, en algunos casos, nos cuesta recordar lo fácil que lo hace el producto para tratar los registros que previamente hemos seleccionado en una página LIST.

El ejemplo tiene como objetivo registrar si un registro se ha archivado o no, con que actualiza un campo en el registro con esta información y además crea un registro en la tabla de archivados, con la información del registro original.

Para el ejemplo me he fijado estos requisitos:

  • Se actualizará el registro seleccionado, indicado que el registro se ha «archivado» y se creará un registro copia del anterior, en la tabla de «archivados».
  • Se crearán 2 botones uno para «Archivar» y otro «Des-archivar» que hace la operación contraria.
  • No se hará la operación si el registros está en el estado que se solicita debe quedar.

Objetivo

Facilitar la compresión y disponer de un ejemplo para el tratamiento de los registros seleccionados en una página de tipo LIST.

DEMO: https://fhumanes.com/guia26

Si deseas más información y obtener el código del ejemplo sigue leyendo el artículo.

La mejor solución para crear documentos e informes PDF (actualización)

Se ha ampliado el ejemplo para incluir informe de ejemplo de:

  • Tabla dinámica.- Muy útil para información del tipo Maestro-> Detalle, cuando se desea mostrar la información de Detalle como una tabla.
  • Subreport enlazados.- Por cómo está solucionado me cuesta ver las ventajas de esta solución con respecto a la de tablas u otros formatos, pero es algo que otros usuarios solicitan y le dan una importancia grande. La implementación actual es potente pero requiere hacer bastantes pruebas hasta ajustar la presentación que se desee.

Además se facilitan una serie de «SECRETOS» que te ayudarán a entender el funcionamiento y sobre todo, te explicarán cómo se resuelven situaciones que es muy probable que si no es así, te requieran muchas pruebas.

El artículo que explica esta solución se mantiene actualizado con los cambios, así como con los ejemplos. Accede a él para ver la última actualización.

Blog personal para facilitar soporte gratuito a usuarios de React y PHPRunner