ویژگی‌های OriginalValue و UnderlyingValue ADO

تعریف و استفاده

ویژگی OriginalValue یک مقدار variant را برمی‌گرداند که شامل ارزش فیلدی است که قبل از آخرین فراخوانی روش Update یا UpdateBatch وجود داشته است.

ویژگی UnderlyingValue یک مقدار variant را برمی‌گرداند که شامل ارزش فعلی یک فیلد است. این مقدار ممکن است تغییراتی که توسط کاربران دیگر ایجاد شده‌اند را نمایش ندهد و ممکن است ارزش جدیدترین نباشد.

توجه:برای دریافت آخرین ارزش‌های همه‌ی Field‌های مجموعه‌ی Fields، از ویژگی Resync شیء Recordset استفاده کنید.

توجه:این دو ویژگی می‌توانند با هم استفاده شوند تا در برخورد با درگیری‌ها در به‌روزرسانی‌های انبوه، حل شوند.

قواعد دستور زبان

objField.OriginalValue
objField.UnderlyingValue

مثال

<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
set rs = Server.CreateObject("ADODB.Recordset")
rs.open "customers", conn
set objfield=rs.fields("companyname")
Some code..................
'بررسی تغییرات'
rs.movefirst
while rs.eof=false
  if objfield.OriginalValue<>objfield.UnderlyingValue then
    response.write("داده تغییر کرده است!<br />")
    response.write("مقدار اصلی: ")
    response.write(objfield.OriginalValue & "<br />")
    response.write("مقدار فعلی: ")
    response.write(objfield.UnderlyingValue & "<br />")
  end if
  rs.movenext
next
'کد بیشتری...................
rs.Close
conn.close
%>