• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers

How to concatenate a carriage return or new line to a captivate variable?

Guide ,
Oct 14, 2011 Oct 14, 2011

Copy link to clipboard

Copied

I need to provide more detailed feedback than captivate makes possible based on what users do in questions.  I've got this mostly working, but I need to put the feedback for each question on a new line.  Captivate has resisted my best efforts to make this happen.

Any suggestions?

Thanks in advance!

TOPICS
Advanced

Views

6.9K

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines

correct answers 1 Correct answer

Guide , Oct 18, 2011 Oct 18, 2011

OK, this does work with the TextAreaWithVariables widget, but not the TextArea widget that comes with Captivate. And it does not add to the file size.

Thanks, Steve, Lilybiti, and Jim, for sticking with me!

Likes

Translate

Translate
Guide ,
Oct 18, 2011 Oct 18, 2011

Copy link to clipboard

Copied

  1. No. This is what we who do more technical software call "a cut down version of the file that demonstrates the bug." In actuality, the concatenation is the only part that we really do (on failure of whatever the interaction is).  Showing the caption on screen is just to help you follow what is going on.
  2. That part is correct.  In my actual production file, it is called questionTopic, but the name of the variable is not important to the bug.
  3. What the text caption actually stores is either
    1. Great! you didn't miss any questions (or something like that) or
    2. You missed questions in these topics: +
      1. First question they missed
      2. Second Question they missed
      3. etc.

I sort of assumed that since I'd already explained in this thread that the entire purpose of this exercise was to keep a running string of what questions they missed, the bug file only had to demonstrate the bug that I was encountering, not the entirety of what I was doing.  I thought that would be obvious from the logic in the advanced action.  Sorry bout that.

Hope this clarifies.

In short, I think I've encountered a bug where the Captivate team intended to give us more flexibility in the Assign action, but never finished or documented it.  Because it's not documented, I am not finding a way to "escape" the and's, or's, and not's in my string variables so that they don't evaluate to true or false, but instead stay the string.

Presumably, I could also create a text caption for every question they could have missed and only show the ones they missed at the end, but I don't think Captivate is sophisticated enough to allow me to lay them out on the screen in such a way that those they  didn't miss don't leave big gaps.

Thanks;

Amy

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Oct 18, 2011 Oct 18, 2011

Copy link to clipboard

Copied

Must be very stubborn, but you can put different variables in one text caption, so that you can populate the variables with advanced actions, and just show the text caption (only one needed) after those manipulations.

Advanced actions, although they are converted to Actionscript on runtime, have limitations, I'm the first to agree, and concatenation in the way you tried to is not functioning. And there are different system variables available that can help you to store the missed answers.

OK, I give up, feeling that we are talking different languages. You are starting from a programmer's view and background, I'm starting from my knowledge of the Captivate functionalities that can be extended by advanced actions and/or widgets. Sorry to have bothered you that long, wish you all the best


Lilybiri

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guide ,
Oct 18, 2011 Oct 18, 2011

Copy link to clipboard

Copied

This needs to work for other "developers" who are not advanced enough to be delving into variables and advanced actions.  So they can't be creating one variable per question. Also, Captivate does not do a good job with empty variables, as I have already discovered, so an approach where you showed all the variables on the screen, populated or not, on the screen (and how then do you make sure it's nicely formatted--each to its own line--we're back to the beginning).

I've asked Steve to put this to the Captivate team, so hopefully they will have an answer.

On many of the Adobe forums, the development team will actually answer questions, but I've seen no sign of them on the Captivate forums. Any idea why not?

Thanks;

Amy

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Enthusiast ,
Oct 18, 2011 Oct 18, 2011

Copy link to clipboard

Copied

Thinking out loud.

What about adding hidden text captions to each question instead of adding your text directly to variables? Did you try that already?

I forget what text you want to include, but let's say it's something like:

Q1
This is the question
This is the associated lesson

Append the content of the text captions to your ResultString when the question is wrong. Do the physical line breaks get removed? If and/or is included in the text does it get evaluated as true/false when concatenated?

Also it looks like Jim was saying that /n works if it has leading and trailing spaces, where your example (Amy) had no spaces ... "This is my/nstring" vs "this is my /n string".

Steve

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guide ,
Oct 18, 2011 Oct 18, 2011

Copy link to clipboard

Copied

I don't think you can get the text out of captions, and you can't put text entries in question slides.  Hidden widgets might work, but I'm a bit concerned about what that might do to the file size.

The \n breaks when it goes into the enter slide action--it has nothing to do with the leading or trailing spaces.  The \n problem has mostly been solved by using parentheses around the lesson text instead of a new line, so that's not a problem at this point.

The problem is that when the text contains the word "not", "or", or "and", the entire string becomes true or false, so that what gets concatenated to the variable is 0 or 1.  This is clearly not acceptable.  I am not sure if this is caused by using the Assign action, or if Captivate simply can't handle these words in variable strings at all.

It's certainly worth trying hidden widgets, if only to see if it can be narrowed down to the Assign action, or if it's a global problem.

Thanks;

Amy

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guide ,
Oct 18, 2011 Oct 18, 2011

Copy link to clipboard

Copied

OK, that doesn't work.  The variable gets assigned to whatever the last widget that is feeding into it has in its text.

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Enthusiast ,
Oct 18, 2011 Oct 18, 2011

Copy link to clipboard

Copied

😕

OK I asked someone at Adobe. Maybe we can get some extra light shed on the matter.

Steve

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guide ,
Oct 18, 2011 Oct 18, 2011

Copy link to clipboard

Copied

OK, this does work with the TextAreaWithVariables widget, but not the TextArea widget that comes with Captivate. And it does not add to the file size.

Thanks, Steve, Lilybiti, and Jim, for sticking with me!

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Oct 18, 2011 Oct 18, 2011

Copy link to clipboard

Copied

That is what I told in a previous answer, that you cannot control with the default TextArea widget, same for radiobuttons and checkboxes widgets, that Jim extended kindly on my request.

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guide ,
Oct 18, 2011 Oct 18, 2011

Copy link to clipboard

Copied

I think you misunderstood what I am saying.

Assigning "The quick brown fox did not jump over anything" to captionText in the Assign action of slide enter means that captionText contains true.

Using two regular TextArea widgets, where the first is on slide 1 and sets captionText to "The quick brown fox jumps over the lazy dog" and the second, in slide 2, sets captionText to "The quick brown fox did not jump over anything", you get "The quick brown fox did not jump over anything" in both slides. (In other words, the first TextArea is overwritten by the second, even though the movie has not advanced to the place where the second widget exists).

Only when you use the TextAreaWithVariables Widget to do the assigning does it work correctly.

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guide ,
Oct 14, 2011 Oct 14, 2011

Copy link to clipboard

Copied

OK, this seems to be the key.  No matter where the value originates, as soon as you assign it in the enter action, that \n becomes visible on the screen. Hmmm

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guide ,
Oct 14, 2011 Oct 14, 2011

Copy link to clipboard

Copied

This sounds like a miserable excuse, but captivate crashed while I was building a cut down file demonstrating the issue. I promised my boss I'd have this course out today, with or without this functionality, so I will need to try again over the weekend.

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Advisor ,
Oct 25, 2011 Oct 25, 2011

Copy link to clipboard

Copied

Just realized why Captivate is not honoring the \n line break.  Looking at the code behind, "\n" is the delimiter for the advanced actions.  Each step in the list is separated by \n in the background.

Then they process it like so:

public function EvaluateScript(arg1:String):*

        {

            var loc1:*=arg1.split("\n");

            ExecuteScript(loc1, 0);

            return;

        }

Hopefully in Cp 6, they'll choose a different delimiter besides a line break (seriously???)

Jim Leichliter

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guide ,
Oct 26, 2011 Oct 26, 2011

Copy link to clipboard

Copied

Any idea why Captivate is evaluating strings with "not", "and", or "or" in them to Booleans?

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Advisor ,
Oct 27, 2011 Oct 27, 2011

Copy link to clipboard

Copied

LATEST

Not 100% sure, but I'd suspect that they're splitting strings into arrays of commands based on operational keywords.  Would be nice to just be able to type in AS3 like you can with the JavaScript panel.  The limitations of Advanced Actions are getting old...

Jim

Likes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines