145 messaggi dal 08 dicembre 2003
Il registratore non ha un proprio IP. E' collegato al PC su porta seriale RS232.
L'applicazione in background del registratore è in polling su una particolare cartella, dove se trova il file Scontrino.txt lo stampa.
Per poter gestire più client ho messo in condivisione la cartella e scrivo il file Scontrino.txt da ogni singolo client, ovviamente controllando l'eventuale presenza di un altro Scontrino.txt e, nel caso, attendendo che venga elaborato (ciclo di ritardo).
Nonostante ciò però mi capita che talvolta vada in blocco.
Ho già provato ad abbassare/alzare la velocità di comunicazione della seriale ma senza successo.
44 messaggi dal 01 febbraio 2017
La sincronizzazione con scrittura file da diversi client sullo stesso file, non è sicura. Ti consiglierei di "liberare" subito i client facendoli scrivere in una loro cartella dedicata (anche su risorsa condivisa) e poi "sdoppiare" la logica di gestione del file scontrino.TXT, implementandola a livello del "server" cioè quello dove è collgato via seriale il reg. cassa (è Casio ?).

In questo modo i Client sono liberi di scrivere sul loro file (lasciando la logica di attesa che già hai), mentre una applicazione server si occuperà di leggere le varie cartelle e "preparare" il file scontrino.txt per il registratore di cassa. Ognuno fa solo il proprio lavoro, senza accavallamenti.

Ciao.

Gino.
145 messaggi dal 08 dicembre 2003
Buongiorno Moreno... chiedo cortesemente di nuovo il tuo aiuto. Come accennavo nei post precedenti, la stringa che passo diventa sempre più corposa tanto che ora superato un certo numero di caratteri non viene più eseguita.
Per costruirla utilizzo StringBuilder... mi sai dire se c'è un limite massimo di caratteri che posso passare all'oramai famosissimo Stampascontrino:stringaparametri
Ho anche provato a passare un array al posto della stringa ma mi sono reso conto che non è possibile per i problemi legati al ByVal e ByRef.
Grazie.
10.530 messaggi dal 09 febbraio 2002
Contributi
Ciao,
quanto è lunga la stringa al momento? Può crescere indefinitamente?
Non è che per caso non stai rispettando le regole degli URL?

Leggi qui sui caratteri che puoi usare.
https://en.wikipedia.org/wiki/Uniform_Resource_Identifier

Of the ASCII character set, the characters : / ? # [ ] @ are reserved for use as delimiters of the generic URI components and must be percent-encoded


Posta un esempio di stringa.

ciao,
Moreno
Modificato da BrightSoul il 14 aprile 2018 22.59 -

Enjoy learning and just keep making
145 messaggi dal 08 dicembre 2003
Ciao, sono riuscito a capire dov'era il problema. Tutto nasce dall'uso del registratore di cassa Olivetti Nettuna 300 che, data l'obsolescenza del suo firmware, non interpretava correttamente la stringa passata con i parametri poichè quest'ultima conteneva i prime 3 caratteri BOM (Byte Order Mark della codifica UTF-8) aggiunti dall'istruzione StringBuilder.
Andavo in confusione perchè in alcuni casi funzionava, ovvero quando c'era da stampare righe descrittive, mentre in altri no (ed era il caso della string con molti caratteri) ovvvero quando inviava comandi di tipo 'fiscale'.

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.