Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Scontrini e totali
Forum - C# / VB.NET - Scontrini e totali

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
Daniele93 (Normal User)
Expert


Messaggi: 226
Iscritto: 29/05/2009

Segnala al moderatore
Postato alle 10:33
Domenica, 10/01/2010
Buona domenica a tutti!

Ho un problema da risolvere... In una textbox ho una spece di serie di scontrini es:

Margarita     10,00

Limoncino     12,00

Totale: 22,00
________________________________________________________

Margarita     10,00

Caffè         1,00

Totale: 11,00

Gli scontrini sono separati da una serie di underscore. Mi servirebbe di recuperare tutti i vaori dei totali di ogni scontrino e di metterli in un totale comune che poi scrivero in una label.

Qualcuno sà dirmi come recupero SOLO e TUTTI i totali?

Grazie in anticipo!!!;)


Si vis pacem, para bellum

Se vuoi la pace, prepara la guerra.
PM Quote
Avatar
Alfonso (Ex-Member)
Guru


Messaggi: 688
Iscritto: 30/09/2009

Segnala al moderatore
Postato alle 11:11
Domenica, 10/01/2010
Sapendo quali sono i caratteri separatori tra le diverse voci te la puoi cavare con una serie di split, altrimenti scorri tutta la textbox in cerca di caratteri numerici.


che le risposte ti siano servite o meno un tuo riscontro è segno di cortesia.

http://www.alfonsonatale.altervista.org/
PM Quote
Avatar
Daniele93 (Normal User)
Expert


Messaggi: 226
Iscritto: 29/05/2009

Segnala al moderatore
Postato alle 11:12
Domenica, 10/01/2010
Tra quali voci? E se cercassi i caratteri numerici come? e come faccio a sapere qual' è il totale?

Grazie!


Si vis pacem, para bellum

Se vuoi la pace, prepara la guerra.
PM Quote
Avatar
Alfonso (Ex-Member)
Guru


Messaggi: 688
Iscritto: 30/09/2009

Segnala al moderatore
Postato alle 11:14
Domenica, 10/01/2010
Se per Totali intendi solo la cifra che segue Totale:

Dim Totali() As String = Split(TextBox1.Text, "Totale:")


che le risposte ti siano servite o meno un tuo riscontro è segno di cortesia.

http://www.alfonsonatale.altervista.org/
PM Quote
Avatar
Daniele93 (Normal User)
Expert


Messaggi: 226
Iscritto: 29/05/2009

Segnala al moderatore
Postato alle 11:26
Domenica, 10/01/2010
Ma così ottengo tante stringhe che contengono gli scontrini perchè per ogni totale che incontra crea una stringa... Ma a me seve di separare i nemri che si trovano imparte ai totali da tutto il resto scritta "Totale:" Compresa.

Es:

Dopo aver cliaccato il bottone dovrei avere un' array di stringhe che contiene

Totali(0)=22,00
Totali(1)=11,00



Si vis pacem, para bellum

Se vuoi la pace, prepara la guerra.
PM Quote
Avatar
Alfonso (Ex-Member)
Guru


Messaggi: 688
Iscritto: 30/09/2009

Segnala al moderatore
Postato alle 11:43
Domenica, 10/01/2010
Non sapendo quali sono i caratteri separatori non posso darti indicazioni precise.
Individua qual'è il carattere <a capo> di ogni riga.
Con lo split otterrai una serie di array con tutte le voci.
Individua quelle che cominciano con "Totale:" ed estrai il valore.


che le risposte ti siano servite o meno un tuo riscontro è segno di cortesia.

http://www.alfonsonatale.altervista.org/
PM Quote
Avatar
Daniele93 (Normal User)
Expert


Messaggi: 226
Iscritto: 29/05/2009

Segnala al moderatore
Postato alle 11:49
Domenica, 10/01/2010
Il problema è che non ci sono caratteri che determinano l' accapo e se mettessi ad esempio il simbolo "€" non funzionerebbe più il conto del totale di ogni singolo scontrino, inquanto non è un carattere numerico...


Si vis pacem, para bellum

Se vuoi la pace, prepara la guerra.
PM Quote
Avatar
Alfonso (Ex-Member)
Guru


Messaggi: 688
Iscritto: 30/09/2009

Segnala al moderatore
Postato alle 12:02
Domenica, 10/01/2010
Prova così:

Dim Righe() As String = Split(TextBox1.Text, "Totale")
A me dà una serie di array e a parte il primo, gli altri incominciano con ": xx,xx ..."
Individua la posizione della virgola ed estrai dalla terza posizione alla posizione della virgola + 2


che le risposte ti siano servite o meno un tuo riscontro è segno di cortesia.

http://www.alfonsonatale.altervista.org/
PM Quote
Avatar
Daniele93 (Normal User)
Expert


Messaggi: 226
Iscritto: 29/05/2009

Segnala al moderatore
Postato alle 12:23
Domenica, 10/01/2010
L' idea mi sembra buona... Ho provato:
Codice sorgente - presumibilmente VB.NET

  1. Dim Righe() As String = Split(TextBox1.Text, "Totale")
  2.         Dim x As Integer = 1
  3.         For x = 1 To Righe.Length
  4.             totale = totale + CType(Righe(x).Substring(3, 4), Single)
  5.         Next x
  6.         MsgBox(totale.ToString)



Ma mi dice indice oltre i limiti della matrice. Errore che incontro praticamente ogi volta! Però adesso non riesco a capire perchè! Ovviamente perchè righe non contiene stringhe, MA perchè???


Si vis pacem, para bellum

Se vuoi la pace, prepara la guerra.
PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo