Resumen de recaudación por sucursal

Función general

Mostrar el resumen recaudación de comisiones devengadas por sucursal agrupado por plan FECU y en un período de tiempo determinado por el usuario.

El procedimiento presenta un listado, que muestra todas las comisiones devengadas agrupadas por sucursal  y ramo contable (ramo FECU).
 

Información técnica

Resumen recaudación por sucursal

(AGL857)

Parámetros

Validaciones

 

Campo

Descripción

 Error/adv

Período - Desde

Debe estar lleno
05072

Período - Hasta

Debe estar lleno
01097
Debe ser posterior a la fecha desde
11425

Frecuencia de ejecución

A petición del usuario.

Requisitos

No aplica.

Instrucciones de ejecución

Este reporte se ejecuta desde el módulo de reportes de intermediarios con la opción menú de reportes de intermediarios.

Instrucciones en caso de interrupción

Volver a ejecutar.

Proceso batch

Proceso

  • Se leen de la tabla de primas (premium) todos aquellos recibos , que tengan el estado de "pendiente", "domiciliado pendiente" o "financiado" (premium.nStatus_pre), y cuya fecha de cobro (premium.dPay_Date), se encuentra dentro del período indicado para la ejecución del reporte.
  •  
  • Se debe comprobar que los recibos seleccionados han de pertenecer a pólizas/certificados (certificat) que se encuentren válidas (certificat.sstatusva), luego, por cada registro en la tabla de recibos que cumpla las condiciones, se debe:
    •  
    • Se obtiene de la tabla de detalles del recibo (detail_pre), la información necesaria para la proporción  determinar el monto de la comisión  (detail_pre.nCommision), agrupado por ramo FECU (detail_pre.nbranch_led).
      •  
        NOTA: en la lectura a la tabla de detalles del recibo, es importante destacar que los montos de comisión son agrupados por ramo FECU(detail_pre.nBranch_Led), por tanto, es necesario que se determine la proporción (porcentaje), que representa cada monto con respecto al total de comisión del recibo (premium.nComamou), esta proporción ha de ser utilizada en el caso de que el recibo sea financiado.
    • Si el recibo no es financiado, la sumatoria de los monto de la comisión del detalle del recibo (detail_pre.nCommision), agrupados por ramo FECU (detail_pre.nBranch_Led), han de ser almacenado en el campo comisión la tabla temporal (temp_agl857.nCommission) , tomando en cuenta la sucursal (premium.nOffice) y el ramo FECU (detail_pre.nBranch_Led).
      •  
    • Si el recibo es financiado (premium.nStatus_pre = 8), se comprueba los giros del contrato que se encuentran es estado de "pendiente", para ello se lee la tabla de giros de contratos de financiamiento (financ_dra), donde se obtiene el monto de comisión los giros pendientes.

    •  
      • Con la proporción obtenida en la lectura a la tabla de detalles del recibo (detail_pre) y el monto total de la comisión del giro (financ_dra.nCommission), se obtiene cada uno de los montos a ser asignados a cada ramo FECU (ver cálculo monto proporción), este monto ha de ser almacenado en el campo comisión (temp_agl857.nCommission) de la tabla temporal , tomando en cuenta la sucursal (premium.nOffice) y el ramo FECU (detail_pre.nBranch_Led).
         
  • Se determinan las descripciones de los campos: "Ramo contable (FECU)" y "Sucursal".

  •  
  • Los montos expresados en pesos, se obtienen al convertir cada monto de la moneda original del recibo a la moneda local (código reservado de moneda, 1). Para ello se debe hacer uso de la rutina de conversión del sistema: "insCalConvertExchange2". Es importante destacar que la fecha que se utilice para convertir los montos en el caso de este reporte será la fecha de efecto del recibo (premium.dEffecDate).

  •  
  • Para la emisión del listado se realiza la lectura sobre la tabla temporal TEMP_AGL857, ordenado y agrupado por sucursal (TEMP_AGL857.nOffice) y ramo FECU (TEMP_AGL857.nBranch_led).

  •  
  • Por cada página se debe totalizar la información y la misma será acumulativa para el total general del reporte.
  • Efecto

    Se almacena los datos en una tabla temporal, denominada TEMP_AGL857.

    Después de emitir el listado, la misma no debe contener información por lo que se eliminan todos los datos que se encuentre en ella.

    Notas al programador

    Condición de búsqueda para la tabla de primas (Premium)

     
     

    Información

    Campo

    Operador

    Valor

    Observación

    Tipo de registro  sCertype = '2' Se deben tomar en cuenta sólo pólizas
    Código del ramo nBranch > 0 Se deben tomar en cuenta los recibos de cualquier ramo
    Código del producto nProduct > 0 Se deben tomar en cuenta los recibos de cualquier producto
    Número del recibo nReceipt > 0 Se deben tomar en cuenta todos los recibos
    Dígito de control nDigit = 0 Recibos cuyo número de modificación de distribución de reaseguro sea cero (0)
    Número de parte en el convenio nPayumbe >= 0 Se debe tomar en cuenta cualquier parte del convenio
    Tipo de recibo. nType = 1 Recibo del tipo de cobro, valor "1"
    Estado del recibo nStatus_pre 1, 4 y 8 Estado del recibo,  (tabla 19)
    Estado del registro sStatusva = 1,4 y 5 Estado del registro (tabla 181)
    Fecha límite del pago del recibo dPay_date >= Parámetro fecha "desde" Se toma el parámetro incluido por el usuario denominado "período desde"
    y dLimitDate <= Parámetro fecha "hasta" Se toma el parámetro incluido por el usuario denominado "período hasta"
     

    Condición de búsqueda para la tabla de detalle del recibo (Detail_pre)

     

    Información

    Campo

    Operador

    Valor

    Observación

    Tipo de registro  sCertype = premium.sCertype Tipo de registro del recibo en tratamiento
    Código del Ramo nBranch = premium.nBranch Código de ramo del recibo en tratamiento
    Código del producto nProduct = premium.nProduct Código de producto del recibo en tratamiento
    Número del recibo nReceipt = premium.nReceipt Número del recibo en tratamiento
    Dígito de control nDigit = premium.nDigit Recibos cuyo número de modificación de distribución de reaseguro sea cero (0)
    Número de parte en el convenio nPayumbe = premium.nPaynumbe Se debe tomar en cuenta cualquier parte del convenio del recibo en tratamiento
    Número consecutivo de desglose nId_bill >= 0 Se debe tomar en cuenta cualquier número de desglose

    Condición de búsqueda para la tabla de certificados de una póliza (Certificat)

     
     

    Información

    Campo

    Operador

    Valor

    Observación

    Tipo de registro
    sCerType
    = "2" Se deben tomar en cuenta sólo las pólizas
    Ramo comercial nBranch premium.nBranch Código del ramo del recibo en tratamiento
    Producto nProduct premium.nProduct Código del producto del recibo en tratamiento
    Número de Póliza nPolicy = premium.nPolicy Número de la póliza del recibo en tratamiento
    Estado del certificado
    sStatusva
    = "1","4","5","7", "8" Estado de la póliza, valores posibles tabla 181

    Condición de búsqueda para la tabla de giros financiamiento (Financ_dra)

     
     

    Información

    Campo

    Operador

    Valor

    Observación

    Número de contrato de financiamiento nContrat = premium.ncontrat Número de recibo que ha sido seleccionado
    Número de giro nDraft >= 0 Todos los giros del contrato de financiamiento en tratamiento
    Estado del giro nStat_Draft = "1" Valores posibles según tabla 253
    Fecha límite de la cuota (dLimitDate >= Fecha del período desde Se toma el parámetro incluido por el usuario denominado "período desde"
    y dLimitDate) <= Fecha del período hasta Se toma el parámetro incluido por el usuario denominado "período hasta"
    Estado del registro sStatregt = "1" Estado general del registro. Valores únicos según tabla 26.

     

     
     

    Información

    Campo

    Operador

    Valor

    Observación

    Código del Área de seguro nInsur_Area = premium.nInsur_area Código de la moneda en que el recibo es emitido
    Estado del registro sStatregt = "1" Estado general del registro. Valores únicos según tabla 26.

    Condición de búsqueda para la tabla de oficinas (table9)

     
     

    Información

    Campo

    Operador

    Valor

    Observación

    Código de la sucursal nOffice = policy.nOffice Código de la sucursal donde se emitió la póliza en tratamiento
    Estado del registro sStatregt = "1" Estado general del registro. Valores únicos según tabla 26.

    Condición de búsqueda para la tabla de ramos de contabilidad o ramos FECU (table75)

     

    Información

    Campo

    Operador

    Valor

    Observación

    Código del ramo contable nBranch_led = detail_pre.nBranch_led Código del ramo contable o ramo FECU del registro  en tratamiento
    Estado del registro sStatregt = "1" Estado general del registro. Valores únicos según tabla 26.

    Archivo TEMP_AGL857

    En la tabla temporal temp_agl857, se agrupa todos los montos de comisión de los movimientos del recibo (detail_pre.nCommission) o del giro de financiamiento (financ_dra.nCommission),  que posean el mismo ramo contable (detail_pre.nBranch_led), por cada uno de estos agrupamientos es generado un registro en la tabla temporal.

    Todos los montos han de ser alamacenados en moneda local (Pesos).

    Los campos que se deberán colocar en la tabla temporal son:

       

      Información

      Campo

      Valor

      Sucursal del intermediario nOffice Sucursal del recibo, premium.noffice
      Comisión acumulada por ramo FECU y por recibo nCommission Se agrupan todas las comisiones de los movimientos de un recibo (detail_pre.nCommission) ó la proporción de la comisión del giro (financ_dra.nCommission) que pertenezcan al mismo ramo FECU (detail_pre.nBranch_Led)
      Ramo Fecu  nBranch_led Es el ramo contable de la tabla de detalles de un recibo (detail_pre.nBranch_Led)

    Fórmula

    Cálculo de la proporción por cada ramo FECU del detalle del recibo (detail_pre.nBranch_led)

    Proporción =  Total Comisión del detalle  / Total Comisión del recibo

    Donde:

    Total Comisión del recibo  = Monto de comisión (Premium.nComAmou)
    Total Comisión del detalle = Sumatoria de las comisiones del detalle de recibo (detail_pre.nCommision), agrupados por ramo FECU (detail_pre.nBranch_led), en moneda local.

    Cálculo del monto de comisiones en base a la proporción

    Monto de comisión =  Total Comisión del giro  * Proporción

    Donde:

    Total Comisión del giro  = Monto de comisión del giro financiado (financ_dra.nCommission) en moneda local.
    Proporción = Ver fórmula

    Listados