Annexe 10. Directives d'importation en format TRT

1. Introduction

Liste des modifications apportées au présent document:

Les seules transactions que vous ne pourrez pas importer sont les ajustements d'inventaire. Vous pouvez aussi importer des transactions dans le journal des entrées partielles; il suffit de préfixer leur type de transaction par la lettre Y.

De plus, vous pourrez importer des fiches du fichier Contacts, Inventaire et Projets en mode Ajout ou en mode Modification, allégeant ainsi considérablement le fardeau habituellement associé à la gestion de l'intégrité de données communes à deux bases de données distinctes.

Cette note s'adresse aux programmeurs et a pour but de vous indiquer ce que TRT s'attend de recevoir d'un fichier de type XML, et dans quel ordre. À vous de programmer votre application pour fournir les données attendues dans l'ordre requis. TRT, de son côté, fera les vérifications suivantes:

Utilisez des fonctions d'arrondi à deux décimales sur vos nombres réels, comme les montants, sauf indication contraire.

Toutes les balises XML faisant l'objet du présent document sont facultatives, sauf lorsque marquées obligatoires.

1.1 Révisions et modifications

2. Abréviations

3. Type de données

TRT s'attend à recevoir des données en format XML dont l'encodage est UTF-8, peu importe l'application ayant servi à le créer. Son extension doit être ".XML". La taille des données n'a aucune importance. XML est un langage précis: chacune des balises décrites dans ce document doit être utilisée telle qu'écrite. XML est sensible à la casse et aux accents: <NAME> n'est pas la même chose que <Name>.

Les communications avec TRT se font par un Http Post. Le port d'écoute par défaut, paramétrable du côté de TRT, est le 8080. La première chose à faire est d'envoyer un test d'écoute en ajoutant "/TestTRTconnect" dans votre URL, à quoi TRT répondra "TestTRTconnect OK" si TRT est à l'écoute et que la communication est réussie. Ensuite, il est temps de procéder à l'envoi proprement dit. Il faut alors envoyer "/ImportTRT" dans votre URL suivi d'un header HTTP qui contient un "nom de fichier" qui est un identifiant unique suivi de l'extension ".xml" sinon l'import ne pourra s'effectuer. De plus, ce "nom de fichier" sera consigné dans la remarque de l'écriture pour indiquer que cette écriture provient d'un import en mode TRT. Il faudra donc passer dans votre Http header un tableau de champs et un tableau de valeurs. Votre tableau de champ contiendra une seule valeur, "NomFichier" et votre tableau de valeurs contiendra une seule valeur, le nom de votre fichier suivi de son extension.

Votre arbre XML doit être envoyé par POST directement en Raw Data (text/plain). À vous également de vérifier si ce pseudo fichier a déjà été envoyé ou pas: TRT ne vérifie pas l'unicité de vos documents.

Pour importer, il faut au préalable que l'option Lancer les web services du menu Fichier > Paramètres, onglet Import soit cochée de même qu'un port TCP soit spécifié (par défaut, 8080). Si tel est le cas, l'application émettrice enverra à TRT ses données et TRT retournera à l'émetteur le résultat de l'importation. Il est de votre ressort de gérer le refus d'un import et de le resoumettre corrigé, le cas échéant.

4. Déboguage

En mode manuel, TRT mettra dans votre presse-papiers un rapport de tout ce qui a été importé dans le fichier. Vous pouvez ainsi coller le contenu de votre presse-papiers dans un document texte, comparer et repérer les informations qui n'ont pu être importées, possiblement parce que les données non importées réfèrent à des balises mal écrites.

5. Conventions

6. Numéros de factures et numéros de chèques

TRT a évidemment un système de numérotation de factures et de chèques et il vérifie dans un contexte normal d'entrée de données avant d'utiliser un numéro si ce numéro n'existe pas déjà, mais cette vérification n'a pas lieu en mode d'importation. Comme il est possible que votre application ne contrôle pas toutes les entrées comptables impliquant des factures ou des chèques et que vous devez fournir les numéros de chèques et de factures dans vos transactions, des factures et des chèques pourront être créés dans TRT par des entrées directes des utilisateurs, entraînant des conflits de numérotation pour cause de doublons. Nous vous suggérons donc d'utiliser une numérotation spéciale selon l'une des stratégies suivantes:

7. Journal des déboursés ou des recettes: énoncé du principe de fonctionnement

Un journal des déboursés / recettes s'applique sur des comptes en souffrance. Ces transactions viennent donc diminuer un compte en souffrance d'un montant quelconque. Cela implique qu'il faut que vous donniez à TRT les moyens de repérer le compte en souffrance devant être diminué par votre transaction. Dans TRT, cela est effectué en faisant une recherche sur un contact qui présente un compte en souffrance et en notant les numéros de factures de toutes les transactions en souffrance. Par exemple, pour le client ABC:

Date originelle No Facture original Solde résiduel
25/04/2002 987 150
13/07/2002 1003 985

