The Go to Layout step immediately following the Set Field step makes no sense.
Using a loop to count flagged records is very inefficient and needlessly complex.
Other ways to count the records:
1) Use a relationship that matches only to the flagged records you want to count. Then either the count function or a summary field can return the number of flagged records.
2) perform a find for all flagged records. This can be done in a different window or in a different layout in order to leave your current found set unaltered. Get ( foundCount ) will then return the total number flagged records.
3) ExecuteSQL could be used to count the number of Flagged records
4) In some cases, a filtered portal with a summary field from the portal's table occurrence could be used to count records, but this value would be a "display" only count as it's difficult to access the count in such context for other uses.
Your reply on this topic appears to be the answer to my similar question:
(this is a simplification of the actual process):
I have a layout of table FOO. Records of FOO have a field, FOO:IsSelected. Some of those records may have FOO:IsSelected as 1, or 0. The user presses a button to display how many records of the FOUND SET displayed in the layout on-screen have IsSelected = 1. I do not wish to disrupt my found set.
In your #1 answer, do I create a new Relationship (e.g. FOO_IsSelected) from table foo, and set that relationship from FOO matching the primary key of FOO (e.g. FOO:__pk_FooID) to itself in the new Relationship? Then add an additional condition to the relationship that FOO:IsSelected = 1? Then use Count (FOO_IsSelected)?
In your answer #2, I totally get that I could create a new Window with the proper find parameters in a different Window / Layout. On the surface this SEEMS inelegant (it would be nice if I could "Save" or "Push" a found set, narrow the found set, then "Restore" or "Pop" it right from the same Window / Layout. Since my goal is to display that count to the user, I'd rather not have any disruption of their list of found records on-screen.
In your answer #3, I'm an SQL newb -- would you mind giving an example of how one might do this?