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

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

Recommended Posts

  • Newbies
Posted

Okay, I've been searching around this forum for the past couple of days in hopes of finding a solution to what I'm trying to do. Sadly, I didn't find anything that may help me out, so I am posting this to potentially obtain some assistance from the gurus.

I'm creating a semi-basic call management database. On the primary call screen, where all of the caller information is entered, there is a drop-down option called 'Call Status'. Basically, this is either 'Open' or 'Closed'.

What I'm trying to do is this: when the 'Closed' option is chosen from the 'Call Status' drop-down menu, I want to trigger an event that locks the record from being modified. On the other hand, when the 'Call Status' option is changed to 'Open' (or remains 'Open'), I want the record to be unlocked and modifiable.

Am I missing something? Is there a way to do this without wreaking too much havoc on the database?

  • Newbies
Posted

You know ... I've read through that post at least a dozen times and cannot figure out for the life of me how it applies to what I'm trying to do. I'm finding it difficult to believe that I'm just too ignorant to figure it out, but who knows? Odder things have happened.

:

I can't see where the above steps will allow me to lock / unlock every field on a particular layout depending on the option chosen in my 'Call Status' drop-down menu.

Posted

It doesn't lock fields on a particular layout - it locks the entire record, regardless of layout. This is the only secure method.

If instead of security you just want a convenient method to prevent accidental modification of records, then I would suggest you use two sets of fields - one enterable, the other not - in a tab control object. You can select the correct tab by triggering a script on record load and on modification of the status field.

  • Newbies
Posted

Right. So, I went back and played with things a little bit more and finally decided on the best course of action for my particular purpose(s).

I sort of went with what you suggested, but I instead duplicated my 'Call Management' layout and configured all of the fields, with the exception of 'Call Status', to be non-modifiable.

I then set up a few triggers on both layouts:

OnRecordLoad for Modifiable Layout - Checks to see if the value for 'Call Status' is "Open" or "Closed". If it is "Open", the script dies and the user can enter data into all of the fields as needed. If it is "Closed", the user gets switched to the non-modifiable version.

OnObjectModify for Modifiable Layout - If the 'Call Status' is changed to "Closed", the user gets switched to the non-modifiable version of the layout. Of course, if the 'Call Status' field is blank or is set to "Open", nothing changes.

OnObjectModify for Non-Modifiable Layout - If the 'Call Status' gets changed to "Open", the user gets switched to the modifiable version of the layout and we all live happily ever after (hopefully).

And yes ... the point of modifiable versus non-modifiable was more a worry of accidental deletion than of security for me and this project.

Cheers for leading me in the right direction.

This topic is 5552 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.