Ce sont ces informations qui seront montrées dans TRT. Lorsqu'un paiement (total ou partiel) est appliqué, c'est sur une ou plusieurs de ces lignes qu'il est appliqué. En connaissant le numéro de facture et le code contact, TRT peut donc diminuer le solde résiduel d'un numéro de journal donné.

Au 22 février 2005, nous introduisons un nouveau mode d'import sans numéro de facture. Dans ce mode, TRT appliquera le déboursé ou la recette sur le ou les plus vieux comptes en souffrance pour un contact donné. Si le montant du déboursé ou de la recette est supérieur au solde à payer ou à recevoir d'un compte donné, TRT assumera qu'on paie la totalité du compte en souffrance et qu'on applique l'excédent sur le prochain (chronologiquement) compte en souffrance. Par exemple, on importe un déboursé de 300 $ sur un contact qui a 3 comptes en souffrance, respectivement de 100, 300 et 200 $. TRT paiera intégralement le premier, et appliquera les 200 $ résiduels sur le deuxième. Il restera donc 100 $ à payer sur le deuxième. Le troisième ne sera pas affecté par cet import.

Au 22 septembre 2006, suite au paragraphe précédent, si un déboursé ou une recette ne peuvent être appliqués à un compte en souffrance ET qu'une fiche contact a été créée en conséquence dans le cadre de la transaction, la fiche contact sera supprimée.

Au 8 mars 2008, une limite est débloquée. Auparavant, lorsque le montant reçu ou payé est supérieur à la somme des résiduels, TRT bloque la transaction. Dorénavant, TRT utilisera l'excédent pour créer un montant à recevoir/payer négatif.

Au point 13.3.4, nous introduisons la balise /Tag qui, si le numéro de compte utilisé est un compte bancaire pour balancer l'équation comptable, doit obligatoirement contenir B, sinon rien. De plus, cette ligne d'écriture qui contient le compte bancaire doit être la dernière passée à TRT pour que TRT fonctionne correctement si une devise autre que la devise par défaut est utilisée, ceci afin de calculer correctement le gain/la perte sur change par rapport aux taux utilisé entre l'écriture originelle et le taux utilisé pour l'écriture courante.

8. Achats et ventes au comptant

TRT s'occupe de déterminer à votre place si votre achat ou votre vente est au comptant. Il n'y a rien de spécial à faire. Pour une transaction au comptant, utilisez simplement le compte de contrepartie approprié, soit vraisemblablement le compte de banque au lieu d'utiliser le compte fournisseurs (journal des achats) ou le compte clients (journal des ventes).

9. Gestion des erreurs ou du succès de l'importation

Votre connexion web doit pouvoir recevoir une réponse. Si tout s'est bien passé, "OK" sera retourné, sinon un code d'erreur avec une description de l'erreur. À vous de jouer à partir de là.

10. Header

  1. /ImportTRTXML
    C'est la racine de votre document. Obligatoire
  2. /ImportTRTXML/Version
    Numéro de version de cette norme: 200. Obligatoire
  3. /ImportTRTXML/CompanyNumber
    Optionnel. Ajoutez le numéro de la compagnie dans laquelle se fait l'importation. Si vous laissez ce champ libre, TRT assumera qu'il s'agit de la compagnie no 1 par défaut. Il faut comprendre ici que votre fichier d'import ne peut contenir de données que pour une seule compagnie. Toutefois, ce champ est sans effet en cas d'import en mode manuel: c'est la compagnie courante dans TRT qui accueillera vos données.

11. Fichiers sujets à entretien

Tel que mentionné précédemment, vous pouvez envoyer des fiches du fichier Contacts, Inventaire et Projets. Si vous n'ajoutez pas/ne modifiez pas de fiches, n'envoyez pas de données relatives à ces fichiers et passez au point suivant. Si vous ajoutez/modifiez des fiches, outre les données obligatoires, n'envoyez que les données optionnelles que vous ajoutez/modifiez: contrairement à la norme précédente, vous n'êtes pas tenu d'envoyer toutes les données d'un fichier, outre les données obligatoires; vous n'envoyez que les données ajoutées ou modifiées.

11.1 Ficher Contacts

Le fichier Contacts contient 12 champs définissables par l'usager: 3 champs date, 3 booléens, 3 numériques et 3 alphas. Vous les retrouverez à partir de ce lien. Vous n'êtes pas tenu, bien entendu, d'en prendre avantage.

