Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Registratore di cassa

415 views
Skip to first unread message

Daniele

unread,
Feb 21, 2017, 6:27:53 AM2/21/17
to
Ciao a tutti,
sebbene la questione e' aperta a tutti, la pongo quasi in modo "personale"
ad Emanuele Desideri.

Alla fine ho trovato una ditron zip usata (quindi defiscalizzata) su cui
fare le dovute prove di invio dati al registratore di cassa.
Driver + installa zione zip fatta, il demo della ditron vede la zip e,
sembra, tutto a posto.

Procedo con il progetto test composto da un'unica form con un'unico bottone
ed il componente TCoEcrCom per gestire i dati diretti al registratore.

formcreate

I:=CR1.Open('Port=1'); // E' nella porta 1
if I<>0 then
sleep(5); // Brackpoint giusto per leggere il codice
di errore

Nell'onclick del bottone i vari esempi

procedure TForm1.btn1Click(Sender: TObject);
var ResultECR : WideString;
begin
// Manda il comando con reparto 1, 2 articoli senza codice al prezzo di
2.20, la stringa passa al rc ResultECR=OK
CR1.EcrCmd('VEND REP=1,QTY=2,PRE=2.20',ResultECR);

// Stessa riga ma anziche' il reparto c'e' il codice articolo (quello che
interessa a me), la stinga arriva al rc che "bippa" e
// ResultECR= 'ERRORE 16/26 : L''ECR SEGNALA ERRORE 26'
CR1.EcrCmd('VEND ART=98456237,QTY=2,PRE=2.20',ResultECR);

// Infine dato che con la prima riga per chiudere la vendita devo premere
il pulsante sulla tastiera, sto provando con l'aggiunta di CHIUS
CR1.EcrCmd('VEND REP=1,QTY=2,PRE=2.20',CHIUS,ResultECR);


end;

Con questo comando

CR1.EcrCmd('VEND REP=1,QTY=2,PRE=2.20',CHIUS,ResultECR);

ovvero con la sola aggiunta di CHIUS, ResultECR ritorna vuoto ('') e il
comando non arriva al rc.

Ecco le due domande
1) Dato che lavoro con i codici EAN (quindi codice articolo e non reparto),
come posso inserirli nella stringa (ART non va bene) e farla arrivare al rc?
2) Dato che CHIUS non va bene, come faccio a chiudere lo scontrino ed ad
azionare la taglierina?

Grazie

Ciao

Daniele

PS: Ho tentato di impiegare tutti i comandi utilizzati nel file di esempio
(che qui includo) ma con scarsi risultati.
Inoltre gli stessi risultati li ottengo con il file demo (exe) incluso
nel pacchetto dei driver.
Se pero' il file viene mandato al rc, lo scontrino viene stampato
correttamente e tagliato (pero' con il reparto e non il codice articolo).

File di test

; Esempio di scontrino di vendita inviato ad ECR mediante WINECRCOM
; -----------------------------------------------------------------

CLEAR ;preme il tasto C

CHIAVE REG ;conferma che la cassa si trovi in assetto REGistrazione

VEND REP=1,PREZZO=0.20 ;vendita semplice a reparto 1
VEND REP=2,QTY=6,PREZZO=0.25 ;vendita su reparto con quantita' non
unitaria
VEND REP=3,PRE=0.30,DES='CANCELLERIA' ;vendita su reparto con descrizione

PERCA ALI=50, SUBTOT ;Sconto del 50% sul subtotale

CHIUS T=1

Daniele

unread,
Feb 21, 2017, 6:32:13 AM2/21/17
to
Ciao a tutti ancora,
un problema risolto .....
I comandi devono andare uno alla volta al rc.
In questo modo

CR1.EcrCmd('VEND REP=1,QTY=2,PRE=2.20',ResultECR);
CR1.EcrCmd('CHIUS T=1',ResultECR)

si totalizza e si attiva la taglierina.

L'unico problema rimane la descrizione articolo senza reparto o l'ibrido
(entrambi).

Grazie

Ciao

Daniele

Emanuele Desideri

unread,
Feb 21, 2017, 10:32:30 AM2/21/17
to
Daniele ci ha detto :
> Ciao a tutti ancora,

Ciao Daniele, mi chiedevo giusto giusto qualche giorno fa come stessi
procedendo :)
> un problema risolto .....
> I comandi devono andare uno alla volta al rc.
> In questo modo
>
> CR1.EcrCmd('VEND REP=1,QTY=2,PRE=2.20',ResultECR);
> CR1.EcrCmd('CHIUS T=1',ResultECR)
>
> si totalizza e si attiva la taglierina.
>

