Set Field modifies data without interacting with the layout directly and thus does not trip script triggers. This is normally desirable behavior and the script that sets the field can also include a perform script step to perform the same script as the OnObjectSave trigger performs.
If you want the script trigger to be tripped by your script, you can use one of the script steps that starts with "insert" to modify the contents of this field.
Adding an insert script step to the button gives me the desired behavior. Thanks much.
On a similar note, I also have a text field that is defined as a checkbox that has an OnObjectSave event. Every time I check or uncheck an item in this field the script is triggered. I expected it would only trigger after I committed the record by clicking outside the field or pressing enter. Interestingly enough, a modified timestamp I defined only updates after I commit the record, not each time I check or uncheck an item. To your knowledge is this the desired behavior?
As far as I know, but I use OnObjectModify with check box and radio button formats in most cases so I haven't really had a need to use OnObjectSave with it. A "save" on a field and a commit records aren't exactly the same event so I'm not surprised to see what you describe.
I am trying to create an edit history, so I am recording the contents of the field to another table when a user finishes making changes to it. I don't want a record of each letter or word they change. I just added a get ActiveFieldName to the triggered script to test if the field that is that is being modified still has focus, if it does then I don't write the edit history record. This seems to be working.
Again, thanks for you input.