Herramientas de usuario

Herramientas del sitio


ada:sicoferp:financiero:tesoreria:interface:cargasdearchivos

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Próxima revisión
Revisión previa
ada:sicoferp:financiero:tesoreria:interface:cargasdearchivos [2020/10/18 12:53]
192.168.177.31 creado
ada:sicoferp:financiero:tesoreria:interface:cargasdearchivos [2026/04/30 15:23] (actual)
brahian.castaneda
Línea 1: Línea 1:
 ====== Interface - Cargas de Archivos ====== ====== Interface - Cargas de Archivos ======
-Esta opción permite la gestión ​de los conceptos que realizan los documentos, cada concepto tiene propiedades financieras que determinarán ​el tipo de documento ​generar.+Esta opción permite la generación masiva ​de documentos ​financieros por medio de la funcionalidad interna **Supertabla** ((Proceso interno de procesamientos de configuraciones para la generación de registros financieros)). El proceso de carga de archivos utiliza la supertabla de forma implícita((Carga por medió de archivos planos)) es decir el usuario previamente configura archivos planos ​de acuerdo ​configuraciones de conceptos y los carga en esta opción. 
 + 
 +=== Nota === 
 +Este proceso se ejecuta de forma atómica es decir si ocurre un error en el procesamiento de la carga (por lo general por problemas en las configuraciones o saldos en los procesos) el proceso de generación masiva de documentos (Carga) se cancela. 
 + 
 +A Continuación se describe la funcionalidad por medio de pestañas. 
  
 ===== Pestaña Lista ===== ===== Pestaña Lista =====
-En esta pestaña se pueden visualizar los conceptos creados por los usuarios, además se pueden filtrar ​los conceptos por propiedades.+En esta pestaña se pueden visualizar los procesos de cargas previamente realizados en el sistema. Se pueden filtrar, ordenar y buscar procesos previos.
  
-{{ :​ada:​sicoferp:​financiero:​tesoreria:​interface:​listado.png?600 |}}+{{ :​ada:​sicoferp:​financiero:​tesoreria:​interface:​carga_listado.png?600 |}}
  
-===== Pestaña Encabezado: ​Concepto ​===== +===== Pestaña Encabezado: ​Configuración de la Carga ===== 
-En esta ventana ​se realiza la configuración ​de los conceptos que se utilizarán en los procesos masivos de SICOF.+En esta pestaña ​se configura el proceso ​de carga masiva y se carga el archivo plano.
  
-{{ :​ada:​sicoferp:​financiero:​tesoreria:​interface:​detalle.png?600 |}}+{{ :​ada:​sicoferp:​financiero:​tesoreria:​interface:​detalle_carga_archivos.png |}}
  
-==== Nuevo Campo ==== 
-Se adiciona la propiedad **Impresión C.Egreso** la cuál permitirá realizar el proceso de pago del comprobante egreso como lo hace la funcionalidad de impresión de cheques del módulo de tesorería. Este nuevo campo permite los siguientes valores: 
  
-  * No Aplica: Indica que el concepto no aplicará proceso de pago. +===== Boton Tests y Estado Borrador =====
-  * Para Girar: Indica que el egreso se girará. +
-  * Para Consignar: Indica que el egreso será consignado.+
  
-=== Nota === +Tanto el boton test como el estado borrador, no lo usa el cliente, nada más está allí para fines de pruebas con acompañamiento, ​el cliente solamente usa estado Aprobado. Cuando estos se encuentren activos son porque se activaron por base de datos, pero en todos los clientes se deben encontrar inactivos.
-La edición de este nuevo campo está condicionada por el campo **Genera C.Egreso**+
  
-==== Nueva Visualización Campo Genera C.Egreso ==== +{{ :ada:​sicoferp:​financiero:​tesoreria:​interface:​2020-12-14_16h41_28.png?​400 |}}
-Para soportar el proceso de impresión de cheques en el proceso de interfaz el campo **Genera C.Egreso** cambia su apariencia para soportar los siguientes valores que representan documentos:+
  
-  * No Aplica: No genera documentos de comprobantes de egreso. +Los siguientes UPDATE son para inhabilitar tanto el boton test como el estado si se llegan a encontrar habilitados.
-  * Con Afectación Presupuestal:​ Genera egresos con afectación presupuestal. +
-  * Sin Afectación Presupuestal:​ Genera egresos sin afectación presupuestal.+
  
-=== Nota === +UPDATE sicof.m_constantes  
-Si el egreso genera pago debe incluir en el proceso de carga el banco por el cual realizará el pago, además debe considerar todas las reglas asociadas al proceso de causación para un correcta configuración es decir:+SET APLICA ​'​N'​ 
 +WHERE UPPER(TRIM(DESCRIPCION)) ​='​MOSTRAR_BOTON_SFCOMERCIAL_DOCUMENTO';​
  
-  * El modo de causación determinará las configuraciones+UPDATE sicof.m_constantes 
-  * El banco debe estar activo y configurado con cuentas contables según el modo de causación. +SET APLICA = '​N'​ 
-  * Se debe enviar el banco en el proceso ​de carga.+where UPPER(TRIM(DESCRIPCION)) = '​MOSTRAR_BOTON_SFCOMERCIAL_TEST'​ ; 
 +===== Pestaña Analizador ===== 
 +En esta pestaña se encuentra la funcionalidad de analizador previo ​de cargarPara más información consulte: [[ada:​sicoferp:​financiero:​tesoreria:​interface:​analizador|Analizador]]
  
-__**Relación entre Conceptos.**__+{{ :​ada:​sicoferp:​financiero:​tesoreria:​interface:​carga_analizador.png?600 |}}
  
-Podemos definir relaciones entre los registros que se están subiendo ​en el archivo ​a SICOFlas cuales pueden existir ​de dos tipos:+===== Notas del Proceso ===== 
 +  * Si la carga presenta errores ​en la subida del archivo, ​se debe empezar. 
 +  * Si la carga presenta número de contrato se toma la fecha de la columna fecha_pago como fecha del contrato.
  
-**A) Relación por concepto.** +===== Ajuste ​de Validación ​de Saldo PAC =====
-En ésta se define la relación entre los conceptos que afectan al mismo tercero, por ejemplo, si existe un concepto ​de "BF01 Base Factura 01" el cual indica que es el valor base de una factura, podemos crear un concepto llamado "RT02 Retención 02", y en campo "​Concepto"​ podemos hacer referencia a "​BF01",​ indicando que "​RT02"​ afecta el valor de "​BF01"​ y se puede asociar para el mismo tercero definido en el archivo de carga.+
  
