Italian Database su SQL server interno

Pisinho

Active Member
Licensed User
Longtime User
Buonasera,
sono passati oramai almeno un paio d'anni da quando frequentavo il forum adesso mi hanno riproposto di sviluppare un'app che si deve collegare ad una base dati. Generalmente io uso SQL server che però non è esposto su Internet. Mi domandavo se c'era una specie di meccanismo che riconosca quando sono in wifi dell'azienda in modo da sincronizzare il database di sqllite con il server interno. I dati non cambiano spesso e al limite potrei comunque inviare un messaggio alla persona di effettuare la sincronizzazione. ALtre idee ? Grazie a tutti.
 

LucaMs

Expert
Licensed User
Longtime User
sono passati oramai almeno un paio d'anni da quando frequentavo il forum
Urca, come passa il tempo; non mi sembrava passato tanto tempo dall'ultima volta che ti ho... "visto".

Direi che le domande sono due: come far riconoscere automaticamente all'app la rete aziendale e come scambiare dati - e mantenerli allineati, tra MS SQL Server e sul dispositivo (SQLite).

Per il primo, potresti usare l'evento ConnettivityChanged della libreria Phone-PhoneEvents.

Per il secondo, direi che dovresti usare jRDC2.
 

sirjo66

Well-Known Member
Licensed User
Longtime User
Per riconoscere se sono nel wifi dell'azienda io utilizzo una libreria per la gestione del WiFi e vado a leggermi il nome della rete wifi alla quale sono collegato, semplicissimo.

C'è comunque anche un sistema per rendere SQL server accessibile dall'esterno, io l'ho fatto con MySQL ma il concetto è lo stesso.
Ho installato Apache sul server che ha SQLserver (ma puoi installarlo su di un qualsiasi PC collegato alla rete), poi ho creato una semplicissima pagina in PHP (che trovi qui sul forum) per inviare un comando al server SQL e attendere poi la risposta ritrasmettendola alla mia app, ti assicuro che è molto banale da fare.

Puoi iniziare da qui: https://www.b4x.com/android/forum/threads/mysql-su-aruba.62942/#post-397483

.
 
Last edited:

LucaMs

Expert
Licensed User
Longtime User
Ho installato Apache sul server che ha SQLserver (ma puoi installarlo su di un qualsiasi PC collegato alla rete), poi ho creato una semplicissima pagina in PHP (che trovi qui sul forum) per inviare un comando al server SQL e attendere poi la risposta ritrasmettendola alla mia app, ti assicuro che è molto banale da fare.
Che è la stessa cosa che installare jRDC2 (che altro non è che un server, come lo è Apache) e scrivere i comandi nel file di configurazione ;)
 

amorosik

Expert
Licensed User
Buonasera,
sono passati oramai almeno un paio d'anni da quando frequentavo il forum adesso mi hanno riproposto di sviluppare un'app che si deve collegare ad una base dati. Generalmente io uso SQL server che però non è esposto su Internet. Mi domandavo se c'era una specie di meccanismo che riconosca quando sono in wifi dell'azienda in modo da sincronizzare il database di sqllite con il server interno. I dati non cambiano spesso e al limite potrei comunque inviare un messaggio alla persona di effettuare la sincronizzazione. ALtre idee ? Grazie a tutti.

La sincronizzazione dei dati e' sempre un fattore critico
Come fai solitamente a gestire la cosa?
Nel senso, mandi SEMPRE da telefono a pc?
Oppure usi un meccanismo che ti consente di capire chi/quando/cosa ha fatto e quindi poi la sincronizzazione avviene in modo 'intelligente' ?
Come mai non tieni i dati solo in ufficio e da telefono non guardi/scrivi/modifichi i dati che fisicamente sono in ufficio (quindi niente sincronizzazione)?
 
Top