DeMaSy INTERFACES Le présent document est destiné à donner des explications concernant les données à fournir au programme et à la structure des fichiers nécessaires pour la mise en place d interfaces avec les bases de données de DeMaSy. Ce document concerne normalement tous les cas de figure dans lesquels le client est disposé à nous fournir des données structurées selon nos spécifications. Pour les cas où le client demande que nous nous adaptions à des structures de fichier existantes, une analyse spécifique de faisabilité est nécessaire et l évaluation budgétaire deviendra dépendante de chaque cas particulier. SCHÉMA GÉNÉRAL D UNE INTERFACE ETAPE DESCRIPTION FICHIERS ETAPE 1 Production d un(e) fichier(s) ASCII structuré(s) selon nos spécifications par le client (Dans le document, il sera fait référence au fichier TXT). Fichier ASCII ETAPE 2 ETAPE 3 Lecture du(es) fichier(s) ASCII et inscription des données dans une base de données intermédiaire (IMPORT.MDB) Import.mdb contient une table Log d où est tirée le rapport LOG Injection des données dans les tables de la base de données de DeMaSy et production d un fichier des rejets DEMASY.MDB ou LINK.MDB : Link.mdb est une Base de données contenant des informations partagées par tous les dossiers clients en fonction de la typologie des liens désirés (ex : les devises et les taux de change). IMPORT.MDB DEMASY.MDB ou LINK.MDB REMARQUES GÉNÉRALES : Les tables temporaires (IMPORT_) de la base de données IMPORT après interface contiennent tous les enregistrements à injecter dans le (les) bases de données. INTERFACE TRANSACTIONNELLE : Tous les enregistrements relatifs aux interfaces transactionnelles resteront des les tables temporaires, qu ils soient en attente, refusés ou déjà envoyés dans la base de donnée finale. AUTRES INTERFACES : Seuls les enregistrements en attente et rejetés sont conservés dans les tables temporaires. Dès que l injection dans la base de donnée finale a eu lieu, l enregistrement est détruit. Tout fichier TXT original contenant des enregistrements avec un DBID différent de 0 n alimentera pas la base de donnée link mais la base de données du dossier client concerné. Les erreurs rencontrées provoquent un rejet et/ou un message dans un «log» file. Ce fichier «log» est vidé par processus à chaque fois qu une procédure d interface est lancée. Pour corriger une erreur, il faut produire un nouveau fichier TXT corrigé ou procéder à la correction du fichier existant et relancer la procédure d interface. 1
DESCRIPTION DES DONNÉES NOMS DES FICHIERS: Il n y a aucune prescription particulière pour les conventions des NOMS de fichiers. Elle est à déterminer avec le client. CARACTERES SEPARATEURS UTILISES DANS LES FICHIERS TXT: ; Séparateur des champs (zones) d information # Fin d un enregistrement FORMAT DES DATES: YYYYMMDD DECIMALES:. Le point doit être utilisé en tant que décimale. DOCUMENTATION DES TABLES TEMPORAIRES Les tables IMPORT_ décrites ci-après représentent les structures des tables temporaires approvisionnées à partir des fichiers TXT. ZONES OMBREES : Les tables IMPORT_ contiennent des informations supplémentaires par rapport aux informations requises dans la structure des fichiers TXT. Ces informations sont indiquées en ombré. Elles sont enrichies par les routines de lecture des fichiers TXT de DeMaSy et non pas par les fichiers TXT. => SEULES LES ZONES NUMEROTEES SONT A PREVOIR DANS LA STRUCTURE DU FICHIER TXT CHAMPS AVEC DES ASTERISQUES : (*) Les noms des champs portant un astérisque représentent des informations prévues dans la structure des fichiers TXT mais qui ne doivent pas être obligatoirement enrichies pour le bon fonctionnement de l interface. Ces informations doivent donc être prévues dans la séquence des informations contenues dans les fichiers TXT mais peuvent être laissées à blanc. Dans ce cas, le fichier TXT comportera donc une information du type ;; 2
TABLES DE DONNEES Pages 1 IMPORT_INVOICET... 4 2 IMPORT_INVOICETDETAIL... 4 3 IMPORT_INVOICEF... 5 4 IMPORT_INVOICEFDETAIL... 5 5 IMPORT_INVOICEPAYMENT... 6 3
1 IMPORT_INVOICET Cette table contient les informations relatives au corps dune facture client. Champ Type 1 RecordType Long 22 [NB : donnée fixe invariable obligatoire] 5 Number Char 50 Numéro de facture 6 ClientName Char 75 Nom du client (avec ***S*** après le nom s il s agit d une société) 7 InvoiceDate Date/Time Date facture 8 InvoiceTCurrency Char 10 Code ISO Devise de la facture 9 CurrencyRate (*) Double Taux de change de la transaction 10 Description (*) Char 255 Description 11 Type Integer Type : 1= Facture - 2= Note de crédit -4 = Provision 12 ClientNumber Long Numéro du Client Status Integer Etats : 0 = Pending - 1 = Acknowledged - 2 = Refused - 3 = Done 2 IMPORT_INVOICETDETAIL Cette table contient les informations relatives aux détails (lignes) des d une facture client. Champ Type 1 RecordType Long 23 [NB : donnée fixe invariable obligatoire] 5 InvoiceTNumber Char 50 Numéro de la facture 6 ArticleCode (*)) Char 50 Code article 7 CyArticlePrice (*) Double Prix de l article en devise facture 8 ArticlePrice (*) Double Prix de l article en devise du capital 9 ArticleNumber (*) Double Quantité d articles 10 CyAmount Double Montant hors TVA en devise facture 11 Amount (*) Double Montant en devise du capital 12 VATCode Char 20 Code TVA 13 VATRate Double Taux de TVA 15 CyVATValue Double Montant de la TVA en devise de la facture 16 VATValue (*) Double Montant de la TVA en devise du capital 17 Description (*) Char 255 Description 18 DGLAccount (*) Char 50 Compte débiteur 19 CGLAccount (*) Char 50 Compte créditeur 20 PLCenterCode (*) Char 50 Code analytique Number Integer Numéro interne InvoiceTDetailCurrency Char 10 Code ISO - Devise de la facture Client (détail) Status Integer Etats: 0 = Pending - 1 = Acknowledged - 2 = Refused - 3 = Done 4
3 IMPORT_INVOICEF Cette table contient les informations relatives au corps dune facture fournisseur. Champ Type DESCRIPTION 1 RecordType Long 24 [NB : donnée fixe invariable obligatoire] 5 Number Char 50 Numéro de facture 6 SupplierName Char 75 Nom du fournisseur (avec ***S*** après le nom s il s agit d une société) 7 InvoiceDate Date/Time Date facture 8 InvoiceFCurrency Char 10 Code ISO - Devise facture 9 CurrencyRate (*) Double Taux de change 10 Description (*) Char 255 Description 11 Type Interger Type : 1= Facture - 2= Note de crédit - 4 = Provision 12 SupplierNumber Long Numéro du fournisseur Status Integer Etats : 0 = Pending - 1 = Acknowledged - 2 = Refused - 3 = Done 4 IMPORT_INVOICEFDETAIL Cette table contient les informations relatives aux détails (lignes) des d une facture fournisseur. Champ Type DESCRIPTION 1 RecordType Long 25 [NB : donnée fixe invariable obligatoire] 5 InvoiceFNumber Char 50 Numéro de facture 6 ArticleCode (*) Char 50 Code article 7 CyArticlePrice (*) Double Prix de l article en devise facture 8 ArticlePrice (*) Double Prix de l article en devise du capital 9 ArticleNumber (*) Double Quantité d articles 10 CyAmount Double Montant de la facture HTVA en devise facture 11 Amount (*) Double Montant de la facture HTVA en devise du capital 12 VATCode Char 20 Code TVA 13 VATRate Double Taux de TVA 14 CyVATValue Double Montant de la TVA en devise facture 15 VATValue (*) Double Montant d de la TVA en devise du capital 16 Description (*) Char 255 Description 17 DGLAccount (*) Char 50 Compte débiteur 18 CGLAccount (*) Char 50 Compte créditeur 19 PLCenterCode (*) Char 50 Code Analytique Number Integer Numéro InvoiceFDetailCurrency Char 10 Code ISO - Devise de la facture fournisseur (détail) Status Integer Etats : 0 = Pending - 1 = Acknowledged - 2 = Refused - 3 = Done 5
5 IMPORT_INVOICEPAYMENT Cette table contient les informations relatives aux paiements des factures clients/fournisseurs Champ Type DESCRIPTION 1 RecordType Long 26 [NB : donnée fixe invariable obligatoire] 5 InvPayType (*) Long Non applicable (concerne uniquement les interfaces titres) 6 InvoiceFNumber Char 50 N Facture Fournisseur 7 InvoiceTNumber Char 50 N Facture Client 9 InvoiceDate Date/Time Date de paiement 10 PCurrency Char 10 Devise de la facture Code ISO 11 PcyAmount Double Montant du paiement en devise de la facture 12 InvoicePaymentCurrency (1) Char 10 Devise de référence du compte banque 13 CurrencyRate (*) Double Taux de change entre devise bancaire et devise du capital 14 CyAmount Double Montant du paiement dans la devise du compte banque 15 Amount (*) Double Montant du paiement dans la devise du capital 16 Description (*) Char 255 Description du paiement 17 BankStatmentNumber Long N d extrait bancaire 18 BankAccountNumber Char 50 Compte bancaire 19 Type Long Types : 0 = Paiement -4 = Frais sans TVA 5 = Frais avec TVA StockTransferDeliveryNote Char 50 N/A IcyAmount Double Montant du paiement dans la devise de la facture VatRate Double N/A Debited Boolean Paiement débité 0 = non / -1 = oui Number Integer Numéro interne GLAccountNumber Char 50 (idem 16) N de compte du plan PLCenterCode Char 50 Code analytique Status Integer Etats: 0 = Pending - 1 = Acknowledged - 2 = Refused - 3 = Done (1) Différent de PCurrency si le paiement est fait dans une devise différente de celle du compte financier 6