Principes et finalité
Sommaire | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
La finalité est de rediriger des impressions d'étiquettes classiques vers une impression déléguée à une application externe dédiée.
...
Ces données exportables dépendent principalement du programme d’impression et plus généralement de la famille d’impression.
...
Application externe
L’application externe permet de concevoir facilement un design d'étiquette personnalisé (modèle étiquette).
L’application externe a la charge d’aspirer le fichier export étiquette pour en faire une impression au bon modèle et sur la bonne imprimante, en utilisant les données métier transmises.
Etiquettes Etiquettes de réservation
Faire un premier cas d’implémentation du connecteur étiquette.
...
Pour activer l’enchainement à l’impression lors de la saisie réception fournisseur.
...
Familles d’impression
Le paramétrage du connecteur étiquette s’appuie sur la notion de famille impression déjà utilisée pour paramétrer des redirections d’imprimantes.
La famille d’impression sert à définir un environnement de données publiques utilisables pour définir un contenu d'étiquette.
Familles Impression étiquettes
Dans l’ERP sont prédéfinies plusieurs familles destinées aux impressions d'étiquettes:
...
Données disponibles par famille impression
Famille impression | Programme impression | Données publiques |
---|---|---|
ETIQ_FOU | GTPPSLR200 Impression étiquettes réservation | GTSLR200I1 |
Codes traitement
Le connecteur étiquette s’appuie sur la notion de code traitement (voir chapitre dédié) déjà utilisée pour le configurateur d’articles. Les codes traitement sont utiles pour personnaliser plus facilement le contenu d’un fichier export d'étiquette.
Code traitement pour connecteur étiquettes
Des codes traitement sont livrés à titre d’exemple dans la visite guidée
...
Pour les distinguer des codes traitement destinés au configurateur, la notion de langage a été introduite.
Actuellement 2 langages
Code langage | Libellé |
---|---|
CFG | Traitement pour configurateur |
ETI | Traitement pour connecteur étiquette |
Le choix du langage permet de préciser l’usage du code traitement et le domaine lexical autorisé lors de l’analyse et de la compilation.
Les fonctions autorisées pour le langage connecteur étiquette sont :
Fonction | Description | Paramètres |
---|---|---|
ETI_Export_Debut | Initialise un fichier export étiquette | MIMPETAT : instance de paramètre état par famille (doit être chargé par le programme d’impression) |
ETI_Export_Ligne_Ecriture | Ajoute une ligne dans le fichier | Ticket : Identifiant dans liste des exports à traiter |
ETI_Export_Champ_Ecriture | Ajoute un champ dans la ligne courante | Ticket : Identifiant dans liste des exports à traiter |
ETI_Export_Fin | Enregistre le fichier export étiquette dans sa destination finale et supprime les fichiers temporaires | Ticketfichier : identifiant fichier export étiquette initialisé |
Info |
---|
Le séparateur par défaut utilisé pour séparer les champs dans le fichier est la tabulation |
Code variable
Dans les exemples livrés dans la visite guidée , on utilise deux variables
...
TicketFichierPlat pour identifier le fichier export étiquette
LigneFichierPlat pour contenir la ligne entête de fichier
Données publiques
Ces données doivent être initialisées par le programme d’impression
Donnée | Description |
---|---|
LCT_MIMPETAT | Contient une instance de la table des paramètres états par famille. Chargée par le programme d’impression en fonction du contexte d’impression et de l'état cible |
LCT_ETICONNECTEUR | Structure de travail du connecteur comportant les champs IMPWINCHN : nom imprimante client Windows destinataire de l’impression |
Code traitement pour étiquette réservation
Bloc de code |
---|
TicketFichierPlat= ETI_Export_Debut (LCT_mImpEtat )
(SI) TicketFichierPlat<> 0 (ET) TicketFichierPlat<> - 1
;Fichier initialisé
;Ecriture du contenu
; Ligne entete
lignefichierplat= "@Label;@Printer;@Nbex,ref;sref1;sref2;designation;sref1_lib;sref2_lib;Numero_Lot;Numero_Colis;LotFournisseur;Quantite;Affaire;unite_travail"
ETI_Export_Ligne_Ecriture (TicketFichierPlat, lignefichierplat)
; champs etiquette
ETI_Export_Champ_Ecriture (TicketFichierPlat, LCT_mImpEtat.LabelCod )
ETI_Export_Champ_Ecriture (TicketFichierPlat, LCT_Eticonnecteur.ModImp )
ETI_Export_Champ_Ecriture (TicketFichierPlat, 1 )
ETI_Export_Champ_Ecriture (TicketFichierPlat, GTSLR200I1.Ref )
ETI_Export_Champ_Ecriture (TicketFichierPlat, GTSLR200I1.Sref1 )
ETI_Export_Champ_Ecriture (TicketFichierPlat, GTSLR200I1.Sref2 )
ETI_Export_Champ_Ecriture (TicketFichierPlat, GTSLR200I1.Des )
ETI_Export_Champ_Ecriture (TicketFichierPlat, GTSLR200I1.Lib (1 ) )
ETI_Export_Champ_Ecriture (TicketFichierPlat, GTSLR200I1.Lib (2 ) )
ETI_Export_Champ_Ecriture (TicketFichierPlat, GTSLR200I1.Serie )
ETI_Export_Champ_Ecriture (TicketFichierPlat, GTSLR200I1.ColiNo )
ETI_Export_Champ_Ecriture (TicketFichierPlat, GTSLR200I1.SerieExt )
ETI_Export_Champ_Ecriture (TicketFichierPlat, GTSLR200I1.StQte )
ETI_Export_Champ_Ecriture (TicketFichierPlat, GTSLR200I1.Affaire )
ETI_Export_Champ_Ecriture (TicketFichierPlat, GTSLR200I1.RefUn , dernier = 1 )
;transport du fichier et liberation
ETI_Export_Fin (TicketFichierPlat)
(FinSi) |
Précisions techniques
Les fonctions publiques autorisées dans les code traitement du connecteur étiquette sont déclarées dans le module GTTMETICODETRAIT
A5PMCODETRAIT
Extension fonctions pour ne pas être spécialisées configurateur.
Tenir compte du langage traitement pour la déclaration du source include adapté
Langage | Include |
---|---|
CFG | gttcCfgCodeTrait.dhsp |
ETI | gttcEtiCodeTrait.dhsp |
Ajout nouvelles instructions du code traitement pour le parcours d’une liste
Instruction | Finalité | Exemple |
---|---|---|
LISTEDEBUT | se positionner en début d’une liste | (LISTEDEBUT)(LCT_Eticonnecteur.ListeEtiquette) |
ELEMENTSUIVANT | délivre l'élément suivant dans une liste | (TANTQUE) (ELEMENTSUIVANT) (LCT_Eticonnecteur.ListeEtiquette , GT020T1 ) |
A5PMLEX
Ajout fonctions pour gérer le langage (Set_LanguageCode et Get_LanguageCode
Déplacement déclarations domaine lexical par langage dans un source include A5TCLEX
A5TMCHKCODETRAIT
Ajout contrôle champ LanguageCode
Ajout fonctions de nommage source et objet diva générés en fonction du langage
Compute_MCODETRAIT_Field_NomSource et Compute_MCODETRAIT_Field_NomObjet
GTPMETICODETRAIT
Fonctions à invoquer dans le programme d’impression d'étiquettes
Fonction | Description | Paramètres |
---|
Fonction | Description | Paramètres |
---|---|---|
Executer_Traitement | Execute le code traitement | CODETRAITCOD : code traitement à executer |
ETI_Connecteur_Preparation | Prépare un export d'étiquette selon le contexte d’impression posé par l’appelant. | ImpFamCod : Code famille impression |
ETI_Connecteur_AjoutEtiquette | Ajoute un élément étiquette dans la liste LCT_EtiConnecteur.ListeEtiquette | ETI_ENREG : Instance enregistrement qui dépend du programme d’impression |
ETI_Fin_Edition | Met en forme un compte-rendu de génération étiquettes | MIMPETAT : instance paramètre état par famille RECAP_ETIQNB : compteur nombre d'étiquettes générées fourni par le programme d’impression |
Etiquette article
Deuxième cas d’implémentation du connecteur étiquette.
La première application externe cible est NiceLabel
...
Le deuxième modèle d’étiquette implémenté est l'étiquette article.
Impression étiquette article
Par défaut et en l’absence de paramétrage connecteur étiquette , on utilise toujours l’impression Divalto classique définie dans un masque d’impression .
...
Export étiquette article
Pour , en lieu et place de l’impression , exporter le contenu de l'étiquette, à destination d’une application externe, il faut mettre en place le paramétrage du connecteur étiquette.
On construit un seul fichier pour la sélection d’articles .
Un récapitulatif confirme que la générations des étiquettes s’est bien déroulée
...
Le contenu du fichier dépend du code traitement executé.
Bloc de code |
---|
@LABEL @PRINTER @NBEX REF INDICE SREF1 SREF2 DESIGNATION UNITE_VENTE DEVISE PRIX_UNITAIRE PRIX_PAR PROMOTION
ETIQ_GTPP020 MonImprimanteWindows 1 X1000025 Chassis mécano-soudé remplisseus 3210330017585 EUR 0,0000 0,000 1 |
Paramétrage état par famille
Pour activer l’export étiquette lors de l’impression, il faut créer une entrée dans la table des paramètres états par famille
...
Voir le chapitre dédié à l'étiquette de réservation (plus haut) pour des explications détaillées sur le paramétrage.
Etiquette contenant WMS
Troisième cas d’implémentation du connecteur étiquette.
La première application externe cible est NiceLabel
...
Le troisième modèle d’étiquette implémenté est l'étiquette de contenant WMS.
Impression étiquette WMS contenant
Par défaut et en l’absence de paramétrage connecteur étiquette , on utilise toujours l’impression Divalto classique définie dans un masque d’impression.
Exemple impression
Export étiquette WMS contenant
Pour, en lieu et place de l’impression, exporter le contenu de l'étiquette, à destination d’une application externe, il faut mettre en place le paramétrage du connecteur étiquette.
On construit un seul fichier pour la sélection de contenants.
Un récapitulatif confirme que la générations des étiquettes s’est bien déroulée.
Le contenu du fichier dépend du code traitement exécuté.
Paramétrage état par famille
Pour activer l’export étiquette lors de l’impression, il faut créer une entrée dans la table des paramètres états par famille.
...
Voir le chapitre dédié à l'étiquette de réservation pour des explications détaillées sur le paramétrage.
Noms imprimantes
Il est nécessaire de transmettre à l’application externe l’identifiant de l’imprimante de destination.
Mais le code modèle imprimante de Divalto peut être insuffisant pour désigner une imprimante locale du client qui peut ne servir qu'à la station d’impression d'étiquettes locale et pas du tout pour des impressions provenant de programmes Divalto.
On créé donc une table de paramétrage pour donner la correspondance entre le modèle imprimante Divalto et l’imprimante windows de la station d’impression locale chez le client final.
Fonctionnement
Indiquer un nom externe pour l’imprimante Divalto, celui qui permettra à l’application externe de la reconnaître.
...
Le programme d’impression charge le bon modèle d’imprimante et la fonction de préparation de la génération des étiquettes charge automatiquement le nom windows s’il est paramétré, dans les données publiques du connecteur étiquette.