J'ai découvert, à l'aide d'un exemple de jeu de données, que je pouvais obtenir une liste d'évaluation des axes Y à entrer dans le générateur de graphes.
Le problème, c'est que cela ne semble fonctionner que lorsque j'essaie le code avec un échantillon et non avec ma table de données réelle.
dt = table de données actuelle ();
// (exemple, colonnes dans dt nommées DATE, WW, MODULE, BEOL_1, BEOL_2, BEOL_3, FEOL_X)
colus = dt << Obtenir les noms de colonne ();
B_list = {};
Pour (i = 1, i <= N éléments ( colus ), i ++,
Si (gauche (colus [i], 4) == "BEOL", insérer dans (B_list, colus [i]))
)
str = "";
pour (i = 1, i <= N éléments (B_list), i ++,
colName = B_list [i];
yStr = EVALINSERT ("Y (^ nomColonne ^, Position (1)),");
str = str || yStr;
)
Mais cela continue à échouer à yStr avec une erreur comme:
Nom non résolu: BEOL_1 dans l'accès ou l'évaluation de ' BEOL_1 ', BEOL_1 / * ### * /
Je ne comprends tout simplement pas.
Mon plan a finalement été utilisé eval (parse (evalinsert (constructeur de graphes ())))
Après avoir examiné cette question à nouveau, je pense que ma suggestion d'utiliser le mot clé String devrait résoudre le problème.
L'exemple original selon lequel vous aviez utilisé une liste contenant une liste de chaînes représentant les noms de colonnes.
Mais une fois que vous aurez résolu ce problème, vous rencontrerez un autre problème. L'exemple sur lequel vous basez votre code comporte un point-virgule avant ^ colName ^ et qui manque dans votre code:
yStr = EvalInsert( “Y(:^colName^,Position(1)),”);
Juste une pensée: essayez:
colus = dt << Lire les noms de colonnes (String);
Chaîne est un mot clé qui fera que colus contiendra une liste de noms de chaînes plutôt que des références de colonnes.