Se modifico la rutina FISA067.PRW para la opción "RES 364-16 Padrón de Regímenes Generales".
El patch contiene la rutina:
Configuraciones previas
El archivo que se importará debe tener el formato de separador por punto y coma, únicamente se aceptan archivos con este formato.
...
A continuación se describe la estructura que debe tener cada registro del archivo txt a importar.
CAMPO | LONGITUD | TIPO | DESDE | HASTA |
FORMATO | DESCRIPCIÓN / CONTENIDO | |||
Fecha de Publicación | 8 | N | 1 | 8 |
DDMMAAAA |
21092016 | ||||
Separador | 1 | A | 9 | 9 |
|
| ||||
Fecha Vigencia Desde | 8 | N | 10 | 17 |
DDMMAAAA |
01102016 | ||||
Separador | 1 | A | 18 | 18 |
|
| ||||
Fecha Vigencia Hasta | 8 | N | 19 | 26 |
DDMMAAAA |
31102016 | ||||
Separador | 1 | A | 27 | 27 |
|
| ||||
Número de Cuit | 11 | N | 28 | 38 |
| Cuit del |
Contribuyente | ||||
Separador | 1 | A | 39 | 39 |
|
| ||||||
Tipo-Contr_Insc | 1 | A | 40 | 40 | 'C' o 'D' | 'D' (Directo C.A.B.A.) |
Separador | 1 | A | 41 | 41 |
|
| |||||
Marca-alta-sujeto | 1 | A | 42 | 42 | S ó N ó |
B | 'S' (el sujeto se incorporo al Padrón) | |||
Separador | 1 | A | 43 | 43 |
|
| |||||
Marca-alicuota | 1 | A | 44 | 44 | S ó N ó |
B | 'N' | |||
Separador | 1 | A | 45 | 45 |
|
| |||||
Alicuota- Percepción | 4 | A | 46 | 49 | 9, |
99 | Alícuotas Vigentes | |||
Separador | 1 | A | 50 | 50 |
|
| |||||
Alicuota- Retención | 4 | A | 51 | 54 | 9, |
99 | Alícuotas Vigentes |
Separador | 1 | A | 55 | 55 |
|
| ||||
Nro-Grupo-Percepción | 2 | N | 56 | 57 |
| Deberá estar en ceros (por el momento) | |||
Separador | 1 | A | 58 | 58 |
|
| ||||
Nro-Grupo-Retención | 2 | N | 59 | 60 |
| Deberá estar en ceros (por el momento) | |||
Separador | 1 | A | 61 | 61 |
|
| ||||
Razón Social | 60 | A | 62 | 121 |
| Razón Social del |
Contribuyente |
Flujo de Prueba:
SFH CAMPOS:
Nombre | Campo |
---|---|
Agente | FH_AGENTE |
Cliente | FH_CLIENTE |
Tipo | FH_TIPO |
Sucursal | FH_LOJA |
Paga IB | FH_APERIB |
Paga imp. | FH_PERCIBI |
Zona Fiscal | FH_ZONAFIS |
Impuesto | FH_IMPOSTO |
Alícuota | FH_ALIQ |
Ini. Vigencia | FH_INIVIGE |
Fin Vigencia | FH_FIMVIGE |
% Excención | FH_PERCENT |
Exento | FH_ISENTO |
-cib_origen= CUIT padrón sino à “V” |
---|
ALÍCUOTA DE PERCEPCIÓN=”0”
...
a)Si coincide la alícuota y SI(FH_PERCENT=”100” SITUACA = “2” o FH_SITUACA = “3” o FH_SITUACA = “5” o FH_ISENTO = “S”) y está vigente:
NO actualiza, pues se priorizan las alícuotas correspondientes a“Riesgo Fiscal”, “Monotributista con Magnitudes Superadas”“Alícuotas Diferenciales” o Exenciones de carácter permanente.
b)Si coincide la alícuota y FH_PERCENT=”100”
Actualiza Fecha fin de vigencia (FH_FIMVIGE) Actualiza Fecha fin de vigencia (FH_FIMVIGE) igual a la fecha de vigencia hasta (Padrón)
Si situacion (FH_SITUACA) igual a “1” o “2” entonces actualiza igual a ”5” (Padrón)
cb)Si (no coincide la alícuota o FH_PERCENT<>”100”) y FH_FIMVIGE < cib_hasta o FH_FIMVIGE=”” à genera ””
Genera un nuevo registro “SFH” tomando como base los datos del registro encontrado, actualizando:
...
FH_INVIGE=cib_desde
FH_FIMVIGE=cib_hasta
FH_ISENTO=”N”
FH_SITUACA=“5” “1”
cd)Si (no coincide la alícuota o FH_PERCENT<> “100”) y FH_FIMVIGE = cib_hasta,
actualiza:
Si situacion (FH_SITUACA) igual a “1” o “2” entonces actualiza igual a ”5”
FH_ALIQ=cib_aliper
FH_PERCENT=”100”
FH_PERCIBI=”N”
FH_APERIB=”N”
FH_ISENTO=”N”
FH_SITUACA=“1”
Genera registro SFH, donde:
FH_AGENTE = “N” “N”
FH_CLIENTE = Según SA1 SA1
FH_LOJA = Según SA1 SA1
FH_IMPOSTO = IBP” IBP”
FH_PERCIBI = “N” “N”
FH_ISENTO = “N” “N”
FH_APERIB = ”N” ”N”
FH_ZONAFIS = ”CF” ”CF”
FH_SITUACA =“5” = ”1”
FH_ALIQ = cib_aliper
FH_TIPO = cib_tipcon tipcon
FH_PERCENT = ”100” “100”
FH_INIVIGE = ”cib_desde” desde”
FH_FIMVIGE = ”cib_hasta” hasta”
FH_FIMVIGE=cib_hasta
PERCEPCIÓN A PROVEEDORES
Si el CUIT de la empresa se encuentra en el padrón (archivo txt a importar), realiza la búsqueda en “SFH" para el proveedor indicado, donde FH_IMPOSTO=”IBP”, seleccionando el registro de mayor FH_FIMVIGE o dicha fecha no posea información:
fecha no posea información:
a)SI (FH_SITUACA = “2” o FH_SITUACA = “3” o FH_SITUACA = “5” o FH_ISENTO = “S”) y está vigente:
NO actualiza, pues se priorizan las alícuotas correspondientes a “Riesgo Fiscal”, “Monotributista con Magnitudes Superadas” “Alícuotas Diferenciales” o Exenciones de carácter permanente.
ba)Si coincide la alícuota y alícuota y FH_PERCENT=”100” ”100”
Actualiza Fecha fin de vigencia (FH_FIMVIGE) igual a la fecha de vigencia hasta (Padrón)
Si situacion (FH_SITUACA) igual a “1” o “2” entonces actualiza igual a ”5” )
cb)Si (no coincide la alícuota o alícuota o FH_PERCENT<> “100”) y y FH_FIMVIGE < cib_hasta o FH_FIMVIGE=””
Genera un nuevo registro “SFH” tomando como base los datos del registro encontrado, actualizando:
FH FH_ALIQ = cib_aliper
FH_PERCENT = ”100”
FH_PERCIBI = ”N”
FH_APERIB = ”N”
FH_INVIGE = cib_desde
FH_FIMVIGE = cib_hasta
FH_ISENTO=”N”
FH_SITUACA = “5” “1””
cd)Si (no coincide la alícuota o alícuota o FH_PERCENT<>”100”) y FH_FIMVIGE = cib_hasta, actualiza: Si FH_SITUACA=“1” o FH_SITUACA=“2” à FH_SITUACA=”5” y FH_FIMVIGE = cib_hasta, actualiza:
FH_ALIQ = cib_aliper
FH_PERCENT = ”100”
FH_PERCIBI = ”N”
FH_APERIB = ”N”
FH_ISENTOSITUACA = ”N”“1”
continúa Continúa sin actualizar ni generar registro alguno.
FH_FIMVIGE=cib_hasta
Continúa sin actualizar ni generar registro alguno=cib_hasta
ALÍCUOTA DE RETENCIÓN=”0”
RETENCIONES A PROVEEDORES
Si cib_origen=”P” y cib_marca=”S”, acceder a la tabla “SFH” para el proveedor indicado, donde FH_IMPOSTO=”IBR” y FH_ZONAFIS=”CF”, seleccionando el registro de mayor FH_FIMVIGE o dicha fecha no posea información
=”P” y cib_marca=”S”, acceder a la tabla “SFH” para el proveedor indicado, donde FH_IMPOSTO=”IBR” y FH_ZONAFIS=”CF”, seleccionando el registro de mayor FH_FIMVIGE o dicha fecha no posea información
a) SI (FH_SITUACA = “2” o FH_SITUACA = “3” o FH_SITUACA = “5” o FH_ISENTO = “S”) y está vigente:
NO actualiza, pues se priorizan las alícuotas correspondientes a “Riesgo Fiscal”, “Monotributista con Magnitudes Superadas” “Alícuotas Diferenciales” o Exenciones de carácter permanente.
b)Si coincide la alícuota y FH_PERCENT=”100” a)Si coincide la alícuota y FH_PERCENT=”100”
Actualiza Fecha fin de vigencia (FH_FIMVIGE) igual a la fecha de vigencia hasta (Padrón)Si situacion (FH_SITUACA) igual a “1” o “2” entonces actualiza igual a ”5”
bc)Si (no coincide la alícuota o alícuota o FH_PERCENT<> “100”) y y FH_FIMVIGE < cib_hasta o FH_FIMVIGE=””
Genera un nuevo registro “SFH” tomando como base los datos del registro encontrado, actualizando:
FH_ALIQ = cib_aliper
FH_PERCENT = ”100”
FH_PERCIBI = ”N”
FH_APERIB = ”N”
FH_INVIGE = cib_desde
FH_FIMVIGE = cib_hastacib_hasta
FH_ISENTO=”N”
FH_SITUACA = “5” “1”
cd)Si (no coincide la alícuota o alícuota o FH_PERCENT<>”100”) y y FH_FIMVIGE = cib_hasta,
actualiza: Si FH_SITUACA=“1” o FH_SITUACA=“2” à FH_SITUACA=”5”
FH_ALIQ = cib_aliper
FH_PERCENT = ”100”
FH_PERCIBI = ”N”
FH_APERIB = ”N”
FH_ISENTOSITUACA = ”N” “1”
Genera registro SFH, donde:
FH_AGENTE = ”N”
FH_FORNECE = Según SA2
FH_LOJA = Según SA2
FH_IMPOSTO = IBR”
FH_PERCIBI = “N”
FH_ISENTO = “N”
FH_SITUACA =“5” =”1”
FH_ALIQ = cib_aliper
FH_APERIB = ”N”
FH_ZONAFIS = ”CF”
FH_TIPO = cib_tipcon
FH_PERCENT = ”100”
FH_INIVIGE = ”cib_desde” ”cib_desde”
FH_FIMVIGE = ”cib_hasta”
FH_FIMVIGE=cib_hasta hasta
ALÍCUOTA DE PERCEPCIÓN <>”0”
PERCEPCIÓN A CLIENTES
Para determinar la actualización de la tabla SFH, se debe buscar si el CUIT existe en el “Padrón”(Archivo a cargar)
Si es cliente y existe en el padrón, acceder a la tabla “SFH” para el cliente indicado, donde impuesto (FH_IMPOSTO) igual a IBP, seleccionando el registro de mayor fin de vigencia( FH_FIMVIGE) o dicha fecha no posea información:
de vigencia( FH_FIMVIGE) o dicha fecha no posea información:
a) SI (FH_SITUACA = “2” o FH_SITUACA = “3” o FH_SITUACA = “5” o FH_ISENTO = “S”) y está vigente:
NO actualiza, pues se priorizan las alícuotas correspondientes a “Riesgo Fiscal”, “Monotributista con Magnitudes Superadas” “Alícuotas Diferenciales” o Exenciones de carácter permanente.
b)Si coincide la alícuotaa)Si coincide la alícuota y FH_PERCENT=”100”
Actualiza Fecha fin de vigencia (FH_FIMVIGE) igual a la fecha de vigencia hasta (Padrón)
Si situacion (FH_SITUACA) igual a “1” o “2” entonces actualiza igual a ”5” (Padrón)
cb)Si (no coincide la alícuota o FH_PERCENT<>”100”) y FH_FIMVIGE < cib_hasta o FH_FIMVIGE=””
Genera un nuevo registro “SFH” tomando como base los datos del registro encontrado, actualizando:
FH_ALIQ = cib_aliper aliper
FH_PERCENT = ”100” FH_PERCIBI=”N”
FH_APERIB=”N” ”0”
FH_INVIGE = cib_desde desde
FH_FIMVIGE = cib_hasta
FH_ISENTO=”N”hasta
FH_SITUACA = “5” “1”
cd)Si (no coincide la alícuota o FH_PERCENT<> “100”) y FH_FIMVIGE = cib_hasta= cib_hasta
Actualiza: Actualiza:
Si situacion (FH_SITUACA) igual a “1” o “2” entonces actualiza igual a ”5”
FH_ALIQ = cib_aliper aliper
FH_PERCENT = ”0”
FH_PERCIBI = ”S”
FH_APERIB = ”S”
FH_ISENTOSITUACA = ”N”“1”
Genera registro SFH, donde:
FH_CLIENTE = cib_clipro
FH_TIPO = cibcib_tipcon
FH_LOJA = Según SA1SA2
FH_PERCIBI = “S”
FH_ZONAFIS = ”CF”
FH_IMPOSTO = ”IBP”
FH_ALIQ = cib_aliper,
FH_PERCENT = ”0”
FH_PERCIBI = ”S” FH_SITUACA=”5”
FH_APERIB = ”S”
FH_INVIGE = cib_desde
FH_FIMVIGE = cib_hasta
FH_ISENTO = ”N”
FH_SITUACA = “1”
a)Si encuentra el registro y el mismo está vigente (FH_FIMVIGE => cib> cib_desde):
FH_FIMVIGE=clb_hasta hasta
b)Si NO encuentra el registro o el mismo no está vigente (FH_FIMVIGE < cib< cib_desde):
continúa sin actualizar ni generar registro alguno
PERCEPCIÓN A PROVEEDORES
Si el CUIT de la empresa se encuentra en el padrón (archivo txt a importar), realiza la búsqueda en “SFH" para el proveedor indicado, donde FH_IMPOSTO=”IBP”, seleccionando el registro de mayor FH_FIMVIGE o dicha fecha no posea información:
a)SI (FH_SITUACA = “2” o FH_SITUACA = “3” o FH_SITUACA = “5” o FH_ISENTO = “S”) y está vigente
NO actualiza, pues se priorizan las alícuotas correspondientes a “Riesgo Fiscal”, “Monotributista con Magnitudes Superadas” “Alícuotas Diferenciales” o Exenciones de carácter permanente.
b)Si coincide la alícuota alícuota
Actualiza Fecha fin de vigencia (FH_FIMVIGE) igual a la fecha de vigencia hasta (Padrón)Si situacion (FH_SITUACA) igual a “1” o “2” entonces actualiza igual a ”5”
bc)Si no coincide la alícuota y FH_FIMVIGE < cib_hasta o FH_FIMVIGE=”” à genera ”” à genera un nuevo registro “SFH” tomando como base los datos del registro encontrado, actualizando:
FH_ALIQ = cib_aliper
FH_PERCENT = ”0”
FH_PERCIBI = ”S”
FH_APERIB = ”S”
FH_INVIGE = cib_desde
FH_FIMVIGE = cib_hasta
FH_ISENTO=”N”
FH_SITUACA = “5” “1”
cd)Si no coincide la alícuota y FH_FIMVIGE = cib_hasta, actualiza:
Si FH_SITUACA=“1” o FH_SITUACA=“2” à FH_SITUACA=”5”
FH_ALIQ=cib_aliper
FH_PERCENT=”0”
FH_PERCIBI=”S”
FH_APERIB=”S”
FH_ISENTO=”N”
FH_SITUACA = “1”
Si encuentra el registro y:
a)Si el mismo está vigente, actualiza:
FH_FIMVIGE=cib_desde desde
b)Si NO encuentra el registro o el mismo no está vigente (FH_FIMVIGE < cib< cib_desde):
continúa sin actualizar ni generar registro alguno alguno
ALÍCUOTA DE RETENCIÓN <>”0”
RETENCIONES A PROVEEDORES
Si cib_origen=”P” y cib_marca=”S”, acceder a la tabla “SFH” para el proveedor indicado, donde FH_IMPOSTO=”IBR” y FH_ZONAFIS=”CF””CF”, seleccionando el registro de mayor FH_FIMVIGE o dicha fecha no posea información
Si encuentra el registro y:
a)Si coincide la alícuota
Actualiza FH_FIMVIGE=cib_hasta
Si FH_SITUACA=“1” o FH_SITUACA=“2” à FH_SITUACA=”5”
o dicha fecha no posea información
Si encuentra el registro y:
a) SI (FH_SITUACA = “2” o FH_SITUACA = “3” o FH_SITUACA = “5” o FH_ISENTO = “S”) y está vigente
NO actualiza, pues se priorizan las alícuotas correspondientes a “Riesgo Fiscal”, “Monotributista con Magnitudes Superadas” “Alícuotas Diferenciales” o Exenciones de carácter permanente.
b)Si coincide la alícuota
Actualiza FH_FIMVIGE=cib_hasta
c)Si no coincide la alícuota y b)Si no coincide la alícuota y FH_FIMVIGE < cib_hasta o hasta o FH_FIMVIGE=”” à genera ”” à genera un nuevo registro “SFH” tomando como base los datos del registro encontrado,
actualizando:
FH_ALIQ = cib_aliret
FH_PERCENT = ”0”
FH_PERCIBI = ”N”
FH_APERIB = ”N”
FH_INVIGE = cib_desde FH_ISENTO=”N”
FH_FIMVIGE = cib_hasta hasta
FH_SITUACA = “5” “1”
cd)Si no coincide la alícuota y FH_FIMVIGE = cib_hasta, actualiza:
Si FH_SITUACA=“1” o FH_SITUACA=“2” à FH_SITUACA=”5”
FH_ALIQ = cib_aliret
FH_PERCENT = ”0”
FH_PERCIBI = ”N”
FH_APERIB = ”N”
FH_ISENTO = ”N”
FH_SITUACA = “1””
Genera un registro “SFH” por sucursal (SA2), actualizando:
FHFH_FORNECE = cib_clipro
FH_TIPO = cibcib_tipcon
FH_LOJA = Según SA2 N”
FH_PERCIBI = ““N”
FH_APERIB = ”N” CF”
FH_ZONAFIS = ””CF”
FH_IMPOSTO = ”IBR”
FH_ALIQ = cib_aliret,
FH_INVIGE = cib_desde
FH_FIMVIGE = cib_hasta
FH_ISENTO =”N”
FH_SITUACA = “1”
a)Si encuentra el registro y el mismo está vigente, actualiza:
FH_FIMVIGE=clb_hasta hasta
b)Si NO encuentra el registro o el mismo no está vigente (FH_FIMVIGE < cib< cib_desde):
OK à continúa OK à continúa sin actualizar ni generar registro alguno
...
SA1 | Clientes |
SA2 | Proveedores |
SFH | Empresa Vs Zona fiscal |