 Källkoden för /anders.enges/ado/adovb5.asp
 Källkoden för /anders.enges/ado/adovb5.asp 
<!--#include file="../inc/navstuff.asp" -->
<p>På sätt och vis känns det lite dumt att behöva kolla <b>EOF</b> och 
<b>BOF</b> för varje förfytting.</p>
<p>Skulle det inte vara bättre om databasen själv skötte detta? Visste väl det, så vi fixar det nu.</p>
<ol>
<li>Skapa en händelseprocedure för <b>RS</b> objektets <b>MoveComplete</b> genom att välja dessa i editorns komboboxar<br /><br /></li>
<li>Du borde få någonting i denna stil:<br />
Private Sub RS_MoveComplete(ByVal adReason ...<br /><br />
</li>
<li>Skriv in följande kod i denna procedur<br /><br />
<b>
If pRecordset.BOF And adReason = adRsnMovePrevious Then<br />
    pRecordset.MoveFirst<br />
End If<br />
If pRecordset.EOF And adReason = adRsnMoveNext Then<br />
    pRecordset.MoveLast<br />
End If</b><br /><br />
<li>Tag bort hela <b>If</b> satserna som kollade <b>EOF</b> och <b>BOF</b> i cmdNavigera_Click<br /><br /></li>
<li>Provkör<br /><br /></li>
</ol>
<p>Man kan även använda denna händelse för att sätta in en ny post. Om man märker att EOF är sant kan man automatiskt sätta til nya poster med <b>pRecordset.AddNew</b> o.s.v. Se även <a href="adovb6.asp#EOF">Händelser</a></b>
<p>Observera att proceduren får fyra parametrar som vi kan använda. Dessa är:</p>
<table border="1">
<tr><td align="left"><b>Parameter</b></td><td align="left"><b>Typ (klicka för info)</b></td><td align="left"><b>Betydelse</b></td></tr>
<tr><td valign="top">adReason</td><td valign="top"><a href="EventReasonEnum.asp">ADODB.EventReasonEnum</a></td><td valign="top">Varför denna händelse skedde</td></tr>
<tr><td valign="top">pError</td><td valign="top"><a href="AError.asp">ADODB.Error</a></td><td valign="top">Eventuella fel</td></tr>
<tr><td valign="top">adStatus</td><td valign="top"><a href="EventStatusEnum.asp">ADODB.EventStatusEnum</a></td><td valign="top">Gick allt bra?</td></tr>
<tr><td valign="top">pRecordset</td><td valign="top"><a href="dbr.asp">ADODB.Recordset</a></td><td valign="top">Recordsettet som händelen skedde i. Deta är denna vi kollar t.ex. EOF på, inte på det "globala" RS objektet </td></tr>
</td></tr>
</table>
<p>Se även <a href="adovb6.asp">Händelser</a></p>
<!--#include file="../inc/footer.asp" -->