Aller au contenu

Configurer les modèles de documents (formulaires)

TrakIT produit ses documents, comme les bons de livraison, les factures, les devis et les bons d’encaissement, à partir de formulaires. Un formulaire est une page HTML qui contient des codes. Quand un utilisateur génère un document, TrakIT remplace chaque code par les détails de l’ordre de travail, du dossier, de la facture ou d’une autre fiche, et enregistre le résultat au format PDF. Ce guide mène un formulaire de la page blanche jusqu’aux documents que les utilisateurs génèrent à partir de lui. Il s’adresse aux administrateurs système : eux seuls créent et modifient les formulaires.

L’exemple suivi tout au long du guide est un bon de livraison : un formulaire d’ordre de travail pour votre workflow d’import, généré pour le conteneur ABCU1234560 du dossier EXBL2610045. Les mêmes étapes s’appliquent aux autres sortes de formulaires, avec les différences signalées.

Les menus que vous voyez dépendent de votre rôle et de la façon dont votre société a configuré TrakIT. Les chemins de cette page sont ceux du menu standard ; voir Se repérer dans TrakIT.

La sorte de formulaire détermine ce qu’il peut afficher, où les utilisateurs le génèrent et comment vous le rendez disponible. Elle ne peut plus être modifiée une fois le formulaire créé. Chaque sorte a son propre onglet dans Admin > Form Definitions :

Onglet Produit des documents sur Généré depuis Rendu disponible par
For Work Orders Un ordre de travail. L’onglet Forms de l’ordre de travail, ou une action du workflow. Is Global, ou l’onglet Forms du workflow.
For Jobs Un dossier entier, avec un bloc répété pour chaque ordre de travail. L’onglet Forms de n’importe quel ordre de travail du dossier. Is Global, ou l’onglet Forms du workflow.
For Reports Les lignes d’un rapport avancé. Un abonnement à un rapport. Chaque formulaire de rapport actif est proposé.
For Finance Une facture, une note de débit ou un avoir, un autre document de facture, un devis, un bon d’encaissement ou de décaissement, ou une facture fournisseur : le Sub Type du formulaire. La fiche financière. Les sociétés cochées sur le formulaire.
For Yard Ops Un mouvement de parc. L’application pour appareils mobiles. Le Yard et le Move Type du formulaire.

Les formulaires d’e-mail, c’est-à-dire la mise en page des e-mails qu’envoie TrakIT, sont gérés par le support TrakIT. Une société utilise celui qui est choisi comme son Email Template (voir Société).

  1. Sélectionnez Admin > Form Definitions, puis l’onglet de la sorte de formulaire, ici For Work Orders.
  2. Sélectionnez Create.
  3. Saisissez le Form Name, par exemple Delivery Order, et un Form Code, comme DO.
  4. Remplissez les autres champs du formulaire dont le formulaire a besoin.
  5. Sélectionnez Create.

Le nouveau formulaire s’ouvre. Il est au format A4, et son contenu se limite à son nom, sous forme de titre. Les paramètres les plus importants :

  • Orientation, Page Numbers et Margins mettent la page en forme. Language est la langue des titres et des mots traduits du formulaire.
  • File Name Syntax nomme le PDF, par exemple [CODE]-[JOB]-[GENCOUNT].
  • Formulaires d’ordre de travail et de dossier : Prevent Re-generation n’autorise qu’un document par ordre de travail ou par dossier tant qu’il n’est pas annulé ; WO Data Ref. écrit le numéro de référence du formulaire dans un champ de données ; Default External Access rend les documents visibles par défaut des utilisateurs externes, comme le client. L’Entity Filter d’un formulaire de dossier en fait un document destiné à une entité du dossier, comme un transporteur routier.
  • Formulaires financiers : Sub Type indique à quoi sert le formulaire. Pour les factures, les notes de débit et les avoirs, Pro-forma/Final indique s’il imprime des factures pro forma, des documents définitifs ou les deux. Message Template donne le corps de l’e-mail envoyé avec une facture ou un devis, et Require Live Signature oblige l’utilisateur à signer le document avant sa génération.
  • Formulaires de parc : le Yard, le Move Type et Auto-Generate.

Pour partir d’un formulaire existant, ouvrez-le et sélectionnez l’icône plus (Clone Form). La copie conserve le contenu, l’en-tête, le pied de page et les rôles, mais elle n’est ajoutée à aucun workflow, et aucune société n’est cochée sur un formulaire financier.

Qui : les administrateurs système créent, clonent et modifient les formulaires. Pour les consulter, il faut View Form Definitions dans la section Form Definitions.

  1. Dans l’onglet Form Preview du formulaire, sélectionnez Open Editor.
  2. Rédigez le HTML sous HTML Code. Form Preview, à droite, affiche le résultat pendant que vous tapez.
  3. Sélectionnez Save, puis Close Editor.

TrakIT refuse un HTML mal formé, et indique la ligne. Voir L’éditeur de formulaire.

Les codes suivent quelques formes :

