Salut tout le monde
J'ai une jointure virtuelle que j'essaie de gérer dans JSL.Je reçois une erreur scriptable [] dessus, et je ne suis pas tout à fait sûr de la cause.
Les tables que je supprime sont extraites par SQL (ironiquement), et j'essaie ensuite de faire une jointure virtuelle sur elles après leur extraction.Donc, ces tables ne sont "enregistrées" nulle part (la plupart des exemples que je vois concernent des tables enregistrées).
tMethodTranslator = Open Database("
{bunch of SQL}
");
tMethodTranslator<< set name ("Method List");
tMethodTranslator:LongMethod<< Set Property("Link ID",1);
tLabData = Open Database("
{bunch of SQL});
");
tLabData:MethodName << Set Property( "Link Reference", Reference Table( "Method List.jmp"));
Je l'ai écrit à l'origine pour référencer directement le tMethodTranslator, qui a généré la même erreur.
L'erreur semble se produire lors de la création de la référence de lien.Ce qui est intéressant, c'est qu'il semble en fait créer la référence.Il apparaît en tant que propriété sous la colonne :MethodName.Mais la référence est clairement brisée.Il n'affiche pas correctement les colonnes supplémentaires de la jointure, et lorsque j'essaie d'utiliser la jointure dans le code, j'obtiens l'erreur suivante :
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 est ce que j'essaie d'extraire à l'aide de la jointure virtuelle).
Notez que si je le fais manuellement, tout fonctionne bien.Je peux même simplement supprimer la référence de lien sur le nom de la méthode, puis la recréer, et cela fonctionne bien.Et j'ai extrait le script de table et il semble identique à ce que j'ai mis.
Des idées sur ce qui se casse ici?
Peu importe à ce sujet.J'ai trouvé un post sur ce problème.Apparemment, vous ne pouvez pas créer de script de jointure virtuelle pour une table qui n'est pas enregistrée
Tables de jointure virtuelles par script dans JMP13
Quelqu'un a-t-il une solution de contournement qui ne m'oblige pas à enregistrer la table?Je suppose que je pourrais simplement faire une jointure de table manuelle, mais j'espérais éviter cela.