[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 285
  • Last Modified:

Limit Field Modification in Data Entry

I'm working on a tool testing and certification database where I have a keyboard wedge importing data recieved from a tester to the wedge, and then to the database.

At the start, the fields are obviously empty and I have the tabs set up to go from one reading to the next and the wedge with automaticly insert a {TAB} to move the fields along.

Is there a way to hinder a user from changing any numbers once a result is entered?
2 Solutions
FileMaker can't tell whether it's the wedge or a real person doing the typing, so basically all you can do is allow data to be entered once, but not modified once it has been entered initially.

Assuming FM7 or later, you can accomplish this by creating a custom privilege set, and giving the user rights to create records, but restrict their ability to edit records. To do this, you create a privilege set that gives the user the rights they need for normal operation, then specify Custom Privileges in the Record entry under Data Access and Design.
Then, specify the table you want to restrict editing for, and specify that they can create, but not delete records. Then, for Edit, specify Limited, and enter a boolean expression that evaluates whether or not the required fields are blank. For example, if I have three fields, AAA, BBB, and CCC, I would enter something like this as my formula:
  isempty(AAA) and isempty(BBB) and isempty(CCC)

This will allow data to be entered in the record as long as all three of those fields are blank. Once it's committed, if even one of those fields isn't blank anymore, further editing is then prevented.

If you have an older FileMaker version, you're probably looking at a lot more work to do something like this.

CruizectrlAuthor Commented:
Tried that.  For some reason it doesn't work as swift as I would like it too.  I can still go back to a previously entered field and change the data.  But after a click on the outside to allow the record to commit the changes.  THEN the block begins.  But not just for the entered fields,  but ALL of them.  But thats okay.  I have another fields the runs % calculations and then returns a PASS/FAIL to another fields.  All I had to do is make the field reject changes and block the fields to be entered while browsing.  Close to what I need.
there are plenty of ways to do this, but fm post validation is a way far from perfect since clicking outside triggers it.
I am personnaly still using my old fm4 method (I used that for barcodes entry, close to yr stuff).
I create as many globals field as I need to get from my barcode reader.
I create a specific layout for these and have the user to enter all of them, then validate the window (you need an extra barcode to trigger the script button) with a script which checks all globals fields contents then create the new record with them if all ok, otherwise loops back and ask the user to correct.
why's that? because free entry is bad, but unmodifiable is almost the same with these manuels operations where you always expect errors. so you need a way to check data before creating the record and even allow to give up with no record creation, which filemaker hardy does.
a major improvement would be to be able to do it with variables instead of global fields, but that maybe v9?!

Featured Post

Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now