Sei sulla pagina 1di 13

Pólizas Contables

Catálogo

1. Empresas Emisoras de Pólizas


2. Tipo de Pólizas
3. Proveedor de Contabilidad
4. Naturaleza de Movimientos
5. Monedas de la Empresa Emisora de Pólizas
6. Monedas del Sistema
7. Cuentas Contables
8. Segmentos de Negocio
9. Diarios Especiales
10. Vistas Disponibles
11. Campos Disponibles
12. Tipo de Campo Control

Procesos

1. Configuración de Empresas Emisoras de Pólizas


2. Importación de Catálogos
3. Homologación de Catálogos
a. Homologación de Tipos de Moneda
b. Naturaleza de Movimientos
4. Configuración de Matriz de Pólizas
a. Generar la matriz de póliza contable
b. Generar un preview de la póliza configurada
5. Generación de pólizas.
a. Creación de póliza que almacene en una tabla la póliza con toda la información
b. Configuración de Template de póliza de acuerdo al proveedor de contabilidad

Configuración de Empresas Emisoras de Pólizas

Este proceso deberá establecer los parámetros generales con los que operará la empresa que
emitirá las pólizas contables:

1. Datos de la Empresa Emisora de Pólizas.- Acopio de la información general de la


empresa emisora de pólizas (Catálogo Empresas)
2. Configuración del Catálogo de cuentas.- Configura el número de niveles que maneja su
catálogo, el número de caracteres para cada nivel y el separador, si es que utiliza, para
cada uno de los niveles, este último podría ser un carácter como: ”-“, “@”, “ “, o
cualquier carácter que la empresa utilice, este solo se aplica para la visualización de las
cuentas en los casos en que se requiera asignar cuentas contables del catálogo, realizar
un reporte del mismo o bien presentar una consulta de una póliza generada por el
sistema.
3. Asignación del Proveedor de Contabilidad.- Establecer por cada empresa emisora de
pólizas, el proveedor de contabilidad en el cual realiza el registro contable de sus
operaciones, por ejemplo: ASPEL, COMPAQ, CONTA2000, Etc.
4. Asignación de Diarios Especiales.- Los diarios especiales son etiquetas de agrupación y
acumulación de movimientos contables dentro de los movimientos de una póliza, el
sistema deberá establecer una casilla de verificación para indicar si la empresa maneja
diarios especiales en sus pólizas, por default estará desmarcada, si se establece que sí
maneja diarios especiales, la empresa deberá capturar el catálogo de diarios especiales
y se establecerá el proceso de asignación de diarios especiales al crear las pólizas, de
forma contraria el valor de este campo será cero al crear las pólizas.
5. Asignación de Segmentos de Negocio.- Los segmentos de negocio son etiquetas de
agrupación y acumulación de movimientos contables dentro de los movimientos de una
póliza, estos sirven para la generación de reportes financieros especiales basados en
dichos segmentos, el sistema deberá establecer una casilla de verificación para indicar
si la empresa maneja segmentos de negocio o no en sus pólizas, por default estará
desmarcada, si se establece que sí maneja segmentos de negocio, la empresa deberá
capturar el catálogo de Segmentos de Negocio y se establecerá el proceso de asignación
de los segmentos al crear las matrices de pólizas, de forma contraria el valor de este
campo será NULL al crear las pólizas.
6. Uso de Cuentas Complementarias En Monedas Extranjeras.- Deberá establecerse una
casilla de verificación, la cual indicará al sistema si la empresa utiliza cuentas
complementarias para el registro y control de monedas extranjeras, por default se
deberá establecer que sí.
7. Moneda de Uso de la Empresa.- Se deberá establecer cuál es la moneda de uso
corriente del país en el cual se genera y lleva la contabilidad de la empresa emisora de
pólizas.
8. Rutas de Archivos.- Configurar la ruta en la cual se almacenarán los resultados de la
generación de pólizas contables, esta será la ruta que por default se tomará para
almacenar las pólizas que generé el sistema, sin embargo, en dicho proceso, deberá
permitir al usuario realizar la asignación de una ruta diferente a la pre definida.

Importación de catálogos.- Se deberá generar un Layout en Excel que permita la importación


de los siguientes catálogos:

1. Importación de Catálogos Contables.- Validar que se cumplan el total de Dígitos de


cada cuenta contable.
2. Importación de Catálogos de Segmentos de Negocio
3. Importación De Catálogos de Diarios Especiales

Homologación de Catálogos. - Este proceso deberá permitir asociar, homologar, diferentes


catálogos con los que la empresa emisora de pólizas opera, con los catálogos del sistema de
pólizas que refieren al mismo tipo de información.

1. Homologación de Monedas. - El sistema deberá habilitar tener configurar la


homologación de catálogos de los diferentes tipos de Moneda que Maneja la Empresa
Emisora de Pólizas con los diferentes tipos de Monedas que maneja el Sistema de Pólizas
Contables, es decir, se deberá asociar el identificador de Tipo de Moneda de la empresa
con el identificados de Tipo de Moneda del Sistema de Pólizas.

IdHomologacion IdGrupo IdEmpresa IdMonedaEmpresa IdMonedaSIPOL Activo Sincronizado


1 3111 1 1 1 1 N
2 3111 1 2 2 1 N
3 3111 1 3 3 1 N
3 3111 1 4 4 1 N

2. Homologación de la Naturaleza del Movimiento Contable. - El sistema deberá habilitar


tener configurar la homologación de catálogos de los diferentes tipos de Naturaleza de
los Movimientos Contables (Cargo y Abono), ya que cada proveedor maneja una
nomenclatura distinta, es decir, se deberá asociar el identificador el Tipo de Naturaleza
de la empresa con el identificados de Tipo de Naturaleza del Proveedor de Contabilidad.

IdHomologacion IdGrupo IdEmpresa IdNaturalezaEmpresa IdProveedorContable IdNaturalezaProveedor Activo Sincronizado


1 3111 1 1 1 0 1 N
2 3111 1 2 1 1 1 N

Configuración de Matriz De Pólizas

Para configurar la matriz contable, el sistema deberá tener la capacidad de:

Seleccionar una vista del catálogo de Vistas Disponibles.


IdVistaDisponible IdGrupo IdEmpresa NombreVista DescripcionVista CadenaConexion Activo Sincronizado
"Persist Security Info=False;User
1 3111 1 Factoraje.vwCesionDocumentosMN Cesión de Documentos ID=sa;Password=12345;Initial 1 N
Catalog=Factoraje;Server=SqlServer"
"Persist Security Info=False;User
2 3111 1 Factoraje.vwDisposicionesMN Disposición de Factoraje ID=sa;Password=12345;Initial 1 N
Catalog=Factoraje;Server=SqlServer"
"Persist Security Info=False;User
3 3111 1 Bancos.vwDepositosBancariosMN Depósitos Bancarios ID=sa;Password=54321;Initial 1 N
Catalog=Bancos;Server=SqlServer"

Extraer de la Base de Datos los campos, mostrando el tipo de dato, de las vistas almacenadas en
el “Catálogo de Vistas Disponibles”, almacenarlos y ponerlos a disposición del usuario para
seleccionar estos dentro la configuración de la matriz.; se debe considerar que la base de datos
de la que se extrae información, pudiera encontrarse en una instancia externa a la base de datos
de las matrices contables, por lo que el sistema deberá contener los procesos necesarios para
realizar la conexión, sin importar si la instancia es interna o externa.
IdVistaDisponible IdCampoDisponible NombreCampo TipoDato DescripcionCampo Activo Sincronizado
1 1 IdCesion int Número de Cesión 1 N
1 2 IdConcepto int Identificación de Concepto 1 N
1 3 IdMoneda int Identificador de la Moneda 1 N
1 4 FechaOperacion date Fecha de Operación 1 N
1 5 ValorDocumentosMO decimal(18,2) Monto Total Factorado Moneda Origen 1 N
1 6 InteresMO decimal(18,2) Interés de Factoraje Moneda Origen 1 N
1 7 IVAInteresMO decimal(18,2) IVA de Interés de Factoraje Moneda Origen 1 N
1 8 ComisionMO decimal(18,2) Comisión de Factoraje Moneda Origen 1 N
1 9 IVAComisionMO decimal(18,2) IVA de Comisión de Factoraje Moneda Origen 1 N
1 10 MontoPagarMO decimal(18,2) Monto a Pagar Neto Moneda Origen 1 N
1 11 ValorDocumentosMN decimal(18,2) Monto Total Factorado Moneda Nacional 1 N
1 12 InteresMN decimal(18,2) Interés de Factoraje Moneda Nacional 1 N
1 13 IVAInteresMN decimal(18,2) IVA de Interés de Factoraje Moneda Nacional 1 N
1 14 ComisionMN decimal(18,2) Comisión de Factoraje Moneda Nacional 1 N
1 15 IVAComisionMN decimal(18,2) IVA de Comisión de Factoraje Moneda Nacional 1 N
1 16 MontoPagarMN decimal(18,2) Monto a Pagar Neto Moneda Nacional 1 N
1 17 ReferenciaOperacion nvarchar(323) Referencia de la Operación 1 N
3 18 IdCuentaBancaria int Identificador de Cuenta Bancaria 1 N
3 19 NumeroCuenta nvarchar(15) Numero de Cuenta Bancaria 1 N
3 20 IdBanco int Identificador de Banco 1 N
3 21 NombreCortoBanco nchar(15) Nombre Corto Del Banco 1 N
3 22 IdCuentaBancaria int Identificador Cuenta Bancaria Movimiento 1 N
3 23 IdTipoMovimiento Int Tipo de Movimiento Bancario 1 N
3 24 Aplicado int Indica si el Movimiento esta aplicado o no 1 N
3 25 FechaMovimiento date Fecha del Movimiento Bancario 1 N
3 26 MontoDeposito decimal(18,2) Monto de los Depósitos Bancarios Moneda Origen 1 N
3 27 MontoRetiro decimal(18,2) Monto de los Retiros Bancarios Moneda Origen 1 N
3 28 IdMoneda int Identificacion de la Moneda del Movimiento 1 N
3 29 MontoDepositoMN decimal(18,2) Monto de los Depósitos Bancarios MN 1 N
3 30 MontoRetiroMN decimal(18,2) Monto de los Retiros Bancarios MN 1 N
3 31 IdReferenciaDetalle int Referencia del movimiento de Aplicación 1 N
3 32 IdMoneda int Identificacion de Moneda del Movimiento de Aplicación 1 N
3 33 IdConcepto int Identificador del Concepto del Movimiento de Aplicación 1 N
3 34 FechaRegistro date Fecha de Registro del Movimiento de Aplicación 1 N
3 35 Subtotal decimal(18,2) Subtotal del Movimiento de Aplicación Moneda Origen 1 N
3 36 IVA decimal(18,2) IVA del Movimiento de Aplicación Moneda Origen 1 N
3 37 Total decimal(18,2) Total del Movimiento de Aplicación Moneda Origen 1 N
3 38 SubtotalMN decimal(18,2) Subtotal del Movimiento de Aplicación Moneda Nacional 1 N
3 39 IVAMN decimal(18,2) IVA del Movimiento de Aplicación Moneda Nacional 1 N
3 40 TotalMN decimal(18,2) Total del Movimiento de Aplicación Moneda Nacional 1 N
3 41 CuentaContable varchar(50) Cuenta Contable Moneda origen de la Cuenta Bancaria 1 N
3 42 CuentaComplementaria varchar(50) Cuenta Contable Complementaria de la Cuenta Bancaria 1 N

Creación de Matrices de Pólizas

Las matrices de pólizas se crean estableciendo los parámetros principales de la matriz de póliza,
el detalle de dicha matriz y los campos de control, Agrupadores y de Filtro, que permitirán la
creación de pólizas contables, la estructura general de la matriz es la siguiente:

Encabezado de la Matriz de Pólizas


TipoCombinacion
Id Concepto Concepto
Id Id Id IdVista IdCampo
Matriz Concepto Descripción Siglas Poliza IdDivisa (1.- Solo Texto General Activo Sincronizado
Grupo Empresa TipoPoliza Disponible Disponible
Póliza 2.- Solo Campo Texto
3.- Texto + Campo)
Registra el
Otorgamiento de Factoraje de
1 3111 1 4 Factoraje Financiero FACCRMN 1 1 3 4 1 N
Factoraje con Recursos Fecha
en Moneda Nacional
Registra los Depósitos
Depósitos de
2 3111 1 1 Depósitos Bancarios recibidos en Dólar DEPUSD 2 2 3 25 1 N
Fecha
Americano

3. IdMatrizPoliza.- Identity numeración consecutiva


4. IdGrupo.- Identificador del grupo al que pertenece la empresa (Este dato se envía al
inicio de sesión del sistema, al realizar las pruebas se puede asignar cualquier número)
5. IdEmpresa.- Identificador de la Empresa Emisora de Pólizas Contables
6. IdTipoPoliza.- Proviene del catálogo de tipos de póliza
7. Concepto. - Texto libre para el Usuario, se recomienda se determine una longitud
máxima de 150 caracteres, con el fin de delimitar los nombres a que sean cortos.
8. Descripción. - Texto libre para el usuario en el cual podrá describir lo que contabilizarán
las pólizas que sean generadas mediante el uso de la matriz que se crea.
9. SiglasPoliza.- Identificado Alfanumérico de máximo 10 caracteres, será utilizado en la
creación de archivos de pólizas digitales, como parte del nombre, en conjunto con otras
reglas que se establecen en la creación de dichos archivos digitales.
10. IdVistaDisponible.- Establece el Identificador de la vista, del Catálogo de Vistas
Disponibles, que será utilizado para la creación de la matriz de pólizas.
11. IdDivisa.- La matriz de póliza podrá o no generar pólizas por un tipo de moneda en
específico, sin embargo el usuario podría no especificar la moneda, por lo que el valor
deberá ser NULL para este campo y el código deberá controlar que no envíe error; de
igual forma, si este campo contiene valor, el sistema deberá registrar en automático, en
la tabla de “Parámetros de Control”, el campo de divisa que aparezca en la vista
disponible, para el caso que no se localizara dicho campo en la vista, deberá preguntar
al usuario cual es el campo de divisa que filtrará este valor, de no asignarse un campo
de la vista, el campo deberá permanecer en NULL.
12. TipoCombinacionConcepto.- Cuando se crean pólizas, es necesario establecer un
concepto general de cada una de estas, para la construcción de dicho concepto general,
este podrá realizarse de una de las tres formas indicadas:
a. Solo Texto. - El usuario Establecerá un Texto, en el Campo
“ConceptoGeneraltexto”, el cual se asignará de forma estática a todas las
pólizas que se generen a través de esta matriz.
b. Solo Campo. - El Usuario Seleccionará un campo disponible de la Vista
Disponible.
c. Texto + Campo. - El usuario establecerá un texto, en el Campo
“ConceptoGeneraltexto”, y además asignará un campo disponible de los
Campos Disponibles de la Vista, el sistema deberá tener la capacidad de
convertir en texto cualquier campo que se asigne, tal es el caso de un campo de
tipo date.
13. Activo. - Es un campo tipo bit, el cual deberá ser configurado con: 1.- Activo y 2.- Inactivo,
este se refiere a si el registro se encuentra o no activo y por lo tanto disponible para ser
utilizado.
14. Sincronizado. - Campo que será utilizado para la sincronización de información de la
base de datos, el valor por Default que debe tener es “N”

Detalle de la Matriz de Pólizas

El detalle de la Matriz de Pólizas contendrá los parámetros necesarios para crear el movimiento
contable de las operaciones por las cuales se genera una póliza, de forma general se establece
la siguiente estructura:

(Para efectos de lectura la tabla se dividió en dos partes, sin embargo, es una sola tabla)
OrigenCuentaContable
Id Campo (1.- Se Establece la
IdDetalle IdCampo Disponible Para IdCampoDisponiblePar Cuenta Contable
IdMatriz Disponible Para Cuenta
Matriz Poliza Monto ME* aCuentaContable Directa
Monto MN 2.- Proviene de un
Campo)

1 1 5 NULL 1 NULL 118201010010000


2 1 6 NULL 1 NULL 236201010000000
3 1 7 NULL 1 NULL 213201000000000
4 1 8 NULL 1 NULL 236201020000000
5 1 9 NULL 1 NULL 213201000000000
6 1 10 NULL 1 NULL 212303000000000

Tipo Combinacion
Id Tipo
Concepto IdCampo Id Campo
Movimiento Id Diario Id
(1.- Solo Texto Concepto Movimiento Texto Disponible Disponible Activo Sincronizado
(1.- Cargo Especial Segmento
2.- Solo Campo Concepto Referencia
2.- Abono)
3.- Texto + Campo)

1 3 Cesión número 1 1 0 NULL 1 N


2 3 Interés por Cesión 1 1 0 NULL 1 N
2 3 IVA de Intereses Por Cesión 1 1 0 NULL 1 N
2 3 Comisión Por Cesión 1 1 0 NULL 1 N
2 3 IVA de Comisión Por Cesión 1 1 0 NULL 1 N
2 3 Neto Por Pagar de la Cesión 1 1 0 NULL 1 N

1. IdDetalleMatrizPoliza.- Identity, numeración consecutiva


2. IdMatrizPoliza.- Corresponde al número de Matriz de Póliza, Cabecera, a la cual se
asignarán las configuraciones de registro.
3. IdCampoDisponibleParaMontoMN.- Este corresponde a un campo de la Vista Disponible
seleccionada para la matriz que será utilizado como monto del registro contable,
siempre en Moneda Nacional o de Uso Corriente de la empresa que utiliza el sistema,
sin embargo, se deberá filtrar solo aquellos campos que tengan el tipo de dato
“decimal”, ya que este será el valor del registro que se cargará o abonará.
4. IdCampoDisponibleParaMontoME.- El sistema deberá verificar si en la configuración de
la empresa, se encuentra el valor “False” en el campo “CuentasComplementarias”, de
ser así, el campo deberá ser asignado con un campo disponible de la Vista Disponible,
esto solo para el caso que no se utilicen las cuentas contables complementarias de
moneda extranjera, en el caso que el valor sea “True”, el valor de este campo será Cero.
5. OrigenCuentaContable.- Establecerá si el origen de la cuenta contable, con la que se
hará el registro del movimiento, las opciones son las siguientes:
a. Se Establece la cuenta. - Será establecida de forma estática por el usuario, en el
campo Cuenta Contable Directa.
b. Proviene de un Campo. - Será una cuenta dinámica que se tomará de algún
campo de la vista disponible.
6. IdCampoDisponible.- Establecerá el campo disponible de la Vista Disponible que se
seleccionó en la cabecera de la matriz de póliza, solo en el caso que el
OrigenCuentaContable haya sido “Proviene de un Campo”, de forma contraria el valor
será NULL y el código deberá controlar que no se genere error al generar las pólizas con
este valor nulo.
7. CuentaContableDirecta.- Este campo se encontrará disponible para la captura, por parte
del usuario, de la cuenta contable, cuando la opción OrigenCuentaContable haya sido
“Se Establece la Cuenta”, en caso contrario, este valor deberá ser NULL y el sistema
deberá controlar que no se genere error al generar las pólizas provenientes de la matriz
que se crea; el sistema deberá validar que la longitud de la cuenta, cuando es directa,
coincida con la longitud establecida en la configuración del catálogo contable.
8. IdTipoMovimiento.- Establece el identificador del tipo de movimiento contable que
generará el registro, este se toma del catálogo de “TipoMovimiento”, dichos
movimientos solo podrán ser “Cargo” o “Abono”
9. TipoCombinacionConcepto.- Todo registro contable, deberá establecer el concepto de
cada uno de los movimientos que se registran en una póliza, las opciones de este campo
son:
a. Solo Texto. - El usuario Establecerá un Texto, en el Campo
“ConceptoMovimientotexto”, el cual se asignará de forma estática a todas las
pólizas que se generen a través de esta matriz.
b. Solo Campo. - El Usuario Seleccionará un campo disponible de la Vista
Disponible.
c. Texto + Campo. - El usuario establecerá un texto, en el Campo
“ConceptoMovimientotexto”, y además asignará un campo disponible de los
Campos Disponibles de la Vista, el sistema deberá tener la capacidad de
convertir en texto cualquier campo que se asigne, tal es el caso de un campo de
tipo date.
10. ConceptoMovimientoTexto.- Campo libre para el Usuario, se recomiendo una longitud
de 30 caracteres, el cuál será llenado cuando la opción de “TipoCombinacionConcepto”
sea Solo Texto o Texto + Campo; En caso contrario, este será NULL y el sistema deberá
controlar que no haya errores al almacenar o generar las pólizas derivadas de la matriz
que se crea.
11. IdCampoDisponibleConcepto.- Establecerá el identificador del campo disponible, de la
vista disponible seleccionada para la matriz, cuando el campo
“TipoCombinacionConcepto” sea “Solo Campo” o “Texto + Campo”, En caso contrario,
este será NULL y el sistema deberá controlar que no haya errores al almacenar o generar
las pólizas derivadas de la matriz que se crea.
12. IdCampoReferencia.- Cada registro en una póliza contable, podrán establecer o no una
referencia, dicha referencia no puede ser estática, sin embargo, podrá no establecerse
la misma, en caso de que el usuario decida establecerla, tomará el identificador del
campo disponible, de la vista disponible seleccionada para la matriz, validando que el
campo sea de tipo “INT”.
13. IdDiarioEspecial.- Algunos de los movimientos de póliza podrán ser asignados a una
etiqueta de Diario Específico, el identificador deberá ser tomado del catálogo de
“Diarios Especiales”, este valor podrá o no ser utilizado, así mismo, para poner a
disposición del usuario este campo, el sistema deberá validar en la configuración de la
empresa, si el valor “DiarioEspecial” se encuentra en “True”, de forma contraria no se
podrá utilizar y el valor de este podrá establecerse en NULL y el sistema deberá controlar
que no haya errores al almacenar o generar las pólizas derivadas de la matriz que se
crea.
14. IdSegmento.- .- Algunos de los movimientos de póliza podrán ser asignados a un
segmento de negocio específico, el identificador deberá ser tomado del catálogo de
“Segmentos de Negocio”, este valor podrá o no ser utilizado, así mismo, para poner a
disposición del usuario este campo, el sistema deberá validar en la configuración de la
empresa, si el valor ”SegmentoNegocio” se encuentra en “True”, de forma contraria no
se podrá utilizar y el valor de este podrá establecerse en NULL y el sistema deberá
controlar que no haya errores al almacenar o generar las pólizas derivadas de la matriz
que se crea.
15. Activo. - Es un campo tipo bit, el cual deberá ser configurado con: 1.- Activo y 2.- Inactivo,
este se refiere a si el registro se encuentra o no activo y por lo tanto disponible para ser
utilizado.
16. Sincronizado. - Campo que será utilizado para la sincronización de información de la
base de datos, el valor por Default que debe tener es “N”

Parámetros de Control. - Los parámetros control son valores que permitirán establecer filtros y
agrupadores para la vista disponible, seleccionada en una matriz de póliza, el catálogo de Tipo
Parámetro Control tiene los siguientes elementos:

1. Filtro de Póliza.- Establece un parámetro que permitirá realizar filtros generales a las
pólizas generadas con la matriz que se crea, el valor que deberá tomar la vista, al ser
ejecutada, es el valor del campo “IdDivisa”, establecido en la cabecera de la matriz de
póliza, por lo que el sistema deberá validar que los parámetros que se establezcan en la
tabla de parámetros control, deberán ser del tipo “int” y corresponderán al mismo
campo asignado en el campo “IdDivisa” de la cabecera, para el caso que no haya sido
seleccionada alguna divisa, este campo podrá permanecer en NULL y el sistema deberá
verificar que no se genere error al almacenar y al generar pólizas derivadas de la matriz
que se crea.
2. Filtro de Registro.- Establece un parámetro que permitirá realizar filtros a los registros
de las pólizas generadas con la matriz que se crea, el valor que deberá tomar la vista, al
ser ejecutada, el sistema deberá validar que los campos que se establezcan en la tabla
de parámetros control, deberán ser del tipo “int”, este campo podrá permanecer en
NULL y el sistema deberá verificar que no se genere error al almacenar y al generar
pólizas derivadas de la matriz que se crea.
3. Agrupador de Registro. - Este campo establecerá el corte de cada póliza, el valor será
tomado de la tabla de parámetros disponibles de la vista asignada a la matriz de póliza,
el sistema deberá verificar que todas las matrices tengan asignados, cuando menos, un
campo de Agrupación de registro, con el cual podrá realizar los cortes de póliza.
4. Filtro de Fechas. - Este campo establecerá el rango de fechas por el cual se generarán
las pólizas contables, por lo que es un parámetro obligatorio para cada matriz, el sistema
deberá asegurarse que todas y cada una de las matrices construidas, contengan este
parámetro.

IdTipoParametro TipoParametro Activo Sincronizado


1 Filtro de Póliza 1 N
2 Filtro de Registro 1 N
3 Agrupador de Registro 1 N
4 Filtro de fechas 1 N

Tabla Parámetros de Control de Pólizas. - La tabla de ParametroControlPoliza contendrá los


campos que permitirá filtrar y agrupar los registros que se contendrán en una póliza.
IdParametroControl IdMatrizPoliza IdTipoParametro IdCampoDisponible ValorAgrupador Activo Sincronizado
1 1 1 3 NULL 1 N
2 1 3 1 NULL 1 N
3 1 4 4 NULL 1 N
4 2 2 23 1 1 N
5 2 4 25 NULL 1 N

1. IdParametroControl.- Identity, numeración consecutiva.


2. IdMatrizPoliza.- Identificador de la Matriz de Póliza a la cual se le asignan los campos de
filtro y agrupación.
3. IdTipoParametro.- El identificado del tipo de parámetro de control que se asigna,
proviene del catálogo de Parámetros de Control.
4. IdCampoDisponible.- Es el identificador de campo disponible de la Vista Disponible,
Asignada a la Matriz de Póliza, a la cual se le asigna el parámetro de control.
5. ValorAgrupador.- Este campo podrá ser llenado por el usuario con un valor específico,
siempre de tipo “int”, sin embargo, el campo podrá permanecer en NULL, lo cual
significa que el campo disponible seleccionado, tendrá los valores de agrupación de
forma dinámica.
6. Activo.- Es un campo tipo bit, el cual deberá ser configurado con: 1.- Activo y 2.- Inactivo,
este se refiere a si el registro se encuentra o no activo y por lo tanto disponible para ser
utilizado.
7. Sincronizado.- Campo que será utilizado para la sincronización de información de la base
de datos, el valor por Default que debe tener es “N”

Generar Preview de Una Póliza.- Una vez generada la Configuración de la Matriz de Póliza, el
sistema deberá tener un visor que permita visualizar previamente como quedará construida una
póliza que tenga como base la Matriz Seleccionada, para lo cual deberá ejecutar el proceso de
generación de pólizas contables, sin almacenar los resultados en la tabla de Pólizas Contables.

Proceso de Generación de Pólizas Contables

Ejecución Dinámica de Una Vista

El sistema deberá tener la capacidad de ejecutar, de manera dinámica, la Vista Disponible


Asignada a cada una de las Matrices De Póliza, agregando los campos de Control de las Matrices,
es decir, filtrando y agrupando, según sea el caso, de acuerdo a la asignación de dichos
parámetros; todas las vistas que se ejecuten, deberán ser filtradas por rango de fechas, por lo
que, al ejecutar una vista de forma dinámica, deberán agregarse los parámetros FechaDe y
FechaA, los cuales se aplicaran al campo del parámetro de control “Filtro de Fechas” que tenga
asignada la Matriz.

Cortes de Registros y Pólizas

Fechas.- Aun cuando el filtro de cualquier póliza es un rango de fechas, el sistema deberá
generar agrupaciones por día, dentro del periodo seleccionado.

Agrupación de registro.- El sistema deberá agrupar, de acuerdo al Parámetro de Agrupador de


registros, establecido en la matriz de pólizas, por el valor establecido para este parámetro, si es
que se asignó un valor fijo, o bien por los valores contenidos en la vista para cada uno de los
registros del parámetros de agrupación, esto permitirá al sistema identificar el corte del registro
de una póliza y, si hubiese más registros, el inicio de una nueva póliza, del día que en ese
momento agrupando.

Si una Matriz Tuviese más de un parámetro de agrupación de registros, deberá realizar el corte
de póliza hasta que se agoten los registros de las agrupaciones incorporadas hasta llegar a la
primer agrupación de registros asignada a la Matriz, es decir, por ejemplo: si primero se
establece una parámetro de agrupación de registro de divisa y luego se asigna un parámetro de
agrupación de registros de personas, el corte de póliza se dará hasta que se hayan procesado
todos y cada uno de los registros del segundo parámetro de control, lo que dará por terminado
el primer parámetro de control y cortará el registro de la póliza, este mecanismo será aplicable
si hubiesen asignado a una matriz más de dos parámetros de agrupación de registros, por lo que
las agrupaciones de información se harán del último parámetro agrupador de registros al primer
parámetros agrupador de registros.

Sustitución de Valores, validación de sumatorias de Pólizas

El sistema, una vez generada la ejecución de las Vistas de manera dinámica, incluyendo
parámetros de filtro y agrupación, si hubiese, deberá sustituir, por cada una de las líneas de
registro, los valores establecidos en los campos disponibles asignados a los registros de la matriz
de póliza, por los valores obtenidos en la ejecución de la vista, ordenándolos por agrupadores
de registro en forma ascendente, así mismo, deberá validar que las suma total de los registros
de cargo y abono, sean iguales; para el caso de que una póliza no coincidieran las sumas de cargo
y abono, se determinara la diferencia y se agregará un registro a la póliza, utilizando la cuenta
de cuadre, configurada en el proveedor de contabilidad, y el importe se establecerá como cargo
o abono, según haya sido el caso de que uno de los dos fuera el de menor valor, esto deberá
permitir igualar las sumas de cargos y abonos.

Almacenamiento de Pólizas

Una vez generada la póliza y validada la suma de cargos y abonos, se podrá proceder al
almacenamiento de los valores obtenidos en las siguientes tablas:

Cabecera de Pólizas Contables


IdMatrizPoliza FechaPoliza FechaTexto ConceptoGeneralPoliza TipoPoliza Impresa Ajuste GUID Activo Sincronizado
19 17/09/2018 20180917 Traspaso Entre Cuentas (Egreso) De Fecha: 2018-09-17 2 0 0 0D215AA4-819B-4E2B-9D54-149D4039D0DA 1 N
19 17/09/2018 20180917 Traspaso Entre Cuentas (I De Fecha: 2018-09-17 2 0 0 36AB2C38-BB5D-4BEA-A23F-70FEDF4E14E2 1 N

1. IdPoliza.- Identity, numeración consecutiva.


2. IdGrupo.- Identificador del Grupo al que pertenece la empresa, este valor se obtiene al
inicio de la sesión, por lo que, para efecto de pruebas se podrá utilizar cualquier número.
3. IdEmpresa.- Empresa generadora de pólizas contables.
4. IdMatrizPoliza.- Identificador de la Matriz de Póliza sobre la cual se generan las pólizas.
5. FechaPoliza.- Fecha del día de los registros que se contabilizarán, el sistema deberá
recorrer y consultar por cada día del rango de periodo establecido en la generación de
las pólizas.
6. FechaTexto.- Este campo convierte, bajo cierta nomenclatura, la fecha de la póliza en
Texto, se proporciona una función en SQL server que realiza este proceso.
7. ConceptoGeneralPoliza.- Se almacenará el concepto general que se determina al
ejecutar el tipo de combinación del concepto general de la Matriz de Póliza y sustituir
los valores dinámicos.
8. TipoPoliza.- Es el valor del tipo de póliza configurado en la Matriz de Pólizas que le da
origen a la póliza.
9. Impresa.- Este valor se establece en cero, ya que es un campo de valor del proveedor
contable.
10. Ajuste.- Establece si la póliza es de ajuste, sin embargo, es un valor de uso del proveedor
contable, por lo que su valor se establece en cero.
11. GUID.- Global Unique IDentifier este es un numero Pseudoaleatorio empleado en
Software.
12. Activo.- Es un campo tipo bit, el cual deberá ser configurado con: 1.- Activo y 2.- Inactivo,
este se refiere a si el registro se encuentra o no activo y por lo tanto disponible para ser
utilizado.
13. Sincronizado.- Campo que será utilizado para la sincronización de información de la base
de datos, el valor por Default que debe tener es “N”

Detalle de Pólizas Contables


IdPolizaDetalle IdPoliza IdMoneda CuentaContable TipoMovimiento Importe ImporteME ConceptoMovimiento Referencia IdDiarioDetalle IdSegmentoNeg Activo Sincronizado
1 1 1 110201010010000 1 15000.00 0.00 Aplicacion Del Movimiento Bancario No : * 26110 0 NULL 1 N
2 1 1 110201020010000 0 15000.00 0.00 Aplicacion Del Movimiento Bancario No : * 26206 0 NULL 1 N

1. IdPolizaDetalle.- Identity, numeración consecutiva.


2. IdPoliza.- Identificación de la póliza que se está generando, este valor se genera al
almacenar la cabecera de la póliza.
3. IdMoneda.- Es el valor que cada uno de los registros debe llevar, en ausencia del mismo,
el valor por default deberá ser el de la moneda corriente de la empresa que genera las
pólizas.
4. CuentaContable.- Es el valor de la cuenta contable obtenida del registro, se debe validar
que cumpla con la longitud de configuración del catálogo de cuentas.
5. TipoMovimiento.- Este valor corresponde al tipo de movimiento configurado en el
detalle de la Matriz de Póliza, sin embargo, se tiene que tomar y almacenar el valor del
proveedor de contabilidad, en la tabla de homologación de naturaleza del movimiento.
6. Importe.- Corresponde al valor del campo disponible
IdCampoDisponibleParaMontoMN, asignado en la matriz de póliza y sustituido por el
valor obtenido en la vista disponible, asignada a la matriz.
7. ImporteME.- Corresponde al valor del campo disponible
IdCampoDisponibleParaMontoME, asignado en la matriz de póliza y sustituido por el
valor obtenido en la vista disponible, asignada a la matriz; para el caso de no tener un
valor, se le deberá asignar Cero.
8. ConceptoMovimiento.- EL Valor del Concepto del Movimiento generado de acuerdo a
la configuración de la Matriz de Póliza.
9. Referencia.- Corresponde al Valor de referencia configurado en la Matriz de Póliza,
sustituida por el valor obtenido en la Vista.
10. IdDiarioDetalle.- Es el valor del campo DiarioEspecial, si este fue asignado en algún
registro de la Matriz de Póliza, sustituido por el valor que le fue asignado, en caso
contrario, el valor deberá ser cero.
11. IdSegmentoNegocio.- Es el valor del campo SegmentoNegocio, si este fue asignado en
algún registro de la Matriz de Póliza, sustituido por el valor que le fue asignado, en caso
contrario, el valor deberá ser NULL.
12. Activo.- Es un campo tipo bit, el cual deberá ser configurado con: 1.- Activo y 2.- Inactivo,
este se refiere a si el registro se encuentra o no activo y por lo tanto disponible para ser
utilizado.
13. Sincronizado.- Campo que será utilizado para la sincronización de información de la base
de datos, el valor por Default que debe tener es “N”

Configuración de Layout de Pólizas Digitales

Según cada proveedor de Servicios de Contabilidad, existirá un Layout para generar archivos de
pólizas digitales, que puedan ser importadas en su sistema contable, actualmente se tienen dos
clases, una para ASPEL y una para COMPAQ, que reciben una DATASET con la información de
pólizas contables y generan los archivos digitales, dichas clases se proporcionan para mayor
agilidad.

El código deberá ser diseñado de tal forma que se puedan incorporar más clases de los Layout
de otros proveedores contables o bien, se actualicen los que se generen y usen.

Generación de Pólizas y Archivos de Póliza Digitales

El sistema deberá tener un formulario que solicite:

1. Empresa.- Nombre de la empresa de la que se desea generar las pólizas contables, esto
estará delimitado por los valores de la Cesión, si el usuario tiene privilegios de acceder
a más de una empresa, se le presentará un listado de empresas a las cuales puede
acceder y generar sus pólizas, de lo contrario, el listado solo presentará la empresa en
la cual tiene privilegios.
2. Generar:
a. Pólizas.- El formulario deberá tener una casilla de verificación, por default
deberá estar marcada, si la casilla se encuentra desmarcada, no se generarán
las pólizas que se almacenan en la Base de Datos, esto es útil cuando ya fueron
generadas las pólizas y almacenadas y solo se pretende generar los Archivos
digitales de póliza.
b. Archivo Digital.- El formulario deberá tener una casilla de verificación, por
default deberá estar marcada, si la casilla se encuentra desmarcada, solo se
generarán las pólizas y se almacenaran, si la casilla respectiva se encuentra
marcada, de lo contrario, también será generado los Archivos Digitales.
c. Modalidad del Archivo Digital.- La generación de archivos se pueden ser
generados bajo las siguientes modalidades:
i. Por Día.- Se genera un archivo de Póliza por cada día y Por Cada Matriz
de Póliza, identificado por las SiglasPoliza, establecida al crearse la
Matriz de Pólizas, identificando al archivo digital de la siguiente forma:
SiglasPoliza + Fecha(En forma de Texto), con extensión “.POL”
ii. Por Periodo.- Se generan un Archivo de Póliza por el periodo completo
seleccionado, el cual contendrá todas las pólizas de cada periodo y de
cada Matriz de Pólizas, el archivo digital identificará de la siguiente
Forma: SiglasPoliza + Dia Inicial del Rango de Fechas (Dos Dígitos)+Dia
Final del rango de Fechas (Dos dígitos) +Mes Del Periodo Solicitado(Dos
dígitos)+Año del periodo Solicitado (Cuatro Dígitos), con la extensión
“.POL”
d. Proveedor Contable.- El sistema deberá presentar un listado de los proveedores
contables existentes en el catálogo, presentando por default el proveedor con
el que se encuentra configurada la empresa emisora de pólizas contables, esto
para seleccionar el Layout a utilizar en la Emisión de Archivos Digitales.
3. Rango de Fechas de Emisión.- Rango de fechas entre los cuales se buscarán los registros
para generar las pólizas contables; se debe limitar al usuario para seleccionar solo fechas
que se encuentren en el mismo mes, no se debe permitir fechas que inician en un mes
de un mismo ejercicio y terminen en otro mes del mismo u de otro ejercicio.
4. Rango de Matrices de Pólizas.- El sistema podrá emitir las pólizas permitiendo, mediante
botones de opción, generar las pólizas de:
a. Una Matriz de Póliza Específica.- Se presentará un listado de las Matrices de
Póliza disponibles para la empresa emisora de pólizas.
b. Todas Las Matrices.- Se inhibe el listado de Matrices de Pólizas y se generan en
automático todas las Pólizas de las Matrices disponibles para la empresa
emisora de pólizas.
5. Ruta de Almacenamiento de Archivos.- Para el caso de la casilla de verificación de
Generación de Archivos de Pólizas se encuentre encendida, el sistema presentara la
opción al usuario, para que seleccione la ruta en la cual se almacenaran los Archivos
digitales de póliza, presentando por default la ruta almacenada en la configuración de
la empresa.

La siguiente Imagen es ilustrativa y no pretende que el formulario para la generación de Pólizas


sea igual o contenga las mismas opciones.

Potrebbero piacerti anche