Code Donne
%%%0,COLUMN; Un champ d’en-tête de l’ordre de travail, par sa colonne de la base de données, comme BOLNUM (la référence du dossier), CONTNUM (le conteneur) ou CONTCUSNAME (le nom du client). Voir Référence des codes de formulaire.
%%%1,CODE;, %%%2,CODE; La date d’un événement, ou la valeur d’un champ de données, par son code dans le workflow. Ajoutez un format après |, par exemple %%%1,DEL|dd MMM yyyy;.
[ED:CODE:NAME] Le nom d’un événement ou d’un champ de données du workflow.
##NAME## Une valeur, comme ##REFNO## (le numéro de référence unique du document), ##DATE## ou ##USERNAME##. Les formulaires financiers ont les leurs, comme ##INVNUM##, et un tableau des lignes, comme ##INVTABLE##.
%%%LOOP; … %%%END; Dans un formulaire de dossier, un bloc répété pour chaque ordre de travail non annulé du dossier.

Ce sont les principaux : la Référence des codes de formulaire les liste tous, la section Référence du code de la page Formulaire liste les formes, et le bouton ? (Code Reference) de l’éditeur liste les codes de la sorte de formulaire, et du sous-type pour un formulaire financier, avec un exemple pour chacun.

Pour le bon de livraison, avec DEL comme code de l’événement de livraison dans votre workflow :

<h1>Delivery Order</h1>
<p>Reference: ##REFNO## - Date: ##DATE##</p>
<table>
<tr><td>Job</td><td>%%%0,BOLNUM;</td></tr>
<tr><td>Customer</td><td>%%%0,CONTCUSNAME;</td></tr>
<tr><td>Container</td><td>%%%0,CONTNUM;</td></tr>
<tr><td>[ED:DEL:NAME]</td><td>%%%1,DEL|dd MMM yyyy;</td></tr>
</table>
<p>Issued by ##USERNAME##</p>

Généré pour l’ordre de travail de ABCU1234560, il affiche EXBL2610045, Example Trading Co, le numéro du conteneur et la date de livraison. Un formulaire de dossier place les ordres de travail dans un bloc répété, et doit donner à un élément du bloc le data-id ##WOID##, sinon TrakIT refuse de l’enregistrer :

<table>
%%%LOOP;
<tr data-id="##WOID##"><td>##SERIAL##</td><td>%%%0,CONTNUM;</td><td>%%%0,WEIGHT|#,##0;</td></tr>
%%%END;
</table>
<p>##NUMALL## containers, ##TOTALWEIGHT## kg</p>

Les codes situés hors du bloc prennent les détails du premier ordre de travail du dossier.

L’en-tête et le pied de page sont imprimés en haut et en bas de chaque page. Utilisez-les pour ce qui est identique sur chaque page, comme votre papier à en-tête et votre adresse, et gardez les codes dans le corps du formulaire.

  1. Ouvrez l’onglet Header/Footer du formulaire.
  2. Rédigez le HTML dans Custom Header ou Custom Footer, jusqu’à 1 000 caractères chacun.
  3. Saisissez sa hauteur dans Height:, en points, et sélectionnez Update en dessous.

Avec Default Footer activé et sans pied de page personnalisé, TrakIT imprime son pied de page standard, qui indique qui a généré le document et quand. Un pied de page personnalisé le remplace. Les numéros de page viennent du paramètre Page Numbers du formulaire. Voir Onglet Header/Footer.

Vérifiez le formulaire en trois étapes, de la mise en page aux données réelles :

  1. La mise en page. L’onglet Form Preview affiche le contenu avec les codes tels qu’ils sont écrits, et l’en-tête et le pied de page dans des cadres en pointillés.
  2. Le PDF. Dans l’éditeur, Test PDF enregistre le formulaire et le télécharge au format PDF, avec ses marges, son en-tête, son pied de page et ses numéros de page. Les codes ne sont pas remplis, et le test ne compte pas comme une génération. Voir Test PDF.
  3. Les données réelles. Rendez le formulaire disponible (étape 6), puis ouvrez la fiche sans générer :
    • un formulaire d’ordre de travail ou de dossier : sur un ordre de travail du workflow, ouvrez l’onglet Forms et choisissez le formulaire. L’aperçu l’affiche rempli avec les détails de cet ordre de travail. Aucun document n’est produit tant que vous ne sélectionnez pas Generate.
    • un formulaire financier : ouvrez la fenêtre contextuelle Generate d’une fiche de la société, par exemple Approve sur une facture en brouillon, et choisissez le formulaire. L’aperçu affiche le document avec le numéro qu’il recevra. Fermez la fenêtre contextuelle sans sélectionner Generate.

Pendant vos tests, vous pouvez tenir un formulaire d’ordre de travail ou de dossier à l’écart des utilisateurs : ajoutez-le uniquement à un workflow utilisé pour les tests, ou ne cochez dans son onglet User Access qu’un rôle que vos utilisateurs n’ont pas. Les administrateurs système peuvent toujours le générer.

Dans le résultat, recherchez :

  • un code imprimé tel quel, par exemple sans son ; de fin : il n’est pas écrit correctement ;
  • une valeur vide : la fiche n’a pas encore de valeur, le code de l’événement ou du champ de données n’est pas dans le workflow, ou un code nomme une colonne de base de données qui n’existe pas. Un code ne prend que le nom d’une colonne, pas un calcul.

