PrintF esempio di scontrino

di il
48 risposte

48 Risposte - Pagina 3

  • Re: PrintF esempio di scontrino

    Salve, prova a dire, e ognuno di noi fara' del proprio meglio
    salutoni romagnoli
    --
    Andrea
  • Re: PrintF esempio di scontrino

    Ho sviluppato un gestionale e vorrei capire come interfacciare lo stesso alla stampante fiscale.
    Il protocollo di connessione dovrebbe essere xonxoff ma leggevo che con la stampante RCH PRINTF! c’è la possibilità di interfacciarmi tramite richieste POST in HTTP. È corretto? Sapreste spiegarmi come funziona ?
    Grazie
  • Re: PrintF esempio di scontrino

    Salve,
    si, e' possibile... e' necessario impostare il dispositivo in modo da da abilitare il web service interno, dopodiche' potrai inviare dei comandi POST che contengono un "blocco" xml contenente i comandi che vuoi inviare, ed il web service, nella response, ti restituira' i risultati ed eventuali altre risposte laddove presenti...
    i comandi da utilizzare sono i medesimi usati sia per l'interfacciamento diretto XON/XOFF che tramite il a versione che si appoggia sulla libreria proprietaria RCH "multidriver.dll".

    esiste un manuale "specifico" per il collegamento via web service
    io dispongo della versione 03/2019 allineato alla versione di firmware 3.5.0... l'assistenza regionale (emilia romagna) mi ha recentemente indicato che tale versione sia quella piu' aggiornata, ma sinceramente ritengo non sia vero visto che e' passato piu' di 1 anno dal suo rilascio, e questo anche per il firmware...
    salutoni romagnoli
    --
    Andrea
  • Re: PrintF esempio di scontrino

    Ciao a tutti, ho un piccolo problemino con il web service della print f RCH.
    Riesco a stampare lo scontrino ma subito dopo quando passo il file xml per recuperare l’ultimo numero documento emesso mi restituisce sempre errorCode 20.
    Il file xml è così composto
    <?xml version="1.0" encoding="UTF-8"?>
    <Service>
    <cmd>=C453/$0</cmd>
    </Service>

    Sbaglio qualcosa ?

    Grazie
  • Re: PrintF esempio di scontrino

    Ciao, qualcuno ha già apportato le modifiche relative alla Lotteria? Esiste un firmware aggiornato e relativo manuale?
  • Re: PrintF esempio di scontrino

    Salve a tutti,
    noto con dispiacere che dall'ultima domanda posta non ci sono stati aggiornamenti nella discussione.
    Nella speranza che qualcuno abbia nuove informazioni a riguardo chiedo anch'io se è stato aggiornato il manuale di protocollo RCH per PrintF dopo la ver. 12., se sì è possibile avere il link ?
    Chiedo questo per le nuove modifiche relative alla lotteria dello scontrino.
    Grazie in anticipo.
    Ciao
  • Re: PrintF esempio di scontrino

    Salve a tutti,
    vorrei riuscire ad utilizzare la stampante Printf! direttamente da browser utilizzando appunto il webservice http://[indirizzo IP STAMPANTE]/service.cgi.

    In pratica ho questa pagina php ospitata nel dominio "esempio.it" per inviare i comandi alla stampante tramite POST all'indirizzo locale 192.168.1.9 della stampante.
    <?php 
    $ipAddr = "192.168.1.9";
    $xmlCommand = '<?xml version="1.0" encoding="UTF-8" ?>'; 
    $xmlCommand .= "<Service>";
    $xmlCommand .= "<cmd>=K</cmd>";
    $xmlCommand .= "<cmd>=o</cmd>";
    $xmlCommand .= '<cmd>="/(SCONTRINO NON FISCALE DI PROVA:)</cmd>';
    $xmlCommand .= '<cmd>="/()</cmd>';
    $xmlCommand .= '<cmd>="/(DESCRIZIONE 1 MAX 32 CARATTERI)</cmd>';
    $xmlCommand .= '<cmd>="/()</cmd>';
    $xmlCommand .= '<cmd>="/(TEST BARCODE)</cmd>';
    $xmlCommand .= '<cmd>="/$8/(04100320154500005152)</cmd>';
    $xmlCommand .= '<cmd>="/(                               )</cmd>';
    $xmlCommand .= '<cmd>="/(       FINE SCONTRINO          )</cmd>';
    $xmlCommand .= '<cmd>=o</cmd>';
    $xmlCommand .= "<\Service>";
    
    ?>
    
    <form target="myIframe" action="http://<?php echo $ipAddr;?>/service.cgi" method="POST" enctype="application/xml">
    <textarea name="xml" ><?php echo $xmlCommand;?></textarea>
    <input type="submit" value="esegui test di stampa" >
    <iframe name="myIframe" ></iframe>
    </form>

    La stampante mi restituisce errore 101... che sul manuale non è documentato...

    Secondo voi dove sbaglio?

    Ho provato ad inviare i dati anche tramite ajax/javascript ma il browser mi blocca le connessioni Cross Domain e non sò come aggirare l'ostacolo...
  • Re: PrintF esempio di scontrino

    fuxas ha scritto:


    Salve a tutti,
    vorrei riuscire ad utilizzare la stampante Printf! direttamente da browser utilizzando appunto il webservice http://[indirizzo IP STAMPANTE]/service.cgi.

    In pratica ho questa pagina php ospitata nel dominio "esempio.it" per inviare i comandi alla stampante tramite POST all'indirizzo locale 192.168.1.9 della stampante.
    <?php 
    $ipAddr = "192.168.1.9";
    $xmlCommand = '<?xml version="1.0" encoding="UTF-8" ?>'; 
    $xmlCommand .= "<Service>";
    $xmlCommand .= "<cmd>=K</cmd>";
    $xmlCommand .= "<cmd>=o</cmd>";
    $xmlCommand .= '<cmd>="/(SCONTRINO NON FISCALE DI PROVA:)</cmd>';
    $xmlCommand .= '<cmd>="/()</cmd>';
    $xmlCommand .= '<cmd>="/(DESCRIZIONE 1 MAX 32 CARATTERI)</cmd>';
    $xmlCommand .= '<cmd>="/()</cmd>';
    $xmlCommand .= '<cmd>="/(TEST BARCODE)</cmd>';
    $xmlCommand .= '<cmd>="/$8/(04100320154500005152)</cmd>';
    $xmlCommand .= '<cmd>="/(                               )</cmd>';
    $xmlCommand .= '<cmd>="/(       FINE SCONTRINO          )</cmd>';
    $xmlCommand .= '<cmd>=o</cmd>';
    $xmlCommand .= "<\Service>";
    
    ?>
    
    <form target="myIframe" action="http://<?php echo $ipAddr;?>/service.cgi" method="POST" enctype="application/xml">
    <textarea name="xml" ><?php echo $xmlCommand;?></textarea>
    <input type="submit" value="esegui test di stampa" >
    <iframe name="myIframe" ></iframe>
    </form>

    La stampante mi restituisce errore 101... che sul manuale non è documentato...

    Secondo voi dove sbaglio?

    Ho provato ad inviare i dati anche tramite ajax/javascript ma il browser mi blocca le connessioni Cross Domain e non sò come aggirare l'ostacolo...
    Io sto provando con il protocollo standard USB/Seriale perchè lo avevo già implementato anni fa, il codice indicato nel manuale è il seguente (vedi paragrafo):

    2.5.12 LISTA COMANDI GESTIONE LOTTERIA
    Comando =”/?L/$1/(codice lotteria)

    =C1
    =R1/$1000/(articolo 1)
    =R2/$2000/(articolo 2)
    =”/?L/$1/(F1234567)
    =T1
    =c

    Ho implementato lo stesso codice di esempio da un cliente che ha già l'RCH Print F abilitato alla lotteria degli scontrini, secondo la normativa non si potrebbe usare T1 (contanti) quindi ho provato sia con T3 che con T4.
    Purtroppo però lo scontrino che viene stampato correttamente non riporta il codice lotteria inviato, anche se il protocollo (standard via USB/Seriale) risponde correttamente a tutte le istruzioni inviate, quindi la procedura è formalmente corretta e corrisponde a quella indicata nel manuale RCH.
    Il fornitore RCH mi ha inviato solo il manuale del protocollo ma non dispone di alcuna procedura di test quindi sono completamente al buio! O_o
  • Re: PrintF esempio di scontrino

    SOLUZIONE TROVATA, IL MANUALE E' FUORVIANTE.
    IL CODICE CORRETTO PER L'RCH PRINT!F E' PIU' SEMPLICE DEL PREVISTO, RISPETTO ALLO SCONTRINO E' SUFFICIENTE AGGIUNGERE LA RIGA PER LA STAMPA DEL CODICE LOTTERIA:

    =”/?L/$1/(F1234567)
    =R1/$1000/(articolo 1)
    =R2/$2000/(articolo 2)
    =T3

    IL TOTALE DEVE ESSERE IN T3 CHE DOVREBBE CORRISPONDERE AL POS IN MODO PREDEFINTO.
  • Re: PrintF esempio di scontrino

    Ciao, vorrei sapere se e come fuxas ha risolto il problema dell'errore 101. Io non ci riesco e la risposta dell'assistenza è stata più o meno "A noi funziona".
  • Re: PrintF esempio di scontrino

    Buongiorno a tutti,
    pongo una domanda (ho cercato altri thread per trovare quello più corretto e mi sembra questo).
    Dovrei inviare un xml per la generazione dello scontrino da una applicazione POS esterna (cloud) al punto vendita ad una RT (ovviamente connessa via LAN).
    Come faccio? Tutti gli esempi che ho trovato fanno giustamente riferimento a IP in lan locale...
    Al momento il gestionale che hanno (sempre in cloud) arriva a contattare direttamente le casse dall'esterno, il negozio non ha un server interno o un PC che ridistribuisce lo stream ad una cassa rispetto che ad un'altra.

    Le stampanti in uso sono RCH PrintF e Epson, al momento non conosco il modello preciso ma a questo stadio direi che è ininfluente.

    Grazie mille!
    Matteo
  • Re: PrintF esempio di scontrino

    Buongiorno a tutti,
    con grande stupore (e felicità) ho trovato un forum che parla di questo registratore telematico che tanto mi fa penare!!
    Io l'ho interfacciato con un nostro gestionale in cloud scritto in php, funziona tutto alla perfezione se non fosse per una situazione che nessuno riesce a risolvermi.

    Il gestionale effettua un polling ogni 60 secondi per verificare la presenza e lo stato del registratore telematico, inviando un comando RICHIESTA STATO <</?s . All'improvviso, senza alcun apparente motivo e senza alcuna connessione con casi precedenti, accade questo:
    - il registratore telematico risponde con una stringa vuota al posto del solito tracciato xml di stato
    - il gestionale, non reputando coerente la risposta, reinoltra la richiesta
    - il registratore telematico risponde con il flag 'busy' (webserver occupato) ad 1 ed il flag 'lastCmd' a 0 (nessuna riga eseguita dell'ultima istruzione)

    Da quel momento in poi il flag 'busy' non tornerà più a 0, ma rimane fisso ad 1, ed il registratore telematico rifiuta qualsiasi comando gli venga inviato.
    L'unica soluzione è spegnere e riaccendere il registratore telematico, ed il tutto riprende a funzionare correttamente.
    Possono passare giorni, settimane o solamente ore tra 2 eventi successivi, ho analizzato log su log ma non trovo nè la causa scatenante, nè la soluzione

    Qualcuno ha avuto una situazione simile?
  • Re: PrintF esempio di scontrino

    Ciao,
    io ho lo stesso problema.

    Ho analizzato altre pagine che inviano la richiesta di stampa scontrino tramite xml, ma ciò che mando io e ciò che mandano loro sono le stesse righe, ma non capisco perchè la stessa macchina con quei comandi va tranquilla, mentre se comunico io con lei si blocca esattamente come te.

    Mi viene da pensare che c'è qualcosa di differente che accade/deve accadere prima o o dopo, ho anche io provato con polling.
  • Re: PrintF esempio di scontrino

    spulciaroba ha scritto:


    Buongiorno a tutti,
    pongo una domanda (ho cercato altri thread per trovare quello più corretto e mi sembra questo).
    Dovrei inviare un xml per la generazione dello scontrino da una applicazione POS esterna (cloud) al punto vendita ad una RT (ovviamente connessa via LAN).
    Come faccio? Tutti gli esempi che ho trovato fanno giustamente riferimento a IP in lan locale...
    Al momento il gestionale che hanno (sempre in cloud) arriva a contattare direttamente le casse dall'esterno, il negozio non ha un server interno o un PC che ridistribuisce lo stream ad una cassa rispetto che ad un'altra.

    Le stampanti in uso sono RCH PrintF e Epson, al momento non conosco il modello preciso ma a questo stadio direi che è ininfluente.

    Grazie mille!
    Matteo
    Io lavoro esattamente in questo modo, da una piattaforma in cloud invio dati alla stampante locale, la richiesta deve comunque partire da una macchina nella sottorete della stampante inviando i parametri all'ip locale, puoi pensare ad una soluzione in cascata, ma da quello che capisco se è una soluzione pos si trova già all'interno del locale.
    Genera semplicemente il file puntando all'indirizzo, purtroppo non mi viene in mente altro, non so se nel frattempo hai risolto
  • Re: PrintF esempio di scontrino

    CastoroD ha scritto:


    spulciaroba ha scritto:


    Buongiorno a tutti,
    pongo una domanda (ho cercato altri thread per trovare quello più corretto e mi sembra questo).
    Dovrei inviare un xml per la generazione dello scontrino da una applicazione POS esterna (cloud) al punto vendita ad una RT (ovviamente connessa via LAN).
    Come faccio? Tutti gli esempi che ho trovato fanno giustamente riferimento a IP in lan locale...
    Al momento il gestionale che hanno (sempre in cloud) arriva a contattare direttamente le casse dall'esterno, il negozio non ha un server interno o un PC che ridistribuisce lo stream ad una cassa rispetto che ad un'altra.

    Le stampanti in uso sono RCH PrintF e Epson, al momento non conosco il modello preciso ma a questo stadio direi che è ininfluente.

    Grazie mille!
    Matteo
    Io lavoro esattamente in questo modo, da una piattaforma in cloud invio dati alla stampante locale, la richiesta deve comunque partire da una macchina nella sottorete della stampante inviando i parametri all'ip locale, puoi pensare ad una soluzione in cascata, ma da quello che capisco se è una soluzione pos si trova già all'interno del locale.
    Genera semplicemente il file puntando all'indirizzo, purtroppo non mi viene in mente altro, non so se nel frattempo hai risolto
    Io ho risolto in questo modo: ho aperto una porta specifica sul router ed ho reindirizzato tutti i pacchetti inviati a quella porta verso la porta 80 dell'IP locale del registratore telematico.
    Il mio gestionale prende in automatico l'IP remoto dell'utente che si logga e lo utilizza come IP destinatario dei pacchetti da inviare alla stampante. Ovviamente chi si collega al gestionale esternamente al router dove è collegata la stampante, non la può vedere, a meno che si abbia un IP statico, ed a quel punto si cabla quel valore al posto di prenderlo dinamicamente... spero di essere stato chiaro...
    Chiaramente la soluzione ha delle ovvie debolezze, il registratore telematico NON permette di effettuare una autenticazione sicura, per cui chiunque conosca l'IP destinatario, la porta ed il protocollo teoricamente potrebbe inviare dati al registratore telematico
Devi accedere o registrarti per scrivere nel forum
48 risposte