> lcFieldState = SUBSTR(GETFLDSTATE(-1),2) && The first character returns deletion status > lnOccurance = 1 > > lnPos = AT('2', m.lcFieldState, m.lnOccurance) > > DO WHILE m.lnPos > 0 > DO CASE > CASE !FieldChanged(FIELD(m.lnPos)) > >&& not changed > CASE INLIST(UPPER(FIELD(m.lnPos)), UPPER("cLast_Updated_User"), ; > UPPER("tLast_Updated_Date")) > >&& ignore > OTHERWISE > REPLACE cLast_Updated_User WITH ; > IIF(VARTYPE(m.gcUserID) == "C", m.gcUseriID, getuserid()), ; > tLast_Updated_Date WITH DATETIME() > lnPos = 0 > ENDCASE > IF m.lnPos > 0 > lnOccurance = m.lnOccurance + 1 > lnPos = AT('2', m.lcFieldState, m.lnOccurance) > ENDIF > ENDDO >What is FieldChanged(FIELD(m.lnPos)) ?
REPLACE cLast_Updated_User WITH ; IIF(VARTYPE(m.gcUserID) == "C", m.gcUseriID, getuserid()), ; tLast_Updated_Date WITH DATETIME()