begin process at 2010 02 10 02:51:26
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Imprimante

 > CODEDLT

CODEDLT


 Information sur la source

Note :
Aucune note
Catégorie :Imprimante Classé sous :codebarre, imprimante, printer, dlt, lto Niveau :Débutant Date de création :21/07/2006 Date de mise à jour :20/02/2007 14:30:14 Vu / téléchargé :4 858 / 635

Auteur : fbalien

Ecrire un message privé
Site perso
Commentaire sur cette source (6)
Ajouter un commentaire et/ou une note

 Description

Porgramme permettant l'impression de code barre pour les cartouches de sauvegarde DLT et LTO
Pour l'utilisation voir le PDF


 Conclusion

Je n'ai pas utilisé Rave report car je trouve plus amusant de dessiner soit même les codes barre et je peux ainsi faire des codes de tailles voulues
Les codes barre pour les cartouches DLT IV fonctionnent
pour les LTO j'attends la mise en prod du nouveau robot de sauvegarde
Si vous voulez l'executable voir sur mon site

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  • codeDLT.bdsprojTélécharger ce fichier [Réservé aux membres club]8 908 octets
  • codeDLT.dprTélécharger ce fichier [Réservé aux membres club]Voir ce fichier2 181 octets
  • codeDLT.resTélécharger ce fichier [Réservé aux membres club]4 616 octets
  • FB_CodeDLT.pdfTélécharger ce fichier [Réservé aux membres club]151 081 octets
  • UfrmMaitre.dfmTélécharger ce fichier [Réservé aux membres club]9 413 octets
  • UfrmMaitre.pasTélécharger ce fichier [Réservé aux membres club]Voir ce fichier35 638 octets

Télécharger le zip


 Historique

23 juillet 2006 18:24:05 :
Mise à jour du code des fonctions - TfrmMaitre.getCode - TfrmMaitre.strDepartKeyPress - incValeur selon le remarques de fOxi
23 juillet 2006 18:24:21 :
Mise à jour du code des fonctions - TfrmMaitre.getCode - TfrmMaitre.strDepartKeyPress - incValeur selon les remarques de fOxi
20 février 2007 14:23:40 :
Correction bug de calcul décimal qui passait de 8 à 10
20 février 2007 14:30:15 :
Petite erreur de fichier Zip lors de la derniere MAJ

 Sources du même auteur

Source avec Zip AFFICHAGE DES INFODFS
Source avec Zip Source avec une capture MONITORING RESEAU PAR PING
Source avec Zip FBPDM LOGICIEL DE PRISE DE MAIN À DISTANCE
Source avec Zip EXECUTER EN TEMPS QUE
Source avec Zip EXTRACTION DE LA LISTE DES UTILISATEURS MEMBRES D'UN GROUPE

 Sources de la même categorie

TCPSERVER INTERCEPTION DES DONNÉES DE L'IMPRIMANTE par k.Lutchi
Source avec Zip Source avec une capture BELLE FACTURE SOUS FASTREPORT par aminedelphi
Source avec Zip COMMENT IMPRIMER par Zicson1
Source avec Zip IMPRESSION D'ÉCRAN AMÉLIORÉE par Lassal
Source avec Zip Source avec une capture GÉNÉRER DES PDF AVEC DELPHI ET PDF CREATOR par Delphiprog

 Sources en rapport avec celle ci

Source avec Zip CANVAS EN MILLIMÈTRE par barbichette
Source avec Zip Source avec une capture COMPOSANT CODE BARRE 39-EAN13-EAN8 par dvarrel
Source avec Zip Source avec une capture DELPHI +DBASE+ RAVEREPORT + CODEBARRE (PARTIE 1) par ada_azoul

Commentaires et avis

Commentaire de f0xi le 22/07/2006 00:37:54 administrateur CS

function TfrmMaitre.getCode( digit : char ) :Tcode ;
var
  index : integer;
const
  CharCase : string = '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ-. *$/+%';
begin
  index := pos(UpCase(Digit),CharCase);
  if index <> 0 then
     result := TabCode[index]
  else
     raise ERangeError.Create('"'+Digit+'" N''est pas un caractère valide');
end;


tu peu utiliser le type Single qui est bien mieux que le type réel :

TdimCode = record
  Longueur, Hauteur, // longueur Hauteur de l'étiquette (width, height)
  margeL, // marge gauche et droite (MarginLR)
  margeH, // Espace pour le texte (TextSpacing)
  LongueurCode, HauteurCode : single; // longeur,hauteur du code barre (CodeWidth,CodeHeight)
end;


procedure TfrmMaitre.strDepartKeyPress(Sender: TObject; var Key: Char);
begin
  key := upcase(key);
  if not(key in ['A'..'Z', '0'..'9', '-',' ','.','*','$','/','+','%',#8]) then
     key := #0;
end;

ou encore, pour eviter un set trop long

procedure TfrmMaitre.strDepartKeyPress(Sender: TObject; var Key: Char);
const
  CharCase : string = '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ-. *$/+%';
begin
  key := upcase(key);
  if pos(Key,CharCase) = 0 then
     key := #0;
end;


ta procedure incValeur est trop lourde aussi, y'a moyen de faire plus simple.

procedure incValeur(var strvaleur : string);
var
  c, index : integer;
  digit    : char;
  retenu   : boolean;
const
  CharCase : string = '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ-. *$/+%';
begin
  retenu := true;
  for c := 7 downto 2 do
      if retenu then begin
         digit  := strvaleur[c];
         retenu := false;
         index  := pos(digit,charcase);
         if index = 0 then
            raise ERangeError.Create('"'+digit+'" N''est pas un caractère valide');
         case index of
           1..8   : digit := charcase[index+1];
           9..15  : if rgIncrementation.ItemIndex = 0 then
                       digit := '0'
                    else
                       digit := charcase[index+1];
           16..35 : if rgIncrementation.ItemIndex <= 1 then
                       digit := '0'
                    else
                       digit := charcase[index+1];
           36     : digit := '0';
           else
             retenu := true;
         end;
         if not retenu then
            retenu := (digit = '0');
         strvaleur[c] := digit;
      end;
end;


la constante CharCase peut etre declarée globalement pour eviter de la recopier a chaque fois.


sinon, ça a l'air pas mal, code bien ecrit et commenté.

Commentaire de fbalien le 23/07/2006 18:27:16

Merci pour cette analyse fOxi

L’idée du tableau dans le quel chercher le code et très bien je l’avais déjà utilisé mais pour quoi pas ici là je cherche encor pour quoi je me suis compliqué le code comme çà

Dans la fonction Getcode çà pose un problème
Car tabCode va de 0 à 43 vue que index ne peut aller que de 1 à 44 cela crée un code barre erronée
Donc soit on modifie getcode result := TabCode[index-1] ou la déclaration de Tabcode ce que j’ai privilégié  tabCode : array[1..44]of Tcode =...

Par contre tel quel dans la fonction incvaleur çà marche pas
Il faut utiliser string = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. *$/+%'; en plaçant le 0 en premier

Commentaire de amiga68 le 25/07/2006 08:14:20

Euh... Ca plante à la compilation (Delphi 7 personal)

Ligne 406 : dessin.TextRect(recTexte ,strtemp);
[Erreur] UfrmMaitre.pas(406): Types incompatibles : 'Integer' et 'String'

Dans l'aide ==> Syntaxe Delphi :
procedure TextRect(Rect: TRect; X, Y: Integer; const Text: string);

Correction : procedure dessin.TextRect(recTexte ,0,0, strtemp); et ça marche !

Commentaire de fbalien le 25/07/2006 12:17:14

en effet petit souci de compatibilité avec delphi 2005 qui lui autorise
TextRect(Rect: TRect, X: Integer, Y: Integer, const Text: string); et
TextRect(var Rect: TRect, var Text: string, TextFormat: TTextFormat);

par contre en mettant extRect(recTexte ,0,0, strtemp); le texte s'affiche bien ??
car avec delphi 2005 je suis obligé de faire çà TextRect (recTexte ,recTexte.left,recTexte.Top ,strtemp);

Commentaire de calhoun le 16/08/2006 14:06:54

Je cherche un moyen d'imprimer des codes barre avec le texte en dessous et le motif du code barre de la forme suivante http://193.189.147.16/cmitlse/IMG/jpg/code_barre.jpg.

Il s'agit d'imprimer des codes barre pour un ROBOT de sauvegarde ESL9595.

Merci de votre aide.

Commentaire de emmanuelt le 10/10/2006 14:56:15

Bonjour,

auriez-vous la version compilée de votre soft qui m'interesse beaucoup ?

merci d'avance

Emmanuel

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Recuperer imprimante selectionnee [ par Tank01 ] Bonjour,Je suis entrain d'implémenter dans un programme, une procedure qui doit lancer un impression. ( jusque la, tout va:d)Avant de lancer cette imp Calage imprimante Matricielle [ par couf ] Bonjour à Tous,  Je vois déja les rires de certains qui vont dire mais c'est quoi ce matérielle de Dinausaure.:-DBref il ya quelques temps j'aurais mo [D7] Lister les résolution d'une imprimante [ par nitrique ] Bonjour à tous, J'arrive à charger les imprimantes installées sur le poste dans une combo de cette manière:for i:=0 to Printer.Printers.Count-1 do b Option Imprimante avec deux Bacs [ par kacola ] Bonjour,J'ai une imprimante Canon MP780 avec deux bacs ( "cassette" - "Chargeur automatique").J'ai besoin d'automatiser l'impression et donc entrer di Comment forcer les options d’impression d’une imprimante pour toutes applications Windows à partir d’un programme Delphi ? [ par neodelphi2008 ] Bonjour,Comment forcer les options d'impression d'une imprimante pour toutes applications Windows à partir d'un programme Delphi ?Je m'explique : dans Vider le cache des imprimantes ? [ par JulioDelphi ] Bonjour à tous,Voici ma situation :J'ai plusieurs imprimantes (réseau et/ou locales, peu importe), dans le panneau de configuration, imprimantes et té qreport et configuration de l'imprimante [ par delaio ] bonjour à tous, quand on appelle la procédure "printsetup" pour afficher la fenêtre de configuration d'imprimante, quickreport ne semble pas gérer les Impression sur canon 4600 [ par BF77170 ] Bonjour,Ma bonne imprimante PIXMA IP4000 m'a laché , helas, je l'ai donc plutot que de changer la tete remplacée par une IP4600, MAIS :sur cette machi Es que c'est possible de supprimer ou renommer une imprimante apartir de delphi [ par bazbazus ] bonjour a tous tous est dans la quesstion merci.


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,465 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales