In questo esempio vedrai come consumare il web service (WS) creato precedentemente in InfoPath 2007. Per fa questo è necessario avere Microsoft Office InfoPath 2007. Aprilo e vai in File \ Design a Form Template (di deafult parte in modalità client dove è possibile usare un form ma non editarlo) e scegli il template Blank.
I passi sono questi:
clicca su Data source e poi Menage Data connections...
nella finestra che si apre clicca su Add...
scegli Create a new connection to: e poi Receive data, premi Next
ti viene visualizzato l'elenco dei metodi disponibili, seleziona SelectTable, premi Next
in questa schermata inserisci il nome della store procedure (vedi articolo precedente) che verrà usato da InfoPath per ricavare la struttura dei dati ritornati. Premi Set Sample Value e inserisci SpSelectCountryRegion per il parametro spName, premi next
a questo punto inserisci ancora il nome della store procedue, sarà il valore effettivamente utilizzato quando verrà usato il WS. Premi Set Value... e inserisci SpSelectCountryRegion, premi Next
in questa scermata premi Next
nella casella di testo Enter a name for this data connection: lascia SelectTable, premi Finish
premi Close
Il WS è stato aggiunto ad InfoPath ed è pronto per essere usato. Per vederlo vai in Data source, nella combo Data Source: seleziona il WS appena creato, ovvero, SelectTable (Secondary), troverai una struttura come questa:
Text
myFields
queryFields
tns:SelectTable
spName
dataFields
tns:SelectTableResponse
SelectTableResult
:SelectTable
(Choice)
Table
Country
Name
Per vedere in azione il WS:
trascina con il mouse il nodo :SelectTable sul form (vengono aggiunti dei cotrolli)
premi Preview per vedere il risultato e poi yes
Il risultato grafico non è eccezionale, ma da un idea delle potenzialità e della semplicità con cui è possibile visualizzare i dati in InfoPath.
In modo altrettanto semplice è possibile riempire una Combo Box o Drop-Down List Box:
clicca su Design Tasks
clicca su Controls
trascina il controllo Drop-Down List Box (DDLB) sul form
vai nelle proprietà della DDLB (tasto destro sul controllo)
seleziona Lookup values from an external data source
assicurati che nella drop-down Data source: sia selezionato il WS SelectTable
imposta come Entries il nodo Table (/dfs:myFields/dfs:dataFields/tns:SelectTableResponse/tns:SelectTableResult/SelectTable/Table)
imposta Value=CountryRegionCode e Display name=Name
File \ Publish (se chiede di salvare il form, salvalo)
seleziona To a SharePoint server with or without InfoPath Forms Services, premi Next
alla richiesta Enter the location of your SharePoint or InfoPath Forms Services site: inserisci la url di SharePoint (es.: http://sharepoint2007
), premi Next
seleziona Document Library, premi Next
seleziona Create a new document library, premi Next
come Name inserisci SgartForm, premi Next
in questa scermata premi Next
conferma premendo Publish
al termine seleziona Open this document library... e premi Close
Per vedere il form premi il pulsante New sulla document library.
Ricorda che questo è solo un form di esempio e così comè serve a ben poco, prossimamente un caso reale...