Compartimentado nuestro Script

Siempre sigo las buenas prácticas para el desarrollo de aplicaciones Qlik, pero aún así había veces que veía que me faltaba algo más para añadir claridad al código, Qlik tiene un sistema de pestañas para el código para hacer separaciones lógicas (ya que internamente está todo seguido) pero no era suficiente. Sobre todo, tenía el problema durante la fase de diseño ya que cuando está todo terminado y el servidor se encarga de recargar los QVWs, como que te da igual el script.

¿Y que es compartimentar el script? Es símplemente hacer una aproximación más parecida al desarrollo de aplicaciones “normales” esto es crear funciones y procedimientos y finalmente llamarlos desde un procedimiento principal.

Sobre todo en el momento del desarrollo, va muy bien esto de compartimentar el script, ya que te facilita el poder ejecutar el script por partes. Yo antes esto lo hacía metiendo el código dentro de unos “if” inmensos, y ahora meto el código dentro de cada procedimiento.

Por ejemplo tengo varios procedimientos “estándar” que les llamo:

  • Variables
  • NormalizarYGuardar
  • CrearCalendario

Y dependiendo la fase en la que esté tengo uno por cada extracción de fuente de datos o para crear distintas partes del modelo, etc… y finalmente se van llamando desde la última pestaña. Pudiendo crear variables para llamar a esos procedimientos o no.

ExtractorPor ejemplo, esta es la fase extractora de un proyecto, y con variables controlo que fuentes de datos quiero extraer o no, dependiendo lo que esté probando en ese momento. 

SUB LoadVariables
SUB NormalizeStore(_Table, _Stage, _Drop)
SUB LoadSynergist

CALL LoadVariables;
IF (vLoadSynergist) THEN
CALL LoadSynergist;
ENDIF

IF (vLoadMC) THEN
CALL LoadMediaCentre;
ENDIF

IF (vLoadExcel) THEN
CALL LoadExcels;
ENDIF

Y con eso se mejora un poco más la compresión del script en lugar de tener un “código spaguetti

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.