Informe de ventas mensuales por agencia y producto

Función general

En esta transacción se emiten un reporte que muestra las ventas por ramo, agencia, y mes, que son las primas correspondientes a las pólizas emitidas, para el año indicado. Los montos son expresado en UF.

Información técnica

 

Informe de ventas mensuales por agencia y producto

(AGL874)

Parámetros

Validaciones

Campo

Descripción

 Error/adv

Año

Año debe estar lleno 60490

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

El parámetro "Año" se utiliza para generar la fecha de "inicio" y "final" del reporte, para ello se debe colocar como "fecha inicio", el primer de Enero del año seleccionado por el parámetro, y  como "fecha final", el 31 de Diciembre del año seleccionado.

Para obtener la información que se mostrará en este reporte, se realiza el siguiente proceso:

  • Se leen de la tabla de agencias (table5555), todos los registros válidos.
    • Por cada agencia leída de la tabla de agencias:
      • Se leen de la tabla de meses (table7013), todos los registros válidos.
        • Por cada agencia-mes, se lee el primer recibo asociado a la póliza-certificado en tratamiento, de las tablas de certificados, pólizas y recibos (certificat, policy y premium), tomando en cuenta todas aquellas pólizas activas y emitidas en el año indicado como parámetro y que correspondan a mes y agencia en tratamiento.
        • Con el número de recibo ubicado, se busca en la tabla de detalle del recibo (detail_pre), la prima anual de cada detalle y su moneda. Por cada registro leido se debe toma la moneda y la fecha de la póliza-certificado. Los montos leídos del detalle de recibos están expresados en distintas monedas, para poder llevar el acumulado de prima anual por ramo, agencia y mes,  se convierten a UF, ya que así van a salir en el reporte, para ello se convierte cada monto de la moneda original del detalle (detail_pre.ncurrency) a UF (código de moneda 3). Se hace 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 es la fecha de efecto de la póliza certificado (certificat.ddate_origi). Con el monto convertido a UF, se debe acumular por ramo, agencia y mes. Se utiliza la tabla temporal (temp_agl874), para guardar la variable acumulada de prima anual por ramo, agencia, mes. Esta variable una vez almacenada debe ser inicializada con cero.
  • Al momento de ejecutar el reporte detalle, se lee la información de la tabla temporal (temp_agl874) agrupada y ordenada por ramo (temp_agl874.nbranch), agencia (temp_agl874.nagency) y mes (temp_agl874.nmonth). Al momento de ejecutar el reporte resumen, se lee la información de la tabla temporal (temp_agl874) agrupada y ordenada por agencia (temp_agl874.nagency) y mes (temp_agl874.nmonth).
  • La descripción del ramo se ubica en la tabla de ramos comerciales (table10), según el código de la agencia en tratamiento. La descripción de la agencia se ubica en la tabla de agencias (table5555), según el código de la agencia en tratamiento. La descripción del mes se ubica en la tabla meses (table7013), según el código mes en tratamiento.

Efecto

Se almacenan los datos en la tabla temporal, denominadas temp_agl874.
Antes de usar la tabla, la misma no debe tener datos, por lo que se deberá eliminar toda la información que se encuentre en ella.

Notas al programador

Búsqueda para la tabla de agencias (table5555)

Campos a seleccionar

  • nagency
  • sdescript

Condición de búsqueda

Información

Campo

Operador

Valor

Observación

Código de agencia nagency > 0 Se toman todas las agencias
Estado del registro sstatregt = '1' Se toman las agencias válidas

Búsqueda para la tabla de meses (table7013)

Campos a seleccionar

  • ncodignt

Condición de búsqueda

Información

Campo

Operador

Valor

Observación

Código de mes ncodigint > 0 Se toman todas los meses
Estado del registro sstatregt = '1' Se toman los meses válidos

Búsqueda para la tabla de certificados, pólizas y recibos (certificat, policy y premium)

Campos a seleccionar

  • certificat.scertype
  • certificat.nbranch
  • certificat.nproduct
  • min(premium.nreceipt)
  • premium.ndigit
  • premium.npaynumbe
  • certificat.ddate_origi

Condición de búsqueda

Información

Campo

Operador

Valor

Observación

Tipo de registro certificat.scertype = '2' Se toman sólo pólizas
Código de ramo certificat.nbranch > 0 Se toman los certificados de cualquier todos los ramos
Código de producto certificat.nproduct > 0 Se toman certificados de todos los productos
Número de póliza certificat.npolicy > 0 Se toman todas las pólizas
Número de certificado certificat.ncertif > 0 Se toman todos los certificados de todas las pólizas
Estado del registro certificat.sstatusva not in ('2', '3') Se toman sólo las pólizas válidas. Valores según table181
Fecha de efecto de la póliza certificat.ddate_origi >= 'Fecha inicial' calculada Fecha calcula en función del año indicado como parámetro en la transacción
y certificat.ddate_origi <= 'Fecha final' calculada Fecha calcula en función del año indicado como parámetro en la transacción
Mes de la fecha de efecto mes(certificat.ddate_origi) = table7013.ncodigint Mes en tratamiento
Tipo de registro policy.scertype = certificat.scertype Tipo de registro en tratamiento
Código de ramo policy.nbranch = certificat.nbranch Ramo en tratamiento
Código de producto policy.nproduct = certificat.nproduct Producto en tratamiento
Número de póliza policy.npolicy = certificat.npolicy Póliza en tratamiento
Código de agencia policy.nagency = table5555.nagency Agencia en tratamiento
Tipo de registro premium.scertype = certificat.scertype Tipo de registro en tratamiento
Código de ramo premium.nbranch = certificat.nbranch Ramo en tratamiento
Código de producto premium.nproduct = certificat.nproduct Producto en tratamiento
Dígito de control premium.ndigit > 0 Dígito de control de recibos
Número de recibo premium.nreceipt > 0 Se toman todos los recibos
Parte del convenio premium.npaynumbe >= 0 Número que identifica la parte del convenio de pago del recibo

Búsqueda para la tabla detalles de recibos (detail_pre)

Campos a seleccionar

  • ncurrency
  • npremanual
  • Condición de búsqueda

    Información

    Campo

    Operador

    Valor

    Observación

    Tipo de registro  scertype = certificat.scertype Tipo de registro del recibo en tratamiento
    Código del Ramo nbranch = certificat.nbranch Código de ramo del recibo en tratamiento
    Código del producto nproduct = certificat.nproduct Código de producto del recibo en tratamiento
    Número de recibo nreceipt = premium.nreceipt Número del recibo en tratamiento
    Dígito de control ndigit = premium.ndigit Dígito de control de recibos
    Parte del convenio de pago npaynumbe = premium.npaynumbe Número que identifica la parte del convenio de pago del recibo
    Número de desglose de prima nid_bill > 0 Número consecutivo de desglose de prima para un recibo
    Tipo de registro en el detalle de prima stype_detai in (1,2,4,5,6) Indica que se tomará detalle por coberturas, recargos técnicos, impuestos, descuentos técnicos, recargos comerciales y descuentos comerciales

    Búsqueda de descripción en la tabla de ramos (table10)

    Campos a seleccionar

  • sdescript
  • Condición de búsqueda

    Información

    Campo

    Operador

    Valor

    Observación

    Código del ramo nBranch = temp_agl874.nBranch Código del ramo de la cesión

    Búsqueda de descripción en la tabla de agencias (table5555)

    Campos a seleccionar

    • sdescript

    Condición de búsqueda

    Información

    Campo

    Operador

    Valor

    Observación

    Código de la agencia nagency = temp_agl874.nagency Agencia en tratamiento

    Búsqueda de descripción en la tabla de meses (table7013)

    Campos a seleccionar

    • sdescript

    Condición de búsqueda

    Información

    Campo

    Operador

    Valor

    Observación

    Código del mes ncodigint = temp_agl874.nmonth Mes en tratamiento

    Archivo TEMP_AGL874

    En la tabla temporal temp_agl874 se almacena la información determinada en las condiciones de búsqueda antes indicada. Al momento de ejecutar el reporte, se extrae la información agrupada y ordenada por ramo (nbranch), agencia (nagency) y mes (nmonth). Los campos que se deberán colocar en la tabla temporal son:

    Información

    Campo

    Valor

    Observación

    Código de ramo nbranch certificat.nbranch Ramo en tratamiento
    Código de agencia nagency table5555.nagency Agencia en tratamiento
    Número de mes nmonth table7013.ncodigint Mes en tratamiento
    Prima npremium Sumatoria de primas anuales en UF Variable que acumula la prima anual de las pólizas emitidas por ramo, agencia y mes en tratamiento.

    Fórmulas

    Sólo se van a mencionar los campos que manejen fórmula
    Listado detalle
    Cuerpo
  • Ventas UF: Sum(temp_agl874.npremium), para el ramo, agencia y mes en tratamiento.
  • Totales
  • Total por agencia de las ventas en UF en el año: Sum(temp_agl874.npremium), de todos los meses, para el ramo, y agencia en tratamiento.
  • Total de las ventas en UF de las agencias por mes: Sum(temp_agl874.npremium), de todas las agencias, para el ramo, y mes en tratamiento.
  • Total de las ventas en UF de las agencias en el año: Sum(temp_agl874.npremium), de todas las agencias y meses, para el ramo en tratamiento.
  • Listado resumen
    Cuerpo
  • Total ventas UF: Sum(temp_agl874.npremium), de todos los ramos, agencia y mes en tratamiento.
  • Totales
  • Total por agencia de las ventas en UF en el año: Sum(temp_agl874.npremium), de todos los ramos y meses, para la agencia en tratamiento.
  • Total de las ventas en UF de las agencias por mes: Sum(temp_agl874.npremium), de todos los ramos y agencias, para el mes en tratamiento.
  • Total de las ventas en UF de las agencias en el año: Sum(temp_agl874.npremium), de todos los ramos, agencias y meses.
  • Listados

    El listado detalle de este reporte debe ser impreso como una tabla por cada ramo, donde el eje de las 'x' sea las agencia y el eje de las 'y' los meses. El listado resumen de este reporte debe ser impreso como una table, o una tabla donde el eje de las 'x' sea las agencia y el eje de las 'y' los meses, pero con los totales por mes y agencia sin importar el ramo  Ejemplos:

    Listado detalle

    Ramo: xxxxx

    Enero Febrero ... Diciembre Totales
    Agencia 'a' Ventas UF Ventas UF Ventas UF Total por agencia de las ventas en UF en el año
    Agencia 'b' Ventas UF Ventas UF Ventas UF Total por agencia de las ventas en UF en el año
    ...
    Agencia 'z' Ventas UF Ventas UF Ventas UF Total por agencia de las ventas en UF en el año
    Totales Total de las ventas en UF de las agencias por mes Total de las ventas en UF de las agencias por mes Total de las ventas en UF de las agencias por mes Total de las ventas en UF de las agencias en el año

    Listado resumen

    Enero Febrero ... Diciembre Totales
    Agencia 'a' Total ventas UF Total ventas UF Total ventas UF Total por agencia de las ventas en UF en el año
    Agencia 'b' Total ventas UF Total ventas UF Total ventas UF Total por agencia de las ventas en UF en el año
    ...
    Agencia 'z' Total ventas UF Total ventas UF Total ventas UF Total por agencia de las ventas en UF en el año
    Totales Total de las ventas en UF de las agencias por mes Total de las ventas en UF de las agencias por mes Total de las ventas en UF de las agencias por mes Total de las ventas en UF de las agencias en el año

    Listado detalle

    Encabezado
  • Página: "Página" + 'número de página'.
      • Título: "Detalle de emisión por planes y vías de pago".
      • Subtítulo: "Listado detalle"
      • "Año: " + 'año indicado como parámetro'.
    Cuerpo
      • Ramo: Descripción del ramo (table10.sdescript).
      • Agencia: Descripción de la agencia (table5555.sdescript).
      • Mes-año:  Mes y año de la información (table7013.sdescript + 'año indicado como parámetro').
      • Ventas en UF: Monto total de primas en UF, correspondiente a las pólizas emitidas por la agencia por mes, para el ramo en tratamiento. Ver fórmula. Si el valor de este campo es cero, en el reporte se debe mostrar espacios en blanco.
      Totales
      • Total por agencia de las ventas en UF en el año: Monto total de primas en UF, correspondiente a las pólizas emitidas en el año, por la agencia, para el ramo en tratamiento. Ver fórmula. Si el valor de este campo es cero, en el reporte se debe mostrar espacios en blanco.
      • Total de las ventas en UF de las agencias por mes: Monto total de primas en UF, correspondiente a las pólizas emitidas en el mes, por todas las agencias, para el ramo en tratamiento. Ver fórmula. Si el valor de este campo es cero, en el reporte se debe mostrar espacios en blanco.
      • Total de las ventas en UF de las agencias en el año: Monto total de primas en UF, correspondiente a las pólizas emitidas en el año, por todas las agencias, para el ramo en tratamiento. Ver fórmula. Si el valor de este campo es cero, en el reporte se debe mostrar espacios en blanco.


    Listado resumen

    Encabezado
  • Página: "Página" + 'número de página'.
  • Título: "Detalle de emisión por planes y vías de pago".
  • Subtítulo: "Listado resumen"
  • "Año: " + 'año indicado como parámetro'.
  • Cuerpo
  • Agencia: Descripción de la agencia (table5555.sdescript).
  • Mes-año:  Mes y año de la información (table7013.sdescript + 'año indicado como parámetro').
  • Ventas en UF: Monto total de primas en UF, correspondiente a las pólizas emitidas por la agencia por mes. Ver fórmula. Si el valor de este campo es cero, en el reporte se debe mostrar espacios en blanco.
  • Totales
  • Total por agencia de las ventas en UF en el año: Monto total de primas en UF, correspondiente a las pólizas emitidas en el año, por la agencia. Ver fórmula. Si el valor de este campo es cero, en el reporte se debe mostrar espacios en blanco.
  • Total de las ventas en UF de las agencias por mes: Monto total de primas en UF, correspondiente a las pólizas emitidas en el mes, por todas las agencias. Ver fórmula. Si el valor de este campo es cero, en el reporte se debe mostrar espacios en blanco.
  • Total de las ventas en UF de las agencias en el año: Monto total de primas en UF, correspondiente a las pólizas emitidas en el año, por todas las agencias. Ver fórmula. Si el valor de este campo es cero, en el reporte se debe mostrar espacios en blanco.