Perfetto

> L'unico problema rimane la descrizione articolo senza reparto o l'ibrido
> (entrambi).

Ehm...aspè, chiariscimi una cosa:
Non riesci ad inviare la descrizione dell'articolo al RC oppure vuoi
inviare il codice EAN e ti aspetti che la cassa conosca descrizione e
reparto?

nel primo caso è molto semplice:

CR1.EcrCmd('VEND REP=1,QTY=2,PRE=2.20,DES='+QuotedStr(Descrizione)+';',
ResultECR)

NB non credo tu possa non indicare il reparto.
NB2 il reparto (solitamente concordato con utente finale e tecnico RC)
può essere differenziato per Aliquota iva (punto vendita con prodotti
con diverse aliquote e no ventilazione dell'iva) oppure per categoria
di prodotto o chi più ne vuole più ne metta, quindi in base
all'esigenza del utente finale ti invito a "pensare" ad una gestione
dei reparti nell'applicativo.


nel secondo devi caricare preventivamente gli articoli sul RC (che la
cassa chiama PLU), ma se non per esigenze specifiche, ti sconsiglio
questa strada.

> Grazie
>
> Ciao
>
> Daniele

Ciao e buon lavoro!

--
Emanuele Desideri

Daniele

unread,
Feb 22, 2017, 3:55:12 AM2/22/17
to
Ciao Emanuele,

>> L'unico problema rimane la descrizione articolo senza reparto o l'ibrido
>> (entrambi).

> Ehm...aspè, chiariscimi una cosa:
> Non riesci ad inviare la descrizione dell'articolo al RC oppure vuoi
> inviare il codice EAN e ti aspetti che la cassa conosca descrizione e
> reparto?

Ci sono due casistiche differenti.
La prima e' omettere il reparto perche' il reparto non c'e'.
Opure, ragionando al contrario, dato che il reparto non c'e' lo posso
considerare "reparto 1".
Per quanto riguarda l'EAN, ovviamente non mi aspetto che la cassa sappia
quale prodotto sia associato all'ean, quello lo prendo dal DB.

> CR1.EcrCmd('VEND REP=1,QTY=2,PRE=2.20,DES='+QuotedStr(Descrizione)+';',
> ResultECR)

Grazie per la dritta, il problema e' questo conado
CR1.EcrCmd('VEND QTY=2,PRE=2.20,DES='+QuotedStr(Descrizione)+';',
ResultECR);
Dove ResultECR da 'ERRORE 1/13 : ERRORE DI SINTASSI 13 : MANCA REPARTO O
ARTICOLO'

E il problema sta proprio qui !
Se non c'e' il reparto ma indico l'articolo ....... non va (errore
precedente).
Se invece ci sono entrambi, stampa solo l'articolo.
Se devo visualizzare entrambi, l'articolo lo devo mettere come descrizione.

>NB non credo tu possa non indicare il reparto.
A questo punto lo penso anch'io.

> ti invito a "pensare" ad una gestione dei reparti nell'applicativo.
Wow mi sopravvaluti !!!!!

> Ciao e buon lavoro!
Grazie, tengo informato ng sui progressi !!!

Daniele


Daniele

unread,
Feb 22, 2017, 8:43:36 AM2/22/17
to
Ciao Emanuele,
dopo aver provato alcuni file di esempio ho concluso (a titolo
esclusivamente personale, quindi puo' essere non corretto) che il buon ecr
per poter emettere uno scontrino deve avere un riferimento obbligatorio.
Questo riferimento puo' essere il reparto o un articolo.
E qui c'e' la fregatura.
L'articolo non e' un articolo qualunque ma bensi' un articolo
precedentemente "caricato" nel ecr.
Se non e' caricato il comando ART non funziona.

A questo punto devo capire se, e se si come, sia possibile assegnare al
reparto la stringa vuota (''), cosi' da non stampare la dicitura REPARTO x.

Si continua a provare .....

Ciao

Daniele


Emanuele Desideri

unread,
Feb 22, 2017, 10:17:06 AM2/22/17
to
Nel suo scritto precedente, Daniele ha sostenuto :

> A questo punto devo capire se, e se si come, sia possibile assegnare al
> reparto la stringa vuota (''), cosi' da non stampare la dicitura REPARTO x.

Daniele scusami, sarà che è ora di un altro caffè, ma io non ho capito
qual'è il risultato che vuoi ottenere. :-?

--
Emanuele Desideri

Daniele

unread,
Feb 23, 2017, 3:48:37 AM2/23/17
to
Ciao Emanuele,


> Daniele scusami, sarà che è ora di un altro caffè,
No, nessun caffe' ....

> ma io non ho capito qual'è il risultato che vuoi ottenere. :-?
Molto semplice, se non hai reparti definiti (come nel mio caso) il risultato
da ottenere e' similare a (lascia perdere l'intestazione e il resto) :

1 x 12.25 123456789012 12.25
2 x 0.90 56789012345 1.80
Totale 14.05

ABCDEF12A34B567C

o, in alternativa

1 x 12.25
123456789012 12.25

2 x 0.90
56789012345 1.80

Totale 14.05

ABCDEF12A34B567C

Adesso lo scontrino e'

1 x 12.25
REPARTO 1 12.25

2 x 0.90
REPARTO 1 1.80

Totale 14.05

E' il reparto 1 che non si deve vedere.

Grazie di tutto

Ciao

Daniele

Emanuele Desideri

unread,
Feb 23, 2017, 4:13:51 AM2/23/17
to
Scriveva Daniele giovedì, 23/02/2017:

> E' il reparto 1 che non si deve vedere.

Ma presumo che si veda perchè non invii una descrizone dell'articolo.
Decidi tu se come descrizione inviare la descrizione "testuale" o il
codice articolo o quello che ti pare.
NB questa scelta dipende da quanto vuoi che lo scontrino sia
"parlante".

Buona giornata!

--
Emanuele Desideri

Daniele

unread,
Feb 23, 2017, 5:58:04 AM2/23/17
to
Ciao Emanuele,

> Ma presumo che si veda perchè non invii una descrizone dell'articolo.
> Decidi tu se come descrizione inviare la descrizione "testuale" o il
> codice articolo o quello che ti pare.
> NB questa scelta dipende da quanto vuoi che lo scontrino sia "parlante".

Il caffe' l'avevo bisogno io .....
Hai ragione, con la descrizione il reparto non viene indicato e mette la
descrizione inserita.
In piu' nella sintassi del comando mancava un virgola che dava problemi.

> Buona giornata!
Bhe grazie al tuo intervento direi che potrebbe andar bene !!!!
Ora posso terminare l'interfacciamento .....

Grazie ancora

Ciao

Daniele

Daniele

unread,
Feb 24, 2017, 6:19:32 AM2/24/17
to
Ciao Emanuele,
per il momento chiudiamo questa conversazione con le ultime notizie (per
me) avute proprio dai tecnici software della Ditron.

Il file di esempio della programmazione ora e' sbagliato, manca la prima
riga che e' azzgio tipo=1/2/3 perche' PRIMA di cambiare orario si deve
azzerare l'ecr.
Il cambio data va preso con le pinze da orologiaio.
La data puo' essere cambiata in avanti (superiore ad oggi) e MAI indietro
(inferiore ad oggi).
Questo significa che, se per qualsiasi motivo, per errore si imposta la data
del 28/02/2017 (mentre oggi e' il 24/02/2017), non si puo' piu' rimediare
all'errore (perche' per motivi fiscali non si puo' fare).

Le funzioni shortcut NON sono documentate, per farti un esempio il cambio
ora e'

CR1.EcrCmd('inp num=12, term=147',ResultECR);

dove 12 sta per queste operazioni su tastiera.

4 + CHIAVE
13 volte SCELTA
CONFERMA

Mi hanno detto che gli altri shortcut (ce ne sono diversi) vanno scoperti
secondo le necessita' e che, forse, li mettono nella prossima versione del
file .ini

Credo che queste informazioni ti fossero gia' note, magari possono essere
utili anche ad altri.

Grazie per la pazienza e l'aiuto che mi hai dato.

Ciao

Daniele

PS: In quale regione risiedi?


Emanuele Desideri

unread,
Feb 24, 2017, 10:02:43 AM2/24/17
to
Daniele ha detto questo venerdì :

> Credo che queste informazioni ti fossero gia' note, magari possono essere
> utili anche ad altri.

ehm...in realtà non proprio, nel senso che non mi sono MAI volutamente
cimentato in operazioni che a mio avviso DEVE fare il tecnico della
cassa (vedi cambio della data e/o orario) ma grazie di averle
condivise.
> Grazie per la pazienza e l'aiuto che mi hai dato.

ma figurati, il senso del newsgroup è proprio questo, chissà quante
volte ho ricevuto aiuto, per una volta che posso dare anzichè chiedere!

> PS: In quale regione risiedi?

Lazio

ciao!

--
Emanuele Desideri

Daniele

unread,
Feb 25, 2017, 4:27:20 AM2/25/17
to
Ciao Emanuele,

> ehm...in realtà non proprio, nel senso che non mi sono MAI volutamente
> cimentato in operazioni che a mio avviso DEVE fare il tecnico della cassa

Diciamo che quando cambia l'orario legale/solare e viceversa, l'ora la
dobbiamo cambiare noi.
E dato che questa operazione avviene l'ultimo sabato di marzo/ottobre,
secondo te quando ci si ricorda di cambiare l'ora?
Pensavo di automatizzare il tutto .....

>> PS: In quale regione risiedi?
> Lazio

Quando passo di li (!) ti offro quel caffe' !!!

Ciao

Daniele

dino.i...@gmail.com

unread,
Jun 2, 2017, 7:11:48 AM6/2/17
to
Ciao Daniele, ho fatto un software per la gestione della vendita a banco e ora vorrei collegare il pc alla cassa. Fra le varie ricerche sono approdato su questo post. La mia domanda è: dove posso trovare la libreria TCoEcrCom?
grazie

Daniele

unread,
Jun 7, 2017, 8:34:17 AM6/7/17
to
Ciao Dino,

> Ciao Daniele, ho fatto un software per la gestione della vendita a banco e
> ora vorrei collegare il pc alla cassa.
> Fra le varie ricerche sono approdato su questo post. La mia domanda è:
> dove posso trovare la libreria TCoEcrCom?
> grazie

Che tipo di gestionale hai sviluppato ??
Sai sono interessato a tutte le novita' (basta sapere il campo d'interesse).
Per quanto riguarda la libreria la trovi con il registratore di cassa (ora
quadra, la zip non la fanno piu').
Tuttavia il servizio tecnico della Ditron e' molto attivo e collaborativo,
dichiarandoti uno sviluppatore una mano te la possono dare.
Se pero' non hai la cassa !!! (questa e' stata la mia difficolta' .....
trovare una cassa defiscalizzata di un'attivita' chiusa !!! e non piu'
utilizzabile se non per i test).

Se puoi..... facci sapere come sta andando.

ciao

Daniele



dino.i...@gmail.com

unread,
Aug 18, 2017, 12:31:36 PM8/18/17
to
Ciao Daniele, ho sviluppato un gestionale per un punto vendita che fa da cassa, gestione del magazzino con il suggerimento degli ordini per gli articoli in fine scorta, gestione degli ordini con carico della merce, gestione degli articoli, contabilità con fatture vend, fatture acq, preventivi, ddt, statistiche e scadenziario, anagrafica clienti e fornitori ecc... Visto che avevo fretta ho trovato un software che mi fa da middleware tra il mio programma e la cassa, ho solo dovuto dire al software il modello di cassa e quale cartella monitorare. L'unica cosa che devo fare è generare in file di testo formattato in un certo modo in una cartella prestabilita, il software monitora quella cartella e quando vede un file di testo lo prende, lo elabora e lo manda alla cassa. Il venditore mi ha assicurato che è compatibile con tutte le cassa. Io per ora l'ho provato su due modelli e funziona a meraviglia.
Saluti. Dino.

Daniele

unread,
Aug 22, 2017, 4:02:24 AM8/22/17
to
Ciao Dino,
hai fatto un bel software !!

> Visto che avevo fretta ho trovato un software che mi fa da middleware tra
> il mio programma e la cassa
E' sempre della Ditron o altra casa ?
Se altra casa puoi dire di piu'?
La zip/quadra ha la possibilita' di leggere in una directory un file e poi
trasformarlo in fiscale, pero' (sembra) che ogni misuratore fiscale ha il
suo interprete.
Se quel software risolve le diversita' tra i modelli ...... potrebbe
interessare !!!

Grazie

Ciao

Daniele

dino.i...@gmail.com

unread,
Aug 22, 2017, 11:44:43 AM8/22/17
to
Grazie
0 new messages