Este documento es un material de especificación de los requisitos de innovación. Se trata de un contenido sumamente técnico. |
---|
Información General
Especificación | |||
Producto | PROTHEUS | Módulo | SIGAFIS |
Segmento ejecutor |
| ||
Projeto1 | Mercado Internacional | IRM/EPIC1 |
|
Requisito/Story/Issue1 |
| Subtarea1 |
|
Chamado/Ticket2 | MMI-4536 | ||
País | ( ) Brasil (X) Argentina ( ) México ( ) Chile ( ) Paraguay ( ) Ecuador ( ) EEUU ( ) Colombia ( ) Otro _____________. | ||
Otros |
Se solicita creación de Padrón de Ingresos Brutos de la Provincia IIBB de Mendoza, para actualizar la tabla SFH (Empresa vs. Zona Fiscal), para Percepciones de IIBB de Mendoza, informando:
- Situación fiscal del cliente/proveedor (Inscripto, Monotributista, Convenio Multilateral, etc.)
- Exenciones fiscales del cliente/proveedor (empresa)
- Identificación de la situación de “Riego Fiscal” del cliente/proveedor (empresa) y sus fechas de vigencia
- Adicional:
Se estima conveniente que para el cálculo de retenciones (rutinas “fina085a”, “fina850” y “fina855”), se valide que el valor de CCO_CRFRET sea <>”0” en lugar de identificar la provincia, con lo cual se posibilita que esta funcionalidad sea utilizada para cualquier provincia que lo requiera.
Configuración
Previamente, el usuario debe obtener de la página web de la AFIP o donde corresponda el archivo con el padrón de Riesgo Fiscal de Mendoza para importar al sistema con la opción Padrón IBB Mendoza.
Modificar la función FISA075, la cual se encuentra en el menú del módulo Libros Fiscales - Miscelánea - Arch. Magnéticos
Agregar la pregunta “Seleccionar registros de” al grupo de preguntas FISA075, con las opciones:
El usuario debe cargar la tabla de equivalencias de actividades aplicables a este régimen. Esta será empleada para obtener las alícuotas correspondientes a cada actividad. Los datos a registrar son:
- Valor Origen (CCP_VORIGE): Código fiscal; compras o ventas, el cual corresponde con FF_CFO_C o FF_CFO_V.
- Valor Destino (CCP_VDESTI): Código de actividad; especificadas en la RG No. 19/12.
Rutina | Tipo de Operación | Opción de Menú | Reglas de Negocio |
FISA075.PRW – Padrón IIBB Mendoza | Alteración | Miscelanea - Arch. Magneticos - Padrón IIB Mendoza | - |
Tablas Utilizadas
Parametrización
Informar:
- Ruta y nombre del archivo del padrón a importar
- Tabla de Actividad
- Módulo (“C” = Clientes), (“P” = Proveedores) y (“A” = Ambos)
Generación de la tabla de pesquisas
A fin de extraer del padrón sólo los registros correspondientes a los CUITs activos, generar un archivo de pesquisas con la siguiente información:
En base a los parámetros informados en el punto 1, seleccionar registros de:
- Si Módulo = ”C” catálogo de clientes (SA1)
- Si Módulo = ”P” catálogo de proveedores y empresas (SA2 y SM0)
- Si Módulo = ”A” catálogo de clientes, proveedores y empresas (SA1, SA2 y SM0)
Con los números de CUIT obtenidos generar un único registro por cuit/origen con la siguiente información:
- cui_numcui = Número de CUIT
- cui_origen = “P” = Proveedores (SA2), “C” = Clientes (SA1) o “E” = Empresa (SM0)
- cui_clipro = Código de Cliente (SA1_COD), Proveedor (SA2_COD). Si cui_origen = ”E” el dato corresponde a SM0_CGC
Este es un proceso general, no por filial dado que la búsqueda y actualización se efectúa a nivel CUIT (Clave Única de identificación Tributaria).
Si un proveedor/cliente tiene varias tiendas, todas deberían tener el mismo CUIT. En tal caso la actualización aplica para todas las tiendas del mismo proveedor/cliente.
El usuario debe cargar la tabla de equivalencias de actividades aplicables a este régimen. Esta será empleada para obtener las alícuotas correspondientes a cada actividad. Los datos a registrar son:
Previamente, el usuario debe tener el archivo con el padrón de Retención de la Provincia de Mendoza para importarlo al sistema, con la nueva opción “Padrón IIBB Mendoza”.
A través de una ventana inicial se informará el propósito de la rutina y la fecha del último proceso (almacenada en un parámetro), donde se tendrá un botón para indicar los parámetros para la generación del proceso, como se muestra en la Figura 1 (Prototipo de Pantallas). Al seleccionar los parámetros y dar clic en el botón para continuar, se iniciará la importación.
Se genera una tabla temporal con los registros extraídos del archivo padrón, para procesarlos de acuerdo a la regla de negocio:
Estructura de la tabla temporal
Campo | Tipo | Longitud | Decimales | Descripción |
CUIT | C | 14 |
| Número de CUIT |
NO_INSCR | C | 10 |
| Número Inscripción |
TIPO | C | 3 |
| Tipo |
COD_ACT | C | 6 |
| Código Actividad |
FCH_INIA | D | 8 |
| Fecha Inicio Actividad |
ALIQ_ACT | N | 5 | 2 | Alícuota Actividad |
TASACERO | C | 1 |
| Tasa Cero |
RIESGO | C | 1 |
| Riesgo |
FCH_INIR | D | 8 |
| Fecha Inicio Riesgo |
FCH_FINR | D | 8 |
| Fecha Fin Riesgo |
Cuenta con un índice por el campo CUIT.
Layout Padrón de Retención – Provincia de Mendoza
Volumen actual: 37.000 registros aprox.
Contenido: Padrón de IIBB de Mendoza
Nombre | Tipo | Formato |
CUIT | String |
|
Número Inscripción | Integer |
|
Tipo | String | IB=IIBB; CM=Convenio Multilateral; E=Escribano; SCS=Sellos; RG=Registro automotor |
Código Actividad | String |
|
Fecha Inicio Actividad | String |
|
Alícuota Actividad | Number | 00.00 (Según res. 19/20) |
Tasa Cero | String | Exención (A=Aprobada; R=Rechazada; P=Pendiente; N=No corresponde) |
Riesgo | String | (S=Si; N=No) |
Fecha Inicio Riesgo | String |
|
Fecha Fin Riesgo | String |
|
El archivo de texto tiene estas características:
Campos separados por punto y coma “;”.
Tipo = “CM” -> TIPO =”V”
Tipo =”M” -> TIPO =”M”
Tipo =”P” -> TIPO = “”
Tipo =”R” -> TIPO = “”
Sino -> TIPO = “I”
Los “TIPO” = “P” o “R” no será considerados para las actualizaciones por TIPO, serán considerados únicamente cuando tengan Tasa Cero o Riesgo Fiscal.
Se utilizará una tabla para registrar por código de actividad, la exención de retenciones de Ingresos Brutos correspondientes a la provincia de Mendoza.
Estructura de la tabla CGF
Campo | Tipo | Longitud | Decimales | Picture | Descripción |
CGF_FILIAL | C | 2 |
|
| Sucursal del Sistema |
CGF_COD | C | 6 |
| @! | Proveedor |
CGF_LOJA | C | 2 |
| @! | Sucursal |
CGF_IMPOST | C | 3 |
| @! | Impuesto |
CGF_ZONFIS | C | 2 |
| @! | Zona Fiscal |
CGF_CFO | C | 5 |
| @9 | Cod. Fiscal |
CGF_CODACT | C | 6 |
|
| Cod. Actividad |
CGF_PEREXE | N | 6 | 2 | @999.99 | Porcentaje Exención |
CGF_INIVIG | D | 8 |
|
| Fecha Inicio Vigencia |
CGF_FIMVIG | D | 8 |
|
| Fecha Fin Vigencia |
CGF_CODCLI | C | 6 |
| @! | Cliente |
Actualización
Este es un proceso general, no por filial dado que la búsqueda y actualización se efectúa a nivel CUIT (Clave Única de Identificación Tributaria).
El proceso debe ejecutarse a partir del Padrón de CUITs activos en el sistema, esto es, procesar la tabla de proveedores:
Ejecutar un Query de la tabla de Proveedores (SA2) en donde se seleccionen los registros que cumplan estas condiciones:
Si se duplican los CUITS, se tomará un solo registro.
En base a los registros obtenidos del query de Proveedores, se busca el CUIT en la tabla temporal del Padrón. Se debe tener en cuenta que en el padrón puede existir más de un registro con el mismo CUIT (en este caso se deben procesar en forma secuencial, actualizando el mismo registro de SFH).
1- Tipo
Si encuentra el registro fuera de vigencia o con Tipo diferente:
FH_ INIVIGE = “”
FH_ FIMVIGE = “”
FH_TIPO <> TIPO
Resultado:
FH_TIPO = TIPO
FH_INIVIGE = DDATABASE
FH_FIMVIGE = ””
FH_ INIVIGE = “”
FH_FIMVIGE = INFORMADA y VIGENTE
FH_TIPO <> TIPO
Resultado:
FH_FIMVIGE = DDATABASE -1
FH_TIPO = TIPO
FH_INIVIGE = DDATABASE
FH_FIMVIGE = FH_FIMVIGE del registro seleccionado (antes de actualizarlo)
FH_ INIVIGE = INFORMADA
FH_FIMVIGE = “”
FH_TIPO <> TIPO
Resultado:
FH_FIMVIGE = DDATABASE -1
FH_ INIVIGE = INFORMADA
FH_FIMVIGE = INFORMADA y VIGENTE
FH_TIPO <> TIPO
Resultado:
FH_ INIVIGE = “”
FH_FIMVIGE = INFORMADA Y NO VIGENTE
Resultado:
FH_ INIVIGE = INFORMADA
FH_FIMVIGE = INFORMADA Y NO VIGENTE
Resultado:
Insertar registro SFH:
Campo | Contenido |
FH_AGENTE | ”N” |
FH_FILIAL | A2_FILIAL |
FH_FORNECE | A2_COD |
FH_LOJA | A2_LOJA |
FH_IMPOSTO | “IBR” |
FH_PERCIBI | “N” |
FH_ISENTO | “N” |
FH_APERIB | ”N” |
FH_ ZONFIS | “ME” |
FH_TIPO | TIPO |
FH_INIVIGE | CTOD(“”) |
FH_FIMVIGE | CTOD(“”) |
2- Si no es Tasa cero y no es Riesgo y no existe el registro CUIT en el padrón:
3- Si es tasa cero (TASACERO = A – Aprobada) y si existe el registro CUIT en el padrón:
Insertar registro SFH:
Campo | Contenido |
FH_AGENTE | ”N” |
FH_FILIAL | A2_FILIAL |
FH_FORNECE | A2_COD |
FH_LOJA | A2_LOJA |
FH_IMPOSTO | “IBR” |
FH_PERCIBI | “N” |
FH_ISENTO | “N” |
FH_APERIB | ”N” |
FH_ ZONFIS | “ME” |
FH_TIPO | TIPO |
FH_INIVIGE | CTOD(“”) |
FH_FIMVIGE | CTOD(“”) |
Insertar registro en CGF:
Campo | Contenido |
CGF_FILIAL | FH_FILIAL |
CGF_FORNECE | FH_FORNECE |
CGF_LOJA | FH_LOJA |
CGF_IMPOSTO | FH_IMPOSTO |
CGF_ZONFIS | FH_ ZONFIS |
CGF_CFO | CCP_VDESTI |
CGF_CODACT | COD_ACT |
CGF_PEREXE | 100 |
CGF_INIVIGE | DDATABASE |
CGF_FIMVIGE | CTOD(“”) |
* CCP_VDESTI, donde CCP_VORIGE = COD_ACT (Informada en el archivo de padrón)
Actualiza registro SFH:
Campo | Contenido |
FH_TIPO | TIPO |
Si no existe registro en CGF o CGF_FIMVIGE<=Fecha de proceso:
Insertar registro en CGF:
Campo | Contenido |
CGF_FILIAL | FH_FILIAL |
CGF_FORNECE | FH_FORNECE |
CGF_LOJA | FH_LOJA |
CGF_IMPOSTO | FH_IMPOSTO |
CGF_ZONFIS | FH_ ZONFIS |
CGF_CFO | CCP_VDESTI |
CGF_CODACT | COD_ACT |
CGF_PEREXE | 100 |
CGF_INIVIGE | DDATABASE |
CGF_FIMVIGE | CTOD(“”) |
CGF_CODCLI |
* CCP_VDESTI, donde CCP_VORIGE = COD_ACT (Informada en el archivo de padrón)
Generar registro SFH, donde
Campo | Contenido |
FH_AGENTE | FH_AGENTE del registro actualizado |
FH_CLIENTE | FH_CLIENTE del registro actualizado |
FH_LOJA | FH_LOJA del registro actualizado |
FH_IMPOSTO | FH_IMPOSTO del registro actualizado |
FH_ PERCIBI | FH_PERCIBI del registro actualizado |
FH_ISENTO | FH_ISENTO del registro actualizado |
FH_ APERIB | FH_APERIB del registro actualizado |
FH_ZONFIS | FH_ZONFIS del registro actualizado |
FH_SITUACA | “1” |
FH_ALIQ | FH_ALIQ del registro actualizado |
FH_PERCENT | FH_PERCENT del registro actualizado |
FH_INIVIGE | FH_FIMVIGE del registro actualizado + 1 día |
FH_FIMVIGE | “” |
4- Si es riesgo (RIESGO = S – Si) y si existe el registro CUIT en el padrón:
Actualizar registro SFH:
Campo | Contenido |
FH_TIPO | TIPO |
FH_STUACA | ”2” |
FH_INIVIGE | FCH_INIR |
FH_FIMVIGE | FCH_FINR |
Actualizar registro SFH:
Campo | Contenido |
FH_TIPO | TIPO |
FH_FIMVIGE | FCH_FINR |
E insertar registro SFH:
Campo | Contenido |
FH_AGENTE | FH_AGENTE del registro actualizado |
FH_FILIAL | FH_FILIAL del registro actualizado |
FH_FORNECE | FH_FORNECE del registro actualizado |
FH_LOJA | FH_LOJA del registro actualizado |
FH_IMPOSTO | FH_IMPOSTO del registro actualizado |
FH_PERCIBI | FH_PERCIBI |
FH_ISENTO | FH_ISENTO del registro actualizado |
FH_APERIB | FH_APERIB del registro actualizado |
FH_ ZONFIS | FH_ ZONFIS del registro actualizado |
FH_TIPO | FH_TIPO del registro actualizado |
FH_SITUACA | “” |
FH_ALIQ | FH_ALIQ del registro actualizado |
FH_PERCENT | FH_PERCENT del registro actualizado |
FH_INIVIGE | “” |
FH_FIMVIGE | “" |
Insertar registro SFH:
Campo | Contenido |
FH_AGENTE | ”N” |
FH_FILIAL | A2_FILIAL |
FH_FORNECE | A2_COD |
FH_LOJA | A2_LOJA |
FH_IMPOSTO | “IBR” |
FH_PERCIBI | “N” |
FH_ISENTO | “N” |
FH_APERIB | ”N” |
FH_ ZONFIS | “ME” |
FH_TIPO | TIPO |
FH_SITUACA | “2” |
FH_ALIQ | 0 |
FH_PERCENT | 0 |
FH_INIVIGE | FCH_INIR |
FH_FIMVIGE | FCH_FINR |
Si existe registro SFH donde FH_IMPOSTO=”IBR” y FH_ ZONFIS =”ME” y (FH_FIMVIGE=”” y FH_SITUACA=”2”):
Actualizar registro SFH:
Campo | Contenido |
FH_TIPO | TIPO |
FH_FIMVIGE | Fecha de Proceso - 1 |
E insertar registro SFH:
Campo | Contenido |
FH_AGENTE | FH_AGENTE del registro actualizado |
FH_FILIAL | FH_FILIAL del registro actualizado |
FH_FORNECE | FH_FORNECE del registro actualizado |
FH_LOJA | FH_LOJA del registro actualizado |
FH_IMPOSTO | FH_IMPOSTO del registro actualizado |
FH_PERCIBI | FH_PERCIBI |
FH_ISENTO | FH_ISENTO del registro actualizado |
FH_APERIB | FH_APERIB del registro actualizado |
FH_ ZONFIS | FH_ ZONFIS del registro actualizado |
FH_TIPO | FH_TIPO del registro actualizado |
FH_SITUACA | “” |
FH_ALIQ | FH_ALIQ del registro actualizado |
FH_PERCENT | FH_PERCENT del registro actualizado |
FH_INIVIGE | “” |
FH_FIMVIGE | “” |
Actualizar registro CGF:
Campo | Contenido |
CGF_FIMVIGE | Fecha de Proceso - 1 |
En referencia al requisito original, esto equivale a:
SI cib_marca=”S”, cib_tasacero=”N” y SI existe registro CGF, donde (XX_FIMVIGE=””
XX_FIMVIGE=(Fecha de Proceso – 1 día)
XX_FIMVIGE=(Fecha de Proceso – 1 día)
Al final del proceso:
Ordenes de Pago (OP)
Aquí se tendrá que buscar el registro de SFH (Ingresos Brutos), donde;
Prever la exención de la retención de ingresos brutos: Proveedor OP = FH_FORNECE y Loja OP = FH_LOJA y FH_IMPOSTO = “IBR” y FH_ ZONFIS = “ME” y (CGF_FIMVIGE = “” o CGF_FIMVIGE > Fecha Emisión de la OP ) y que el XX_CFO = (FF_CFO_C o FF_CFO_V), según corresponda, para no practicar la retención sobre dicho concepto fiscal.
Actualizar la alícuota: Proveedor OP= FH_FORNECE y Loja OP = FH_LOJA y FH_IMPOSTO = “IBR” y FH_ ZONFIS = “ME” y (FH_FIMVIGE = “” o FH_FIMVIGE <= Fecha Emisión de la OP ):
Alícuota Retención = Alícuota Retención * 2
Consideraciones:
Percepciones (IBF)
Este es un proceso general, no por filial dado que la búsqueda y actualización se efectúa a nivel CUIT (Clave Única de Identificación Tributaria).
El proceso debe ejecutarse a partir del Padrón de CUITs activos en el sistema, esto es, procesar la tabla de proveedores:
Ejecutar un Query de la tabla de Proveedores (SA2) en donde se seleccionen los registros que cumplan estas condiciones:
Si se duplican los CUITS, se tomará un solo registro.
En base a los registros obtenidos del query de Proveedores, se busca el CUIT en la tabla temporal del Padrón. Se debe tener en cuenta que en el padrón puede existir más de un registro con el mismo CUIT (en este caso se deben procesar en forma secuencial, actualizando el mismo registro de SFH).
1- Clientes – Tipo
1- Si cib_origen = ”C” y cib_marca = ”S”, acceder a la tabla “SFH” para el cliente indicado, donde FH_IMPOSTO = ”IBF”, seleccionando el registro de mayor FH_FIMVIGE o dicha fecha no posea información
FH_ INIVIGE = “”
FH_ FIMVIGE = “” FH_TIPO <> TIPO
Resultado:
FH_FIMVIGE = DDATABASE -1
Generar nuevo registro similar al seleccionado, donde:
FH_TIPO = TIPO
FH_INIVIGE = DDATABASE
FH_FIMVIGE = ””
FH_ INIVIGE = “”
FH_FIMVIGE = INFORMADA y VIGENTE
FH_TIPO <> TIPO
Resultado:
FH_FIMVIGE = DDATABASE -1
FH_TIPO = TIPO
FH_INIVIGE = DDATABASE
FH_FIMVIGE = FH_FIMVIGE del registro seleccionado (antes de actualizarlo)
FH_ INIVIGE = INFORMADA
FH_FIMVIGE = “”
FH_TIPO <> TIPO
Resultado:
FH_FIMVIGE = DDATABASE -1
FH_TIPO = TIPO
FH_INIVIGE = DDATABASE
FH_FIMVIGE = ””
FH_ INIVIGE = INFORMADA
FH_FIMVIGE = INFORMADA y VIGENTE
FH_TIPO <> TIPO
Resultado:
FH_FIMVIGE = DDATABASE -1
FH_ INIVIGE = “”
FH_FIMVIGE = INFORMADA y NO VIGENTE
Resultado:
FH_ INIVIGE = INFORMADA
FH_FIMVIGE = INFORMADA y NO VIGENTE
Resultado:
Si no se cumplen las situaciones anteriores.
Campo | Contenido |
FH_TIPO | CIB_TIPO |
Si no encuentra el registro
Campo | Contenido |
FH_AGENTE | “N” |
FH_CLIENTE | Según SA1 |
FH_LOJA | Según SA1 |
FH_IMPOSTO | “IBF” |
FH_ PERCIBI | “S” |
FH_ISENTO | “N” |
FH_ APERIB | “N” |
FH_ZONFIS | “ME” |
FH_TIPO | CIB_TIPO |
FH_INIVIGE | “” |
FH_FIMVIGE | “” |
2- Si cib_marca = ”N”
2- Proveedores – Tipo
1- Si cib_origen = ”P” y cib_marca = ”S”, acceder a la tabla “SFH” para el cliente indicado, donde FH_IMPOSTO = ”IBF”, seleccionando el registro de mayor FH_FIMVIGE o dicha fecha no posea información.
a) Si encuentra el registro fuera de vigencia o con Tipo diferente:
FH_ INIVIGE = “”
FH_ FIMVIGE = “”
FH_TIPO <> TIPO
Resultado:
FH_FIMVIGE = DDATABASE -1
FH_INIVIGE = DDATABASE
FH_FIMVIGE = ””
FH_ INIVIGE = “”
FH_FIMVIGE = INFORMADA y VIGENTE
FH_TIPO <> TIPO
Resultado:
FH_FIMVIGE = DDATABASE -1
FH_ INIVIGE = INFORMADA
FH_FIMVIGE = “”
FH_TIPO <> TIPO
Resultado:
FH_FIMVIGE = DDATABASE -1
FH_ INIVIGE = INFORMADA
FH_FIMVIGE = INFORMADA y VIGENTE
FH_TIPO <> TIPO
Resultado:
FH_ INIVIGE = “”
FH_FIMVIGE = INFORMADA y NO VIGENTE
Resultado:
FH_ INIVIGE = INFORMADA
FH_FIMVIGE = INFORMADA y NO VIGENTE
Resultado:
FH_TIPO = TIPO
FH_INIVIGE = DDATABASE
FH_FIMVIGE = ””
Si no se cumplen las situaciones anteriores.
Campo | Contenido |
FH_TIPO | CIB_TIPO |
b) Si no encuentra el registro
Genera un registro en “SFH” para cada sucursal del proveedor en proceso (SA2):
Campo | Contenido |
FH_AGENTE | “N” |
FH_FORNECE | Según SA2 |
FH_LOJA | Según SA2 |
FH_IMPOSTO | “IBF” |
FH_ PERCIBI | “S” |
FH_ISENTO | “N” |
FH_ APERIB | “N” |
FH_ZONFIS | “ME” |
FH_TIPO | CIB_TIPO |
FH_INIVIGE | “” |
FH_FIMVIGE | “” |
No actualiza
3- Tasa Cero – Clientes
1- Si cib_origen = ”C”, cib_marca = ”S” y cib_tasacero=”S” acceder a la tabla “SFH” para el cliente indicado, donde FH_IMPOSTO = ”IBF” y (FH_FIMVIGE = “” o FH_FIMVIGE>Fecha de Proceso), y no exista un registro.
Campo | Contenido |
FH_AGENTE | “N” |
FH_CLIENTE | Según SA1 |
FH_LOJA | Según SA1 |
FH_IMPOSTO | “IBF” |
FH_ PERCIBI | “N” |
FH_ISENTO | “N” |
FH_ APERIB | “N” |
FH_ZONFIS | “ME” |
FH_TIPO | CIB_TIPO |
FH_INIVIGE | “” |
FH_FIMVIGE | “” |
Campo | Contenido |
CGF_COD |
|
CGF_LOJA | FH_LOJA |
CGF_IMPOSTO | FH_IMPOSTO |
CGF_ZONFIS | FH_ZONFIS |
CGF_CFO | CCP_VDESTI |
CGF_CODACT | Código Actividad |
CGF_PEREXEN | “100” |
CGF_INIVIGE | DDATABASE |
CGF_FIMVIGE | CTOD(“”) |
CGF_CODCLI | FH_CLIENTE |
2- Si cib_origen = ”C”, cib_marca = ”S” y cib_tasacero=”S” acceder a la tabla “SFH” para el cliente indicado, donde FH_IMPOSTO = ”IBF” y (FH_FIMVIGE = “” o FH_FIMVIGE>Fecha de Proceso), si existe registro:
a) Si no posee registro CGF o (CGF_FIMVIGE <= Fecha de Proceso)
Campo | Contenido |
CGF_COD |
|
CGF_LOJA | FH_LOJA |
CGF_IMPOSTO | FH_IMPOSTO |
CGF_ZONFIS | FH_ZONFIS |
CGF_CFO | CCP_VDESTI |
CGF_CODACT | COD_ACT |
CGF_PEREXEN | “100” |
CGF_INIVIGE | DDATABASE |
CGF_FIMVIGE | CTOD(“”) |
CGF_CODCLI | FH_CLIENTE |
b) Si posee registro CGF, donde (CGF_FIMVIGE > Fecha de Proceso)
3- Si cib_origen = ”C”, cib_marca = ”S” y cib_tasacero=”S” acceder a la tabla “SFH” para el cliente indicado, donde FH_IMPOSTO = ”IBF”, FH_FIMVIGE>Fecha de Proceso y FH_SITUACA = “2”, si existe registro:
Generar registro SFH, donde
Campo | Contenido |
FH_AGENTE | FH_AGENTE del registro actualizado |
FH_CLIENTE | FH_CLIENTE del registro actualizado |
FH_LOJA | FH_LOJA del registro actualizado |
FH_IMPOSTO | FH_IMPOSTO del registro actualizado |
FH_ PERCIBI | FH_PERCIBI del registro actualizado |
FH_ISENTO | FH_ISENTO del registro actualizado |
FH_ APERIB | FH_APERIB del registro actualizado |
FH_ZONFIS | FH_ZONFIS del registro actualizado |
FH_SITUACA | “1” |
FH_ALIQ | FH_ALIQ del registro actualizado |
FH_PERCENT | FH_PERCENT del registro actualizado |
FH_INIVIGE | FH_FIMVIGE del registro actualizado + 1 día |
FH_FIMVIGE | “” |
4- Si cib_origen = ”C”, cib_marca = ”S” y cib_tasacero=”N”, si existe registro CGF, donde CGF_FIMVIGE = “”
Campo | Contenido |
CGF_FIMVIGE | Fecha de proceso – 1 día |
5- Si cib_origen = “C” y cib_marca = “N”, si existe registro CGF, dónde CGF_FIMVIGE = ””
Campo | Contenido |
CGF_FIMVIGE | Fecha de proceso – 1 día |
4- Tasa Cero – Proveedores
1- Si cib_origen = ”E”, cib_marca = ”S” y cib_tasacero=”S” acceder a la tabla “SFH” para el proveedor indicado, donde FH_IMPOSTO = ”IBF” y (FH_fimvige = “” o FH_FIMVIGE>Fecha de Proceso), seleccionando el registro de mayor FH_FIMVIGE o dicha fecha no posea información y no exista un registro.
Campo | Contenido |
FH_AGENTE | “N” |
FH_FORNECE | Según SA2 |
FH_LOJA | Según SA2 |
FH_IMPOSTO | “IBF” |
FH_ PERCIBI | “N” |
FH_ISENTO | “N” |
FH_ APERIB | “N” |
FH_ZONFIS | “ME” |
FH_TIPO | CIB_TIPO |
FH_INIVIGE | “” |
FH_FIMVIGE | “” |
Campo | Contenido |
CGF_COD | FH_FORNECE |
CGF_LOJA | FH_LOJA |
CGF_IMPOSTO | FH_IMPOSTO |
CGF_ZONFIS | FH_ZONFIS |
CGF_CFO | CCP_VDESTI |
CGF_CODACT | Código Actividad |
CGF_PEREXEN | “100” |
CGF_INIVIGE | DDATABASE |
CGF_FIMVIGE | CTOD(“”) |
CGF_CODCLI |
|
2- Si cib_origen = ”E”, cib_marca = ”S” y cib_tasacero=”S” acceder a la tabla “SFH” para el proveedor indicado, donde FH_IMPOSTO = ”IBF” y (FH_FIMVIGE = “” o FH_FIMVIGE>Fecha de Proceso), si existe registro:
a) Si no posee registro CGF o (CGF_FIMVIGE <= Fecha de Proceso)
Campo | Contenido |
CGF_COD | FH_FORNECE |
CGF_LOJA | FH_LOJA |
CGF_IMPOSTO | FH_IMPOSTO |
CGF_ZONFIS | FH_ZONFIS |
CGF_CFO | CCP_VDESTI |
CGF_CODACT | Código Actividad |
CGF_PEREXEN | “100” |
CGF_INIVIGE | DDATABASE |
CGF_FIMVIGE | CTOD(“”) |
CGF_CODCLI |
|
b) Si posee registro CGF, donde (CGF_FIMVIGE > Fecha de Proceso)
3- Si cib_origen = ”E”, cib_marca = ”S” y cib_tasacero=”S” acceder a la tabla “SFH” para el proveedor indicado, donde FH_IMPOSTO = ”IBF”, FH_FIMVIGE>Fecha de Proceso y FH_SITUACA = “2”, si existe registro:
Campo | Contenido |
FH_AGENTE | FH_AGENTE del registro actualizado |
FH_CLIENTE | FH_CLIENTE del registro actualizado |
FH_LOJA | FH_LOJA del registro actualizado |
FH_IMPOSTO | FH_IMPOSTO del registro actualizado |
FH_ PERCIBI | FH_PERCIBI del registro actualizado |
FH_ISENTO | FH_ISENTO del registro actualizado |
FH_ APERIB | FH_APERIB del registro actualizado |
FH_ZONFIS | FH_ZONFIS del registro actualizado |
FH_SITUACA | “1” |
FH_ALIQ | FH_ALIQ del registro actualizado |
FH_PERCENT | FH_PERCENT del registro actualizado |
FH_INIVIGE | FH_FIMVIGE del registro actualizado + 1 día |
FH_FIMVIGE | “” |
4- Si cib_origen = ”E”, cib_marca = ”S” y cib_tasacero=”N”, si existe registro CGF, donde CGF_FIMVIGE = “”
Campo | Contenido |
CGF_FIMVIGE | Feche de proceso – 1 día |
5-Si cib_origen = “E” y cib_marca = “N”, si existe registro CGF, dónde CGF_FIMVIGE = ””
Campo | Contenido |
CGF_FIMVIGE | Feche de proceso – 1 día |
5- Riesgo Fiscal – Clientes
1- Si cib_origen = ”C”, cib_marca = ”S”, cib_riesgo=”S” acceder a la tabla “SFH” para el cliente indicado, donde FH_IMPOSTO = ”IBF” y (FH_FIMVIGE = “” o FH_FIMVIGE>Fecha de Proceso) y FH_SITUACA <> “2”
Campo | Contenido |
FH_SITUACA | 2 |
FH_INIVIGE | FCH_INIR |
FH_FIMVIGE | FCH_FINR |
2- Si cib_origen = ”C”, cib_marca = ”S”, cib_riesgo=”S” y FCH_FINR <>NULL acceder a la tabla “SFH” para el cliente indicado, donde FH_IMPOSTO = ”IBF, FH_SITUACA = “2” y FH_FIMVIGE=””
Campo | Contenido |
FH_FIMVIGE | FCH_FINR |
Campo | Contenido |
FH_AGENTE | FH_AGENTE del registro actualizado |
FH_CLIENTE | FH_CLIENTE del registro actualizado |
FH_LOJA | FH_LOJA del registro actualizado |
FH_IMPOSTO | FH_IMPOSTO del registro actualizado |
FH_ PERCIBI | FH_PERCIBI del registro actualizado |
FH_ISENTO | FH_ISENTO del registro actualizado |
FH_ APERIB | FH_APERIB del registro actualizado |
FH_ZONFIS | FH_ZONFIS del registro actualizado |
FH_SITUACA | “” |
FH_ALIQ | FH_ALIQ del registro actualizado |
FH_PERCENT | FH_PERCENT del registro actualizado |
FH_INIVIGE | “” |
FH_FIMVIGE | “” |
3- Si cib_origen = ”C”, cib_marca = ”S” y cib_riesgo=”S” acceder a la tabla “SFH” para el cliente indicado, donde FH_IMPOSTO = ”IBF” y FH_FIMVIGE = “” y no existe un registro
Campo | Contenido |
FH_AGENTE | “N” |
FH_CLIENTE | Según SA1 |
FH_LOJA | Según SA1 |
FH_IMPOSTO | “IBF” |
FH_ PERCIBI | “N” |
FH_ISENTO | “N” |
FH_ APERIB | “N” |
FH_ZONFIS | “ME” |
FH_SITUACA | “2” |
FH_ALIQ | “” |
FH_PERCENT | “0” |
FH_INIVIGE | FCH_INIR |
FH_FIMVIGE | FCH_FINR |
4- Si cib_origen = ”C”, cib_marca = ”N” acceder a la tabla “SFH” para el cliente indicado, donde FH_IMPOSTO = ”IBF”, FH_FIMVIGE = “” y FH_SITUACA = “2”
Campo | Contenido |
FH_FIMVIGE | Fecha de Proceso – 1 día |
Campo | Contenido |
FH_AGENTE | FH_AGENTE del registro actualizado |
FH_CLIENTE | FH_CLIENTE del registro actualizado |
FH_LOJA | FH_LOJA del registro actualizado |
FH_IMPOSTO | FH_IMPOSTO del registro actualizado |
FH_ PERCIBI | FH_PERCIBI del registro actualizado |
FH_ISENTO | FH_ISENTO del registro actualizado |
FH_ APERIB | FH_APERIB del registro actualizado |
FH_ZONFIS | FH_ZONFIS del registro actualizado |
FH_SITUACA | “” |
FH_ALIQ | FH_ALIQ del registro actualizado |
FH_PERCENT | FH_PERCENT del registro actualizado |
FH_INIVIGE | “” |
FH_FIMVIGE | “” |
6- Riesgo Fiscal – Proveedores
1- Si cib_origen = ”E”, cib_marca = ”S”, cib_riesgo=”S” acceder a la tabla “SFH” para el proveedor indicado, donde FH_IMPOSTO = ”IBF” y (FH_FIMVIGE = “” o FH_FIMVIGE>Fecha de Proceso) y FH_SITUACA <> “2”
Campo | Contenido |
FH_SITUACA | 2 |
FH_INIVIGE | FCH_INIR |
FH_FIMVIGE | FCH_FINR |
2- Si cib_origen = ”E”, cib_marca = ”S”, cib_riesgo=”S” y FCH_FINR <>NULL acceder a la tabla “SFH” para el proveedor indicado, donde FH_IMPOSTO = ”IBF, FH_SITUACA = “2” y FH_FIMVIGE=””
Campo | Contenido |
FH_FIMVIGE | FCH_FINR |
Campo | Contenido |
FH_AGENTE | FH_AGENTE del registro actualizado |
FH_FORNECE | FH_FORNECE del registro actualizado |
FH_LOJA | FH_LOJA del registro actualizado |
FH_IMPOSTO | FH_IMPOSTO del registro actualizado |
FH_ PERCIBI | FH_PERCIBI del registro actualizado |
FH_ISENTO | FH_ISENTO del registro actualizado |
FH_ APERIB | FH_APERIB del registro actualizado |
FH_ZONFIS | FH_ZONFIS del registro actualizado |
FH_SITUACA | “” |
FH_ALIQ | FH_ALIQ del registro actualizado |
FH_PERCENT | FH_PERCENT del registro actualizado |
FH_INIVIGE | “” |
FH_FIMVIGE | “” |
3- Si cib_origen = ”E”, cib_marca = ”S” y cib_riesgo=”S” acceder a la tabla “SFH” para el proveedor indicado, donde FH_IMPOSTO = ”IBF” y FH_FIMVIGE = “” y no existe registro
Campo | Contenido |
FH_AGENTE | “N” |
FH_FORNECE | Según SA2 |
FH_LOJA | Según SA2 |
FH_IMPOSTO | “IBF” |
FH_ PERCIBI | “N” |
FH_ISENTO | “N” |
FH_ APERIB | “N” |
FH_ZONFIS | “ME” |
FH_SITUACA | “2” |
FH_ALIQ | “” |
FH_PERCENT | “0” |
FH_INIVIGE | FCH_INIR |
FH_FIMVIGE | FCH_FINR |
4- Si cib_origen = ”E”, cib_marca = ”N” acceder a la tabla “SFH” para el proveedor indicado, donde FH_IMPOSTO = ”IBF”, FH_FIMVIGE = “” y FH_SITUACA = “2”
Campo | Contenido |
FH_FIMVIGE | Fecha de Proceso – 1 día |
Generar registro SFH, donde
Campo | Contenido |
FH_AGENTE | FH_AGENTE del registro actualizado |
FH_FORNECE | FH_FORNECE del registro actualizado |
FH_LOJA | FH_LOJA del registro actualizado |
FH_IMPOSTO | FH_IMPOSTO del registro actualizado |
FH_ PERCIBI | FH_PERCIBI del registro actualizado |
FH_ISENTO | FH_ISENTO del registro actualizado |
FH_ APERIB | FH_APERIB del registro actualizado |
FH_ZONFIS | FH_ZONFIS del registro actualizado |
FH_SITUACA | “” |
FH_ALIQ | FH_ALIQ del registro actualizado |
FH_PERCENT | FH_PERCENT del registro actualizado |
FH_INIVIGE | “” |
FH_FIMVIGE | “” |
Al final del proceso:
Percepción de Ingresos Brutos
Rutina ImpGener (afectando mata465n, mata467n, mata468n, mata101 y mata466n)
Si hay un registro vigente dónde FH_IMPOSTO =”IBF”, (CGF_INIVIGE = “” o CGF_INIVIGE <= Fecha de emisión del Comprobante de Entrada/Salida) y (CGF_FIMVIGE = “” o CGF_FIMVIGE => Fecha de emisión del Comprobante de Entrada/Salida).
Si hay un registro vigente dónde FH_IMPOSTO = “IBF”, FH_SITUACA =”2”, (FH_INIVIGE = “” o FH_INIVIGE <= Fecha de emisión del Comprobante de Entrada/Salida) y (FH_FIMVIGE = “” o FH_FIMVIGE => Fecha de emisión del Comprobante de Entrada/Salida).
Ejemplo:
Alícuota seleccionada = 2.5
CCO_CRFPER = 10.00%
Alícuota a aplicar = 2.5 * (1+CCO_CRFPER)
= 2.5 * 10 %
= 2.75
No aplica
No aplica
No aplica
Este documento es un material de especificación de los requisitos de innovación. Se trata de un contenido sumamente técnico. |
---|