Hallo an alle,
Ich habe mehrere Spalten:
1-Spalten „Startdatum“.
2- Spalten „Enddatum“.
Normalerweise sollte jede Spalte, die zur Gruppe (2) gehört, auch zur Gruppe (1) gehören und umgekehrt. Wir sollten also in beiden Gruppen die gleiche Anzahl von Spalten haben.
Allerdings gehören Spalten, die zu Gruppe 1 gehören, nicht zu Gruppe 2 und umgekehrt.
Beispiel : „Startdatum 9899“, aber die Spalte „Enddatum 9899“ existiert nicht.
Das Ziel besteht darin, die Schnittmenge dieser beiden Gruppen zu ermitteln, sodass in den beiden Gruppen die gleichen Spalten vorhanden sind.
Mich inspiriert folgender Code:Names Default To Here(1);
dt = Current Data Table();
// build
aa_duree = Associative Array();
aa_nonduree = Associative Array();
For Each({col_name}, dt << Get Column Names("String"),
If(Word(1, col_name) == "date début",
aa_duree[Word(-1, col_name)] = col_name;
, !IsMissing(Regex(col_name, "")),
aa_nonduree[col_name] = 1;
,
continue()
);
);
show(aa_duree);
show(aa_nonduree);
aa_duree_copy = aa_duree;
aa_duree_copy << Intersect(aa_nonduree);
cols_to_keep = Insert(aa_duree_copy << get keys, aa_duree_copy << get values);
aa_duree_copy2 = aa_duree;
aa_nonduree_copy = aa_nonduree;
aa_duree_copy2 << remove(aa_nonduree);
aa_nonduree_copy << remove(aa_duree);
cols_to_remove = Insert(aa_nonduree_copy << get keys, aa_duree_copy2 << get values);
show(cols_to_keep, cols_to_remove);