-**BRelación por grupo.** +=== 1. Información General === 
-Aquí se define le relación entre los conceptos ​que afectan a otro tercero, por ejemplo si tenemos un concepto ​de "SB01 Sueldo Base 01" ​un concepto ​de "AS02 Aporte ​de Salud 02"entonces en AS02 se puede definir ​en el campo "​Grupo"​ un valor de "​1", ​para indicar que agrupe los conceptos ​de grupo 1 y lo que ocurra ​en el sistema con los valores calculados ​de "​AS02"​ afecten ​al concepto ​"​SB01"​ pero afectando a un tercero distinto al ingresado ​en el concepto ​"​SB01"​.+ 
 +Objeto: w_carga_datos_comercial_avance.srw 
 +Función: of_validador_carga() 
 +Módulo: Tesorería / Interfaz Comercial 
 +Versión de PB: 12.5 
 +Fecha: Octubre 2023 
 +=== 2. Descripción del Problema === 
 + 
 +En el proceso de carga de avances comerciales,​ el sistema realiza una validación presupuestal contra el PAC (Plan Anual de Caja) cuando el parámetro PRESUP01.PARAMETROS_SISTEMA.maneja_pac está activo ('​S'​). 
 + 
 +Se detectó ​que la variable ld_pac_disponible siempre retornaba 0lo que provocaba bloqueos erróneos en la carga, incluso cuando existía disponibilidad presupuestal en el rubro correspondiente. 
 + 
 +Causa Raíz 
 +La consulta SQL embebida original intentaba obtener el rubro desde la tabla SFCOMERCIAL.DET_CONCEPTOS_RUBROS filtrando ​por la columna RUBRO_INGRESOS. Sin embargo, los procesos ​de avance ​egresos manejan rubros ​de gasto definidos en la maestra ​de conceptos comerciales (MAE_CONCEPTOS_COMERCIAL). Al no encontrar coincidencia en la tabla de ingresosel SELECT no devolvía registros o el NVL resultaba ​en 0. 
 + 
 +=== 3. Solución Técnica === 
 +Se modificó ​el SQL embebido dentro ​de la función of_validador_carga() ​para
 + 
 +Agregación:​ Utilizar SUM(DP.SALDO_DISPONIBLE) para consolidar el saldo en caso de existir múltiples registros para un mismo rubro en el mes/año. 
 +Fuente ​de Datos correcta: Cambiar la subconsulta para que busque el rubro asociado ​al concepto ​comercial ​en MAE_CONCEPTOS_COMERCIAL.CODIGO_RUBRO,​ que es la fuente verídica para procesos de egresos/​avances. 
 +Cláusula de búsqueda: Se reemplazó ​el EXISTS por un IN sobre la maestra de conceptos para mayor claridad y precisión en la relación ​concepto-rubro. 
 + 
 +=== Código Modificado (Snippet): === 
 + 
 +== Solicitud: Validación general del PAC para procesos de afectación e integración == 
 + 
 +if ls_maneja_pac = '​S'​ then 
 + iuo_validador.of_add_console('​Validando saldos de PAC...',​ 1) 
 + for li_row = 1 to li_count 
 + ls_codigo_concepto = idw_detalle.getitemstring(li_row,​ '​codigo_concepto'​)  
 + ld_valor = idw_detalle.getitemdecimal(li_row,​ '​valor'​) 
 + ldt_fecha = date(idw_detalle.getitemDatetime(li_row,​ '​fecha_pago'​)) 
 + If isnull(ldt_fecha) then ldt_fecha = ldt_fecha_hoy 
 + li_ano = year(ldt_fecha) 
 + li_mes = month(ldt_fecha)  
 +  
 +     setNull(ld_pac_disponible) 
 + guo_app.of_sql_embedded_context( ts_transaccion) 
 + SELECT NVL(SUM(DP.SALDO_DISPONIBLE),​ 0) 
 +   INTO :​ld_pac_disponible 
 +   FROM PRESUP01.PLAN_ANUAL_DE_CAJA DP 
 + WHERE DP.ANO = :li_ano AND DP.MES = :li_mes 
 +     AND DP.PAC_RUBRO IN (SELECT MCC.CODIGO_RUBRO FROM MAE_CONCEPTOS_COMERCIAL MCC  
 +  ​       WHERE MCC.CODIGO_CONCEPTO = :​ls_codigo_concepto) 
 + USING ts_transaccion;​ 
 +  
 +  
 + if Not IsNull(ld_pac_disponible) ​ AND  ld_valor > ld_pac_disponible then 
 + ls_msg = 'El valor (' + String(ld_valor,​ '​$#,##​0.00'​) + ') del concepto ' + ls_codigo_concepto + & 
 +          '​ excede el saldo PAC disponible (' + String(ld_pac_disponible,​ '​$#,##​0.00'​) + ') para el mes ' + String(li_mes) + '​.'​ 
 + iuo_validador.of_add_console(ls_msg,​ 3) 
 + lb_valid = false 
 + end if 
 + next 
 + if lb_valid then iuo_validador.of_add_console('​--->​ OK Validando saldos de PAC', 1) 
 +end if 
 + 
 +=== Desarrollado por: [Miguel Muñoz] Fecha: [28/​04/​2026] Versión de PB: 12.5 ===
  
 [[ada:​sicoferp:​financiero:​tesoreria:​interface|Volver]] [[ada:​sicoferp:​financiero:​tesoreria:​interface|Volver]]
 +
 +
  
  
ada/sicoferp/financiero/tesoreria/interface/cargasdearchivos.1603025594.txt.gz · Última modificación: 2020/10/18 12:53 por 192.168.177.31