L’import de factures permet de créer et de modifier des factures directes ou des avoirs directs.

Le modèle d'import SIH n'est pas un modèle exhaustif, la configuration proposée l'est à titre indicatif. Il permet l'import des quatre premiers éléments de facturation.

Lorsque l’import porte sur un grand nombre d’enregistrements, la durée du traitement peut s’avérer non négligeable.
Cette durée peut être réduite grâce à la mise en place d'une solution consistant à décliner les enregistrements multi-législations, pour chacune des législations du dossier.

Exemple : les législations FRA, POR et USA sont utilisées dans un dossier. Si les législations FRA et POR ont le même paramétrage, il est préconisé de créer un enregistrement pour la législation FRA et un enregistrement pour la législation POR, au lieu d’avoir un seul enregistrement pour toutes les législations.
Pour afficher plus d'informations sur le principe d'amélioration des performances lié à la multi-législation et connaître la liste des objets que vous pouvez décliner par législation, reportez-vous au document : Amélioration des performances : Liste des objets multi-législations
 

Une facture de vente est constituée de deux fichiers d'entête (SINVOICE et SINVOICEV) et d'un fichier de lignes SINVOICED.
Dans le modèle d'import, vous devez donc paramétrer deux identificateurs :

  • un pour le fichier entête SINVOICEV, 
  • un pour le fichier détail SINVOICED. 

Il n'est pas nécessaire de définir un identificateur pour la table SINVOICE car le lien entre SINVOICEV et SINVOICE est décrit dans l'objet.

Il est possible d'importer des factures ou avoirs validés ou non validés. Cela dépend de la présence du champ INVSTA (table SINVOICEV) dans le modèle d'import ainsi que de sa valeur. Si le champ n'est pas présent dans le modèle d'import, la facture ou l'avoir seront créés dans le système dans l'état non validé et non imprimé.

Contraintes de l'import en modification 

Lors de l'import d'une ligne détail, le système recherche si la ligne est une nouvelle ligne à créer ou une ligne à modifier. Pour faire cette reconnaissance, le système s'appuie sur les champs discriminants de la ligne. Ces champs sont : le numéro de ligne attribué par X3 (SIDLIN) et la référence article (ITMREF).
  • Si SIDLIN est paramétré dans le modèle et s'il est renseigné et différent de 0, on s'appuie sur ce champ, sinon sur ITMREF.
    Ainsi, si une ligne existe avec la valeur de SIDLIN, cette ligne est modifiée. Sinon une nouvelle ligne est créée.
  • Si SIDLIN n'est pas paramétré ou s'il est à 0, on s'appuie sur le champ ITMREF.
    Ainsi, si une ligne existe avec une valeur correspondant à la valeur contenue dans le champ ITMREF, cette ligne est modifiée. Sinon une nouvelle ligne est créée.

 Dans ce contexte, si deux lignes ont la même référence article, il est nécessaire de paramétrer le numéro de ligne et de le renseigner afin de les différencier. Sinon c'est toujours la première ligne rencontrée qui est modifiée.

Même si le numéro de ligne contenu dans SIDLIN est attribué par X3, il est nécessaire de le renseigner, même en création, pour que le système fonctionne correctement (X3 attribue quand même son numéro).

Import de facture en modification 

L'import de facture en modification ne traite pas la mise à jour des stocks. S'il existe des lignes importées en modification avec mise à jour de stock, le système rejette l'import. Le message : "Numéro de facture : Code article : Facture avec mouvement de stock non autorisé" s'affiche dans la trace.

Lors d'un import de facture ou d'avoir, vous pouvez soit laisser le système calculer automatiquement le pied de la facture ou alors importer le pied sans que le système ne procède à un recalcul. Le choix dépend de la présence dans le modèle d'import des données liées à la valorisation du pied de facture. S'ils sont présents, le système ne recalculera pas la facture (notamment si le champ AMTATI de la table SINVOICE est présent dans le modèle).

Import de valeurs calculées

Il est possible d'importer la valeur calculée des éléments de facturation au travers d'un niveau supplémentaire lié à la table stockant le calcul de chaque élément de facturation SVCRFOOT.
Il est également possible d'importer la valeur calculée des éléments de taxation au travers d'un niveau supplémentaire lié à la table stockant le calcul de chaque élément de taxe SVCRVAT.
Voir le modèle d'import SIHIMPNCAL permettant d'importer des factures sans déclencher les méthodes de valorisation de facture.

Lors de l'import d'une facture avec un modèle permettant le calcul du pied de facture, les éléments de facturation sont importés des champs INVDTAAMT de la table SINVOICEV.

Import avec mouvement de stock

Il est possible d'importer des factures avec mouvement de stock lorsqu'il s'agit d'une facture directe à condition que la facture importée soit dans l'état non validé. Dans le cas contraire, aucun mouvement de stock ne sera effectué et l'indicateur Mouvement de stock sera repositionné à Non.
Pour importer des factures directes non validées avec mouvement de stock, il convient alors d'ajouter le champ STOMVTFLG de la table SINVOICEV dans le modèle d'import et de positionner correctement sa valeur dans le fichier d'import. Le stock à sortir est déterminé par les règles d'allocation de la catégorie de l'article. En aucun cas il n'est possible d'importer des avoirs avec mouvements de stock, le champ STOMVTFLG est ignoré dans ce contexte et positionné à Non.

Import des kits et nomenclatures

Seules les factures sont concernées par l'import des kits et nomenclatures.
Les avoirs ne permettent pas de gérer le kit en tant que groupe d'articles. Chaque élément de la nomenclature est géré individuellement.

Il existe deux manières d’importer des kits et nomenclatures sur une facture :

  • Le champ LINTYP n’est pas présent dans le modèle. Dans ce cas, il ne faudra importer que l’article
    composé (les composants n’étant pas considérés comme appartenant au kit ou à la nomenclature mais traités comme des articles classiques). L’import du composé entraîne alors la génération automatique de tous les composants définis par la première alternative. Les composants de type Option ou Alternative sont également générés pour la première option et la première variante.
  • Le champ LINTYP est présent dans le modèle. Dans ce cas, l’import du composé ne déclenche pas la génération automatique des composants. Les lignes de composants devront être importées en précisant la valeur de LINTYP correspondant. Vous pourrez ainsi, pour des kits ou nomenclatures contenant des options ou des variantes, préciser les composants choisis.

Import de textes 

Lorsque cela est nécessaire, il est possible d'importer des textes en en-tête de facture, en pied de facture et la ligne de facture. effectuez ce paramétrage dans le modèle d'import en utilisant la variable globale GIMP (dans le modèle, les zones *71, etc... doivent être mentionnées).

  • GIMP(71..78) permet d’importer des textes liés à l’entête de facture. Vous pouvez donc importer un texte de 8*100 caractères soit 800 caractères.
  • GIMP(81..88) permet d’importer des textes liés au pied de facture.
  • GIMP(91..98) permet d’importer des textes liés aux lignes de facture.

Import des axes analytiques à la ligne 

Voir le modèle d'import SIHFL.

Particularités de l'import de facture

Il est possible en import de préciser le client commande dans le modèle d'import. Celui-ci sera exploité lors de la création de la facture, notamment pour la détermination des prix et remises si ceux-ci ne font pas partie du modèle d'import.

Il est possible d'importer des champs de lien permettant de préciser l'origine de la facture ou de l'avoir ou l'origine des lignes des factures et des avoirs. Ces informations seront purement informatives. Les documents d'origine, s'ils existent dans le système, ne seront en aucun cas mis à jour.

Pré-requis

Pour que l'import fonctionne correctement, les données utilisées dans l'import relatives aux tables suivantes doivent préalablement exister :

  • Table des sites
  • Table des articles
  • Table des articles/site
  • Table des clients
  • Table des clients livrés

Champs obligatoires du modèle

Dans cet import, les champs obligatoires sont les suivants :

Table SINVOICEV

  • Client facturé (Champ BPCINV)

SEEWARNING Si le site de vente et le site de stockage (pour les factures avec mouvement de stock) ne sont pas présents dans le modèle d’import, les sites seront déterminés par le site de vente et le site de stockage par défaut de la session exécutant l’import.

Table SINVOICED

  • Référence article (Champ ITMREF)
  • Quantité en unité de vente (Champ QTY)

Si l’unité de vente n’est pas précisée, l’unité déterminée sera, dans l’ordre, celle du client puis celle de l’article.

Table SIVTYP (type de facture)

Si le type de facture n'est pas précisé, le système choisi le premier de la liste par ordre alphabétique. Cela détermine le type de facture ou d'avoir (même si INVTYP dans le modèle).

Si les champs Statut de la facture (INVSTA) ou Mouvement de stock (STOMVTFLG) ne sont pas présents dans le modèle d'import, alors ils sont positionnés à .

Messages d'erreur

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

Tous les contrôles effectués par l’objet en saisie interactive sont également effectués en import de facture. On retrouve les principaux contrôles tels que :

Site de vente inexistant : Message de contrôle du site de vente de la facture.

Site de stockage inexistant : Message de contrôle du site de stockage de la facture lors d'un import de facture avec mouvement de stock.

Client XXX fiche inexistante : Message de contrôle de l’existence du client.

Article YYY fiche inexistante : Message de contrôle de l’existence de l’article et de l’article vente.

Unité ZZZ fiche inexistante : Message de contrôle de l’existence et de la validité de l’unité pour l’article.

QTY zone obligatoire : Message de contrôle correspondant à l’existence de cette information lors de l’import d’une facture.

Tables mises en oeuvre

Ce modèle est utilisable à la fois en import et en export. Les données sont mises à jour dans les tables suivantes :

Table

Intitulé Table

BPARTNER [BPR]

Business Partner

BPCUSTMVT [MVC]

Mouvements clients

BPCUSTOMER [BPC]

Clients

BPDLVCUST [BPD]

Clients livrés

CONTSERV [CON]

Contrat de service

CPTANALIN [CAL]

Lignes comptables analytiques

FACILITY [FCY]

Sites

GACCCODE [CAC]

Codes comptables

GACCOUNT [GAC]

Comptes

GTYPACCENT [GTE]

Type de pièces

HDKTASKINV [HDI]

Consommations à facturer

ITMBPC [ITU]

Articles - Clients

ITMCATEG [ITG]

Catégorie article

ITMFACILIT [ITF]

Articles - Sites

ITMMASTER [ITM]

Articles

ITMMVT [ITV]

Cumuls Article-Site

ITMSALES [ITS]

Articles - ventes

ITMWRH [ITW]

Articles - Dépôts

LPN [LPN]

Identifiant contenant interne

PRICSTRUCT [PRS]

Structure Tarifs (cli/four)

SALESREP [REP]

Représentant

SDELIVERY [SDH]

Entête de livraison

SDELIVERYD [SDD]

Détail livraison

SERREQUEST [SRE]

Demandes de service

SFOOTINV [SFI]

Eléments de facturation

SINVOICE [SIH]

Factures vente

SINVOICED [SID]

Détail facture de vente

SINVOICEV [SIV]

Facture vente valorisation

SORDER [SOH]

Commandes de vente - Entête

SORDERP [SOP]

Commandes de vente - Prix

SORDERQ [SOQ]

Commandes de vente - Quantités

SPRICLINK [SPK]

Recherche tarifs vente (link)

SPRICLIST [SPL]

Tarifs clients

SRETURND [SRD]

Détail retour vente

STOCK [STO]

Stocks

STOJOU [STJ]

Journal des Stocks

STOLOT [STL]

Numéros de lot

SVCRFOOT [SVF]

Document ventes - Elt pied

SVCRVAT [SVV]

Document ventes - Taxes

TABCONTAINER [TCTR]

Contenant

TABCUR [TCU]

Table des Devises

TABPRTMOD [TPM]

Table des modèles d'éditions

TABSIVTYP [TSV]

Table types facture client

TABUNIT [TUN]

Table des unités

WAREHOUSE [WRH]

Dépôts