Difference between revisions of "GETFLDSTATE()"

From Recital Documentation Wiki
Jump to: navigation, search
 
 
(3 intermediate revisions by one user not shown)
Line 1: Line 1:
 
==Purpose==
 
==Purpose==
Function to  
+
Function to to check if a field has been modified
  
  
 
==Syntax==
 
==Syntax==
GETFLDSTATE()
+
GETFLDSTATE(<expC> | <expN1>, <expN2> [, <workarea | alias>])
  
  
Line 12: Line 12:
  
 
==Description==
 
==Description==
 +
The GETFLDSTATE() function can be used to check if a field has been modified.  The field can be specified using the field name in <expC> or the field number in <expN1>.  GETFLDSTATE() returns the values below.
 +
 +
If the optional <workarea | alias> is specified, then the function will operate in the required location.
 +
 +
====Return value====
 +
{| class="wikitable"
 +
!Value||Description
 +
|-
 +
|1||Field has not been modified
 +
|-
 +
|2||Field has been modified
 +
|-
 +
|}
  
  
Line 17: Line 30:
 
==Example==
 
==Example==
 
<code lang="recital">
 
<code lang="recital">
 +
close databases
 +
clear
 +
set exclusive off
 +
open database southwind
 +
use customers
 +
// Set to known value before start
 +
replace customerid with "ALFKI"
 +
 +
cursorsetprop("Buffering", 5, "customers")
 +
messagebox("Buffering set to " +etos(cursorgetprop("Buffering")))
 +
 +
? "Original customerid value: " + customerid
 +
? "Curval(): " + curval("customerid")
 +
? "Oldval(): " + oldval("customerid")
 +
? "Fieldstate at start: " + getfldstate("customerid")
 +
 +
replace customerid WITH "RECIT"
 +
 +
// Alter in another session
 +
! recital -c "update southwind\!customers set customerid = 'MULTI' where recno() = 1"
 +
? "Someone else just updated the record!"
 +
? "New customerid value: " +  customerid
 +
? "Curval(): " + curval("customerid")
 +
? "Oldval(): " + oldval("customerid")
 +
? "Fieldstate after replace: " + getfldstate("customerid")
 +
tablerevert(.T.)
 +
 +
? "Reverted customerid value: " +  customerid
 +
? "Curval(): " + curval("customerid")
 +
? "Oldval(): " + oldval("customerid")
 +
? "Fieldstate after revert: " + getfldstate("customerid")
  
 +
replace customerid WITH "RECIT"
 +
? "New customerid value: " +  customerid
 +
tableupdate(.T.)
 +
? "Updated customerid value: " +  customerid
 +
? "Curval(): " + curval("customerid")
 +
? "Oldval(): " + oldval("customerid")
 +
? "Fieldstate after replace and update: " + getfldstate("customerid")
 +
?
 
</code>
 
</code>
  

Latest revision as of 11:25, 22 August 2011

Purpose

Function to to check if a field has been modified


Syntax

GETFLDSTATE(<expC> | <expN1>, <expN2> [, <workarea | alias>])


See Also

CURSORGETPROP(), CURSORSETPROP(), CURVAL(), OLDVAL(), TABLEREVERT(), TABLEUPDATE(), SETFLDSTATE()


Description

The GETFLDSTATE() function can be used to check if a field has been modified. The field can be specified using the field name in <expC> or the field number in <expN1>. GETFLDSTATE() returns the values below.

If the optional <workarea | alias> is specified, then the function will operate in the required location.

Return value

Value Description
1 Field has not been modified
2 Field has been modified


Example

close databases
clear
set exclusive off
open database southwind
use customers
// Set to known value before start
replace customerid with "ALFKI"
 
cursorsetprop("Buffering", 5, "customers")
messagebox("Buffering set to " +etos(cursorgetprop("Buffering")))
 
? "Original customerid value: " + customerid
? "Curval(): " + curval("customerid")
? "Oldval(): " + oldval("customerid")
? "Fieldstate at start: " + getfldstate("customerid")
 
replace customerid WITH "RECIT"
 
// Alter in another session
! recital -c "update southwind\!customers set customerid = 'MULTI' where recno() = 1"
? "Someone else just updated the record!"
? "New customerid value: " +  customerid 
? "Curval(): " + curval("customerid")
? "Oldval(): " + oldval("customerid")
? "Fieldstate after replace: " + getfldstate("customerid")
tablerevert(.T.)
 
? "Reverted customerid value: " +  customerid
? "Curval(): " + curval("customerid")
? "Oldval(): " + oldval("customerid")
? "Fieldstate after revert: " + getfldstate("customerid")
 
replace customerid WITH "RECIT"
? "New customerid value: " +  customerid 
tableupdate(.T.)
? "Updated customerid value: " +  customerid
? "Curval(): " + curval("customerid")
? "Oldval(): " + oldval("customerid")
? "Fieldstate after replace and update: " + getfldstate("customerid")
?


Products

Recital, Recital Server