Free Trial

Forum - Deutsch

Suchen Sie nach Antworten, stellen Sie Fragen und teilen Sie Ihr Alteryx-Wissen.
GELÖST

changing column headers

tim94
Atom

Hi all,

 

I am currently working on a financial gross cost and headcount report. With the help of Alteryx the incoming Excel table shall be reordered (f. e. most important regions at the top), less important regions summarized in a "left over" position and the whole report eventually formatted. 

 

The report comes in with the following structure:

 

tim94_0-1600344334071.png

 

Obviously, there is more to the table, that's just the first row. The first row should be more or less my column headers in my output. The problem is that both the first row and the current column headers change from time to time. "FC6" for example could be "FC9" in a few months. So can the current column headers that you see in that picture change once we slide into 2021 (FY2020_4 becomes FY2021_4). So there is no consistency in my column header naming which is my biggest problem as all the formula and select tools that follow won't recognize the columns anymore as soon as only one column comes in with a different name.

My workflow ends with the Table tool and Render Tool. So even if I created a manual consistency within my column headers which I did (f. e. naming the columns "previous FC" and "current FC") and wanted to add an hint of the actual description at the end of the workflow (f.e. "previous FC (FC3)" and "current FC (FC6)"), there will always be the Table tool that won't be able to process the change.

 

Maybe you guys know a solution for this, it actually has caused me quite an headache. 

 

Thanks a lot in advance!

 

Best,

 

Tim 

 

 

5 ANTWORTEN 5
grossal
15 - Aurora
15 - Aurora

Hi @tim94,

 

can you upload a one-row Excel with two versions (changed dates) and a desired output (after the render)?

 

I think there are a couple ways to approach this. A double dynamic rename will probably be the easiest solution. 

 

Do a positional dynamic rename first to get a consistent column heading for the formulas and do a positional dynamic rename in the end to get your names right for the render.

 

 

Best

Alex

 

PS: You are currently in the German forum.  

tim94
Atom

Hi Alex,

 

sorry, war das erste Mal, dass ich etwas poste - dachte, ich sei direkt im internationalen Forum.

 

Vielen Dank schon mal für deine Mühen. Ich habe gerade mal mit dem positional dynamic rename herumgespielt. Denke mal, du meinst positional deshalb, weil man dann einen Right-Input anschließt. Weiß allerdings noch nicht, was du genau meinst. Dynamic Rename mit ausschließlichem Left-Input nutze ich häufig und so auch in dem Workflow. Daher ist mir das Tool natürlich nicht unbekannt, aber dass ich die erste Zeile aus dem Right-Input für die Spaltenbezeichnung des Left-Input nutzen kann, sehe ich irgendwie nicht. 


Aber das Problem liegt ja eigentlich bei dem Table-Tool. Alle Renames, die davor stattfinden, kann das Table-Tool ja dann bei Abweichungen irgendwann nicht mehr verarbeiten. Eigentlich müsste ich kurz vor dem Render-Tool und nach dem Table-Tool ansetzen, aber dann befinde ich mich ja schon in dem Table-Layout und da komme ich m. E. n. ja nicht mehr an die Spalten ran.

 

Habe dir mal 2 Beispielmonate als Input und basierend auf dem 2. Beispielmonat den gewünschten Output als Excel rangehängt.

 

Beste Grüße

 

Tim 

grossal
15 - Aurora
15 - Aurora

Vielleicht habe ich dich auch falsch verstanden, aber mein Vorschlag wäre folgender:

 

1) Du benennst alle Spalten auf Basis der Position um, so dass sie im Workflow in allen Formel-Tools funktionieren.

 

2) Du baust darauf basierend das Table-Tool auf. Wenn es im Table-Tool wichtig ist, dass du die ursprünglichen Spalten-Bezeichner wieder nutzt, so kannst du auch das Erreichen - mit ein wenig extra-Aufwand. Hier profitieren wir von der Möglichkeit im Table-Tool die Spalten umbenennen zu können. Dies kombiniert mit einem Batch-Macro, ermöglicht es uns die ursprünglichen Werte wieder zu verwenden.

 

Ein Minimal-Beispiel würde wie folgt aussehen:

 

grossal_0-1600374162565.png

 

Im unteren Pfad würde deine normale Datenverarbeitung stattfinden. Der obere erhält uns die Spaltennamen und nutzt sie für die Neubenennung im Macro. Das Macro ist dabei nicht sonderlich komplex:

 

grossal_1-1600374228520.png

Der Schlüssel ist folgende Möglichkeit:

grossal_2-1600374274154.png

 

 

Dieses Feld können wir dann mit dem Control-Parameter ansteuern und der Spalte den ursprünglichen Namen geben:

grossal_3-1600374342427.png

 

Ich bin mir nicht ganz sicher ob du jetzt die 1. Zeile als Namen in der Tabelle oder die ursprünglichen Namen wolltest. Solltest du die ursprünglichen wollen, so kannst du dies auch leicht anpassen, indem durch statt Select-Records mit Field-Info + Cross-Tab das Union speist.

 

Ich hänge dir den Workflow und das Macro an, dann kannst du es selbst ausprobieren. Sollte ich etwas falsch verstanden haben, dann gerne nochmal nachfragen oder wir nutzen mal eine kurze Teams-Session um direkt auf deinen Workflow zu schauen.

 

 

Viele Grüße

Alex

StephV
Alteryx Alumni (Retired)

Hallo @tim94

 

War diese Antwort von @grossal für Sie hilfreich? Wenn Ihnen die Antwort geholfen hat, können Sie diese als „Lösung akzeptieren“.

So können auch andere in der Community nützliche Antworten finden.

 

Danke!

 

 

Steph Vitale-Havreng
tim94
Atom

Top, danke dir! Hat alles super geklappt! 

 

Liebe Grüße

Beschriftungen