mercoledì 28 agosto 2013

uso delle query su spreadsheet con appinventor

Supponiamo di avere uno spreadsheet che contiene i risultati di un gioco.
Il gioco carica i risultati secondo l'ordine di fine della partita.
Invece si vuole visualizzare i migliori 10 risultati.


per scaricare i dati (in formato csv) occorre creare una query.
Bisogna ricordare 3 cose:

partendo dal URL dello spreadsheet delle risposte al modulo
https://docs.google.com/spreadsheet/ccc?key=0Any4xtYVPq5DdEpsWWtXOF9HZVV6NlBKRnhfQVF3Z0E#gid=0

1. sostituire ccc? e il resto modificando il tutto in modo da preparare il corpo della query:
https://docs.google.com/spreadsheet/tq?tqx=out:csv&key=0Any4xtYVPq5DdEpsWWtXOF9HZVV6NlBKRnhfQVF3Z0E&tq=

2. la query deve seguire la sintassi delle API di visualizzazione di google per cui va codificata URI con l'apposita funzione

3. la query consiste in :

3.1 selezionare le colonne (B e C in questo esempio) che si vogliono scaricare (siccome A contiene l'istante di caricamento dei dati non interessa)
3.2 ordinarle con riferimento alla colonna C dal maggiore al minore (per cui ordinarle invertendo il segno , zero meno il valore di colonna C)
3.3 limitarne il numero a 10

A questo punto si procede come al solito assegnando ad una label il ResponseContent  nel Web1.GotText.

martedì 27 agosto 2013

link a sorgente e apk

ecco l'app da installare:

https://docs.google.com/file/d/0B3y4xtYVPq5DTEtMbkFmQjJmckE/edit?usp=sharing

e il sorgente

https://docs.google.com/file/d/0B3y4xtYVPq5DRVFYa1NqZkVncGM/edit?usp=sharing

grazie Taifun.

Blocco che scarica

Ecco il blocco che scarica:


per vedere meglio i dati le parentesi sono state rimpiazzate da un ritorno a capo \n.

Le liste infatti vengono mostrate con gli item fra parentesi (eventualmente annidate).

blocco che carica

Poi il programma: prima la visione d'insieme:



ora blocco per blocco:

prima il blocco che carica:



dove si vede che si usano i blocchi web1.PostTextWithEncoding e web.BuildRequestData e si deve usare una lista di liste da 2 item : primo item e' la entry trovata nel source file del module, secondo item e il textbox corrispondente nella interfaccia utente. Encoding= UTF-8.



lunedì 26 agosto 2013

Passiamo ad appinventor - parte 2

preparare l'interfaccia utente:


ci sono due bottoni
uno carica l'inserzione l'altro le scarica tutte
alcuni campi textbox sono solo numerici, ad esempio il telefono, per cui la spunta.

domenica 25 agosto 2013

raccolta informazioni

creato il modulo con i vari capi si ottiene una cosa cosi':
essa corrispondera' ad un foglio di spreadsheet cosi' (ogni colonna corrisponde ad una domanda e ogni riga ad un invio di questionario):
infine occorre sapere come vengono indirizzate le colonne nelle chiamate da appinventor. per far questo occorre visualizzare il codice sorgente del modulo (non dello spreadsheet) e si vedra' una cosa cosi':

dove sono sottolineate due colonne con due colori per vedere le associazioni fra titolo della colonna e codice entry.xxxxx
email inserzionista ==> entry.202234285
autore libro ==> entry.199427815


Facendo, sul foglio excel, file==> pubblica sul web si ottiene il seguente link:
https://docs.google.com/spreadsheet/pub?key=0Any4xtYVPq5DdGllN25OdnVDd1JaVm9XTDlTcDliUEE&single=true&gid=0&output=html

A CUI OCCORRE TOGLIERE &output=html OTTENENDO:

https://docs.google.com/spreadsheet/pub?key=0Any4xtYVPq5DdGllN25OdnVDd1JaVm9XTDlTcDliUEE&single=true&gid=0

questo link e' da usare in appinventor per scaricare i dati.

Andando invece sul modulo, copiare URL in cima al browser:

https://docs.google.com/forms/d/1iQb7i1b-lgyMWIXiqMhenAGWb1XaULXUcgszI3c8Vgw/viewform

e rimpiazzare viewform con formResponse:

https://docs.google.com/forms/d/1iQb7i1b-lgyMWIXiqMhenAGWb1XaULXUcgszI3c8Vgw/formResponse


questo e' il link per caricare (postare).


appinventor e google spreadsheet - parte 1

Le fasi sono  (http://puravidaapps.com/taifunGS.php):
1. Creare modulo in google drive.
2. Prendere nota degli URL che verranno usati in appinventor
3. In appinventor usare le funzioni per scrivere una riga e leggere uno sheet

Su GoogleDrive creare un MODULO.

in questo caso la app e' molto semplice: uno spreadsheet on line fa da bacheca per l'inserzione di un libro usato che si vuole vendere. con la app (*) si carica una serie di informazioni (tipo autore titolo email inserzionista) e poi si puo' scaricare l'intera lista di inserzioni.

(*) ovviamente si puo' fare da PC per questo Google ha messo a disposizione i "moduli" su drive.