Le xPath pour tous les champs de cette rubrique: /ImportTRTXML/Contacts/OneContact

  1. /OperationType
    Type d'opération à effectuer: A pour ajout, M pour modification. Si vous ne voulez pas vous préoccuper de savoir, dans votre application, quelles fiches ont été ajoutées ou modifiées par rapport à ces mêmes fiches dans TRT, passez A comme paramètre: TRT fera de toute façon une recherche sur le code contact passé en paramètre; si ce code existe, les rubriques passées modifieront la fiche du fichier considéré. Obligatoire.
  2. /Code
    Code contact: 16 caractères ou moins. Obligatoire
  3. /Salutation
    Salutation: 10 caractères (ex. M., Mme)
  4. /LastName
    Nom, 25 caractères, facultatif si /Company contient quelque chose
  5. /FirstName
    Prénom: 25 caractères, facultatif si /Company contient quelque chose
  6. /MiddleName
    Initiales du contact (ce que les anglophones appellent le "middle name")
  7. /Title
    Titre: 45 caractères. Exemple: président
  8. /Gender
    Sexe: Masculin = 1; Féminin = Ø Obligatoire
  9. /Language
    Langue: Français = 1; Anglais = Ø Obligatoire
  10. /Company
    Entreprise: 65 caractères, facultatif si /ContactName et /ContactFirstName contiennent quelque chose
  11. /Address
    Adresse
  12. /DeliveryAddress
    Adresse livraison
  13. /City
    Ville: 45 caractères
  14. /Province
    Province: 20 caractères
  15. /PostalCode
    Code postal: 10
  16. /Country
    Pays: 20 caractères
  17. /Telephone
    Téléphone: numérique. Exemple: 5142781981 et non (514) 278-1981
  18. /Extension
    Poste téléphonique: 4 caractères
  19. /Fax
    Fax: numérique. Exemple: 5142781981 et non (514) 278-1981
  20. /VendorOrClient
    Fournisseur = 1; Client = Ø Obligatoire
  21. /DefaultAccntRP
    Compte recevable/payable par défaut: 9 caractères. Vous utiliserez ce compte si vous voulez assigner un autre compte que le compte par défaut. Utile pour gérer les devises étrangères.
  22. /CreditMargin
    Marge de crédit: entier long
  23. /DiscountEarlyPymt
    Escompte de paiement rapide: numérique. Par exemple, si 2% entrez 2 et non 0,02
  24. /DiscountEarlyPymtDays
    Nombre de jours pour bénéficier de l'escompte de paiement rapide: entier
  25. /Notes
    Notes
  26. /TaxCode
    Code de taxe: 4 caractères
  27. /Date1
    Date 1 définissable par l'usager
  28. /Date2
    Date 2 définissable par l'usager
  29. /Date3
    Date 3 définissable par l'usager
  30. /Boolean1
    Booléen 1 définissable par l'usager: vrai = 1; faux = Ø
  31. /Boolean2
    Booléen 2 définissable par l'usager: vrai = 1; faux = Ø
  32. /Boolean3
    Booléen 3 définissable par l'usager: vrai = 1; faux = Ø
  33. /Numeric1
    Numérique 1 définissable par l'usager
  34. /Numeric2
    Numérique 2 définissable par l'usager
  35. /Numeric3
    Numérique 3 définissable par l'usager
  36. /Alpha1
    Alpha 1 (50 caractères max.) définissable par l'usager
  37. /Alpha2
    Alpha 2 (50 caractères max.) définissable par l'usager
  38. /Alpha3
    Alpha 3 (50 caractères max.) définissable par l'usager
  39. /Currency
    Devise: 4 caractères. Ex: CDN, US. N'utilisez pas ce champ pour la devise par défaut du système.
  40. /SalesRemark
    Remarque vente: 32 000 caractères. Une remarque personnalisée à imprimer au bas des factures de ce contact.
  41. /DepositInitBalance
    Solde initial du compte d'acomptes: numérique
  42. /ShowNameFirstName
    Modification le 14 juin 2015:
    maintenant 3 valeurs possibles. 1=montrer nom et prénom; 2= montrer l'entreprise; 3= montrer nom, prénom et entreprise
    Anciennement: Montrer nom et prénom: Oui = 1; Non = Ø. Les noms et prénom de ce contact doivent-ils s'imprimer sur les factures, chèques, etc? Nous vous suggérons d'observer la règle suivante. Si votre contact est un fournisseur et qu'il a un nom d'entreprise, un nom et un prénom, mettez Ø dans ce champ (ne pas montrer nom et prénom) car les banques peuvent rouspéter si un chèque est fait au nom d'un individu et d'une entreprise en même temps.
  43. /GlobalDiscount
    Escompte global: Numérique. Entrer 20 et non 0.2 pour désigner 20%
  44. /DirectPrinting
    Impression directe
    par l'imprimante: Oui = 1; Non = Ø
  45. /DirectPDF
    Impression par création
    d'un fichier pdf: Oui = 1; Non = Ø
  46. /AutoNoteIfDirectPDF
    Note automatique si oui à l'impression par création d'un fichier pdf: Oui = 1; Non = Ø
  47. /OnePhone
    Ce sont les téléphones/liens internet situés à la page 2 de la fiche Contact
    1. /OnePhone/Descriptor
      le descripteur du numéro (ex. télécopieur, courriel, site internet): 35 caractères. Obligatoire.
    2. /OnePhone/PhoneNumber
      le numéro de téléphone ou l'adresse de courriel ou l'URL: 80 caractères. Si vous envoyez des numéros de téléphones, envoyez-les formatés (ex. (514) 278-1981 et non 5142781981). Obligatoire
    3. /OnePhone/Extension
      le poste: 4 caractères.
    4. /OnePhone/ID
      le ID du numéro. À date, quatre ID sont utilisés et réservés aux usages ci-dessous. Veuillez donc utiliser ces ID s'ils correspondent à l'usage que vous en faites.
      1. Réservé pour le numéro de téléphone principal
      2. Réservé pour le numéro de télécopieur
      3. Réservé pour les adresses de courriel
      4. Réservé pour les adresses de sites web
  48. /BirthDate
    Date de naissance

11.2 Ficher Inventaire

Le xPath pour tous les champs de cette rubrique: /ImportTRTXML/Inventory/OneItem

  1. /OperationType
    Type d'opération à effectuer: A pour ajout, M pour modification. Si vous ne voulez pas vous préoccuper de savoir, dans votre application, quelles fiches ont été ajoutées ou modifiées par rapport à ces mêmes fiches dans TRT, passez A comme paramètre: TRT fera de toute façon une recherche sur le caractère passé en paramètre; si ce code existe, les rubriques passées modifieront la fiche du fichier considéré. Obligatoire
  2. /ItemCode
    Code produit: 15 caractères. Obligatoire
  3. /FrenchDescr
    Description française
  4. /EnglishDescr
    Description anglaise
  5. /FrenchUnit
    Unité (Française): 10 caractères (ex. Chaque, heure)
  6. /EnglishUnit
    Unité (Anglaise): 10 caractères (ex. Each, hour)
  7. /SalesPrice
    Prix de vente: numérique
  8. /MinimumLevel
    Niveau minimum: entier long (non requis si Pas de gestion des quantités)
  9. /NoQtyManagement
    Pas de gestion des quantités
    : sans gestion = 1; avec gestion = Ø
  10. /AssetAccnt
    Compte d'actif: 9 caractères (non requis si Pas de gestion des quantités)
  11. /RevenueAccnt
    Compte de revenu: 9 caractères
  12. /ExpenseAccnt
    Compte de dépense: 9 caractères
  13. /TaxCode
    Code de taxe: 4 caractères; ce champ doit normalement être vide; le fait qu'il contienne un code force l'article à utiliser le code au détriment des réglages de la fiche Contact donc, n'indiquez rien si vous voulez que le code de taxes de la fiche Contact s'applique
  14. /Discount
    Escompte: entier. Exemple: pour 2%, entrez 2 et non 0,02
  15. /VendorContactCode
    Code contact du fournisseur: 16 caractères ou moins. Ce code contact doit exister dans la table Contacts
  16. /Weight
    Poids de l'article: numérique
  17. /Where
    Localisation: 30 caractères
  18. /NonDiscountable
    Pas escomptable: booléen: Oui = 1; Non = Ø
    Ce champ fera en sorte que l'item utilisé ne pourra être escompté, peu importe les escomptes déjà consenties globalement au client.
  19. /VendorItemCode
    Code de produit du fournisseur principal du produit: 20 caractères
  20. /HarmonizedItemCode
    Code de produit harmonisé: 20 caractères
  21. /Notes
    Notes: 32 000 caractères
  22. /BarCode
    Code barre: 13 caractères

11.3 Ficher Projets

Le xPath pour tous les champs de cette rubrique: /ImportTRTXML/Projects/OneProject

  1. /OperationType
    Type d'opération à effectuer: A pour ajout, M pour modification. Si vous ne voulez pas vous préoccuper de savoir, dans votre application, quelles fiches ont été ajoutées ou modifiées par rapport à ces mêmes fiches dans TRT, passez A comme paramètre: TRT fera de toute façon une recherche sur le caractère passé en paramètre; si ce code existe, les rubriques passées modifieront la fiche du fichier considéré. Obligatoire
  2. /ProjectCode
    Code projet: 7 caractères. Obligatoire. Le premier caractère de votre code doit être P. Exemple: P000008. Si vous voulez éliminer le risque qu'un utilisateur crée dans TRT un projet dont le code vienne en conflit avec vos propres codes, songez à utiliser une lettre aussi comme deuxième caractère dans votre code projet.
  3. /Descriptor
    Description du projet: 70 caractères
  4. /IncomeStartBal
    Solde au départ des Revenus
  5. /ExpenseStartBal
    Solde au départ des Dépenses
  6. /OthersStartBal
    Solde au départ des autres comptes (comptes de bilan)
  7. /Budget
    Budget global sur le projet
  8. /DepartureDate
    Ce champ est réservé pour la version Cohtaxion

11.4 Ficher Dossiers

Cette section ne concerne que la version TRTagent. N'importez qu'un seul dossier par fichier. Le xPath pour tous les champs de cette rubrique: /ImportTRTXML/File

  1. /Descriptor
    Descripteur de dossier; optionnel
  2. /DepartureDate
    Date de départ: obligatoire
  3. /ReturnDate
    Date de retour: obligatoire
  4. /GroupCode
    Code de groupe pour la version Agences
  5. /Origin
    Le code d'aéroport d'origine. Ex pour Montréal: YUL. Obligatoire
  6. /Destination
    Le code d'aéroport de destination. Ex. pour Varadero: VRA. Obligatoire
  7. /Department
    Le numéro de département si implantation de départements

12. Champs du journal

Le xPath pour tous les champs de cette rubrique: /ImportTRTXML/JournalEntries/OneJournal

12.1 Champs communs à tous les types de transactions

  1. /Date
    Date de la transaction
  2. /Type
    Type de transaction: 2 caractères
    1. achat: A
    2. achat partiel: YA
    3. déboursé: D
    4. vente: V
    5. vente partielle: YV
    6. recette: R
    7. général: G
    8. transfert d'inventaire: T
  3. /Remark
    Remarque
  4. /User
    Utilisateur: 4 caractères ou moins
  5. /PaymentMethod
    Méthode de paiement: 1 = chèque, 2 = comptant, 3 = carte de crédit au fournisseur, 4 = carte de crédit terminal agence, 5 = carte de débit, 6 = transfert bancaire

12.2 Champs propres à certains types de transactions



12.2.1 Achats

  1. /ContactCode
    Code contact: 16 caractères ou moins, obligatoire
  2. /InvoiceNo
    No Facture: 20 caractères ou moins. Obligatoire sauf dans le cas des entrées partielles
  3. /OrderNo
    Votre numéro de commande: 15 caractères ou moins
  4. /CheckNo
    No chèque: 20 caractères ou moins. Obligatoire si l'achat est au comptant. Si vous voulez que TRT assigne lui-même le numéro, passez au comptant dans ce champ
  5. /Subtotal
    Total avant taxes: obligatoire
  6. /Total
    Total: obligatoire
  7. /BatchPrinting
    1= à inclure dans les impressions en lot
  8. /Currency
    Devise: 4 caractères ou moins; ne pas utiliser ce champ pour la devise par défaut
  9. /OrderDate
    Date de la commande: 10 caractères; sert dans les entrées partielles
  10. /PartialEntryNo
    Numéro de l'entrée partielle: entier long; sert dans les entrées partielles
  11. /OperationType
    A
    ou R ou S: Ajouter ou Remplacer ou Supprimer; ne sert qu'aux entrées partielles. Si votre achat n'est pas une entrée partielle, n'entrez rien. Si votre achat est une entrée partielle que vous supprimez, TRT se basera sur le numéro de l'entrée partielle pour repérer la transaction à supprimer. Si plus d'une entrée partielle a le numéro d'une entrée à supprimer, toutes les fiches ayant ce numéro seront supprimées.
  12. /Cash
    1 = Entrée au comptant. Ne sert qu'aux entrées partielles. La notion de "au comptant" dans les achats et les ventes est déterminée automatiquement par le compte de contrepartie utilisé pour balancer l'équation comptable. Dans les entrées partielles, le compte de contrepartie n'a pas à être passé à TRT. En revanche, il est parfois nécessaire d'indiquer à TRT si l'entrée partielle sera utilisé au comptant ou pas. Ce champ permet de le faire.
  13. /TransCategory
    Le champ Catégorie de transaction: c'est un entier
  14. /DueDate
    La date de paiement dû
  15. /LinkID
    Alphanumérique; ce champ ne doit être utilisé que lorsque vous passez à TRT une vente ou un achat pour lequel vous avez déjà dans le passé créé une recette avant la vente ou un achat avant le déboursé. Ce champ permet alors de lier la vente avec la recette ou l'achat avec le déboursé. C'est vous qui générez cet ID et qui le gérez de façon à assurer le lien. Un UUID peut être utilisé.
  16. /ExchangeRate
    Le taux de change utilisé dans la transaction. Obligatoire si vous entrez quelque chose dans 12.2.2.1 Currency. Il est important que ce champ soit exporté après le champ Currency car aussitôt que Currency est importé, TRT va aller chercher automatiquement le taux de change correspondant à la date sur le site de la banque du Canada. En important après le champ Currency, vous imposez votre propre taux.

12.2.2 Ventes

  1. /ContactCode
    Code contact: 16 caractères ou moins, obligatoire
  2. /InvoiceNo
    No Facture: 20 caractères ou moins. Obligatoire sauf dans le cas d'une vente partielle. Consultez la note sur les numéros de factures.
  3. /OrderNo
    No commande du client: 15 caractères ou moins
  4. /CheckNo
    No chèque du client si vente au comptant: 20 caractères ou moins.
  5. /SalesRep
    Représentant des ventes: 3 caractères ou moins
    Ne sert que pour le journal des ventes. Si votre transaction ne contient pas de représentant, n'entrez rien.
  6. /SubTotal
    Total sans taxes: obligatoire
  7. /Total
    Total: obligatoire
  8. /BatchPrinting
    1= à inclure dans les impressions en lot
  9. /BankDepositNo
    No de dépôt bancaire (lorsque la vente est au comptant): entier. N'envoyez rien si vous voulez que TRT gère lui-même les numéros de dépôts bancaires; envoyez -1 si vous ne voulez pas que TRT gère les dépôts
  10. /Currency
    Devise: 4 caractères ou moins; ne pas utiliser ce champ pour la devise par défaut
  11. /OrderDate
    Date de la commande: 10 caractères; sert dans les entrées partielles
  12. /PartialEntryNo
    Numéro de l'entrée partielle: entier long; sert dans les entrées partielles
  13. /OperationType
    A
    ou R ou S: Ajouter ou Remplacer ou Supprimer; ne sert qu'aux ventes partielles. Si votre vente n'est pas une entrée partielle, n'entrez rien. De plus, si vente partielle, s'attend à recevoir un numéro unique d'entrée partielle (voir #12). Si votre vente est une entrée partielle que vous supprimez, TRT se basera sur le numéro de l'entrée partielle pour repérer la transaction à supprimer. Si plus d'une entrée partielle a le numéro d'une entrée à supprimer, toutes les fiches ayant ce numéro seront supprimées.
  14. /Cash
    1 = Entrée au comptant. Ne sert qu'aux entrées partielles. La notion de "au comptant" dans les achats et les ventes est déterminée automatiquement par le compte de contrepartie utilisé pour balancer l'équation comptable. Dans les entrées partielles, le compte de contrepartie n'a pas à être passé à TRT. En revanche, il est parfois nécessaire d'indiquer à TRT si l'entrée partielle sera utilisé au comptant ou pas. Ce champ permet de le faire.
  15. /TransCategory
    Le champ Catégorie de transaction: c'est un entier
  16. /Extra1
    Le champ Supplémentaire1: pour plus d'informations concernant ce champ ainsi que les prochains champs du même nom, suivez ce lien.
  17. /Extra2
    Le champ Supplémentaire2
  18. /Extra3
    Le champ Supplémentaire3
  19. /Extra4
    Le champ Supplémentaire4
  20. /Extra5
    Le champ Supplémentaire5
  21. /Extra6
    Le champ Supplémentaire6
  22. /DueDate
    La date de paiement dû
  23. /LinkID
    Alphanumérique; ce champ ne doit être utilisé que lorsque vous passez à TRT une vente ou un achat pour lequel vous avez déjà dans le passé créé une recette avant la vente ou un achat avant le déboursé. Ce champ permet alors de lier la vente avec la recette ou l'achat avec le déboursé. C'est vous qui générez cet ID et qui le gérez de façon à assurer le lien. Un UUID peut être utilisé.
  24. /ExchangeRate
    Le taux de change utilisé dans la transaction. Obligatoire si vous entrez quelque chose dans 12.2.2.10 Currency. Il est important que ce champ soit exporté après le champ Currency car aussitôt que Currency est importé, TRT va aller chercher automatiquement le taux de change correspondant à la date sur le site de la banque du Canada. En important après le champ Currency, vous imposez votre propre taux.

12.2.3 Déboursés et Recettes

  1. /ContactCode
    Code contact: 16 caractères ou moins. Obligatoire
  2. /CheckNo
    No chèque: 20 caractères ou moins. Obligatoire pour le journal des déboursés.
  3. /Total
    Total: obligatoire
  4. /BatchPrinting
    1= à inclure dans les impressions en lot
  5. /Currency
    Devise: 4 caractères ou moins
  6. /BankDepositNo
    No de dépôt bancaire (seulement lorsque la transaction est une recette): entier. N'envoyez rien si vous voulez que TRT gère lui-même les numéros de dépôts bancaires; envoyez -1 si vous ne voulez pas que TRT gère les dépôts
  7. /LinkID
    Alphanumérique; ce champ ne doit être utilisé que lorsque vous passez à TRT un déboursé ou une recette sans achat ou sans vente. Ce champ servira à lier ce déboursé ou cette recette à un futur achat ou une future vente qui utilisera alors ce champ pour créer le lien. Un UUID peut être utilisé.
  8. /ExchangeRate
    Le taux de change utilisé dans la transaction. Obligatoire si vous entrez quelque chose dans 12.2.3.5 Currency. Il est important que ce champ soit exporté après le champ Currency car aussitôt que Currency est importé, TRT va aller chercher automatiquement le taux de change correspondant à la date sur le site de la banque du Canada. En important après le champ Currency, vous imposez votre propre taux.

12.2.4 Transferts d'inventaire

  1. /Source
    Source: 10 caractères. Obligatoire

12.2.5 Général

  1. /Source
    Source: 10 caractères. Obligatoire
  2. /TransCategory
    Le champ Catégorie de transaction: c'est un entier

13. Champs du fichier Lignes de transaction

Vous ajoutez ensuite les informations pertinentes à chaque ligne de transaction, dans l'ordre suivant:
Le xPath pour tous les champs de cette rubrique: /ImportTRTXML/JournalEntries/OneJournal/OneLine

13.1 Achats

  1. /ItemCode
    Article d'inventaire: 15 caractères ou moins
    ceci est un code qui sera examiné par TRT pour déterminer si cet article d'inventaire existe.
  2. /QtyOrdered
    Quantité commandée: peut inclure des décimales
  3. /Unit
    Unité: 10 caractères ou moins. Ex: chaque, heures, etc
  4. /LineDescription
    Description: 32 000 caractères ou moins
    si vous utilisez un article d'inventaire dans votre transaction et que votre description est la même que la description de l'article d'inventaire, vous pouvez omettre la description
  5. /UnitPrice
    Prix unitaire
  6. /LineTotal
    Total ligne: obligatoire; vraisemblablement le résultat de la quantité * prix unitaire; le signe de ce montant est assujetti aux contraintes exprimées dans le point #7, Conventions
  7. /AccountNo
    No Compte: de 4 à 9 caractères incluant tirets, obligatoire sauf si un compte est associé dans TRT à ItemCode et que ItemCode est utilisé dans la ligne
  8. /ProjectCode
    Code Projet: 7 caractères. Inscrivez des codes projets sur les lignes pertinentes seulement: les lignes de comptes d'intégration et de taxes sont à exclure!
  9. /MainVendorItemCode
    Code de produit du fournisseur principal
  10. /HarmonizedItemCode
    Code de produit harmonisé
  11. /TaxCode
    Code de taxe si cette ligne d'écriture est taxable (et non une ligne de taxe), donc payable aux gouvernements. 4 caractères ou moins. Avantage: les taxes deviennent intégrées quand on examine une écriture comptable et non des lignes distinctes
  12. /OneTax
    Utilisez cette méthode pour les utilisateurs de TRTagent, car le calcul des taxes dans le monde du voyage a des règles particulières. Vous allez créer dans la section suivante autant de lignes de taxes que requis pour votre produit. Quand vous utilisez cette stratégie, vous n'avez pas besoin de créer des lignes de taxes distinctes.
    1. /OneTax/TaxID
      ID de taxe tel que défini dans les préférences de TRT. Cet ID identifie de façon unique le type de taxe qui sera utilisé dans ce produit
    2. /OneTax/TaxAmount
      Le montant de la taxe

13.2 Ventes

  1. /ItemCode
    Article d'inventaire: 15 caractères ou moins
    ceci est un code qui sera examiné par TRT pour déterminer si cet article d'inventaire existe.
  2. /QtyOrdered
    Quantité commandée: peut inclure des décimales
  3. /Unit
    Unité: 10 caractères ou moins. Ex: chaque, heures, etc
  4. /LineDescription
    Description: 32 000 caractères ou moins
    si vous utilisez un article d'inventaire dans votre transaction et que votre description est la même que la description de l'article d'inventaire, vous pouvez omettre la description
  5. /PurchaseUnitPrice
    Prix d'achat unitaire. Optionnel; si non utilisé, TRT utilisera le coût d'achat de l'article d'inventaire désigné par /ItemCode. Vous utilisez ce champ quand vous voulez modifier au vol le coût d'achat d'un article à l'intérieur d'une vente
  6. /SalesUnitPrice
    Prix de vente unitaire, non multiplié par QtyOrdered
  7. /LineTotal
    Total ligne: obligatoire; vraisemblablement le résultat de la quantité * prix unitaire; le signe de ce montant est assujetti aux contraintes exprimées dans le point #7, Conventions. Doit comprendre OtherTax multiplié par la QtyOrdered et et la somme de OneTax
  8. /AccountNo
  9. No Compte: de 4 à 9 caractères incluant tirets, obligatoire sauf si un compte est associé dans TRT à ItemCode et que ItemCode est utilisé dans la ligne
  10. /ProjectCode
    Code Projet: 7 caractères. Inscrivez des codes projets sur les lignes pertinentes seulement: les lignes de comptes d'intégration et de taxes sont à exclure!
  11. /MainVendorItemCode
    Code contact du fournisseur principal
  12. /HarmonizedItemCode
    Code de produit harmonisé
  13. /TaxCode
    Code de taxe si cette ligne d'écriture est taxable (et non une ligne de taxe), donc payable aux gouvernements. 4 caractères ou moins. Avantage: les taxes deviennent intégrées quand on examine une écriture comptable et non des lignes distinctes
  14. /OneTax
    Utilisez cette méthode pour les utilisateurs de TRTagent, car le calcul des taxes dans le monde du voyage a des règles particulières. Vous allez créer dans la section suivante autant de lignes de taxes que requis pour votre produit. Quand vous utilisez cette stratégie, vous n'avez pas besoin de créer des lignes de taxes distinctes.
    1. /OneTax/TaxID
      ID de taxe tel que défini dans les préférences de TRT. Cet ID identifie de façon unique le type de taxe qui sera utilisé dans ce produit
    2. /OneTax/TaxAmount
      Le montant de la taxe
  15. /PCDiscount
    Pourcentage d'escompte: entrez un nombre sinon Ø
  16. /PriceTableCode
    Code de barème de prix: entier. Ce code doit déjà exister dans TRT.
  17. /OtherTaxes
    Uniquement pour la version Agences: aussi appelé "taxes d'aéroport". Numérique. C'est aussi un montant "unitaire" et non multiplié par QtyOrdered

13.3 Déboursés et Recettes

  1. /LineTotal
    Montant (ou montant de l'escompte); le signe de ce montant est assujetti aux contraintes exprimées au point #5, Conventions. Obligatoire.
  2. /InvoiceNo
    No de facture: 10 caractères. Obligatoire quand la balise suivante, /AccountNo, contient un numéro de compte fournisseur ou de compte client. Deux stratégies possibles.
    1. Ce numéro de facture est celui de la fiche ayant un solde résiduel que vous voulez payer. Si la ligne est une ligne de total ou de contrepartie, ce champ devra être vide. Un cas particulier peut se présenter: vous démarrez une nouvelle comptabilité et vous avez importé dans TRT des soldes initiaux de comptes payables ou recevables par l'intermédiaire du champ Solde au départ d'une fiche Contact ayant un solde en souffrance. Comme ces soldes serviront à créer de fausses transactions de comptes en souffrance, TRT leur assignera un faux numéro de facture: **INIT**. Donc, pour référer à ces "factures" entrées directement dans les codes contact, utilisez **INIT** comme numéro de facture.
    2. Vous entrez *NO*MATCH* dans le numéro de facture: TRT paiera le solde résiduel d'un ou plusieurs comptes en souffrance, en commençant par les plus vieux, sans égard à quelque correspondance que ce soit avec un quelconque numéro de facture. Notez la présence d'astérisques dans *NO*MATCH*: elles font partie du pseudo numéro de facture.
  3. /AccountNo
    No Compte: de 4 à 9 caractères incluant tirets, obligatoire. Si au point précédent vous avez inséré un numéro de facture, ce numéro de compte doit être un compte d'intégration des comptes à payer (pour un déboursé) ou un compte d'intégration des comptes à recevoir (pour une recette). De plus, ce compte peut aussi être un compte bancaire pour balancer l'équation comptable. Dans ce cas, cette ligne de transaction doit être la dernière passée pour que TRT fonctionne correctement si une devise autre que la devise par défaut a été passée à la transaction.
  4. /Tag
    Obligatoire si /AccountNo est le compte bancaire utilisé pour balancer l'équation comptable. Dans ce cas, doit être B, sinon ne passez pas cette balise.

13.4 Général

  1. /LineTotal
    Montant; le signe de ce montant est assujetti aux contraintes exprimées au point #5, Conventions. Obligatoire.
  2. /AccountNo
    No Compte: de 4 à 9 caractères incluant tirets, obligatoire
  3. /LineDescription

    Remplissez le champ description si vous avez entré une description personnalisée différente de la description du numéro de compte.
  4. /ProjectCode
    Code Projet: 7 caractères

13.5 Transferts d'inventaire

  1. /ItemCode
    Article d'inventaire: 15 caractères ou moins. Obligatoire.
    ceci est un code qui sera examiné par TRT pour déterminer si cet article d'inventaire existe.
  2. /Qty
    Quantité: peut inclure des décimales
  3. /LineTotal
    Total ligne: obligatoire; vraisemblablement le résultat de la quantité * prix unitaire
  4. /AccountNo
    No Compte: de 4 à 9 caractères incluant tirets, obligatoire

14. Messages d'erreur lors de l'importation

  1. Fiche du journal général correspondante non trouvée

    Dans l'importation d'un déboursé ou d'une recette, TRT doit trouver dans ses données la fiche du journal général dont il faut réduire le solde à payer/recevoir. Cette fiche n'a pu être trouvée. Le numéro de journal passé en paramètre est mal libellé, inexistant ou supprimé.

  2. Ce code de projet n'existe pas

    TRT a été incapable de retrouver votre code projet

  3.  Code d'article d'inventaire introuvable.

    TRT a été incapable de retrouver l'article d'inventaire correspondant au code que vous lui avez envoyé

  4. Compte de charte des comptes introuvable

    TRT a été incapable de retrouver le compte de charte de comptes correspondant au code que vous lui avez envoyé

  5. Les débits et crédits de la transaction N ne concordent pas ou font appel à des comptes inexistants dans votre charte des comptes.

    C'est un principe fondamental de la comptabilité: la somme de vos montants doit être égale à zéro. Révisez les conventions de signes dans le paragraphe Conventions.

  6. Impossible de déterminer si vous ajoutez ou modifiez…

    Lors de l'importation d'un contact ou d'une fiche d'inventaire, vous avez omis le code A pour addition ou M pour modification.

  7. Le code … de cette nouvelle fiche existe déjà.

    Vous essayez de créer une fiche dont le code a été trouvé existant (donc la fiche à créer existe déjà).

15. Exemple de ficher de transfert en XML

Voici l'écriture décrite dans l'exemple: notez que les crédits ont un signe négatif, les débits un signe positif selon la convention décrite plus haut.

Et le code XML exemple: