Database Connector - cab Produkttechnik GmbH

publicité
Guide d'utilisation
Database Connector
2
2
Guide d’utilisation
Concerne les produits suivants :
Réf. article
Désignation
5580210
Port Ethernet Database Connector
5580212
Database Connector
Edition: 03/2009
Droits d’auteur
Cette documentation ainsi que sa traduction sont la propriété de cab.
Tout usage, représentation, reproduction ou traduction de ce manuel, intégral ou partiel à d’autres fins que celles
initialement prévues, nécessite au préalable une autorisation écrite de cab.
Rédaction
Pour vos questions ou suggestions veuillez vous adresser à cab technologies.
Actualité
Par l’évolution permanente, des différences peuvent survenir entre la documentation et le matériel.
La version actuelle est disponible sur le site internet : www.cab-technologies.fr
Conditions générales
Les livraisons et prestations sont soumises aux « Conditions Générales de Vente » de cab.
France
cab technologies s.a.r.l.
Z.A. Nord du Val de Moder
F-67350 Niedermodern
Téléphone +33 388 722 501
www.cab-technologies.fr
[email protected]
USA
cab Technology Inc.
87 Progress Avenue Unit #1
Tyngsboro MA, 01879
Phone +1 978 649 0293
www.cabtechn.com
[email protected]
www.cab.de
[email protected]
Espagne
cab España S.L.
Josep Pla 9, 6°, 2a
E-08304 Mataró (Barcelona)
Teléfono +34 937 414 605
[email protected]
Afrique du sud
cab Technology (Pty.) Ltd.
14, Republic Road
2125 Randburg
Phone +27 11-886-3580
[email protected]
© Copyright par cab
D’autres adresses de représentations cab sont disponibles sur simple demande.
Allemagne
cab Produkttechnik
GmbH & Co KG
Postfach 1904
D-76007 Karlsruhe
Wilhelm-Schickard-Str. 14
D-76131 Karlsruhe
Telefon +49 721 6626-0
Telefax +49 721 6626-249
Asie ‫!ࢸ!ٳ‬Ϸ!ϴ!ѧ
‫ה‬དྷШऋ‫޶׬‬ӋԤ३ϴѧ
cab Technology Co, Ltd.
ѮᢊѮѕᑪ‫ݖ‬ᐝѿҕҡၯΙࢲ!
Panchiao 220,Taipei,Taiwan
Ⴋၗ Phone +886 2 2950-9185
ᆩ֭!www.cabasia.net
ၚ୰[email protected]
Chine ྃᜥ
㺔ᣧĩམᗽĪ᩟ዦ჌ᔑྜဏ!
cab (Shanghai) Trading Co.,Ltd
ΰ੕ѿ‫۽‬Ԋՙၯ2299ᯜ11C60Ᏹ
᱓᯿ġPhone +86 21 6236-3161
ၚ୰[email protected]ġ
3
3
Sommaire
1
Présentation ..................................................................................................................................................... 4
2
2.1
2.2
Fonctionnement ............................................................................................................................................... 5
Schéma de fonctionnement de Database Connector Etendu ........................................................................... 5
Schéma de fonctionnement en mode asservi ................................................................................................... 6
3
3.1
3.2
Installation ........................................................................................................................................................ 7
Installation du client ........................................................................................................................................... 7
Installation du serveur ........................................................................................................................................ 7
4
4.1
4.2
4.2.1
4.2.2
4.3
4.4
Configuration .................................................................................................................................................. 10
Fonctionnement de base ................................................................................................................................. 10
Synchronisation de périphériques ................................................................................................................... 11
Ajout d’un périphérique maître......................................................................................................................... 12
Ajout d’un périphérique esclave ...................................................................................................................... 13
Syntaxe spécifique ........................................................................................................................................... 14
Enregistrement des évènements ..................................................................................................................... 15
5
5.1
5.2
5.3
Création d’une étiquette avec cablabel / codesoft ..................................................................................... 16
Activation de l’option Database Connector ..................................................................................................... 16
Création d’une requête .................................................................................................................................... 17
Création d’une variable avec le résultat d’une requête ................................................................................... 18
6
6.1
6.2
Création d’une étiquette en programmation directe JScript ..................................................................... 19
Liste des commandes ...................................................................................................................................... 19
Exemple ........................................................................................................................................................... 20
4
1
Présentation
Database Connector est un module permettant aux imprimantes cab d’accéder directement à des bases de
données externes via TCP/IP.
Il est possible, pour une même étiquette, d’accéder simultanément à plusieurs tables dans la base.
De même plusieurs imprimantes accèdent à la même base de données et ceci simultanément, assurant ainsi la
cohérence des données.
Il permet d’accéder à n’importe quel type de base de données via un driver ODBC (Open Database Connectivity)
ou ADO (ActiveX Data Object).
Les bases de données les plus courantes sont :
- Access
- SQL Server
- Oracle
- DBase
- Informix
- Paradox
- Foxpro
- ...
Database Connector est composé de deux modules distincts :
- SQLClient intégré dans l’imprimante.
- Le module serveur installé sur un PC.
!
Pour pouvoir utiliser Database Connector, SQLClient doit avoir été préalablement activé sur l’imprimante.
Pour les modèles d’imprimantes des Séries A / Hermes A, SQLClient se présente sous la forme d’une carte ethernet
spécifique.
Pour les modèles d’imprimantes des Séries A+ / Mach4 / PX / XD4, SQL client se présente sous la forme d’une
simple activation logicielle.
4
5
2
Fonctionnement
2.1
Schéma de fonctionnement de Database Connector Etendu
5
Chargement
du masque
4
9
Retour de la réponse
vers SQL Client
Remote Trigger
SQL Client
10
Õ
Ö
Informations demandées
par l’imprimante
1. Remote Trigger
2. SQL Client
1
6
Impression
de l’étiquette
Õ
Ö
5
DBServer effectue
une requête sur la
base de données
2
7
Réponse
de la base
de données
3
SGBD
Remote Trigger : fonction permettant de récupérer le masque et la quantité à imprimer à partir d’un OF.
SQL Client :
fonction permettant de récupérer toutes les informations nécessaires à l’impression dans
la base de données.
8
6
6
2
Fonctionnement
2.2
Schéma de fonctionnement en mode asservi
Ù
DB Connector / Log Service
Requêtes
Réponse
Trame
synchronisée
Base
de
données
7
3
Installation
3.1
Installation de la partie client sur l’imprimante
a) Pour les imprimantes des Séries A / Hermes A
Il vous suffit de monter la carte réseau additionnelle à l’arrière de l’imprimante.
b) Pour les imprimantes des Séries A+ / Mach4 / PX / XD4
Il faut procéder à l’activation du module Database Connector grâce à un fichier PPP qui vous sera fournit lors de
l’achat de Database Connector.
Cette activation s’effectue comme une mise à jour de firmware.
Pour cela vous pouvez soit utiliser l’utilitaire de mise à jour « cabFirmwareUpdater » en choisissant le type de mise
à jour PPP et en sélectionnant le port où est connectée l’imprimante, ou alors consulter la procédure de mise à jour
disponible sur notre site internet : www.cab-technologies.fr (rubrique Support & Téléchargements)
Vous pouvez vérifier si l’activation s’est faite à travers le menu « PPP => Statut court PPP » de l’imprimante.
3.2
Installation de la partie serveur sur le PC
La partie serveur de Database Connector doit être installée sur un PC qui fera office de serveur et qui permettra la
connexion à la base de données.
Insérer le CD-Rom qui vous a été fourni dans votre ordinateur. L’installation devrait démarrer automatiquement.
Si cela n’était pas le cas, double-cliquez sur le programme « Setup.exe » situé à la racine du CD.
Sélectionnez la langue d’installation du programme.
Si le service de log n’est pas installé, son installation va démarrer avant l’installation de Database Connector.
Ce service permet d’enregistrer tous les évènements relatifs à Database Connector. Il va permettre de vérifier les
éventuelles erreurs et le cas échéant de pouvoir les corriger.
7
8
3
Installation
Démarrage de l’installation et saisie des informations relatives à l’utilisateur du programme.
Choisissez le dossier d’installation du programme puis le dossier du menu démarrer.
Sélectionnez les tâches supplémentaires à réaliser par le programme d’installation puis vérifiez le résumé des options sélectionnées.
8
9
3
Installation
Progression de l’installation
Fin de l’installation.
9
10
4
Configuration
4.1
Fonctionnement de base
L’onglet « Général » permet de sélectionner la chaîne de connexion à la base de données, le port utilisé
par Database Connector ainsi que les paramètres relatifs à l’enregistrement des logs.
Le démarrage et l’arrêt du service se font à l’aide du bouton situé à côté du statut.
!
Si vous avez un pare-feu (firewall) sur votre ordinateur, il faut spécifiquement autoriser l’accès au port utilisé par
Database Connector (par défaut 1001). Si le port reste fermé le programme ne fonctionnera pas.
Choix du fournisseur pour la connexion à la base de données, suivant le type de base.
10
11
4
Configuration
4.2
Synchronisation de périphériques
En dehors de l’utilisation classique de DB connector, il est possible de synchroniser un ou plusieurs périphériques
par rapport à un périphérique maître.
Le périphérique maître est obligatoirement une imprimante cab dotée de l’option database connector.
Les périphériques associés ne sont pas nécessairement des imprimantes cab.
Pour pouvoir utiliser un périphérique non cab, il faut connaître la syntaxe de commande de ce périphérique et que
celui-ci soit accessible via TCP/IP.
Il est également à noter que cette syntaxe de commande doit pouvoir être stockée en base de données ou en fichier
et de ce fait rester en relation avec ce type d’utilisation (volume échangé, temps d’exécution de l’impression...).
Par exemple, les flux PCL ou Postscripts ne sont pas trop indiqués pour ce type d’utilisation. Il est également
possible de créer plusieurs associations.
Un périphérique esclave cab utilisé en association peut toujours être utilisé de manière autonome. Un périphérique
esclave voit son travail d’impression lié à celui du maître, mais le périphérique esclave peut également exécuter une
requête Database Connector (à condition qu’il possède également cette option).
Configuration des associations
La configuration des associations se fait dans l’onglet « association imprimantes ».
11
12
4
Configuration
4.2.1
Ajout d’un périphérique maître
Il faut dans un premier temps déclarer le périphérique maître. Pour cela il faut cliquer sur le bouton « + » au bas du
tableau Maître pour insérer un nouvel enregistrement.
Description
Adresse
Port
Mode ligne
sert simplement à nommer le périphérique maître.
adresse IP du périphérique maître.
port IP du périphérique maître (9100 par défaut).
désactivé par défaut, n’est utilisé que dans des cas très particuliers.
Quantité d’étiquettes
non documenté pour le moment
Lorsque la configuration du périphérique maître est validée, il est alors possible de définir un où plusieurs
périphériques associées.
La validation de la configuration se fait à l’aide de la coche verte et l’annulation avec la croix rouge.
12
13
13
4
Configuration
4.2.2
Ajout d’un périphérique esclave
Pour ajouter un périphérique esclave il suffit de cliquer sur le bouton « + » au bas du tableau Esclave (partie droite).
i
Il n’est pas possible d’ajouter un périphérique esclave si un périphérique maître n’a pas été préalablement définit.
Activer l’impression esclave
Description
Adresse
Port
Priorité
active / désactive l’association pour ce périphérique.
permet, par exemple, l’inactivation temporaire d’une association
nom du périphérique esclave
adresse IP du périphérique esclave
port IP du périphérique esclave
influence la priorité de traitement des tâches d’impression
permet d’influencer légèrement le débit des données entre les périphériques
les valeurs usuelles sont « normale » ou « inférieure à la normale »
les autres valeurs sont à réserver aux cas particuliers
Onglet « Périphérique »
Attente avant l’envoi des données valeur en millisecondes, permettant de légèrement décaler l’impression
Avant la tâche
séquence à envoyer avant la tâche d’impression, n’est exécuté qu’une fois
par job d’impression. Voir chapitre 3.3 pour les détails de syntaxe
Préfixe
séquence insérée avant chaque envoi de trame
Séparateur de ligne
utilisé comme séparateur de ligne. Si vide c’est la séquence CRLF qui est utilisée
Suffixe
séquence ajoutée à la fin de chaque trame
Avant déconnexion
séquence envoyée entre la fin du travail d’impression et la déconnexion
Onglet « Base de données »
La définition de l’impression envoyée au périphérique esclave peut être soit stockée dans un champ de base de
données, soit dans un fichier. En fonction de l’option choisie, il faudra soit définir la requête permettant de récupérer
la séquence, soit définir le chemin du fichier.
Il est également possible d’intégrer des variables, aussi bien pour la requête que dans le fichier.
Pour définir une variable il suffit d’utiliser la syntaxe suivante : <#NomDeVariable>
!
Il est absolument nécessaire que cette variable corresponde à un nom de champ et que ce nom de champ soit
définit dans le masque de l’imprimante maître, même si le périphérique maître n’utilise pas lui-même ce champ !
14
4
Configuration
4.3
Syntaxe spécifique
14
Les séquences utilisées par les périphériques incluent généralement des caractères non disponibles au clavier.
Pour spécifier ces caractères un codage spécifique est utilisé :
\a
Bip
\b
Retour arrière
\f
Form feed
\n
Line feed
\r
Retour chariot
\t
Tabulation
\v
Tabulation verticale
\\
\
\’’
’’
\’
’
\?
?
\xnn
Séquence hexadécimale
’nn’ représente le caractère sous forme hexadécimale
\0...\7
Séquence octale
Ce codage est utilisé pour les champs suivants :
Avant la tâche, Avant déconnexion, Séparateur de ligne, Préfixe, Suffixe.
Exemple d’utilisation : \x1bc\r\n
équivaut à ESCc + CR + LF
15
4
Configuration
4.4
Enregistrement des évènements
Database Connector enregistre chaque action effectuée. Cela permet notamment d’avoir un historique en cas de
problème ou d’erreur et ainsi d’en retrouver plus facilement la cause.
Toutes ces actions sont inscrites directement dans l’observateur d’évènements de Windows.
Il suffit donc de démarrer l’observateur d’évènements (Panneau de configuration => Outils d’administration =>
Observateur d’évènements) pour consulter cet historique.
15
16
5
Création d’une étiquette à partir de cablabel / codesoft
Les étiquettes utilisant Database Connector peuvent être réalisées directement avec les logiciels d’étiquetages
cablabel ou codesoft.
!
5.1
Seul cablabel R2 Pro, codesoft Pro et Entreprise permettent d’utiliser Database Connector.
Database Connector ne fonctionne qu’avec les imprimantes natives et ne fonctionne pas avec les pilotes Windows.
Activation de l’option Database Connector
Il suffit d’utiliser une imprimante native puis d’activer l’option Database Connector dans la configuration de
l’imprimante en saisissant l’adresse IP du PC où est installé la partie serveur.
Une fois l’adresse IP du serveur saisie, il va falloir créer la ou les requêtes.
Dans les exemples suivants nous reprendrons la table ci-dessous.
16
17
5
Création d’une étiquette à partir de cablabel / codesoft
5.2
Création d’une requête
Pour la création des requêtes il faut utiliser les variables libres de cablabel / codesoft.
Une fois la variable créée, placez-la sur l’étiquette en tant que texte.
En faisant un clique droit sur ce texte vous pouvez maintenant accéder à l’option « Options spécifiques ».
C’est dans les Options spécifiques de la variable libre que vous pouvez activer Database Connector et sélectionner
le type de variable (requête ou variable avec le résultat d’une requête).
En choisissant « Requête » on peut alors saisir directement la requête SQL.
Exemple :
SELECT * FROM Products WHERE ArtCode = {CodeArt}
Si l’on a besoin d’utiliser une variable issue de l’étiquette, il suffit d’utiliser le nom de cette variable en l’encadrant
avec des accolades {} et avec des guillemets simples s’il s’agit d’une chaîne de caractères.
Exemple :
i
{CodeArt} pour une variable représentant un entier dans la base de données
’{CodeArt}’ pour une variable représentant une chaîne de caractères dans la base de données
Vous pouvez également rendre cette variable invisible grâce à l’option « Objet invisible à l’impression » si vous ne
souhaitez pas qu’elle apparaisse sur l’étiquette imprimée, ce qui sera très souvent le cas.
17
18
5
Création d’une étiquette à partir de cablabel / codesoft
5.3
Création d’une variable avec le résultat d’une requête
Pour la création d’une variable avec le résultat d’une requête il faut toujours encore utiliser les variables libres de
cablabel / codesoft.
Une fois la variable créée, placez-la sur l’étiquette en tant que texte / code à barres ou image.
En faisant un clique droit sur ce texte / code à barres / image vous pouvez maintenant accéder à l’option « options
spécifiques ».
C’est toujours dans les Options spécifiques de la variable libre que l’on peut récupérer le résultat d’une requête SQL
en choisissant cette fois l’option « Variables ».
Il suffit alors de reprendre le nom de la variable libre contenant la requête SQL et de rajouter, séparé par une virgule,
l’index du champ que l’on veut récupérer. L’index du premier champ résultat est toujours 1.
Si l’on reprend notre table et notre requête précédente, l’index 1 représente donc le champ Artcode, l’index 2 le
champ Barcode, l’index 3 le champ ProdNameUs ...
Exemple :
Requete1,7
Requete1 est le nom donné à la variable libre qui contient la requête SQL.
7 est l’index du champ issue de la base de données (dans notre exemple le champ ProdNameIt)
18
19
6
Création d’une étiquette en programmation directe JScript
6.1
Liste des commandes
Ci-dessous la liste des commandes JScript spécifiques à l’utilisation de Database Connector.
Pour plus d’informations consultez notre manuel de programmation disponible sur notre site internet.
E SQL;Server_IP:Server_Port
Permet d’activer Database Connector en spécifiant l’adresse IP et le port du serveur.
Cette commande est à rajouter au début du fichier après la commande «S» pour la taille d’étiquette.
Server_IP : adresse IP du serveur Database Connector.
Server_Port : port du serveur Database Connector.
Exemple : E SQL;192.168.10.32:1001
Dans l’exemple l’adresse IP du serveur est 192.168.10.32 et le port 1001.
[SQL:Query]
Cette commande vient se rajouter derrière un champ texte ou code à barre.
La commande «E SQL...» doit bien sûr avoir été spécifiée précédemment.
Query : n’importe quelle requête SQL.
Exemple : T:Requete;10,15,0,3,5;[SQL:SELECT * FROM Products WHERE ArtCode={CodeArt}]
Sélectionne tous les champs de la table Products ou le champ ArtCode est égal au code article saisi par l’opérateur.
[SQLLOG:Query]
Même fonction que la fonction [SQL:Query], sauf que SQLLOG est exécuté seulement à l’impression de l’étiquette.
Ceci permet de faire un logging dans la base de données.
Query : n’importe quelle requête SQL.
Exemple : T;57.4,5.3,0,3,3.57,q100;[SQLLOG:UPDATE Products SET LastPrinted=’{Hour0}’ WHERE ArtCode={CodeArt}][I]
[SPLIT:Result,Index]
Cette commande vient se rajouter derrière un champ texte ou code à barre.
Result : nom du champ où est stocké le résultat de la requête.
Index : index du champ de la requête à récupérer (1 est le premier champ).
Exemple : T:Product;23.1,13.8,0,3,3.57,q100;[SPLIT:Requete,3]
Dans l’exemple on récupère le troisième champ de la requête «Requete».
i
Pour plus d’informations sur la programmation directe, vous pouvez consulter notre manuel de programmation
disponible sur notre site internet.
19
20
6
Création d’une étiquette en programmation directe JScript
6.2
Exemple complet
L’exemple suivant est distribué avec Database Connector. Vous pourrez le retrouver dans le dossier nommé
« Exemples » qui se trouve dans le dossier d’installation du programme.
(par défaut C:\Program Files\cab technologies\Database Connector\Exemples)
Il s’utilise avec la base Access située dans le même dossier.
mm
zO
J
O R,S,P
H100,0,T
D 0.0,0.0
Sl1;0.0,0.0,42.0,42.0,100.0,100.0,1
E SQL;192.168.10.32:1001
T:CodeArt;25.3,4.7,0,5,3.2,q100;[?:Code article ?,2,,,L200]
T1.5,4.7,0,5,3.2,q100;Code article :
T2.5,13.8,0,3,3.57,q100;Product:
T2.5,19.0,0,3,3.57,q100;Produit :
T2.5,23.9,0,3,3.57,q100;Produkt:
T56.6,12.7,0,3,3.57,q100;Quantité :
T56.6,18.5,0,3,3.57,q100;Poids :
T:Requete;40.8,5.3,0,3,3.57,q100;[SQL:SELECT * FROM Products WHERE ArtCode={CodeArt}][I]
T:Update;57.4,5.3,0,3,3.57,q100;[SQL:UPDATE Products SET LastPrinted=’{Date0}’ WHERE ArtCode={CodeArt}][I]
T:Insert;72.2,5.3,0,3,3.57,q100;[SQL:INSERT INTO PRINT (ArtCode,PrintDate) VALUES ({CodeArt}, ‘{Date0}’)][I]
B:Barcode;35.8,28.0,0,CODE128,12.6,0.25;[SPLIT:Requete,2]
T:Product;23.1,13.8,0,3,3.57,q100;[SPLIT:Requete,3]
T:Produit;23.1,19.0,0,3,3.57,q100;[SPLIT:Requete,4]
T:Produkt;23.1,23.9,0,3,3.57,q100;[SPLIT:Requete,5]
T:Quantite;76.1,12.7,0,3,3.57,q100;[SPLIT:Requete,11]
T:Poids;84.0,5.3,0,3,3.57,q100;[SPLIT:Requete,12][I]
T:Date0;3.1,39.1,0,3,3.57,q100;[DAY02]/[MONTH02]/[YYYY]
T:Formule0;76.1,18.5,0,3,3.57,q100;[*:Poids,1][D:4,1][R:m]
A [?]
20
Téléchargement