Herramientas de usuario

Herramientas del sitio


ada:howto:sicoferp:factory:logmodels:fileuploadlog

¡Esta es una revisión vieja del documento!


Fábrica - Modelos Logs - Log de Cargas de Procesos (Archivos)

Este es el log utilizado para registrar las notificaciones que puedan presentar en los procesos de cargas de información.

Tipos de Notificaciones

A continuación se listan los tipos de notificaciones que deben ser considerados en el log de Cargas

  • Inicio de Carga
  • Fin de Carga
  • Errores en las lineas procesadas
  • Errores en columnas de las lineas procesadas

¿Donde usar el Servicio?

Este servicio debe consumirse en los procesos de cargas de:

  • Aplicaciones Java
  • Aplicaciones .Net
  • Web Service
  • Aplicaciones Móbiles
  • Aplicaciones Powerbuilder (Ver Nota siguiente)
  • Soluciones que afecten los productos SICOF

Nota: Aplicaciones Powerbuilder

Powerbuilder tiene restricciones para el consumo de servicios Rest por lo tanto en las aplicaciones de esta tecnología se implementará un API para realizar las llamadas.

Diccionario de Datos

OWNER SICOF TABLE FILE_UPLOAD_LOG COMMENTS Contiene el log de cargas de archivos o procesos de las aplicaciones de la compañia
# NAME NULL TYPE COMMENTS WS1)
1IDNNUMBERCódigo interno del registro (Se controla por secuencia)Interno Autoincremental
2FECHAYDATEFecha en la cuál se genera la cargaNo utilizado
3NOMBRE_ARCHIVOYVARCHAR2(256)Mensaje simple del error (Resumen)Externo, Requerido
4NOMBRE_PROCESOYVARCHAR2(256)Nombre del proceso que realiza la cargaExterno, Requerido
5NUMERO_LINEAYNUMBERNúmero de linea del archivo donde se genera la notificaciónExterno, Requerido
6COLUMNA_GRUPOYVARCHAR2(1024)Columna o grupo de colunas que generan la notificaciónObsoleto, Externo
7NOTIFICACIONYVARCHAR2(2048)Mensaje de notificaciónObsoleto, Externo
8LOG_LINEANCLOBArray Json que contiene las notificaciones generadas en la lineaExterno Requerido
8HOST_CLIENTEYVARCHAR2(50)Host del cliente (Dirección IP)Externo, Requerido
9FECHA_REGISTROYDATEFecha del sistema DBInterno, Formato dd/mm/yyyy hh:mm:ss
10CODIGO_USUARIOYNUMBERCódigo del usuario de la sesión en la cuál se genera el errorExterno, Requerido
11CODIGO_MEMPRESAYVARCHAR2(64)Código de la empresa de la sesión en la cuál se genera el errorExterno, Requerido
12CODIGO_APLICACIONYNUMBERCódigo de la aplicación (Identificador interno numérico)Externo, Requerido
13INFO_APPYVARCHAR2(256)Información de la aplicación (En las situaciónes donde no se identifique código interno se puede enviar el nombre de la aplicación o información adicional)Externo
14SESSION_MACYVARCHAR2(64)MAC del equipo del usuarioExterno
15SESSION_BROWSERVERSIONYVARCHAR2(64)Versión del NavegadorExterno, Requerido
16SESSION_OSTYPEYVARCHAR2(64)Sistema OperativoExterno, Requerido

Columna: WS

Se adiciona esta columna para identificar reglas asociadas a la implementación de los servicios web que permiten gestionar el almacenamiento de los logs. La columna es una referencia y no hace parte del servicio sin embargo las reglas que se definen en ella si aplican para la columna relacionada:

Reglas

  • Interno: Indica que el campo se gestiona dentro del servicio y por lo tanto no se pedira en los parametros.
  • Autoincremental: Indica que el campo se comporta como una secuencia.
  • Externo: Indica que el campo debe estar en los parametros del consumo.
  • Requerido: Indica que el campo debe ser enviado en el consumo y el servicio debe validarlo para continuar.
  • Obsoleto: Indica que el campo ya no es utilizado en la nueva implementación.

Nota

  • Todas las operaciones del servicio que gestiona la persistencia de la tabla deben estar documentadas incluyendo la definición de los campos, formatos, longitudes de columnas e indicar si es requerido o no.

Columna: LOG_LINEA

Esta columna sirve para almacenar todas la notificaciones que se pueden presentar al procesar una linea del archivo de la carga. Se define la siguiente estructura base ejemplo:

{
  "columns":[
    {
      "column_name":"Nombre de la columna",
      "column_value": "Valor de la columna",
      "column_notifications":
        [
          {"msg":"Mensaje de Notificación 1"},
          {"msg":"Mensaje de Notificación 2"},
          {"msg":"Mensaje de Notificación 3"}
        ]
    }
  ]
}

Donde:

  • columns: Arrya de Columnas del archivo de carga
  • column_name: Propiedad contenida en cada indice del array json que representa el nombre de la columna analizada del proceso de carga.
  • column_value: Propiedad contenida en cada indice del array json que representa el valor de la columna analizada del proceso de carga.
  • column_notifications: Propiedad contenida en cada indice del array json que representa el array de notificaciones de la columna analizada del proceso de carga.
  • msg: Propiedad contenida en cada indice de column_notifications de la columna analizada del proceso de carga.

Ejemplo:

{
  "columns":[
    {
      "column_name":"fecha_sistema",
      "column_value": "01/01/20",
      "column_notifications":
        [
          {"msg":"El año de la fecha es menor a la vigencia actual"},
          {"msg":"La fecha no tiene el formato dd/mm/yyyy"}
        ]
    }
  ]
}

Modo de uso: Powerbuilder - Documentación

Para visualizar la documentación debe descargar el siguiente repositorio Documentación, abrir la pagina Index.html en su navegador web la cual es similar a la siguiente imagen:

En ella encontrará la documentación de las librerias que hacen parte del framework Objetos SICOF el cuál se irá actualizando frecuentmente a medida que se documenten las clases.

La Libreria que contiene la funcionalidad de los logs es la librería sf00util.pbl

Los Objetos relacionados en el API son:

  • n_cst_app: Clase contenedora de objetos logs
  • n_cst_log_file_upload: Clase para la gestión de log de cargas

Modo de uso: Java

Para las aplicaciones desarrolladas en la tecnología Java el log de sesión será implementado por medio de un Servicio Web el cual deberá considerar las reglas de Columna: WS

←Volver atras

1)
Define las reglas que debe aplicar el Web Service
ada/howto/sicoferp/factory/logmodels/fileuploadlog.1628878085.txt.gz · Última modificación: 2021/08/13 18:08 por administraidor