Cette table permet de définir les codes pays utilisés par le logiciel, ainsi que les caractéristiques associées, et notamment les contrôles à réaliser sur des informations normalisées.

Pré-requis

SEEREFERTTO Reportez-vous à la documentation de Mise en oeuvre

Gestion de l'écran

En-tête

Champs

Les champs suivants sont présents dans cet onglet :

Ce code permet d'identifier le pays associé à l'information.

Dans la table des pays, qui contrôle ce champ, on associe un certain nombre de caractéristiques utiles pour réaliser des contrôles sur les informations qui en dépendent, et notamment :

  • le format du numéro de téléphone,
  • le format du numéro identifiant une entreprise ou une activité (SIRET, NAF en France) et le caractère obligatoire ou non de sa saisie,
  • le format du code postal/ville et de la subdivision géographique, et le caractère obligatoire ou non de leur saisie,
  • le caractère obligatoire ou non de la saisie du code SIREN, du numéro unique d'identification ainsi que du N° de TVA intracommunautaire,
  • le format du code RIB.
  • champ CRYDES

Saisissez la description de la fiche concernée.

Cet intitulé long est utilisé en titre dans les écrans et les états.

 

Onglet Général

Champs

Les champs suivants sont présents dans cet onglet :

Bloc numéro 1

Ce code permet d'identifier la devise d'un site, d'un tiers, ou de définir une valeur par défaut. Ce code est contrôlé dans la table des devises. Il est conseillé d'utiliser la codification ISO lors de la création d'une nouvelle devise.

  • Appartenance UE (champ EECFLG)

Cochez cette case si le pays est membre de l'Union Européenne.   
Ces informations relatives à lUE sont notamment utilisées pour la déclaration d'échanges de biens (DEB) Intrastat.

  • Date d'entrée UE (champ EECDAT)

Lorsqu'un pays est membre de l'Union Européenne, indiquez ici sa date d'entrée.

  • Date de retrait UE (champ EECDATOUT)

Lorsqu'un pays est membre de l'Union Européenne, indiquez ici, le cas échéant, sa date de retrait de l'UE.

  • Système généralisé de préférences (champ GSPFLG)

Ce champ est soumis au code activité REX.
Sélectionnez cette case pour indiquer que le pays bénéficie du 'Système généralisé de préférences tarifaires' (SPG) instauré par l'UE.
Cette information est utilisée notamment lors de la définition et de l'enregistrement des sociétés, des sites et des fournisseurs.

  • Identification EORI (champ EORIFLG)

Sélectionnez cette case à cocher pour activer le champ Numéro EORI au niveau de toutes les entités du pays concerné, y compris les sociétés, sites et tiers (BPs).

Remarque : Ce numéro est requis pour les entreprises qui échangent des biens au sein du Royaume-Uni, ou les sociétés de l'Union Européenne qui échangent des biens et services avec le Royaume-Uni.

Code contrôlé dans la table des langues et permettant de définir la langue d'un tiers.

  • Zone SEPA (champ FLGSEPA)

Sélectionnez cette case pour indiquer que le pays appartient à la zone SEPA.
La zone SEPA est un espace unique de paiement en euros.

Cette appartenance à la zone SEPA est contrôlée en création de règlements si ces derniers sont basés sur des moyens de paiements dit "SEPA" (SEPA Credit Transfer ou SEPA Direct Debit).
  • Script contrôle (champ CTLPRG)

Indiquez le nom d'un programme de contrôle normalisé, dans lequel se trouvent des sous-programmes normalisés permettant d'effectuer des contrôles de cohérence des identificateurs ci-dessus (contrôle des clés R.I.B. par exemple...)
Ce programme est en principe fourni par le standard. En utilisant des outils de développement, vous pouvez en écrire et en ajouter d'autres, si nécessaire.

  • Concerné par la DUE (champ FLGDUE)

Sélectionnez cette case pour indiquer que le pays doit être pris en compte lors de l'extraction de la DUE (Déclaration Unique d'Embauche).

Codes

  • ISO-3166-1 alpha-2 (champ ISO)

Code du pays selon la norme ISO 3166.

  • ISO-3166-1 alpha-3 (champ ISOA3)

 

  • ISO-3166-1 numérique (champ ISONUM)

Code numérique du pays selon la norme ISO 3166.

  • Code INSEE (champ CINSEE)

Code INSEE utilisé pour la déclaration des données sociales dans les pays dans lesquels cette déclaration existe.

  • Code pays DEB (champ EECCOD)

Code utilisé par l'administrationdes douanes pour la déclaration d'échanges de biens

  • Radical TVA (champ CRYVATNUM)

Racine du numéro d'identication de la taxe sur la valeur ajoutée pour ce pays (TVA en France, IVA en Italie, ...etc).
Cette zone ne concerne que les pays appartenant à la communauté européenne, identifié par l'indicateur Appartenance CEE.
Cette zone est initialisée par les 2 premiers caractères du code devise

Identification

  • champ CRNFMTFLG

Format du numéro d'identification national, propre à chaque pays et appliqué sur la zone Numéro SIREN lors de la saisie des des sociétés.
SEEINFO Le numéro SIREN ne peut pas dépasser 20 caractères.

  • SIREN (champ CRNFMT)

 

  • SIREN obligatoire (champ CRNOBL)

Lorsqu'elle est cochée, cette case indique :

  • que les numéros de SIREN, le numéro unique d'identification et le numéro de TVA intracommunautaire sont obligatoires sur la fiche société,
  • que le numéro de TVA intracommunautaire est obligatoire sur la fiche Tiers, sauf si le tiers est une personne physique.

Bloc numéro 5

  • champ NIDFMTFLG

Format du numéro unique d'identification et appliqué sur la zone Numéro unique lors de la saisie des sociétés. Attention : Le numéro unique ne peut pas dépasser 80 caractères.

  • Numéro unique (champ NIDFMT)

 

Bloc numéro 6

  • champ EECFMTFLG

Format du numéro de TVA intracommunautaire utilisé lors de la saisie des tiers et des sociétés. Attention : Le numéro de TVA ne peut pas dépasser 20 caractères.

  • Format TVA (champ EECFMT)

 

Bloc numéro 7

  • champ NAFFMTFLG

Format du code activité, propre à chaque pays et appliqué sur le champ Code NAFlors de la saisie des tiers, des sociétés et des sites.
SEEINFO Le code activité ne peut pas dépasser 10 caractères.

  • NAF (champ NAFFMT)

 

Bloc numéro 8

  • champ CRTFMTFLG

Format du numéro d'identification national, propre à chaque pays et appliqué sur la zone Numéro SIRET lors de la saisie des tiers et et des sites. Attention : Le numéro SIRET ne peut pas dépasser 20 caractères.

  • SIRET (champ CRTFMT)

 

  • SIRET obligatoire (champ CRTOBL)

Lorsqu'elle est cochée, cette case indique que le numéro de SIRET est obligatoire sur la fiche site.
Elle indique également que le numéro de SIRET et le numéro de TVA intracommunautaire sont obligatoires sur la fiche tiers si le tiers est une personne morale.

Identité sociale

  • champ SOCNUMFLG1

 

  • N° Sécurité Sociale 1 (champ SOCNUMFMT)

 

  • champ SOCNUMFLG2

 

  • N° Sécurité Sociale 2 (champ SOCNUMFMT2)

 

 

Onglet Coordonnées

Champs

Les champs suivants sont présents dans cet onglet :

Adresse

  • Intitulés (champ ADRNAM)

Lorsque plusieurs lignes d'adresse peuvent être saisies de façon normalisée, des intitulés peuvent précéder chaque ligne d'adresse pour guider l'utilisateur dans sa saisie. Ces intitulés dépendent du pays, et sont indiqués ici.

  • Format adresse (champ ADRCODFMT)

Format de saisie de l'adresse.

  • Code postal (champ POSCODFMT)

Format du code postal, propre à chaque pays et appliqué sur la zone code postal lors de la saisie des adresses.
SEEINFO Le code postal ne peut pas dépasser 10 caractères.

  • Longueur contrôlée (champ MINZIP)

Ce champ permet de préciser la longueur sur laquelle porte le contrôle du code postal.
La valeur : "0" indique que la contrôle porte sur toute la longueur.
Cette fonctionnalité est intéressante pour certains pays, comme les Etats-Unis, où les codes postaux peuvent être composés d'un suffixe permettant d'identifier un quartier ou un bâtiment par exemple, lorsque la densité urbaine est importante.
Ainsi, si le code postal est saisi sous le format suivant : 5#[-]4# et que le contrôle porte sur les 5 premiers caractères uniquement, c'est la ville correspondant au code postal formé par les 5 premiers caractères qui sera proposée lorsqu'aucun enregistrement correspondant au code complet n'est trouvé.

  • Contrôle code postal (champ POSCODCTL)

