Esta función permite alimentar la tabla de los códigos de país utilizados en el software, las características asociadas y los controles que hay que realizar en los datos normalizados.

Requisitos previos

SEEREFERTTO Consulta la documentación de Puesta en marcha

Gestión de pantalla

Cabecera

Pestaña General

Pestaña Direcciones

Pestaña Banco

Legislación belga

Programa de control

En el campo "Programa control", se puede introducir el control CONTBELG vinculado a la legislación belga.
Este control permite verificar el formato del número de IVA intracomunitario y del CCC.

Control del número de IVA

Recordatorio sobre la estructura del número de IVA belga
El número de IVA belga está compuesto por un código de país + diez caracteres numéricos.
Por ejemplo, BE 0419. 618.535.

El control es aplicable a las funciones "Sociedades", "Terceros", "Potenciales", "Clientes", "Proveedores", "Representantes" y "Transportistas" en las que el país es "BE".

El programa de control verifica los dos últimos números con la siguiente fórmula (dígito de control módulo 97):

  • Número de IVA BE0419.618.535.
  • Mantener las 8 primeras cifras: Nº IVA = 04196185.
  • Calcular el resto de la división: RT = Módulo (Nº IVA/97), es decir, Módulo (04196185/97) = 62.
  • Sustraer 97-RT, es decir, 97 - 62 = 35.

El número de IVA es válido.

Control del CCC

Recordatorio sobre la estructura del número de CCC belga
El número de CCC belga de doce cifras está compuesto por diez caracteres numéricos (los tres primeros informan sobre el código bancario de la cuenta y los siete últimos indican el número de cuenta).
Las últimas dos cifras se controlan mediante un dígito de control módulo 97.

  • Número de cuenta 510-0075470-61.
  • Mantener las 10 primeras cifras: Nº = 5100075470.
  • Calcular el resto de la división: RT = Módulo (Nº/97), es decir, Módulo (5100075470/97) = 61.

El número de cuenta es válido.

Este control es aplicable a las funciones "Sociedades", "Terceros", "Clientes", "Proveedores", "Pagos" y "Bancos" en las que el país es "BE".

El control se realiza cuando se introduce el CCC en estas fichas. Depende del país y de la parametrización del campo "Programa control" definido en la ficha "País".

Informes

Por defecto, los informes siguientes están asociados a la función :

  TABCOUNTRY : País

Pero esto se puede modificar por parametrización.

Mensajes de error

Además de los mensajes genéricos, los mensajes siguientes de error pueden aparecer durante la captura :

Formato demasiado largo

El formato determinado corresponde a una información que no se puede almacenar por completo en la tabla.

Programa inexistente

No se ha definido el programa de control.

Tablas utilizadas

SEEREFERTTO Consulta la documentación de Puesta en marcha

Anexo técnico: programa de control

Los programas de control por país deben contener un conjunto de subprogramas normalizados que realizan controles adicionales de validez (por ejemplo, una prueba de una clave de control o de longitud) cuando estos no se pueden realizar con un simple formato. Si se definen nuevos programas, la norma de denominación consiste en llamarlos CONT seguido del nombre del país (si el nombre del país es demasiado largo, se puede utilizar una abreviatura, puesto que el proceso está limitado a 12 caracteres).

Estos son los subprogramas requeridos:

 

##########################################################
##  Control del CCC                                                                             ###
##  SPSTAT = 0 si el CCC es correcto
##  SPSTAT = 1 si la clave de control es incorrecta
##  SPSTAT = 2 si la longitud del CCC es incorrecta
##########################################################
Subprog RIB(RIB,SPSTAT)
Value Char RIB()
Variable Integer SPSTAT
End

 


##########################################################
##  Control del NIF                                                                         ###
##  SPSTAT = 0 si el NIF es correcto
##  SPSTAT = 1 si el NIF es incorrecto
##  SPSTAT = 2 si la longitud del NIF está incompleta
##########################################################
Subprog SIRET(SIRET,SPSTAT)
Variable Char SIRET()
Variable Integer SPSTAT
End

 


##########################################################
##  Control del número de IVA                                                            ###
##  SPSTAT = 0 si el código de IVA es correcto
##  SPSTAT = 1 si el código de IVA es incorrecto
##########################################################
Subprog TVA(TVA,SPSTAT)
Value Char TVA()
Variable Integer SPSTAT
End

 


######################################################
##  Control del número de afiliación a la Seguridad Social       ###
##  SPSTAT = 0 si el número de la Seguridad Social es correcto
##  SPSTAT = 1 si la clave de control es incorrecta
##  SPSTAT = 3 si el número no es coherente con otros parámetros definidos
######################################################
Subprog SS(NOSS,ETR,SEX,DNAISS,DEPT,COMNNO,SPSTAT)
Value Char NOSS(): # Número de la Seguridad Social
Value Char DEPT(): # Código de la provincia de nacimiento
Value Char COMNNO(): # Código del municipio de nacimiento
Value Integer SEX: # Sexo
Value Date DNAISS: # Fecha de nacimiento
Value Libelle ETR: # = 1 si no extranjero
Variable Integer SPSTAT
End

 

 ###############################################################
##  Subprograma que permite definir un valor por defecto
#    para el número de afiliación a la Seguridad Social       ###
###############################################################
Subprog VDSS(ETR,SEX,DNAISS,DEPT,COMNNO,NOSS)
Value Libelle ETR: # = 1 si no extranjero
Variable Char NOSS(): # Número devuelto
Value Integer SEX: # Sexo
Value Date DNAISS: # Fecha de nacimiento
Value Char DEPT: # Código de provincia
Value Char COMNO: # Código de municipio
End

 

##########################################################
##  Control del número de teléfono                                                                    ###
##  STAT = 0 si el número de teléfono es correcto
##  STAT = 1 si el número de teléfono es incorrecto
 
##MESSA Descripción del mensaje de error
##########################################################
Subprog CNTTEL(TEL,MESSA,STAT)
Value Char TEL
Variable Char MESSA
Variable Integer STAT
End

 

##########################################################
##  Adaptación del formato de la ciudad                                                                    ###
##  STAT = 0 si el formato es correcto
##  STAT = 1 si el formato es incorrecto
 
##MESSA Descripción del mensaje de error
##########################################################
Subprog FMTCTY(SCTY,MESSA,STAT)
Value Char SCTY
Variable Char MESSA
Variable Integer STAT

Reinicio  MESSA
STAT = 0

End