How to remove Data from Groups of Fields
Find out how to create a new FileMaker Pro database by making a copy of an existing database without carrying forward all the old data.
By By Chris Moyer, The Moyer Group CEO and FileMaker Advisor technical editor, and Bob Bowers, Soliant Consulting CEO and FileMaker Advisor contributing editor
First, if you're looking for a scripting solution to clear
out the data in a large set of fields, you'll want a solution
that doesn't require you to explicitly reference each field to
be cleared out. The best way to do this is to use the Go to
Next Field step to simply walk through all the fields on a
layout, clearing them as you go.
Say you want to clear out FieldA, FieldB, and FieldC. Create
a new Standard form layout and add just these fields to the layout.
(You can also simply add all the fields, then remove the ones you
don't need; that may be easier than selecting the ones you want.)
Be sure not to alter or otherwise mess with the tab order on the
layout. You can then use this script to cycle through and clear the fields:
Go to Next Field
Set Field [gTemp , Get (ActiveFieldName)]
Loop
• Clear [Select]
• Go to Next Field
• Exit Loop If [Get (ActiveFieldName) = gTemp]
End Loop
This script works fine in earlier versions of FileMaker.
Just use Status (CurrentFieldName) in place of Get
(ActiveFieldName).
Regardless of how many fields you have on the layout, this script
simply jumps from field to field until it has completed a cycle of all
the fields in the tab order. It "knows" when it's arrived back
to the top because you store the first field's name in a global
field at the top of the script. Note there's no field name
specified for the Clear step -- it simply operates on the currently
active field.
The script above clears data from a single record. If you
want to clear the data from your entire database, you could find
all
records and loop through them one-by-one, or you could use the
Replace script step instead of Clear. Whatever method you use, you
want to be sure you're the only user in the database when the script actually
runs because record-locking conflicts can cause the script to halt or prevent
data from being cleared.
There's another way you can approach this problem. Make a clone
of the database, thus clearing out all your previous year's data.
Then import just the employee names (and any other pertinent data) from the
old file. The scripting solution is the way to go when you can't easily get physical access
to the files to make a clone, but if that doesn't seem to be
an issue for you, cloning and importing should be a fast and easy solution.
No comments:
Post a Comment