Hi all
I have a virtual join I am trying to handle within JSL. I'm getting a scriptable[] error on it, and not entirely sure the cause.
The tables I am bringing down are being pulled down by SQL (ironically), and I am then trying to do a virtual join on them after they get pulled in. So these tables aren't "saved" anywhere (most of the examples I see are for saved tables).
tMethodTranslator = Open Database("
{bunch of SQL}
");
tMethodTranslator<< set name ("Method List");
tMethodTranslator:MidasMethod<< Set Property("Link ID",1);
tLabData = Open Database("
{bunch of SQL});
");
tLabData:MethodName << Set Property( "Link Reference", Reference Table( "Method List.jmp"));
I originally wrote it to directly reference the tMethodTranslator, that threw the same error.
The error appears to occur in the creation of the Link Reference. What's interesting is that it actually appears to create the reference. It shows up as a property under the :MethodName column. But the reference is clearly broken. It doesn't show the extra columns from the join correctly, and when I try to actually use the join in code I get the following error:
The referenced table, '/Method List.jmp', is missing.The column 'ShortMethod[METHODNAME]' cannot be constructed as specified.Not Found in access or evaluation of 'Variability Chart' , Bad Argument(
(ShortMethod is what I am trying to extract using the virtual Join).
Note that if I do this manually, everything works fine. I can even just delete the Link Reference on Method Name, then re-make it, and it works fine. And I extracted the table script and it looks identical to what I put in.
Any thoughts on what's breaking here?
Nevermind on this. Found a post about this issue. Apparently you can't script a virtual join for a table that isn't saved
Virtual Join Tables by Script in JMP13
Anyone have a workaround that doesn't require me having to save the table? I guess I could just do a manual table join, but I was hoping to avoid that.