2 pagine in totale: <<Indietro 1 [2]
Utilizzare il DataControl con i parametri impostati in fase di progettazione.
<html>
<head>
<meta name="VI60_defaultClientScript" content="VBScript">
<meta NAME="GENERATOR" Content="Microsoft FrontPage 3.0">
<title></title>
</head>
<body>
<!-- Ancora più breve il listato che prevede l'utilizzo del DataControl.
L'oggetto RDS.DataControl chiama automaticamente l'oggetto RDS.DataFactory-->
<table datasrc="#DataControl" datapagesize="10" name="DataTable" id="DataTable"
cellpadding="1" cellspacing="1" border="2" align="center" width="75%">
<THEAD bgcolor="Red" align="center">
<tr>
<td>ID </td>
<td>NOME </td>
<td>COGNOME </td>
</tr>
</THEAD>
<TBODY>
<tr>
<!-- Specifichiamo i valori DATAFLD relativi ai dati che vogliamo visualizzare -->
<td><div datafld="ID"></div></td>
<td><div datafld="Nome"></div></td>
<td><div datafld="Cognome"></div></td>
</tr>
</TBODY>
</table>
<p>
<!-- Aggiungiamo un oggetto DataControl alla pagina Web ed impostiamo i parametri Connect, Server e SQL -->
<object CLASSID="clsid:BD96C556-65A3-11D0-983A-00C04FC29E33" ID="DataControl" width="1"
height="1">
<param name="Connect" value="DSN=Elenco;UID=;PWD=;">
<param name="Server" value="http://localhost">
<param name="SQL" value="Select * from Elenco">
</object>
<br>
<br>
<br>
</p>
<p align="center"><input type="button" value="Indietro" id="Indietro" name="Indietro">
<input type="button" value="Avanti" id="Avanti" name="Avanti"> </p>
</body>
</html>
<!-- Ancora ordinaria amministrazione. Le Sub per la paginazione. -->
<script ID="clientEventHandlersVBS" LANGUAGE="vbscript">
<!--
dim PagCorrente
Sub window_onload
PagCorrente = 1
Call AttivaBottoni
End Sub
Sub Avanti_onclick
PagCorrente = PagCorrente + 1
DataTable.nextPage()
Call AttivaBottoni
End Sub
Sub Indietro_onclick
PagCorrente = PagCorrente - 1
DataTable.previousPage()
Call AttivaBottoni
End Sub
Sub AttivaBottoni
if ( PagCorrente < DataControl.Recordset.PageCount) then
Avanti.disabled = false
else
Avanti.disabled = true
end if
if (PagCorrente > 1) then
Indietro.disabled = false
else
Indietro.disabled = true
end if
End Sub
-->
</script>L'estrema semplicità di utilizzo di RDS si riverbera anche nel caso si debbano effettuare degli aggiornamenti della fonte dati a seguito di inserimento, modifica, cancellazione di record dal recordset (ancora presente nella cache del client).
Si incarica di effettuare tutto ciò, il metoto SubmitChanges.
Tale metodo viene tuttavia invocato in maniera diversa nei due casi sopra proposti.
Nel primo esempio si deve assegnare ad una variabile il valore di ritorno del metodo SubmitChanges al quale devono essere passati i parametri relativi al collegamento ed il Recordset:
Dim b
Dim DS
Dim DF
Set DS =createobject("RDS.DataSpace")
Set DF = DS.CreateObject("RDSServer.DataFactory", "http://localhost")
Set RS = DF.Query("DSN=Elenco;UID=;PWD=;", "SELECT * FROM Elenco")
rs("Nome")="Paperino"
Var=DF.SubmitChanges("DSN=Elenco", RS).Nel secondo esempio, poichè i parametri vengono passati con le proprietà SQL , Connect e Server , il metodo SubmitChanges viene invocato, dopo aver assegnato ad una variabile il, nel nostro esempio, DataControl.Recordset, senza alcun parametro:
Dim RS
set RS=DataControl.Recordset
RS("cognome")="Paolino"
DataControl.SubmitChanges/code> Conclusioni
Non è stato volutamente preso in esame il caso di utilizzo di RDS con oggetti ADO, che richiederebbe un po' più di spazio per essere trattato.
Ad oni modo, in quest'ultimo caso, il metodo da invocare è UpdateBatch e non SubmitChanges.
Bisogna dire inoltre che la tecnica degli aggiornamenti batch disconnessi, pur essendo molto utile e funzionale, deve tuttavia essere utilizzata con molta cautela.
E' possibile infatti che le modifiche apportate da un client possano avere come oggetto record nel frattempo già modificati da un altro client. In questo caso l'aggiornamento genererà un errore dovuto ad un conflitto di aggiornamento .
E' necessario pertanto prestare molta attenzione e prevedere questa possibilità gestendo l'eventuale errore.
Per concludere, ritengo che RDS, presentando indubbi vantaggi di risparmio di risorse, possa essere di grande aiuto in una intranet dove è possibile anzi consigliabile utilizzare un solo browser. Per i motivi opposti, risulta sicuramente meno utile su Internet, dove per forza di cosa è necessario garantire il supporto per quanti più browser web sia possibile.
2 pagine in totale: <<Indietro 1 [2]
Contenuti dell'articolo
- Galleria fotografica dinamica con ASP.NET AJAX
- Usare Search come un servizio nei tuoi siti e nei tuoi client
- Mappe nel tuo sito con Virtual Earth
- Integrare Windows Live ID, Contacts e Presence API nelle tue applicazioni
- Introduzione ai cloud based service con Windows Live Services
- Realizzare un custom extender AJAX con ASP.NET 3.5
- Tracciare le modifiche ai dati e allineare i datawarehouse con il Change Data Capture in SQL Server 2008
- Le nuove caratteristiche di IIS 7.0 per sviluppatori e sistemisti
Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.







Difficoltà
Stampa
Download 


10annidi.ASPItalia.com: iscriviti alla competizione e vinci fantastici premi ogni mese!