Skip to content

DF_FILE_CHANGED

See Also: Get_Attribute, Set_Attribute

Indicates whether the data in the table’s record buffer has been changed.

Level

Table

Supported by

All Drivers

Type

Boolean, temporary

Access

Read Only

Values

  • True
  • False

Remarks

The DF_FILE_CHANGED attribute indicates whether the global table buffer has changed since the last clear or successful find operation. Clearing the buffer or performing a successful find will set the attribute to false. Moving data to the buffer will set the attribute to true.

If data is moved to the buffer that is already there, this is not regarded as a change. For example, if an ASCII column has the value “A value” after a successful find, moving “A value” to that column will not set the DF_FILE_CHANGED attribute to true.

Procedure CheckUppercased
    Integer iTotalRecords
    Integer iBadRecords
    Boolean bFound
    Boolean bChanged

    Move 0 To iTotalRecords
    Move 0 To iBadRecords
    Clear Salesp
    Find Gt Salesp By 1
    Move (Found) To bFound

    While (bFound)
        Move (Uppercase(Salesp.Id)) To Salesp.Id
        Get_Attribute DF_FILE_CHANGED Of Salesp.File_number To bChanged

        If (bChanged) ;
            Increment iBadRecords
        Increment iTotalRecords
        Find Gt Salesp By 1
        Move (Found) To bFound
    End

    If (iBadRecords > 0) ;
        Showln iBadRecords " of " iTotalRecords " are not properly uppercased."
    Else ;
        Showln "All records are properly uppercased."
    End_Procedure // CheckUppercased

The sample procedure above runs a check on the Salesp table. It verifies if the Salesp.Id column contains an uppercased value for all records.