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) igual a la fecha de vigencia hasta (Padrón)
c)Si (no coincide la alícuota o 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” b)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:
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 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”
b)c)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 y FH_FIMVIGE = cib_hasta, actualiza:
Si FH_SITUACA=“1” o FH_SITUACA=“2” à FH_SITUACA=”5” FH_ALIQ=cib_aliper
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
ALÍCUOTA DE RETENCIÓN=”0”
RETENCIONES A PROVEEDORES
Continúa sin actualizar ni generar registro alguno
ALÍCUOTA DE RETENCIÓN=”0”
RETENCIONES A PROVEEDORES
Si cib_Si cib_origen=”P” y cib_marca=”S”, acceder a la tabla “SFH” para el proveedor indicado, donde FH_IMPOSTO=”IBR” y ”IBR” y FH_ZONAFIS=”CF”, seleccionando el registro de mayor FH_FIMVIGE o dicha fecha no posea información información
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) igual a la fecha de vigencia hasta (Padrón)Si situacion (FH_SITUACA) igual a “1” o “2” entonces actualiza igual a ”5”
b)c)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_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 ALIQ = cib_aliper
FH_SITUACA=“2” à FH_SITUACA=”5” PERCENT = ”100”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:
a)Si coincide la alícuota y SI (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” 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 Fecha fin de vigencia (FH_FIMVIGE) igual a la fecha de vigencia hasta (Padrón)
c) entonces actualiza igual a ”5” b)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
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 coincide la 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” 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 Fecha fin de vigencia (FH_FIMVIGE) igual a la fecha de vigencia hasta (Padrón)
c)Si no coincide la alícuota y FH_FIMVIGE b)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 ALIQ=cib_aliper
FH_SITUACA=“2” à FH_SITUACA=”5”
FH_ALIQ=cib_aliper
FH_PERCENT=”0”
FH_PERCIBI=”S”
FH_APERIB=”S”
FH_ISENTO=”N”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 información
Si encuentra el registro y:
a)Si coincide la alícuota
Actualiza SI (FH_FIMVIGESITUACA = cib_hasta
Si FH_SITUACA=“1” o FH_SITUACA=“2” à FH_SITUACA=”5”
“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
cb)Si no coincide la alícuota y 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_FIMVIGE = cib_hasta 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_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 |