Archives: 09/09/2015

Nomenclatura de stored Procedure para grillas y DataTables

Armado

Todas las grillas del sistema serán completadas mediante el uso de stored procedure que luego serán registrados como consultas disponibles en el módulo DataTables. A continuación detallamos la nomenclatura del armado de los mismos:

  • El stored procedure será nombrado de al siguiente manera: Co_[abreviatura de gestión]_SP_[nombre de la entidad]. Ejemplo: Co_MK_SP_Eventos. Dentro del stored procedure se incluirán todas las restricciones propias que corresponden al SP específicamente (joins, where, etc.). Además incluirá como parámetros opcionales todos los rangos asociados al mismo. De ser necesario, podremos incluir toda la lógica específica para armar la salida del store procedure en custión.
  • El stored procedure realizará la invocación a una función cuyo retorno será de tipo tabla. Nombraremos a esta función utilizando la nomenclatura: Co_[abreviatura de gestión]_FX_[nombre de la entidad]. Dicha función recibirá como parámetro todos los rangos asociadas a la misma que serán inyectados desde el stored procedure que la invoca. La función NO contendrá ninguna lógica en particular sólo la clausula de WHERE específica acorde a los rangos a utilizar. Ejemplo: Co_MK_FX_Eventos. ATENCIÓN: las columnas de la tabla de retorno deberán ser iguales a los alias asignados a las columnas de la vista invocada.
  • Dentro de la función se hará un “SELECT * FROM” de una vista que nombraremos así: Co_[abreviatura de gestión]_FX_[nombre de la entidad]. Ejemplo: Co_MK_VW_Eventos. En la misma haremos la proyección correspondiente, incluyendo una columna para las etiquetas (_tags) y el estado de la fila (_state) y toda la lógica común que podríamos llegar a compartir con diferentes stored procedures/funciones que utilicen dicha función.

Registro en vistas del sistema

A continuación detallaremos los pasos para registrar los stored procedures de las grillas como vistas del sistema:

  • En caso de una nueva grilla: utilizar el SP Codigos_Seg_Vistas_Sistema_insert para el registro de la misma completando los parámetros según corresponda:
    • @Id: dejar en null para que el SP devuelva un ID correlativo.
    • @Modulo: indicar abreviatura de gestión/módulo (ver tabla Codigos_Gestion, columna Abrebiatura)
    • @Descripcion: objetivo de la consulta en cuestión. SER LO MAS PRECISO EN LA REDACCIÓN.
    • @FromTabla: dejar en ” (vacío).
    • @EsStoredProcedure: colocar 1 (true).
    • @NombreStoredProcedure: colocar el nombre del stored procedure.
    • @Tipo: dejar en ” (vacío).
    • @TipoResultado: colocar ‘multiple’ (sin acento).
    • @TipoEntidad: dejar en ” (vacío).
    • @TipoAccionNet: dejar en ” (vacío).
    • @EjecucionSobreInformac: colocar 0 (false) ó 1 (true) según corresponda.
    • @Consolida: colocar 0 (false).
    • @EnviarACache: colocar 0 (false).
  • En caso de ser una grilla existente, modificar la columna NombreStoredProcedure colocando el nuevo nombre de SP a utilizar.
  • En ambos casos, se deberán colocar los rangos del SP en la tabla Codigos_Seg_Vistas_Rangos.
  • Verificar las claves de los rangos y los nombre de los parámetros en la tabla Codigos_DefinicionesRangos_Net. Donde:
    • CLAVE: es el identificador único del rango.
    • DDFORMULACRYSTAL: valor a tomar en cuenta para el nombre del parámetro DESDE del SP. Ejemplo: DDFecha.
    • HHFORMULACRYSTAL: valor a tomar en cuenta para el nombre del parámetro HASTA del SP. Ejemplo: HHFecha.

En caso de necesitar un nuevo rango coordinar con LPERDOMO y FHERMO.

Registro en DataTables

A continuación detallaremos los pasos para registrar los stored procedures de las grillas como DataTables en el módulo Analytics:

  • Incorporar un nuevo registro en la tabla Codigos_Query de la base de datos INFORMAC_DESARROLLO. El id del query se armará: [número de gestión]0000, siendo estos últimos números establecidos de manera correlativa a medida que agregamos consultas. Ejemplo: 90002 – Eventos. Colocaremos en la columna GestionId el número de gestión correspondiente (ver tabla Codigos_Gestion).
  • A continuación ingresaremos en la tabla Codigos_Query_Columnas las columnas que devuelve la consulta, indicando el orden y el alias de las columnas. Para éstos casos, en la columna Tabla_Id pondremos el mismo valor que colocamos en la columna Alias.
  • Finalmente, ingresaremos los rangos asociados a la consulta en la tabla Codigos_Query_Rangos, los cuales, serán los mismos que definimos anteriormente en la tabla Codigos_Seg_Vistas_Rangos

Estacionamiento Medido – Publicación de CRM (Berazategui)

  1. Verificar la entrada “Estacionamiento Medido – Ubicación de archivos fuente y credenciales de acceso” para conocer credenciales de acceso al fuente.
  2. Utilizando el programa WinSCP, primero realizar una copia del código en producción (ventana derecha) a la ubicación: \BG-SRV03-FSFileServerGroupsDesarrollo_PROYECTOSParking Medido BERAZA_prudictivo colocando todo el fuente en un archivo zip de nombre parking_crm_ok_añomesdia de bajada de productivo. Ejemplo: parkingcrm_ok_20150827.zip
  3. Borrar los archivos de productivo y subir una copia de la nueva versión desde la máquina local al servidor de productivo.
  4. Ejecutar PuTTy para correr los scripts de MySql que contengan los cambios en las tablas de la base de datos.

Publicación en Azure Web Apps (sites)

El objetivo del siguiente instructivo es detallar los pasos a seguir para la publicación de aplicaciones web en Azure:

  • Dentro de “Explorador de Soluciones” de Visual Studio -> Archivo Web.config -> Editar la entrada con el nombre “informac” dentro de la sección “connectionStrings” colocando los datos de conexión a la base INFORMAC correspondientes a la publicación.
  • Dentro de “Explorador de Soluciones” de Visual Studio -> Botón derecho sobre el proyecto a publicar -> seleccionar la opción “Publicar…”. Si la opción no está habilitada verificar si el proyecto se encuentra en ejecución. De ser así, detener el proyecto y luego la opción estará disponible.
  • En la pantalla de publicación -> Hacer click en la opción lateral “Perfil”.
  • Dentro de la opción “Perfil” -> Seleccionar de la lista desplegable el perfil que corresponda al sitio destino. El formato del nombre del perfil será: “igglobal[nombre del cliente] – Web Deploy“, por ejemplo: “igglobalbaseglobal – Web Deploy”.
  • En caso de aparecer el perfil buscado en la lista desplegable -> Hacer click en la opción “Importar”, luego navegar a la ubicación [\Bg-srv03-fsfsGroupsDesarrollo_PROYECTOSAzure – Perfiles de Publicación] y seleccionar el *.PublishSettings correspondiente al sitio.
  • A continuación presionar el botón “Publicar”.
  • Si todo funcionó correctamente, al terminar el proceso de publicación se abrirá una nueva ventana o solapa de navegador mostrando la versión publicada.