Se creó la rutina FISA826modifico la rutina FISA067.PRW para dar solución a la funcionalidad requerida en la "RG 33-18_Contribuyentes_Activos_Padrón_Saltala opción "RES 816-14 - PADRON ALICUOTAS DIFERENCIALES y OTROS".
El patch contiene la rutina:
...
Configuraciones previas
...
El archivo que se importará debe tener el formato de separador por tabuladorpunto y coma, únicamente se aceptan archivos con este formato.
En el programa de Proveedores que puede encontrar en el menú del módulo Compras (Actualizaciones | archivos). Debe de contar con registros de proveedores
.configurados con el Cuit indicado en el padrón.
En el programa de Clientes que puede encontrar en el menú del módulo Compras (Actualizaciones | archivos). Debe de contar
Contarcon registros de clientes configurados con el Cuit indicado en el padrón.
Plantilla txtA continuación se describe la estructura que debe tener cada registro del archivo txt a importar.
Para poder llevar a cabo una correcta importación de los registros dentro del archivo de texto es de suma importancia tener en consideración, la siguiente estructura para los datos:
CAMPO | LONGITUD | TIPO | DESDE | HASTA | FORMATO | DESCRIPCIÓN / CONTENIDO |
Fecha de publicación | 8 | N | 1 | 8 | DDMMAAAA | 1062014 |
Separador | 1 | A | 9 | 9 | ||
Fecha Vigencia Desde | 8 | N | 10 | 17 | DDMMAAAA | 2062014 |
Separador | 1 | A | 18 | 18 | ||
Fecha Vigencia Hasta | 8 | N | 19 | 26 | DDMMAAAA | 31082014 |
Separador | 1 | A | 27 | 27 | ||
Número de Cuit | 11 | N | 28 | 38 | 99999999999 | Cuit del Contribuyente |
Separador | 1 | A | 39 | 39 | ||
Tipo-Contr_Insc | 1 | A | 40 | 40 | C' o 'D' | D' (Directo C.A.B.A.) O 'C' (CONVENIO) |
Separador | 1 | A | 41 | 41 | ||
Marca-alta sujeto | 1 | A | 42 | 42 | S o N o B | S' (el sujeto se incorporó al Padrón) |
Separador | 1 | A | 43 | 43 | ||
Marca-alícuota | 1 | A | 44 | 44 | S o N o B | N' (*) |
Separador | 1 | A | 45 | 45 | ||
Alícuota- Percepción | 4 | A | 46 | 49 | 9,99 | 0 |
Separador | 1 | A | 50 | 50 | ||
Alícuota- Retención | 4 | A | 51 | 54 | 9,99 | 0 |
Separador | 1 | A | 55 | 55 | ||
Nro-Grupo- Percepción | 2 | N | 56 | 57 | 0 | Deberá estar en ceros |
Separador | 1 | A | 58 | 58 | ||
Nro-Grupo- Retención | 2 | N | 59 | 60 | 0 | Deberá estar en ceros |
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”
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 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 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”
c)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”
Genera registro SFH, donde:
FH_AGENTE = “N”
FH_CLIENTE = Según SA1
FH_LOJA = Según SA1
FH_IMPOSTO = IBP”
FH_PERCIBI = “N”
FH_ISENTO = “N”
FH_APERIB=”N”
FH_ZONAFIS=”CF”
FH_SITUACA=“5”
FH_TIPO=cib_tipcon
FH_PERCENT=”100”
FH_INIVIGE=”cib_desde”
FH_FIMVIGE=”cib_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 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 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”
c)Si (no coincide la alícuota o FH_PERCENT<>”100”) 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_ISENTO=”N”
continúa sin actualizar ni generar registro alguno
FH_FIMVIGE=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
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”
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
FH_PERCENT=”100”
FH_PERCIBI=”N”
FH_APERIB=”N”
FH_INVIGE=cib_desde
FH_FIMVIGE=cib_hasta
FH_ISENTO=”N”
FH_SITUACA=“5”
c)Si (no coincide la alícuota o FH_PERCENT<>”100”) 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_ISENTO=”N”
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”
FH_APERIB=”N”
FH_ZONAFIS=”CF”
FH_TIPO= cib_tipcon
FH_PERCENT=”100”
FH_INIVIGE=”cib_desde”
FH_FIMVIGE=”cib_hasta”
FH_FIMVIGE=cib_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 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 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”
c)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=”0”
FH_PERCIBI=”S”
FH_APERIB=”S”
FH_ISENTO=”N”
Genera registro SFH, donde:
FH_CLIENTE=cib_clipro
FH_TIPO= cib_tipcon
FH_LOJA =Según SA1
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”
a)Si encuentra el registro y el mismo está vigente (FH_FIMVIGE => cib_desde):
FH_FIMVIGE=clb_hasta
b)Si NO encuentra el registro o el mismo no está vigente (FH_FIMVIGE < 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”
b)Si no coincide la alícuota 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=”0”
FH_PERCIBI=”S”
FH_APERIB=”S”
FH_INVIGE=cib_desde
FH_FIMVIGE=cib_hasta
FH_ISENTO=”N”
FH_SITUACA=“5”
c)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”
Si encuentra el registro y:
a)Si el mismo está vigente, actualiza:
FH_FIMVIGE=cib_desde
b)Si NO encuentra el registro o el mismo no está vigente (FH_FIMVIGE < cib_desde):
continúa sin actualizar ni generar registro 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”, 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”
b)Si no coincide la alícuota 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_aliret
FH_PERCENT=”0”
FH_PERCIBI=”N”
FH_APERIB=”N”
FH_INVIGE=cib_desde
FH_FIMVIGE=cib_hasta
FH_ISENTO=”N”
FH_SITUACA= “5”
c)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”
Genera un registro “SFH” por sucursal (SA2), actualizando:
FH_FORNECE=cib_clipro
FH_TIPO= cib_tipcon
FH_LOJA =Según SA2
FH_PERCIBI=“N”
FH_APERIB=”N”
FH_ZONAFIS=”CF”
FH_IMPOSTO=”IBR”
FH_ALIQ=cib_aliret,
FH_INVIGE=cib_desde
FH_FIMVIGE=cib_hasta
FH_ISENTO=”N”
a)Si encuentra el registro y el mismo está vigente, actualiza:
FH_FIMVIGE=clb_hasta
b)Si NO encuentra el registro o el mismo no está vigente (FH_FIMVIGE < cib_desde):
OK à continúa sin actualizar ni generar registro alguno
SA1 | Clientes |
SA2 | Proveedores |
SFH | Empresa Vs Zona fiscal |