Free Trial

ウィークリーチャレンジ - 日本語

トップになるためのスキルをお持ちですか? ウィークリーチャレンジを購読しましょう。ベストを尽くして問題を解決し、解決策を共有して、他のユーザーがどのように同じ問題に取り組んだのか確認しましょう。私たちも解答例を共有しています。

チャレンジ #151: International Bank of Awesome Data - パート II

NicoleJohnson
15 - Aurora
15 - Aurora

先週のチャレンジの解答は こちらで見つけることができます。

 

 

Weekly Challenge Image 303.png先週私たちはInternational Bank of Awesome Data(IBAD)でレッスンを学びました。データが標準化されておらず、クリーンでない場合、データは素晴らしいもの(Awesome)とは言えません。データが標準化されたので、残りの外れ値である [Amount] フィールドに取り組む必要があります。

 

IBADは非常に有名な国際銀行であるため、ドル、ペソ、ユーロ、フラン、ポンド、円、クナ、クロナ、モノポリーのお金など、あらゆる形態の通貨を受け入れます。 本社に報告する金額に数値形式を適用する場合は、さまざまな基準があります。記号や通貨コードを使用して通貨の種類を示すもの、左ではなく右に負の記号を付けるもの、小数のインジケーターにピリオドの代わりにコンマを使用するものなどがあります。さらに、これらの銀行は顧客の残高を顧客の現地通貨で報告します(銀行の現地通貨ではなく)そのため、すべての金額を同じ通貨(レポートの目的でUSD)に変換する必要があります。

 

チャレンジ:
何度も同じ工程(数値形式のクリーンアップとUSDへの変換)を実行する必要があるため、これらの手順を実行する標準マクロ、Number Formatter マクロを作成するように依頼されました。それらはすべての形状とサイズで提供されるため、Number Formatter マクロは、さまざまな異なる数値フォーマットシナリオを処理するのに十分な柔軟性を備えている必要があります。

 

選択した任意の金額のフィールドに対してマクロが実行するべきこと:
ステップ1:ドル記号やその他の数字以外の文字(文字、小数/カンマ以外の記号、スペース)を削除しましょう。
ステップ2:[Debit/Credit]フィールドに基づいて、[Amount]フィールドに負の符号がまだない場合は、マイナス記号を適用してください(数値の左側にあることを確認してください)。
ステップ3 通貨ルックアップリストを使用して現在の米ドルへの換算レートを検索し、[USD Exchange Rate(米ドルの為替レート)]フィールドと[Decimal Indicator(小数のインジケーター)]フィールドの両方を含めてください。
ステップ4:[Decimal Indicator(10進標識)]フィールドがコンマの場合、10進標識がすべてのレコードのピリオドになるように、コンマをピリオドと交換してください。
ステップ5:最終的な[Exchanged Amount(交換金額)]は、その通貨コードに提供されている為替レートを使用して変換された、小数点以下6桁の数値データ型はFixedDecimalである必要があります。.

 

最終的な目標は、3つの地域のファイルすべて(個別または結合)の[Amount (金額)]フィールドをクリーンアップするために使用できる標準マクロを作成することです。 うまくいっていることを示す1つのサインは、変換エラーや警告を受け取らずにワークフロー/マクロを実行できるかどうかです。

 

* 追加のチャレンジとして、Debit/Credit ロジックを適用しないオプションを使用して、[Opening Balance(期首残高)]フィールドでも実行できるようにマクロを作成してください。

sanae
ファイアボール

バッチマクロはよく使うのですが、標準マクロは使ったことなかったです。
追加チャレンジは分からなかったです・・・

スポイラ
■メインフロー
Challenge 151_ja_Start File_sanae_mainflow.png
■マクロ
Challenge 151_ja_Start File_sanae_macro.png

 

 

gawa
ボリード

追加チャレンジは、Oening BalanceだけでC/D判別をどのようにするのかちょっと分かりませんでした。

スポイラ
gawa_0-1642567501041.pnggawa_1-1642567514224.png

 

 

DaisukeTsuchiya
クエーサー

追加のチャレンジは問題の意味がよくわかりませんでした…。

スポイラ
小数点を変換する列を見落としていて、ひたすら正規表現だけで解こうとして少しはまりました。

キャプチャ.JPG

キャプチャ2.JPG

AkimasaKajitani
15 - Aurora
15 - Aurora

できました!

(出張で出遅れました・・・)

 

スポイラ
処理したフィールドにExchangedと頭につけることで汎用的に動くようにしようとしていたのですが、リバースフィールドマップを使うタイミングに気づくのに時間がかかりました・・・。
汎用的に作るのってなかなか頭を使いますね・・・。Alteryxに最初から入っている標準マクロでできたツールがほんと汎用的にできているので感心します・・・。

汎用的なマクロを作るという意味ではこの問題は良問かと思います。

AkimasaKajitani_0-1642823666273.png

Macro

AkimasaKajitani_1-1642823692707.png

 

 追加のクレジットは、Amount用に作ったマクロをOpening Balanceという項目に対しても適用にできるようにしましょう。その際にAmountは[Debit/Credit]フィールドを使ってマイナスをつける必要がありますが、Opening Balanceはマイナスをつける必要がないので、そこはオプションで[Debit/Credit]フィールドを使わないようにできるようにマクロを改良して下さい、ということだと理解しました。

 

Qiu
19 - Altair
19 - Altair
スポイラ
Challenge 151.PNG
ntakeda
コメット

たぶんできました。

スポイラ
ntakeda_0-1653449556732.png