Pag. 1 di 7 Questo è una breve guida su come creare un proprio applicativo che utilizzi l OCX Prgfm1985ELA E un progetto in Visual Basic 6.0, per cui è destinato ai programmatori che utilizzano tale ambiente di sviluppo. E costituito da un unico Form Il suo codice di compone di 90 righe. E molto banale. Il suo principale scopo è gestire gli eventi dell OCX per la gestione dei codici a barra. Ne più ne meno di come fa il programma DriverEla2.exe normale. Questa è una versione ridotta, non è interfacciabile con l OCX printer fiscale, non può comandare la stampa delle chiusure fiscali sul registratore. E una versione ridotta ai minimi termini, rilasciata in formato sorgente, da cui ogni persona che abbia un minimo di conoscenze della programmazione in VB 6,0 si può creare l applicativo che più gli piace. Non è un programma inutile, già con questo scheletro di applicazione possiamo creare un applicativo per gestire una frontiera cassa tipo supermercato: Il registratore legge tramite il suo barcode collegato alla sua seriale, invia la richiesta al PC, l OCX fm1985ela intercetta le richieste crea gli eventi per la richiesta dei dati dei codici a barra letti, il nostro applicativo risponde con i dati richiesti. Alla chiusura dello scontrino viene generato l evento di chiusura scontrino che intercettato dal nostro applicativo provvede ad aggiornare il magazzino.
Pag. 2 di 7 Note tecniche: Questo applicativo non richiede il programma DriverEla2.exe, è un suo sostituto con un ridotto set di funzioni. Non è compatibile con l OCX printer fiscale. E nostro compito creare il codice/archivi per la gestione dei codici a barra. Nota: Non è che dobbiamo creare il codice dal nulla, ma interfacciare questo scheletro con un nostro applicativo già esistente. Ricordiamo: L OCX utilizza le funzioni ELA base, non utilizza le funzioni gestionali 1, per cui se si è interessati alla stampa dei rapporti degli incassi divisi per reparti / gruppi / Iva. O si eseguono su registratore (sempre collegato al PC 2 ) oppure uscendo da questo applicativo e usando l applicativo DriverEla2.exe standard da cui si possono richiedere la stampa dei rapporti. Attenzione: tranne che per il rapporto fiscale (10 X) questi rapporti vengono simulati dall applicativo che stampa degli scontrini non fiscali con i dati interni all applicativo delle vendite eseguite. Tenete ben presente queste cose, ad esempio i totali delle vendite dei reparti, sono i campi Pezzi e Totale del record del singolo reparto presente nell archivio dell applicativo. 1 Il registratore è completamente pilotato dal computer, stampante, i due display, la tastiera. Vengono gestite delle funzioni assenti in una macchina base, cosi come non vengono gestite delle funzioni presenti nella macchina base. C è la possibilità di gestire vendite non fiscali all esterno dello scontrino (esempio: tabacchi) con la limitazione di non utilizzare sconti all interno dello scontrino. C è la possibilità per piccole attività che non vogliono acquistare un secondo scanner di utilizzare quello presente sul registratore attivando la modalità terminale, in cui tutti i codici letti vengono inviati al PC in emulazione di tastiera. 2 Se non si è ridefinita la tastiera da PC, con la sequenza SHIFT + V.T. CASSA (premendo il tasto X si ha la stampa di un help su uno scontrino).
Pag. 3 di 7 Volendo potete accedere direttamente all archivio.mdb utilizzato dall OCX, di default il suo nome è Scontrini.mdb ed è posizionato nella directory dell OCX, la system di windows. Aprendo la tabella Reparti, il campo 3 Numero indica il reparto, Pezzi i pezzi movimentati, Totale l incasso del reparto. Ultima nota, Abbiamo notato che la presenza di un antivirus rallenta notevolmente l esecuzione dell OCX per cui o disabilitate l antivirus 4 o se possibile inibite l antivirus il controllo dei dati inviati/ricevuti sulla porta seriale del registratore e tutte le operazioni eseguite dall applicativo. 3 Altri campi, sono Descrizione, che indica la descrizione stampata sullo scontrino. Prezzo, il prezzo reimpostato di vendita. Max il massimale sulla singola vendita, MaxX il massimale come risultato di una moltiplicazione. 4 Cosa migliore da fare, l OCX è molto pesante e la presenza dell a ntivirus può letteralmente inchiodare l apllicativo che deve avere una pronta risposta alle richieste del registratore.
Pag. 4 di 7 Funzionamento pratico: Lanciato l applicativo selezioniamo la porta a cui è collegato il registratore e clicchiamo sul bottone Apri seriale Se il programma è in modalità Demo viene visualizzata una finestra per l input della password, se non se non la si ha, confermare l esecuzione del programma come Demo Per uscire dal programma in maniera corretta occorre, chiudere prima la connessione con Chiudi porta e poi solo allora cliccare sul bottone Chiudi per uscire dal programma.
Pag. 5 di 7 Una volta aperta la porta seriale l applicativo deve gestire solamente 3 eventi, in realtà ne bastano solo due Primo evento: Private Sub CTR_RichiestaDatiPLU(PLU As String, Reparto As String, Prezzo As String, Descrizione As String) Che è un evento generato dall OCX per richiedere i dati associati al codice a barra PLU, il programma riporta sempre gli stessi valori Private Sub CTR_RichiestaDatiPLU(PLU As String, Reparto As String, Prezzo As String, Descrizione As String) Reparto = 1 Prezzo = "0,1" Descrizione = "Descrizione prodotto" End Sub Secondo evento: Private Sub CTR_ScaricoVenditePLU(ByVal Elementi As Integer, PLU() As String, Pezzi() As String, Incasso() As String) Che è l evento generato dall OCX per permettere al nostro applicativo di scaricare i prodotti venduti dal nostro magazzino. L evento nell esempio si limita a visualizzare in una lista i codici a barra movimentati Private Sub CTR_ScaricoVenditePLU(ByVal Elementi As Integer, PLU() As String, Pezzi() As String, Incasso() As String) Dim i As Integer Dim Stringa As String Dim Testo As String Lista.Clear Lista.AddItem Now & " Scarico" Lista.AddItem "Bar-Code movimentati: " & Elementi Lista.AddItem "------------------------------" 'Lista.AddItem"123456789012345123451234567890" Lista.AddItem "BAR-CODE Pezzi Incasso" For i = 0 To Elementi - 1 ' codice a barra (PLU)
Pag. 6 di 7 Stringa = Mid(PLU(i) & " ", 1, 15) Testo = Stringa ' pezzi movimentati Stringa = Right(" " & Pezzi(i), 5) Testo = Testo & Stringa ' Incasso Stringa = Right(" " & Incasso(i), 10) Testo = Testo & Stringa Lista.AddItem Testo Next End Sub Nel caso di una vendita con codici a barra è riempita la lista con i codici movimentati: A noi basta solo modificare il codice nei due eventi nella maniera a noi più comoda. Cliccando sul pulsante Setup entriamo al Setup interno dell OCX
Pag. 7 di 7 da cui possiamo modificare le sue impostazioni, come la configurazione dei reparti: