Concaténer des valeurs de table dans une variable de chaîneJ'ai une table de caractères et je souhaite produire une variable de chaîne des valeurs concaténées de chaque colonne à utiliser comme argument d'une fonction.
Disons que c'est ma table de données:
Colonne1 Colonne2
Article1 Valeur1
Article2 Valeur2
Article3 Valeur3
Article4 Valeur4
Article5 Valeur5
. . . . . .
Le tableau aura 2 colonnes mais n'importe quel nombre de lignes. La sortie que je recherche est celle-ci :
strColumn1 = 'Item1','Item2','Item3','Item4','Item5'
strColonne2 = 'Valeur1','Valeur2','Valeur3','Valeur4','Valeur5'
Toute aide très appréciée !
Re : Concaténer des valeurs de table dans une variable de chaîne@RonSwanson ,
Assurez-vous simplement que le nom de la colonne est correctement orthographié. Supprimez de préférence l'espace dans le nom de la colonne.
Re : Concaténer des valeurs de table dans une variable de chaîneOn dirait que vous essayez de créer une liste SQL IN.Voici une autre approche :
dt = New Table( "Untitled 81", Add Rows( 2 ),
New Column( "Column 1", Character, "Nominal", Set Values( {"Item1", "Item2"} ) ),
New Column( "Column 2", Character, "Nominal", Set Values( {"Value1", "Value2"} ) )
);
col1_list = column(dt, "Column 1") << get values;
col2_list = column(dt, "Column 2") << get values;
strcolumn1 = "('" || concat items(col1_list, "','") || "')";
strcolumn2 = "('" || concat items(col2_list, "','") || "')";
Si l'une des colonnes est numérique, la liste renvoyée par get values sera une matrice et vous devrez parcourir la matrice pour convertir tous les éléments en chaînes.
Re : Concaténer des valeurs de table dans une variable de chaîneLa commande Col1Vals a fonctionné, cependant, a obtenu l'erreur suivante lors de l'utilisation de la commande Col2Vals :
Col2Vals = dt : Colonne 2 << obtenir des valeurs ;
L'accès à la table de données délimitée nécessite une colonne ou une variable de table de données dans l'accès ou l'évaluation de 'dt:Column 2' , dt:Column 2
Dans le script suivant, erreur marquée par /*###*/
Col2Vals = dt:Colonne 2 << obtenir les valeurs
Re : Concaténer des valeurs de table dans une variable de chaîne@RonSwanson ,
Peut-être quelque chose comme ça
dt = Current Data Table();
Col1Vals = dt:Column 1 << get Values;
Col2Vals = dt:Column 2 << get Values;
// If you are specific about how the output looks, you can try the following, else
// the above lines should give you what you want
Str1 = "";
Str2 = "";
for(i = 1, i <= N Items(Col1Vals), i++,
If(i == 1,
Str1 = Str1 || Col1Vals[i];
Str2 = Str2 || Col2Vals[i];
,
//else
Str1 = Str1 || "," || Col1Vals[i];
Str2 = Str2 || "," ||Col2Vals[i];
);
);