Copy link to clipboard
Copied
Ok, I think I'm still missing a fundamental concept here in Captivate. In an advanced action on a button click, I want to assign variable A with another variable B. Then I want to use a different tab in the advanced action - if the new value for variable A is x, then do something.
The problem is that the second tab checks the variable A value immediately, before it's assigned with variable B - and even if I put a short delay at the start of the action chain. Do I need a widget to do this?
The only way I can manage this now is to assign variable A with B and then go to a different slide and on enter, trigger the next chain of actions and then immediately go to the previous slide, but this looks kind of rough.
I appreciate any advice.
Copy link to clipboard
Copied
What you described could be due to a failure in the logic. All commands in an advanced action are always evaluated in the sequence they appear: from top to bottom, and for the decisions in a conditional action from left to right.
If you could post a screenshot of the Preview of that conditional action, maybe I could detect the flaw? For Preview, use the first button in the top control panel of the Advanced Actions dialog box. That way you'll see all decisions (Then/Else) at once. I think you use the term 'tab' for decision. I try to use always the official terminology as it appears in Captivate's Help.
Copy link to clipboard
Copied
Thanks- that all makes sense. I'm going to check my decisions again before I trouble you further.
I do have a slightly related question. What is the biggest difference between a "shared" action and an "exported" action. It seems like I can just duplicate an exported action.
Copy link to clipboard
Copied
If you have a need for a similar advanced action to be used at different points in your project you can save it a single version of the shared action with placeholders (usually objects or variable) that you can fill in for each iteration of the advanced action. It's easy to create a shared action once, rather than recreating it over and over as separate advanced actions.
An exported shared action is useful when you wish to use a shared action in a different Captivate project. Shared actions appear in your library. From there you can export them as a .cpaa file and then import them into another project. Same benefit of not having to type out an advanced action multiple times, but in this case across multiple projects and not just within a single project.
Here is the Adobe documentation on the procedures for this.
Shared actions in Adobe Captivate projects
Copy link to clipboard
Copied
Only Shared actions can be exported/imported, normal advanced actions cannot. But I suspect you mean that it is possible to copy/paste an interactive object with its attached advanced action(s)? Or do you point to the duplication possibility of an advanced action?
I have published multiple articles about the use of shared actions, and you want me to answer in a short comment in this thread? That is really tough! Not every situation is suited for a shared action, and they need a different approach, way of thinking compared with a advanced action. It doesn't matter whether it is a standard or a conditional action at all. I like shared actions a lot and will always try to use them if possible. Have a look at this blog post, where I use the same shared actions for 5 totally different toggle buttons:
1 action = 5 Toggle Buttons - Captivate blog
The parameters used in shared actions are very flexible: for the compulsory parameters (contrary to the candidate parameters), even if you define it as being a text container when creating the shared action, you can 'fill' that same parameter with an image, a video, an audio object, a group. Some parameters are more strictly defined: states (in CP9), variables, literals. I have a dedicated cptx-file with only much used shared actions. It is a breeze to open that file, which I label MyScriptLibrary as an external library in any new project and drag the necessary shared action to the project. If those shared actions use variables, whether they are defined as parameters or not, those variables will be created in the new project.
More features I love with shared actions: they are in the Library as any other asset, it is very easy to see where they are used (Usage button). For advanced actions it is a pain to find a specific action (couple of months ago I got a file to debug that had over 800 advanced actions) in the dialog box for Advanced actions because the Filter tool is not functional (it is fully functional in the Parameters dialog box, another big advantage). You have to enter a description for the shared action and for each parameter, contrary to advanced actions where you cannot attach comments or descriptions.
Explore my blog if you want to learn why I adopted shared actions in my work flow right away, and never regretted that decision.
Parameters in Shared Actions - Captivate 7 vs. 8 - Captivate blog