Jump to content
Claris Engage 2025 - March 25-26 Austin Texas ×

This topic is 5541 days old. Please don't post here. Open a new topic instead.

Recommended Posts

Posted (edited)

hi

fms10/fmp10/fmp10a

a series of fields on a layout have script triggers onObjectExit

The layout should have no tab order

The aim is to allow the user to enter a field value, tab out of the field and thereby trigger a script to force a commit/refresh so that the changed data is immediately updated on other concurrent user screens.

with no object (i.e. no tab order) as such, tabbing out does not work, as there is no destination object to tab to.

if a 'harmless object is defined, in order to make tabbing out of a field work, then the record stays 'locked' in a multi-user environment

The aim is to avoid having to have the user click out of the field in order to commit the record; the user population is transient (agency staff) and can not be relied on (quite reasonably) to know or remember to click out of the field

if there is an object in the tab order, then the tab out works and the commit/refresh script steps execute, but then the tab object effectively locks the record

I'm missing the obvious perhaps

Edited by Guest
Posted

if a 'harmless object is defined, in order to make tabbing out of a field work, then the record stays 'locked' in a multi-user environment

I tested this by using a BUTTON as the "harmless object" - the record does not remain locked. I made the button execute the same OnObjectExit script, which only contained "Commit Record(s)"

Posted (edited)

yes, I was misinterpreting 'locked'; traditional , if inaccurate, empirical interpretation: if you can see the dashed field borders, the record is 'locked' i.e. not committed

the cursor can it seems, be left in a field, and not be locked to entry by another user, untill the first user presses a key again. Not particularly elegant (or intuitively convincing).

I just worked up this, which does exactly what I want

no tab order on the layout

user can type normally into the field, and exit the field and commit, using tab or return or enter.

field script trigger: OnObjectKeystroke

Script: commit_triggerkeystroke

# just for monitoring

Set Variable [ $_keystroke; Value:Code( Get ( TriggerKeystroke ) ) ]

# triggerkeystroke: tab = 9

# triggerkeystroke: return = 13

# triggerkeystroke: enter = 10

If [ Case(

Code( Get ( TriggerKeystroke ) ) = 9 ; 1;

Code( Get ( TriggerKeystroke ) ) = 10 ; 1;

Code( Get ( TriggerKeystroke ) ) = 13 ; 1; )]

Commit Records/Requests

[ Skip data entry validation; No dialog ]

End If

Edited by Guest

This topic is 5541 days old. Please don't post here. Open a new topic instead.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.