store (len(m.lcSSN) = 9) and ; EMPTY(CHRTRAN(m.lcSSN, "0123456789","")) and ; m.lcSSN <> "099999999" AND OCCURS(LEFT(m.lcSSN,1), m.lcSSN) < 9 ; to llSSNOK return m.llSSNOK>Yes, exactly. cEntered_User has GetUserID() as default (database SP to get user id based on machine name) and tEntered_Time is datetime(). If we do scatter, we need to release these two variables, so they would be re-calculated. I switched from scatter to insert fields in almost all the code (left just 3 scatter where we have too many fields to list).