Formulaires d’ordre de travail et de dossier. Activez Is Global pour proposer le formulaire dans tous les workflows. Sinon, dans l’onglet Forms de chaque workflow, sélectionnez Add New, choisissez le formulaire et définissez :

  • Requires : un champ d’en-tête, un événement ou un champ de données qui doit être rempli avant que le formulaire puisse être généré, comme le transporteur routier pour un bon de livraison.
  • Trigger Event Code : un événement que TrakIT enregistre sur l’ordre de travail quand le formulaire est généré.
  • Do Not Attach To Work Order, Allow Deletion From Work Order et Services.

Un nouveau formulaire est ouvert à tous les rôles. Pour le limiter, cochez les rôles dans son onglet User Access. Un formulaire de dossier peut aussi mettre en page les e-mails de mise à jour de statut envoyés au client du dossier : choisissez-le comme Status Email Template du workflow dans les Paramètres du workflow.

Formulaires financiers. Dans l’onglet User Access du formulaire, cochez les sociétés sous Select Companies et sélectionnez Update. Aucune société n’est cochée sur un nouveau formulaire financier : il n’est donc proposé nulle part tant que vous ne l’avez pas fait. Les utilisateurs choisissent parmi les formulaires actifs de la société qui ont le bon sous-type chaque fois qu’ils génèrent un document, si bien que la société a besoin d’au moins un formulaire de chaque sous-type qu’elle imprime : facture, avoir, devis, bon, facture fournisseur.

Les formulaires de rapport sont proposés dans chaque abonnement à un rapport. Les formulaires de parc sont proposés pour leur parc et leurs types de mouvement.

Pour ne plus utiliser un formulaire, désactivez Active dans Modify. Un formulaire utilisé, par exemple un formulaire à partir duquel des documents ont été générés, ne peut pas être supprimé.

Document Les utilisateurs le génèrent depuis Le PDF est conservé dans
Formulaire d’ordre de travail L’onglet Forms de l’ordre de travail : Generate ou Generate & Email. Les documents de l’ordre de travail.
Formulaire de dossier L’onglet Forms de n’importe quel ordre de travail du dossier. Avec un Entity Filter, l’utilisateur choisit l’entité sous Filter. Les documents du dossier.
Devis Generate sur un devis approuvé. L’onglet Documents du devis.
Facture, note de débit, avoir Pro-Forma, Approve, Generate Doc et Reverse Invoice sur la facture. L’onglet Files de la facture.
Bon d’encaissement ou de décaissement Generate Voucher sur un encaissement ou un paiement approuvé. Son onglet Documents.
Facture fournisseur Generate PDF sur une facture fournisseur validée. L’onglet Files de la facture fournisseur.
Document de parc Dans l’application pour appareils mobiles, la liste Forms d’un mouvement enregistré, ou automatiquement quand le mouvement est effectué, avec Auto-Generate. L’onglet Files du mouvement.
Rapport Un abonnement à un rapport de type Form Template PDF ou Plain Text (TXT). Envoyé par l’abonnement, par e-mail, FTP ou Web API.

Un formulaire d’ordre de travail ou de dossier n’est pas joint quand le workflow définit Do Not Attach To Work Order : il est téléchargé à la place. Un workflow peut aussi envoyer lui-même des formulaires d’ordre de travail : une action d’événement ou de champ de données de type Send Email, avec le contenu Form PDF, génère le formulaire à chaque exécution de l’action et l’envoie par e-mail, et Attach Document to WO en conserve une copie.

Chaque formulaire d’ordre de travail et de dossier généré est listé dans Admin > Logs > Form History, avec le numéro de référence qu’il a imprimé avec ##REFNO##. Les documents déjà générés conservent leur PDF si vous modifiez le formulaire par la suite.

Qui : pour générer un formulaire d’ordre de travail ou de dossier, il faut Generate Form dans la section Work Orders, et l’un des rôles du formulaire. Les pages financières demandent leurs propres autorisations, comme Generate dans la section Quotations ou Approve dans la section Invoices.

Ce que vous voyez Pourquoi, et que faire
Le formulaire n’est pas dans Select Form sur l’ordre de travail Il n’est pas actif, il n’est ni global ni ajouté au workflow, il est limité à des services que l’ordre de travail n’a pas, ou limité à des rôles que l’utilisateur n’a pas. Ou le rôle de l’utilisateur n’a pas Generate Form.
This form requires … to be completed Le Requires du formulaire dans l’onglet Forms du workflow : remplissez ce champ sur l’ordre de travail.
Le formulaire financier n’est pas dans Select Template Sa société n’est pas cochée, il n’est pas actif, ou son sous-type ou son paramètre Pro-forma/Final correspond à une autre sorte de document.
No ##WOID## attribute found. à l’enregistrement d’un formulaire de dossier Donnez à un élément du bloc répété le data-id ##WOID##.
Cannot delete Form in use Désactivez plutôt Active.