Italian andare in una altra interfaccia

Nikeddy

Active Member
Licensed User
Longtime User
vorrei semplicemente inserire una label dove si visualizza il numero di record all'interno del database.
 

zakker

Member
Licensed User
e poi come inserisco il valore in una variabile?

esattamente come hai fatto con la query elencopark... crei un altro CASE nella jobdone

oppure per "ripsarmiare" una query, nel FOR EACH metti una variabile contatore che incrementi ad ogni ciclo.
A fine ciclo avrai il totale dei record...e quel valore lo metti nella label
 

zakker

Member
Licensed User
e poi come inserisco il valore in una variabile?
B4X:
 Select Job.JobName
            Case COUNTRIES_LIST
                Dim COUNTRIES As List
                COUNTRIES = parser.NextArray 'returns a list with maps
                For i = 0 To COUNTRIES.Size - 1
                    Dim m As Map
                    m = COUNTRIES.Get(i)
                    'We are using a custom type named TwoLines (declared in Sub Globals).
                    'It allows us to later get the two values when the user presses on an item.
                    Dim tl As TwoLines
                    tl.First = m.Get("n_macchina")
                    tl.Second = m.Get("zona")
                    ListView1.AddTwoLines2(tl.First, tl.Second, tl)
                Next

Anzi,riguardando il tuo codice,il valore ce l'hai già in COUNTRIES.size
 

Nikeddy

Active Member
Licensed User
Longtime User
cosi?
Dim tot As List
tot = parser.NextArray 'returns a list with maps
For i = 0 To tot.Size
Dim m As Map
m = tot.Get(i)
lbl_totpark.text = i
 

zakker

Member
Licensed User
no l'assegnazione devi farla fuori dal ciclo FOR

E comunque sei sicuro che funzioni così il codice? secondo me no...


B4X:
Dim tot As List
tot = parser.NextArray 'returns a list with maps
For i = 0 To tot.Size
Dim m As Map
m = tot.Get(i)
...
...
next
lbl_totpark.text = i
 

Nikeddy

Active Member
Licensed User
Longtime User
ok risolto!!!! :)

B4X:
    Case contaparcometri
                Dim tot As List
                tot = parser.NextArray 'returns a list with maps
                For i = 0 To tot.Size -1
                    Dim m As Map
                    m = tot.Get(i)       
                   
                Next
                lbl_totpark.text = i
                End Select
 

Nikeddy

Active Member
Licensed User
Longtime User
una cosa...e grazie ancora
Dim c As Double
c = NumberFormat2(m.Get("tot_euro"),0, 0, 0, False)

come faccio a far venire fuori il numero intero senza le cifre dopo le virgole?
 

Nikeddy

Active Member
Licensed User
Longtime User
ho fatto una query:
B4X:
ExecuteRemoteQuery("SELECT data,descrizioneanomalia FROM archivio_rapp_giorn WHERE macchina='" & park & "' ORDER BY data ", anomalie)

e creato un case:


B4X:
Case anomalie


Dim COUNTRIES As List


COUNTRIES = parser.NextArray


For i = 0 To COUNTRIES.Size - 1


Dim m As Map


m = COUNTRIES.Get(i)


Dim tl As TwoLines


tl.First = m.Get("data")


tl.Second = m.Get("descrizioneanomalia ")


lst_anomalie.AddTwoLines2(tl.First, tl.Second, tl)


Next



perché me ne visualizza 1 soltanto?
 

Nikeddy

Active Member
Licensed User
Longtime User
ok risolto era sbagliato il ciclo!

(sto imparando piano piano, ora ho capito che per ogni query devo fare una case!)
 

zakker

Member
Licensed User
ho fatto una query:
B4X:
ExecuteRemoteQuery("SELECT data,descrizioneanomalia FROM archivio_rapp_giorn WHERE macchina='" & park & "' ORDER BY data ", anomalie)

e creato un case:


B4X:
Case anomalie


Dim COUNTRIES As List


COUNTRIES = parser.NextArray


For i = 0 To COUNTRIES.Size - 1


Dim m As Map


m = COUNTRIES.Get(i)


Dim tl As TwoLines


tl.First = m.Get("data")


tl.Second = m.Get("descrizioneanomalia ")


lst_anomalie.AddTwoLines2(tl.First, tl.Second, tl)


Next



perché me ne visualizza 1 soltanto?


perchè dichiari tl ad ogni ciclo. Devi dichiararla fuori...magari nelle Globals
 

Nikeddy

Active Member
Licensed User
Longtime User
ok correggo, devo impararmi queste cose.

ora ho un problema (formattazione stringa) estraggo un valore DATA
tl.First = m.Get("data")

e lo metto nella riga, solo che mi esce la data in formato inglese, e soprattutto con 0:00:00 che sono i minuti.

come faccio a trasformarlo in data breve?
 

zakker

Member
Licensed User
ok correggo, devo impararmi queste cose.

ora ho un problema (formattazione stringa) estraggo un valore DATA
tl.First = m.Get("data")

e lo metto nella riga, solo che mi esce la data in formato inglese, e soprattutto con 0:00:00 che sono i minuti.

come faccio a trasformarlo in data breve?

Guarda ad esempio quì.
https://www.b4x.com/android/forum/threads/datetime-dateformat-where-should-it-be.65884/#post-417264

Poi, ad esempio puoi mettere nel modulo "Starter" in "Service_Create"

DateTime.DateFormat="dd/MM/yyyy"
DateTime.TimeFormat="HH:mm"

Così stabilisci un formato di default per date e orari

Apri però altri thread per le tue richieste...
 
Top