Condividi tramite


Progettazione dell'applicazione IBuySpy Delivery

L'applicazione IBuySpy Delivery utilizza SQL Server, SQL Server Compact 3.5, Microsoft Internet Information Services (IIS) e Microsoft.NET Compact Framework. L'applicazione sullo Smart Device offre un'interfaccia utente per l'immissione e la modifica di informazioni da parte dell'autista responsabile dei recapiti. L'applicazione archivia e recupera tali informazioni in un database locale di SQL Server Compact 3.5. Il dispositivo comunica con SQL Server tramite IIS, consentendo la sincronizzazione dei dati del database locale con il database sul server tramite replica o RDA. Il sito Web IBuySpy Store archivia e recupera informazioni nel database di SQL Server e consente all'utente di immettere e visualizzare le informazioni sincronizzate.

Scenario aziendale di IBuySpy

IBuySpy distribuisce i propri prodotti direttamente ai clienti, con veicoli per il recapito di proprietà dell'azienda. Nel processo di recapito vengono utilizzati dispositivi palmari per verificare e registrare le quantità recapitate. Tali dispositivi costituiscono un componente fondamentale del processo della catena di fornitura di IBuySpy. I sistemi palmari eseguono software Windows Mobile 2003 per Pocket PC e SQL Server Compact 3.5. Al momento del recapito di un ordine a un cliente, l'autista responsabile dei recapiti di IBuySpy scarica la merce e quindi registra la firma del cliente nel dispositivo palmare.

L'applicazione IBuySpy Delivery è in grado di scaricare i dati di recapito da un server a un dispositivo, supportare l'utilizzo dei dati in assenza di connessione al server, quindi sincronizzare le modifiche sul server quando viene ripristinata la connessione. Durante un giro di recapiti possono inoltre essere vendute le scorte in eccedenza nel veicolo. Oltre al rilevamento delle scorte e agli elenchi dei clienti, l'applicazione sul palmare deve disporre di funzionalità di elaborazione degli ordini. Quando è disponibile una connessione di rete, il dispositivo dell'autista comunica con il computer che esegue IIS e SQL Server. Il dispositivo invia gli ordini completati e riceve gli eventuali aggiornamenti.

Sito Web di IBuySpy Delivery

Nel sito Web di IBuySpy Store, incluso nell'applicazione IBuySpy Delivery, è possibile creare ordini che verranno trasferiti sugli Smart Device degli autisti responsabili dei recapiti. All'interno del sito Web è inoltre possibile esaminare i risultati di un'operazione eseguita sul dispositivo, ad esempio visualizzare una firma inoltrata per un ordine oppure i prodotti aggiunti.

Schema del database di IBuySpy Delivery

L'applicazione IBuySpy Delivery utilizza una versione modificata dello schema del database di IBuySpy per supportare le funzionalità aggiuntive dell'applicazione. Oltre alle sette tabelle dello schema di IBuySpy, ovvero Orders, OrderDetails, Customers, Products, Categories, ShoppingCart e Reviews, lo schema di IBuySpy Delivery include la tabella Settings.

L'applicazione IBuySpy Delivery prevede inoltre la modifica di due tabelle e l'aggiunta di una relazione di chiave esterna:

  • Alla tabella Orders viene aggiunta la colonna Signature per archiviare immagini bitmap delle firme dei clienti registrate dai responsabili dei recapiti tramite i dispositivi palmari. La colonna Status viene aggiunta per tenere traccia dello stato di recapito degli ordini. Il valore di stato consente di determinare la presenza di scorte in eccedenza per ulteriori vendite sul luogo di recapito. Per ulteriori informazioni, vedere Controllo Inventory.

  • Alla tabella Customers vengono aggiunte sei colonne: Address, City, State, Zip, Phone e DriverID. DriverID consente di determinare l'autista che in base alle pianificazioni recapiterà l'ordine di un cliente specifico.

  • Una relazione di chiave esterna viene aggiunta tra la tabella OrderDetails e la tabella Products, allo scopo di impedire la creazione di ordini per prodotti inesistenti.

La tabella Settings non viene sincronizzata con l'archivio dati di SQL Server. Questa tabella, disponibile solo sul dispositivo palmare, contiene le informazioni necessarie per la connessione del dispositivo al server.

La tabella Reviews non viene scaricata sul dispositivo. La lettura e l'immissione di revisioni dei prodotti è di rilevanza minima sul luogo di recapito. Non eseguendo il download della tabella è possibile ridurre al minimo le dimensioni del database sul dispositivo. Dal dispositivo viene inoltre esclusa la tabella ShoppingCart, poiché gli autisti non possono creare nuovi ordini nell'applicazione sul palmare, ma soltanto aggiungere articoli agli ordini esistenti.

Le cinque restanti tabelle, ovvero Customers, Order, OrderDetails, Products e Categories, vengono scaricate sul dispositivo. Per ridurre al minimo le dimensioni del database sul dispositivo e assicurarsi che agli autisti vengano visualizzati soltanto i dati significativi, ogni responsabile dei recapiti riceve esclusivamente le informazioni specifiche dei propri clienti. Durante la sincronizzazione tra il dispositivo e il database sul server, le informazioni vengono filtrate in base alla colonna DriverID della tabella Customers. I record di ogni tabella del database locale contengono un sottoinsieme mirato dei record dell'intero database.