1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies. En savoir plus.
  2. Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !
    Rejeter la notice

INFO [CODE] Imprimante thermique Interlec

Discussion dans 'Windev' créé par viruha, Juin 26, 2018.

  1. viruha

    viruha Member

    Inscrit:
    Jan 23, 2018
    Messages:
    30
    J'aime reçus:
    25
    bonjour je voudrais partager un code que j'ai déjà fait il y a un certain temps.
    C'est l'impression d'une étiquette avec un code-barres sur une imprimante thermique Interlec par le biais d'un port com, un doute peut consulter.


    Code (Windev):
    etiqueta is string
    etiqueta = ""
    etiqueta +=  "<STX><ESC>C<ETX>"
    etiqueta +=  "<STX><ESC>P<ETX>"
    etiqueta +=  "<STX>E4;F4<ETX>"
    etiqueta +=  "<STX>H0;o470,50;f3;c25;h20;w20;d0,30<ETX>"
    etiqueta +=  "<STX>L1;o120,50;f3;l750;w5<ETX>"
    etiqueta +=  "<STX>B2;o113,150;f3;c1,0;h135;w2;i1;d0,24<ETX>"
    etiqueta +=  "<STX>I2;h1;w1;c20<ETX>"
    etiqueta +=  "<STX>L3;o420,50;f3;l750;w5<ETX>"    
    etiqueta +=  "<STX>H4;o400,70;f3;c25;h15;w15;d0,30<ETX>"
    etiqueta +=  "<STX>H5;o400,410;f3;c25;h15;w15;d0,30<ETX>"
    etiqueta +=  "<STX>H6;o400,650;f3;c25;h15;w15;d0,30<ETX>"
    etiqueta +=  "<STX>W7;o400,60;f3;w2;l250;h50<ETX>"
    etiqueta +=  "<STX>W8;o400,400;f3;w2;l150;h50<ETX>"
    etiqueta +=  "<STX>W9;o400,640;f3;w2;l100;h50<ETX>"
    etiqueta +=  "<STX>H10;o355,100;f3;c25;h10;w10;d0,30<ETX>"
    etiqueta +=  "<STX>H11;o355,450;f3;c25;h10;w10;d0,30<ETX>"
    etiqueta +=  "<STX>H12;o355,620;f3;c25;h10;w10;d0,30<ETX>"
    etiqueta +=  "<STX>L13;o330,50;f3;l750;w5<ETX>"
    etiqueta +=  "<STX>H14;o320,50;f3;c25;h15;w10;d0,30<ETX>"
    etiqueta +=  "<STX>H15;o267,50;f3;c25;h15;w10;d0,30<ETX>"
    etiqueta +=  "<STX>H16;o210,50;f3;c25;h15;w10;d0,30<ETX>"
    etiqueta +=  "<STX>H17;o153,50;f3;c25;h15;w10;d0,30<ETX>"
    etiqueta +=  "<STX>H18;o267,170;f3;c25;h15;w10;d0,30<ETX>"
    etiqueta +=  "<STX>H19;o210,170;f3;c25;h15;w10;d0,30<ETX>"
    etiqueta +=  "<STX>H20;o153,170;f3;c25;h15;w10;d0,30<ETX>"
    etiqueta +=  "<STX>H21;o267,450;f3;c25;h15;w7;d0,30<ETX>"
    etiqueta +=  "<STX>H22;o267,600;f3;c25;h15;w10;d0,30<ETX>"

    //CARGA DE DATOS
    etiqueta +=  "<STX>R<ETX>"
    etiqueta +=  "<STX><ESC>E4<ETX>"
    etiqueta +=  "<STX><CAN><ETX>"
    etiqueta +=  "<STX>" + EDT_NombreProducto + "<CR><ETX>"
    etiqueta +=  "<STX>" + EDT_CodigoProducto+EDT_Lote+EDT_UnidadesxCaja  + "<CR><ETX>"
    etiqueta +=  "<STX>" + EDT_CodigoProducto + "<CR><ETX>"
    etiqueta +=  "<STX>" + EDT_Lote + "<CR><ETX>"
    etiqueta +=  "<STX>" + EDT_UnidadesxCaja + "<CR><ETX>"
    etiqueta +=  "<STX>Producto<CR><ETX>"
    etiqueta +=  "<STX>Lote<CR><ETX>"
    etiqueta +=  "<STX>Unid. x Caja<CR><ETX>"
    etiqueta +=  "<STX>" + EDT_Compania + "<CR><ETX>"
    etiqueta +=  "<STX>Cod. Int.:<CR><ETX>"
    etiqueta +=  "<STX>Fec. Vto.:<CR><ETX>"
    etiqueta +=  "<STX>Ord. Env.:<CR><ETX>"
    etiqueta +=  "<STX>" + EDT_CodigoInterno + "<CR><ETX>"
    etiqueta +=  "<STX>" + EDT_FechadeVencimiento + "<CR><ETX>"
    etiqueta +=  "<STX>" + EDT_OrdenEnvasado + "<CR><ETX>"
    etiqueta +=  "<STX>Cod. Disprofarma:<CR><ETX>"
    etiqueta +=  "<STX>" + EDT_CodigoDisprofarma + "<CR><ETX>"
    etiqueta +=  "<STX><RS>" + EDT_CantidadImpresiones + "<ETB><ETX>"

    // Open COM
    LineCom is boolean
    LineCom =

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (RADIOB_COM), 2000, 2000)
    IF LineCom = True THEN
        // Configure COM: Rate 2400, even parity,
        // 8 data bits, 1 stop bit
        //sParameter(1, 2400, 1, 8, 0)
        //sParameter(1, 2400, 1, 7, 0)
        // Configuring I/O
        //sParameter(1, 2400, 2, 7, 0, True, True, True)
        // Rest of process...
        // Close COM
     
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (RADIOB_COM),etiqueta)
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (RADIOB_COM))
    ELSE
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("Error abriendo puerto")
    END
     
     
    Tags:
    dema, Fakirato, joker et 1 autre personne aiment ça.
  2. suenodesign

    suenodesign Well-Known Member
    MEMBRE WX

    Inscrit:
    Jan 1, 2018
    Messages:
    507
    J'aime reçus:
    732
    Merci @

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    pour ce partage.

    Je te propose de créer un Etat avec dimensions personnalisées [Celles de ton étiquette]

    et d'imprimer l'état normalement avec iImprimeEtat

    Et informe nous des résultats.
     
    Amariaeh et joker aiment ça.
  3. viruha

    viruha Member

    Inscrit:
    Jan 23, 2018
    Messages:
    30
    J'aime reçus:
    25
    Essayez de faire cela avec un rapport créé dans windev, mais n'atteignent jamais la vitesse qui est nécessaire dans ce type d'imprimante, l'assurance de leur manque d'expérience.
     
  4. postmanwindev

    postmanwindev Member
    MEMBRE WX

    Inscrit:
    Mar 30, 2018
    Messages:
    105
    J'aime reçus:
    23
    Est il possible d’imprimer un etat en port com ?
     
  5. popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,884
    J'aime reçus:
    1,532

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Est il possible d’imprimer un etat en port com ?
    Cliquez pour agrandir...
    a l'origine le port USB est basé sur un port com.
    dès que windows a une imprimante quelque soit le port on peut imprimé dessus avec windev.
    ici c'est une imprimante spécifique et

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    envoie un buffer directement vers le port com.
    car il a constater que cela fonctionnait mal via les états (voir le 3eme post)
     
    #5 popoy, Juil 5, 2018
    Dernière édition: Juil 5, 2018
    Fakirato apprécie ceci.
  • postmanwindev

    postmanwindev Member
    MEMBRE WX

    Inscrit:
    Mar 30, 2018
    Messages:
    105
    J'aime reçus:
    23
    A tester hhhh
     
  • Amariaeh

    Amariaeh Member

    Inscrit:
    Jan 7, 2018
    Messages:
    31
    J'aime reçus:
    9

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Merci @

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    pour ce partage.

    Je te propose de créer un Etat avec dimensions personnalisées [Celles de ton étiquette]

    et d'imprimer l'état normalement avec iImprimeEtat

    Et informe nous des résultats.
    Cliquez pour agrandir...
    Bonjour.
    J'ai créé un état avec dimension 8*5 cm et j'ai lancé l'impression avec iImprimeEtat après avoir choisi Imprimante termique bixolon de Samsung.
     
  • viruha

    viruha Member

    Inscrit:
    Jan 23, 2018
    Messages:
    30
    J'aime reçus:
    25
    si je réussis à imprimer avec ireport, mais le problème était dans les copies.
    cette imprimante imprime beaucoup d'étiquettes en quelques secondes, l'imprimante est préparée puis crache littéralement toutes les étiquettes .
    Avec ireport est à chaque copie, comme si c'était une feuille de papier, l'imprimante se prépare à imprimer une étiquette, et continue de sorte étiquette par étiquette.
    sans ireport 60 tags en 10 secondes
    avec 3 ou 4 étiquettes ireport en 10 secondes
    il y a sûrement un moyen de le faire avec ireport mais je ne sais pas ce que j'ai découvert.
     
    Fakirato apprécie ceci.
  • casaoui

    casaoui New Member

    Inscrit:
    Juin 8, 2018
    Messages:
    2
    J'aime reçus:
    0

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Merci @

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    pour ce partage.

    Je te propose de créer un Etat avec dimensions personnalisées [Celles de ton étiquette]

    et d'imprimer l'état normalement avec iImprimeEtat

    Et informe nous des résultats.
    Cliquez pour agrandir...
    et comment faire pour la longueur pour stopper l'imprimante a la fin du ticket et pas a la fin de l'etat ?? et merci d'avance
     
  • wd_newbie

    wd_newbie New Member

    Inscrit:
    Avr 11, 2018
    Messages:
    5
    J'aime reçus:
    10
    J'ai eu quelques expériences avec les imprimantes Brother à étiquettes ou imprimante thermique de tickets (je ne me souviens plus de la marque) , mais c'est vrai que la gestion de la longueur, c'est galère ...

    Ce qui fonctionnait le mieux dans mon cas, c'est d'imprimer directement avec les fonctions d'impression ( iImprime() / iPosX / iPosY() / etc.) et de gérer la hauteur dans mon code selon les infos a mettre dans le ticket.

    Pour simplifier la maintenance, le code est contenu dans une table de scripts et je le compile à la volée avant de l'envoyer a l'imprimante avec Compile(), avec un mini éditeur de script dans l'appli, tu peux modifier ce que tu imprimes, si tu veux ajouter une image ou autre.

    C'est vrai que l'avantage des tickets et étiquettes , ce n'est pas trop compliqué, juste quelques infos et logos, donc assez facile à gérer, même sous forme code

    Olivier
     
  • Partager cette page

    Chargement...