EjeExportaTxt - Exporta a TXT

Resumen

INTRODUCCIÓN

Genera archivos de texto (.txt) o archivos comprimidos (zip) a partir de consultas SQL
parametrizadas, para exportarlos en el cliente o en el servidor

INFORMACIÓN GENERAL

Nombre del servicio: EjeExportaTxt

Clase: EjeExportaTxtBean

JNDI: nodum/servicios/nucleo/eje/EjeExportaTxt

Tipo: Ejecución

Módulo: Básicos

Modo de ejecución: Directo

Repetitivo: No

Detalle

 

Parámetros de entrada

Parámetros obligatorios

Índice Campo Tipo Descripción
0 Condición de ejecución String Expresión lógica. Si no se cumple, el servicio no ejecuta.
1 SQL String Consulta(s) SQL separadas por ;. Puede traer varias consultas.
2 Locación String 'C' para generar en cliente, 'S' para generar en servidor.
3 Path destino String Carpeta donde guardar el archivo o 'SOLICITA' para preguntar al usuario.
4 Nombre archivo String Nombre deseado del archivo (sin extensión).
5 LargosFijo String(S/N) Si los campos tienen longitud fija (S) o variable (N).
6 Largos String Anchos de los campos por consulta, separados por * y ;. Solo si LargosFijo=S.
7 Obligatorios   Define si cada campo es obligatorio (S o N). Separados * y ;.
8 TipoDato   Tipo de cada campo (C, N, D, n, d, c). Separados * y :
9 SeparadorCampos   Separador entre campos (`
10 Rellenar   Indicaciones de relleno (I0, D, etc.). Opcional.
11 CamposEntreCaracter   Carácter que envuelve cada campo (ej: "). Opcional.

 

LÓGICA INTERNA

PROCESAMIENTO GENERAL

  • Ejecuta las consultas SQL.
  • Lee los resultados fila por fila.
  • Aplica formato:
    1. Rellenar: Relleno (izquierda o derecha).
    2. SeparadorCampos: Separador de campos entre columnas.
    3. CampoEntreCaracter: Campos envueltos entre caracteres especiales (ej .: "valor").
    4. TipoDato: Conversión de datos según tipo.
  • Arma el archivo en memoria:
    •  TXT normal si el volumen es chico.
    • ZIP comprimido si excede la memoria máxima permitida (Configuración en propiedades nodum.servicio.generatxt.maximo).

 

Tipos de datos 

Tipo Significado Conversión especial
C Cadena con trim() Si
c Cadena sin trim() No
N Numero con punto decimal No
n Numero sin punto decimal Quita el punto
D Decimal con punto decimal Respeta decimales
d Decimal sin punto decimal Quita el punto

FORMATO DEL ARCHIVO GENERADO

Condición Resultado
Locacion = 'C' Archivo descargado en cliente (pregunta ruta si
Path=SOLICITA)
Locación = 'S" Archivo grabado en ruta del servidor
Archivo pequeño .txt normal
Archivo grande (memoria limite
superada)

zip comprimido

 

EJEMPLO DE ENTRADA

Posición Parametro Valor
(0) Condición "2=2" (condición dummy)
(1) SQLs Consulta 1: id_producto, precio - Consulta 2: cod_barras
(2) Locación "C'' (generar en cliente)
(3) Path "SOLICITA"
(4) Archivo 'productos"
(5) LargosFijo "S" (usar largos fijos)
(6) Largos "6*8;13"= id_producto (6], precio (8], cod_barras [13]
(7) Obligatorios "S'S;S
(8) TipoDato 'N°C;N"
(9) SeparadorCampos "|"
(10) Rellenar

"IO*D 10"

(11) CampoEntreCaracter "V"

EJEMPLO DE ARCHIVO RESULTANTE (.TXT)

Supongamos que hay estos datos en las tablas:

id_producto descripción
123 Papel
45 Tinta negra

 

cod_barras
987654321
1234

Resultado

"000123'|'Papel

"000045'l*Tinta negra

'0000000987654321

OBSERVACIONES

. El parámetro Rellenar permite definir como completar los valores cuando el archivo usa
formato de largo fijo (LargosFijo = S]. Su sintaxis general es:

a) I > Rellenar a la izquierda

b) D> Rellenar a la derecha

c) > Carácter a usar como relleno (ej. o, -, espacio, etc.)

Detalle Técnico

Genera un archivo de texto a partir de ciertos parámetros. Los parámetros múltiples se separan por * dentro de la misma SQL y se separa con "punto y coma" de diferentes SQL. TAGS: