Subscribe Bookmark RSS Feed

Changing variables in application

natalie_

Community Trekker

Joined:

Jan 6, 2016

Hi everyone,

I have an application with several number input boxes where the user can enter limits for test conditions and click an update button.  Once that is done, the user can press a button to get the report.

Without having to close and reopen the application, how could the user change the variables a second time?

I see this error when I press the update button for the limits:

Send Expects Scriptable Object in access or evaluation of 'Send' , kLL <<  /*###*/get/*###*/

1 ACCEPTED SOLUTION

Accepted Solutions
Solution

The memory variable kLL has apparently been assigned to some type of display box....I assume a Number Edit Box.  When you have the statement kLL << get, it passes the message to the kLL object to get and return the value of it.  It returns it to whatever memory variable is on the left side of the = sign.  So the statement kLL = kLL << get, ends up changing the memory variable kLL from a pointer to a display object, to a scaler memory variable, containing the numeric value from the display object, leaving your display object without a way to reference anymore.

Jim
4 REPLIES
txnelson

Super User

Joined:

Jun 22, 2012

It appears that something in your code is deleting your object kLL.  Being able to run multiple times from an open display window isn't an issue for JMP, so it must be something in your code that is reusing common names, etc.  If you can share some of your code, I might be able to be more specific in my response.

Jim
natalie_

Community Trekker

Joined:

Jan 6, 2016

Thanks for the reply.

I solved it.  I had many lines with:

kLL = kLL<<get

And I changed the variable name to kLL=kLLVar<<get.

What does the original line deleting objects?

Solution

The memory variable kLL has apparently been assigned to some type of display box....I assume a Number Edit Box.  When you have the statement kLL << get, it passes the message to the kLL object to get and return the value of it.  It returns it to whatever memory variable is on the left side of the = sign.  So the statement kLL = kLL << get, ends up changing the memory variable kLL from a pointer to a display object, to a scaler memory variable, containing the numeric value from the display object, leaving your display object without a way to reference anymore.

Jim
natalie_

Community Trekker

Joined:

Jan 6, 2016

Thanks for the explanation Jim!