I'd love to have the ability within a script to determine if the script is running in response to another script, or if it's running in response to user input.
If I could have a conditional like:
println("I was called by another script!");
I'd be one happy camper. Better yet, this.CallingScript - null if not called by script, otherwise contains the name of the calling script. That would make me a happy camper with a cooler full of my favorite beverage.
The Change Log for records shows an icon for actions initiated by script. I wonder if this is something that's available and just not documented?
Just a quick observation and suggestion... so it seems that in Security the "Workflow" permission allows you to see the "Workflow Actions" tab but you need the "Associated Workflow" permission to see the "Workflow" tab.
Also, it's confusing that there are two "Current State" columns available to show in a workspace view. At least in Reports it gives you the option to also show the group that they're coming from, although then you have to export that so that's a bit cumbersome to turn that off and on.
I guess I don't really have a suggestion at this point, but it is something that should be cleaned up.
This Idea kinda is a double edged sword. First the use of picklists, both standard and Workspace Types allows a great deal of control over user input when used to limit what can be entered into fields when completing forms.
But there are times when allowing the user to add a new record to the picklist on the fly is also desirable.
Use case is for say a sales bid log that is used to support a quoting workflow. As the salesman get requests for quotes from various customers it becomes tedious to make it a two step process to enter the bid request in the log.
Step 1, see if the customer exists in the customer workspace, if not add it
Step 2, Add the new bid record using the new customer record.
I have been working on several methods to allow the bid log to get entered and use scripting to validate and add the new customer record to the customer workspace. This works but is clunky in that you have extra fields in the bid log that make editing the record clumsy.
It would be nice to have a feature that would allow for new records to get added to the connected workspace if they did not exist.
Not sure the best way to approach this and would guess that scripting would need to be involved. But the basic idea:
if when entering/editing the record that has a workspace based picklist, if the value entered does not exist in the pciklist workspace.
1. Have an Option to add the record, either
a) Similarly to adding linked items records through a pop up or
b) Through a checkbox or some other scripting validation to verify or prompt the user they are about to add the new record
the workflow state disappears from the editor window
create a new workflow state with the same name
create a transition to the new workflow state
try to transition an object to the new workflow state
receive error "<new workflow state> is not the unique short name of a workflow step in the relevant workspace"
It appears the original workflow state was orphaned (still existed but unable to access in the workflow editor) when the transition to it was deleted. The only workaround I could find was to delete the workspace and start over again.