Ce champ permet de gérer le code INSEE de la commune et de mettre en place un contrôle lors de la saisie du code postal et de la ville.
Ce contrôle sera effectué par rapport au paramétrage de la table des Codes postaux.
SEEINFO Remarques :

  • Code postal obligatoire (champ POSOBL)

Lorsqu'elle est cochée, cette case indique que la saisie du code postal et de la ville est obligatoire sur les adresses des entités Société, Site, Utilisateur et toutes les entités Tiers (Tiers, Prospect, Client, Fournisseur, Transporteur et Représentant).

  • Format ville (champ CTYCODFMT)

Format d'affichage de la ville.
Certains formats en usage dans certains pays ne peuvent être respectés par le biais de l'application des formats standard de Sage X3 (c'est le cas par exemple aux Etats-Unis où la première lettre de chaque mot peut être en majuscule : Los Angeles par exemple). Il est nécessaire dans ce cas, d'utiliser un sous-programme dans le programme de contrôle associé à la fonction, afin d'appliquer le format souhaité.

SEEREFERTTOPour plus d'informations, se reporter à l'annexe technique présentée dans la documentation sur la fiche Pays.

  • Majuscules (champ CTYUPP)

Lorsque cet indicateur est activé, les noms de ville saisis par les utilisateurs sont automatiquement convertis en caractères majuscules, quelle que soit la casse précisée pour le format de la ville dans le champ précédent. Il est, par défaut, systématiquement activé afin de conserver le comportement historique de l'application.

Lorsqu'il est désactivé, c'est le format précisé dans le champ précédent qui est pris en compte.

SEEINFO Quel que soit le format de saisie, il sera toujours possible, en saisie d'adresse, d'effectuer une sélection sur les villes sans tenir compte de la casse et des caractères accentués. La fenêtre de sélection contient en effet une colonne dédiée à la recherche dans laquelle les noms des villes sont stockés en majuscules.

  • Format code INSEE (champ CTYNUMFMT)

Format du code commune, propre à chaque pays et appliqué sur la zone Code commune lors de la saisie des codes postaux.
SEEINFO Le code ville ne peut pas dépasser 10 caractères.

Numéro de téléphone

  • Téléphone (champ TELFMT)

Format du numéro de téléphone, propre à chaque pays et appliqué lors de la saisie des adresses et des contacts.
SEEINFO Le numéro de téléphone ne peut pas dépasser 20 caractères.

Un contrôle portant sur la cohérence du format des numéros de téléphone saisis peut être activé par le biais du paramètre général CTLTEL - Contrôle numéro de téléphone. Toutefois, la longueur maximum définie par le nombre de X ouy de # saisis dans le format est systématiquement contrôlée, quelle que soit la valeur prise par ce paramètre.
Exemple de format pour la France : [+(33)]#[.]##[.]##[.]##[.]##
Les champs suivants permettent de formuler le découpage afin de retrouver l'indicatif Pays, ainsi que l'indicatif Région pour les pays disposant de cette information.

  • Contrôle indicatif pays (champ TELTCY)

Ce champ permet de formuler le découpage du numéro de téléphone pour retrouver l'indicatif du pays.
Il doit être renseigné sous la forme d-f où "d" représente le caractère de début de l'indicatif du pays sur le champ formaté et "f" représente le caractère de fin de l'indicatif du pays sur le champ formaté.

Par exemple, pour la france, si le format du téléphone est "[(33)]#[.]##[.]##[.]##[.]##", le numéro de téléphone formaté donne (33)1.46.45.44.42 et il faudra indiquer 2-3 pour retrouver 33 pour l'indicatif pays

Le sous-programme DECOUPE(PAYS,TEL,INTER,REGION,NUTEL) From CONTNUM permet de retrouver ces informations.

Le paramètre général CTLTEL - Contrôle numéro de téléphone permet de désactiver complètement le contrôle de la saisie du numéro de téléphone ou bien de ne faire le contrôle qu'en modification.

  • Contrôle indicatif région (champ TELREG)

Ce champ permet de formuler le découpage du numéro de téléphone pour retrouver l'indicatif régional.
Il doit être renseigné sous la forme d-f où "d" représente le caractère de début de l'indicatif région sur le champ formaté et "f" représente le caractère de fin de l'indicatif régiona sur le champ formaté.

Par exemple, pour la france, si le format du téléphone est "[(33)]#[.]##[.]##[.]##[.]##", le numéro de téléphone formaté donne (33)1.46.45.44.42 et il faudra indiquer 5-5 pour retrouver 1 pour l'indicatif région.

Le sous-programme DECOUPE(PAYS,TEL,INTER,REGION,NUTEL) From CONTNUM permet de retrouver ces informations.

Le paramètre général CTLTEL - Contrôle numéro de téléphone permet de désactiver complètement le contrôle de la saisie du numéro de téléphone ou bien de ne faire le contrôle qu'en modification.

Subdivisions géographiques

Lorsque l'on définit un pays, il faut le rattacher à un continent. Ce lien est exploité pour définir une hiérarchie dans les datamarts du module de Business Intelligence.

  • Subdivision 1 (champ ETATFLG)

Cette case à cocher permet de définir par pays quelle est la subdivison géographique de niveau le plus élevé. Par exemple la Région pour la France, l'Etat pour les Etats-Unis...

  • Intitulé (champ ETATNAM)

Intitulé à afficher pour exprimer la subdivision géographique la plus élevée d'un pays. Exemple Région pour la France, Etat pour les Etats-Unis...

  • Format (champ ETATFMT)

Format de saisie de la subdivision géographique.

  • Subdivision 2 (champ ETATFLG2)

Cette case à cocher permet de définir par pays qu'elle est la subdivison géographique de niveau moins élévé que la précédente. Par exemple la Département pour la France, Comté pour les Etats-Unis...

  • Intitulé (champ ETATNAM2)

Intitulé à afficher pour exprimer la subdivision géographique de niveau moins élevé que la précédente. Par exemple, le Département pour la France, le Comté pour les Etats-Unis...

  • Format (champ ETATFMT2)

 

  • Saisie subdivision (champ ETAT)

Cette case à cocher, permet de préciser pour un pays si une des deux subdivisions géographiques décritent précédemment doit entrer ou non dans la définition de l'adresse postale.
Par exemple, pour les Etats-Unis si la première subdivision est l'Etat, on précisera Subdivision1 ici pour préciser que cette subdivision sera saisie et enregistrée dans les adresses.

  • Contrôle subdivision (champ ETATCTL)

Lorsqu'il est activé, cet indicateur permet de mettre en place un contrôle d'existence et de proposer une fenêtre de sélection lors de la saisie de la subdivision dans tous les écrans où une adresse doit être renseignée.
Ce contrôle sera effectué par rapport aux subdivisions renseignées au niveau du paramétrage des Subdivisions géographiques.

 

Onglet Banque

Champs

Les champs suivants sont présents dans cet onglet :

Banque

  • Numéro compte bancaire (champ BIDFMT)

 

  • Domiciliation (champ PABFMT)

 

  • Contrôle banque (champ BIDCTL)

 

  • Longueur banque (champ BANLNG)

 

  • Gestion de l'IBAN (champ FLIBAN)

 

 

 

Législation Belge

Programme contrôle

Dans la zone "Programme contrôle", il est possible de renseigner le contrôle CONTBELG lié à la législation belge.
Ce contrôle permet de vérifier le formatage du numéro de TVA intracommunautaire et du RIB.

Contrôle du numéro de TVA

Rappel sur la structure du numéro de TVA Belge
Le numéro de TVA Belge est composé de la façon suivante : code pays + dix caractères numériques.
Par exemple, BE 0419. 618.535.

Le contrôle s'applique sur les fonctions "Société", "Tiers", "Prospects", "Clients", "Fournisseurs", "Représentants", "Transporteur", et pour lesquelles le pays est "BE".

Le programme de contrôle vérifie les deux derniers numéros par la formule suivante (check-digit modulo 97) :

  • Soit le numéro de TVA BE0419.618.535.
  • Retenir les 8 premiers chiffres : NbTVA=04196185.
  • Calculer le reste de la division : RT = Modulo (NbTVA/97) soit Modulo (04196185/97) = 62.
  • Soustraire 97-RT c'est-à-dire 97 - 62 = 35.

Le numéro de TVA est valide.

Contrôle du RIB

Rappel sur la structure du numéro RIB Belge
Le numéro de RIB Belge de douze chiffres est composé de la façon suivante : dix caractères numériques dont les trois premiers renseignent sur le code de la banque tenant le compte et les sept chiffres suivants indiquent le numéro de compte.
Les deux derniers chiffres sont contrôlés par un check-digit modulo 97.

  • Soit le numéro de compte 510-0075470-61.
  • Retenir les 10 premiers chiffres : Nb=5100075470.
  • Calculer le reste de la division : RT = Modulo (Nb/97) soit Modulo (5100075470/97) = 61.

Le numéro de compte est valide.

Ce contrôle s'applique sur les fonctions "Société", "Tiers", "Clients", "Fournisseurs", "Règlements", "Banque", et pour lesquelles le pays est "BE".

Lors de la saisie du RIB, sur les fiches citées ci-dessus, le contrôle se fait. Et ceci en fonction du pays et du paramétrage de la zone "Programme contrôle" défini sur la fiche "Pays".

Etats

Par défaut, les états suivants sont associés à la fonction :

 TABCOUNTRY : Pays

Mais ceci peut être modifié par paramétrage.

Messages d'erreur

Outre les messages génériques, les messages d'erreur suivants peuvent apparaître lors de la saisie :

Format trop long

Le format donné correspond à une information qui ne peut être stockée complètement dans la table.

Programme inexistant

Le programme de contrôle n’a pas été défini.

Tables mises en oeuvre

SEEREFERTTO Reportez-vous à la documentation de Mise en oeuvre

Annexe technique : programme de contrôle

Les programmes de contrôles par pays doivent contenir un ensemble de sous-programmes normalisés qui font des contrôles additionnels de validité (par exemple, un test d’une clé de contrôle, ou de longueur), lorsque ces contrôles ne peuvent être réalisés par un simple format. Si de nouveaux programmes sont réalisés, la norme de nommage sera de les appeler CONT suivi du nom du pays (une abréviation pouvant être employée si le nom du pays est trop long, un traitement étant limité à 12 caractères).

Les sous-programmes nécessaires sont décrits ci-dessous :

 

##########################################################
##  Contrôle du RIB                                                                              ###
##  SPSTAT=0 si le RIB est correct
##  SPSTAT=1 si la clé de contrôle est incorrecte
##  SPSTAT=2 si la longueur du RIB n’est pas la bonne
##########################################################
Subprog RIB(RIB,SPSTAT)
Value Char RIB()
Variable Integer SPSTAT
End

 


##########################################################
##  Contrôle du SIRET                                                                         ###
##  SPSTAT=0 si le SIRET est correct
##  SPSTAT=1 si le SIRET est incorrect
##  SPSTAT=2 si la longueur du SIRET est incomplète
##########################################################
Subprog SIRET(SIRET,SPSTAT)
Variable Char SIRET()
Variable Integer SPSTAT
End

 


##########################################################
##  Contrôle du Numéro TVA                                                               ###
##  SPSTAT=0 si le code de TVA est correct
##  SPSTAT=1 si le code de TVA est incorrect
##########################################################
Subprog TVA(TVA,SPSTAT)
Value Char TVA()
Variable Integer SPSTAT
End

 


######################################################
##  Contrôle du no d'immatriculation sociale       ###
##  SPSTAT=0 si le numéro de sécurité sociale est correct
##  SPSTAT=1 si la clé de contrôle est incorrect
##  SPSTAT=3 si la numéro est incohérent vis à vis des autres paramètres s’ils ont été donnés
######################################################
Subprog SS(NOSS,ETR,SEX,DNAISS,DEPT,COMNNO,SPSTAT)
Value Char NOSS() : # Numéro de sécurité sociale
Value Char DEPT() : # Code département de naissance
Value Char COMNNO() : # Code commune de naissance
Value Integer SEX : # Sexe
Value Date DNAISS : # Date de naissance
Value Libelle ETR : # =1 si non étranger
Variable Integer SPSTAT
End

 

 ###############################################################
##  Sous-programme permettant de définir une valeur par défaut
#    pour le numéro d'immatriculation sociale       ###
###############################################################
Subprog VDSS(ETR,SEX,DNAISS,DEPT,COMNNO,NOSS)
Value Libelle ETR : # =1 si non étranger
Variable Char NOSS() : # Numéro renvoyé
Value Integer SEX : # Sexe
Value Date DNAISS : # Date de naissance
Value Char DEPT : # Code département
Value Char COMNO : # Code commune
End

 

##########################################################
##  Contrôle du numéro de téléphone                                                                    ###
##  STAT=0 si le numéro de téléphone est correct
##  STAT=1 si le numéro de téléphone est incorrect
 
##MESSA Libellé du message d'erreur
##########################################################
Subprog CNTTEL(TEL,MESSA,STAT)
Value Char TEL
Variable Char MESSA
Variable Integer STAT
End

 

##########################################################
##  Adaptation du format de la ville                                                                    ###
##  STAT=0 si le format est correct
##  STAT=1 si le format est incorrect
 
##MESSA Libellé du message d'erreur
##########################################################
Subprog FMTCTY(SCTY,MESSA,STAT)
Value Char SCTY
Variable Char MESSA
Variable Integer STAT

Raz  MESSA
STAT = 0

End