Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 24

Hybrid View

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    271

    [VB6] Creare un codice a barre progressivo

    Salve a tutti,
    Ho l'esigenza di creare per ogni record di una tabela un codice a barre. Dovrebbe funzionare così: Ho un campo contatore sulla tabella e con il valore del contatore devo creare un codice a barre corrispondente, in modo da poterlo stampare e poi rileggere con un lettore di codici a barre.
    - Qualcuno sa come fare a creare un codice del genere?
    - Quanti caratteri dovrebbe essere questo codice?

    Spero di essere stato abbastanza chiaro.
    Grazie anticipate a tutti
    Signori si nasce! E io modestamente, lo nacqui!!!
    Totò

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2014
    residenza
    Vicenza
    Messaggi
    318
    Se è per solo uso interno e i caratteri non sono molti, consiglio di usare il tipo CODE-39, perchè basta il font relativo, basta aggiungere un asterisco prima e dopo il codice, e non c'è più niente da fare. Il codice non ha lunghezza fissa e quindi pùò essere un numero di caratteri che vuoi tu.
    Ad esempio, se il mio codice da stampare è 1234, basta impostare il font corretto, mandare in stampa la stringa *1234* e viene fuori un codice a barre pronto per essere letto dal lettore.
    Se usi altri tipi di codici a barre (ad esempio EAN13, EAN8, interleaved 2/5 o altro) devi anche calcolarti i checksum e le barre di spaziatura.
    Se è solo per un uso interno non credo ne valga la pena

    Sergio

  3. #3
    Quote Originariamente inviata da SirJo Visualizza il messaggio
    Se è per solo uso interno e i caratteri non sono molti, consiglio di usare il tipo CODE-39, perchè basta il font relativo, basta aggiungere un asterisco prima e dopo il codice, e non c'è più niente da fare. Il codice non ha lunghezza fissa e quindi pùò essere un numero di caratteri che vuoi tu.
    Ad esempio, se il mio codice da stampare è 1234, basta impostare il font corretto, mandare in stampa la stringa *1234* e viene fuori un codice a barre pronto per essere letto dal lettore.
    Se usi altri tipi di codici a barre (ad esempio EAN13, EAN8, interleaved 2/5 o altro) devi anche calcolarti i checksum e le barre di spaziatura.
    Se è solo per un uso interno non credo ne valga la pena

    Sergio
    Ciao Sergio, grazie per la risposta gentilissimo

    comunque prima ho scritto che vertevo più verso EAN perchè mi è sembrato di capire che fosse più "sicuro", nel senso con meno probabilità che il lettore faccia errori, è effettivamente così?
    Per quanto riguarda il checkdigit non è un problema calcolarlo mentre per le "barre di spaziatura" a cosa ti riferisci? Allo spessore della barra unitaria?

    PS. un'altra domanda: i lettori barcode quanti tipi di codifiche leggono? Possono leggerne più di una/tutte oppure ogni lettore è studiato per leggere QUELLA codifica e basta? E nel caso fosse così (cioè un lettore => una codifica) come faccio a capire quale codifica legga il suddetto lettore? Lo trovo scritto da qualche parte o devo fare dei test specifici?

    Grazie!

  4. #4
    mi sono dimenticato di chiedere una cosa:
    supponiamo che usi la codifica EAN8, io intendo generare i codici basandomi esclusivamente sull'ID del prodotto nel database, quindi il prodotto con ID = 1 avrà il codice "00000017" ove 7 è il checkdigit.

    Quello che mi chiedo è: ma il codice "00000017" esiste o mi da errore?

    Nel senso che:
    secondo le specifiche EAN (da quanto ho capito), di tutte le 8 cifre ce ne sono un tot che andrebbero riservate all'identificazione dell'azienda, un altro tot all'identificazione del prodotto, un'altro tot al suo peso/prezzo ecc ecc. Siccome il codice in questione è di uso interno, non mi interessa identificare nè il prezzo, nè il peso, nè tantomeno l'azienda; rimanendomi quindi solo l'ID mi sembra logico (umanamente parlando) utilizzare tutte le 7 cifre disponibili (a parte il checkdigit) per questo unico campo. Secondo te il lettore mi darà qualche tipo di errore?

    Grazie!
    Vincenzo

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2014
    residenza
    Vicenza
    Messaggi
    318
    Se è per uso interno puoi anche tralasciare codici con checksum, io utilizzo il CODE39 da oltre 20 anni e non ho mai avuto un problema di lettura. Ovviamente la stampa del codice a barre deve essere fatta bene, altrimenti se le linee non sono ben definite o sono troppo vicine è chiaro che la lettura non viene eseguita bene. Una volta un cliente aveva ridotto tantissimo la larghezza del codice a barre e usando una stampante a getto di inchiostro accadeva che le linee bianche non erano ben definite, ma a parte questo non ho mai avuto problemi. Io addirittura uso anche dei codici a barre circolari, da applicare sui CD e DVD ma le letture avvengono senza problemi.

    I lettori odierni leggono tutte (o quasi) le specifiche, di solito comunque puoi programmarli per attivare o disattivare certi tipi di codici a barre.

    I codici che puoi usare sono tutti quelli che vuoi tu, quindi anche il 00000017, basta ovviamente che sia codificato nel database e che il programma quindi sia in grado di trovarlo.
    Per il resto (codice azienda, codice reparto, codice prodotto eccetera) puoi fare come vuoi tu.

    Sergio

  6. #6
    Grazie per la risposta Sergio mi hai chiarito le idee,
    a questo punto CODE39 sembra anche a me la soluzione migliore, un ultimo dubbio:
    per quanto riguarda la stampa verrà usata, come nel caso che hai riportato, una normale stampante a getto di inchiostro e la dimensione delle etichette sarà molto ridotta (massimo 2 o 3 cm di lunghezza per neanche 1 cm di altezza).
    Il tuo cliente di quanto aveva ridotto la dimensione dei codici così che non venissero più letti?

    Grazie!

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2014
    residenza
    Vicenza
    Messaggi
    318
    Dipende tutto da quanti caratteri devi stampare.
    Direi che la prima cosa da fare è fare delle prove di stampa, prima ancora di realizzare il programma.
    Tu di quanti caratteri necessiti ??

  8. #8
    Quote Originariamente inviata da SirJo Visualizza il messaggio
    Dipende tutto da quanti caratteri devi stampare.
    Direi che la prima cosa da fare è fare delle prove di stampa, prima ancora di realizzare il programma.
    Tu di quanti caratteri necessiti ??
    Siccome mi serve di codificare solo l'id dei prodotti penso di partire da un *1*, *2*, ... il problema è che quest'azienda non ha un numero limitato di prodotti, nel senso che rivende oggetti "unici", ripescati in altre aziende/magazzini e non fatti in serie, quindi ogni volta che ricarica il magazzino tutti i nuovi prodotti sono quasi sempre nuovi anche per il database di conseguenza il numero dei caratteri sara sempre in crescita col passare dei mesi

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2014
    residenza
    Vicenza
    Messaggi
    318
    Ok, ma devi comunque avere una idea di quanti ID potranno essere.
    Ad esempio, pensi che si possa arrivare al milione oppure no ??
    Se un milione è sufficiente, allora prova a stampare un codice *999999* e vedi se la larghezza è sufficiente e la qualità di stampa va bene.
    Direi che il primo passo è di trovare il font (se vuoi te lo invio io) e di fare qualche prova di stampa.

    Sergio

  10. #10
    Ciao Sergio apprezzo molto l'interessamento,

    comunque non credo che possa arrivare al milione, o per lo meno non subito!
    Io per stare tranquillo pensavo ad un codice a 7 cifre massimo quindi in teoria il più lungo sarebbe *9999999* (dubbio: ma "*" conta come carattere? Quindi *9999999* sarebbero 9 caratteri contando 2 "*" o mi sbaglio?)

    Comunque per quanto riguarda la realizzazione dei codici (nel senso di immagini da stampare) non userò VB6, il gestionale che sto realizzando in realtà è agganciato ad un sito web quindi gestisco tutto da PHP e jQuery, ho già studiato diversi script per realizzare questi codici in teoria ora devo solo stamparne uno e vedere come va..giusto?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.