[Looker Studio] 報表也可以這樣玩?透過 Looker Studio 製作與外部系統互動的報表
前言
當我們提到「報表」時,相信大家腦海裡浮現的第一個情境會是:連結一個或多個資料來源,將數據結果進行整理與建立關聯性之後,將數據透過表格或是圖表的方式呈現出來,讓我們可以更進一步的從中洞察出潛在的趨勢與結果。
但您可曾想過,報表其實不僅僅只能被動的顯示收集到的數據,還可以將這些數據進一步作為和「外部系統」溝通的關鍵資料呢?舉例來說,當我們在製作每月財務報表時,可能會需要查詢與取得當月份的外匯匯率(比方說向臺灣銀行查詢)。而財務人員為了確認當月份匯率是否與我們申報屬實,也會需要重複一樣的動作來進行確認。
假設我們可以在報表中提供一個連結或是按鈕,方便財務人員其實可以直接透過這個連結或按鈕,直接就幫我們連結並調閱指定日期的匯率結果的話,這樣是不是更提升了報表的便利性呢?
所以今天就想跟各位讀者聊聊,這樣的功能該怎麼來實現!
範例情境
利用日期以及幣別欄位,透過 Looker Studio 按鈕元件來快速查詢臺灣銀行指定貨幣當日的匯率
要實現這樣的功能,其實關鍵在於連結的外部系統是否可以透過特定的網址架構或是參數,來顯示對應的網頁結果。因此就讓我們先來觀察一下臺灣銀行歷史匯率查詢的網址是否有什麼特別的特徵。
舉例來說,假設查詢 2025-2-10 這天的美金兌台幣的匯率,連結到臺灣銀行查詢後的網址如下:
https://rate.bot.com.tw/xrt/quote/2025-02-10/USD/spot
接著我們改成查詢 2025-2-11 這天的日幣兌台幣的匯率,網址如下:
https://rate.bot.com.tw/xrt/quote/2025-02-11/JPY/spot
所以根據上面的結果,我們可以發現到兩個重點:
- 想要查詢的匯率日期會出現在網址上,而且是以 {{西元年(4碼)-月份(2碼)-日期(2碼)}} 的方式編碼
- 想要查詢的匯率幣別也會出現在網址上,而且是以 ISO 4217(3碼) 的方式編碼
因此統整一下,也就是說在「臺灣銀行歷史匯率查詢的網址」,如果我們想要快速的查詢指定的日期與幣別匯率的話,可以使用以下這樣架構的網址:
https://rate.bot.com.tw/xrt/quote/{yyyy-mm-dd}/{ISO 4217貨幣代碼}/spot
在瞭解上述的規則之後,讓我們來開始實作看看吧!
報表實作
根據本次範例的情境,我們需要有幾個資料欄位:
- 日期,且需要將它編碼成 {{西元年(4碼)-月份(2碼)-日期(2碼)}} 的格式
- 幣別,符合 ISO 4217(3碼) 的格式
- 連結網址,會依據對應的日期與幣別欄位,最終整併成 https://rate.bot.com.tw/xrt/quote/{yyyy-mm-dd}/{ISO 4217貨幣代碼}/spot 的格式
為了方便展示這個範例,因此準備了一個範例的資料。這個資料相當的單純,包含三個欄位:「日期(Date)」、「金額(Cost)」以及「幣別 (Currency)」。
其中「日期」與「幣別」剛好也是我們所需要的欄位,也是一般報表資料會有的欄位,因此這部分我們就不多做說明。將重點放在介紹這類型應用的第一個重點,就是如何隨著日期與幣別欄位,動態產生出對應的連結網址!
其實要達成這個目的,我們只需要新增一個欄位,並透過 Looker Studio 的 CONCAT 連結字串的這個函式就可以達成。詳細的設定步驟如下:
【步驟一】點選工具列的「資源」>「管理已新增的資料來源」
【步驟二】找到我們要維護的資料來源,以本次的範例為例,找到剛剛所匯入的,上面提供的那個範例資料來源後,點擊「編輯」
【步驟三】選擇「新增欄位」>「新增計算結果欄位」
【步驟四】利用 CONCAT 函式,把「臺灣銀行歷史匯率查詢」的網址放進來後,將「日期」以及「幣別」的部分,換成我們資料的欄位,並透過「,」將字串和欄位合併起來。
舉例來說,原始網址是 https://rate.bot.com.tw/xrt/quote/2025-02-10/USD/spot 的話,就要將「2025-02-10」這幾個文字換成我們的日期欄位「Date」,「USD」的文字換成我們的貨幣欄位「Currency」。
然後因為我們是使用 CONCAT 的函式,因此根據函式的規則,我們把所有要連結在一起的字串中間,都利用「,」來將它隔開,因此最後完整的字串如下:
CONCAT('https://rate.bot.com.tw/xrt/quote/',Date,'/',Currency,'/spot')
【步驟五】最後給這個新的欄位一個可以識別的名稱,以本範例為例將它取名為「link_url」,然後按下右下角的「儲存」按鈕。
【步驟六】完成後重新回到資料欄位清單,可以看到我們新增的欄位已經出現在裡面了,但是這邊還有第二個重點,就是我們需要將欄位的類型,調整為「網址」的資料型態。因為只有「網址」類型的資料型態,在表格或是按鈕上才會有「點擊連結到外部網頁」的功能喔!
【步驟七】最後我們來驗證一下這個設定的結果,首先先選用最簡單的「表格」圖表,將所有的欄位都新增進來 (包含剛剛建立的 link_url),結果如下圖:
【步驟八】仔細觀察一下「link_url」欄位,我們可以發現到網址的「日期」和「貨幣」欄位,確實會依據資料動態的填入對應的資料:
【步驟九】最後我們試著點擊一下「link_url」欄位,可以發現會開啟瀏覽器新的分頁,也確實顯示對應日期與幣別的匯率囉!
加碼補充
上面的範例,我們是透過表格的方式來呈現點擊後,開啟新的分頁連結到外部的網站。但其實我們也可以透過「下拉式清單」+「按鈕」的控制項,來製作一個專屬的查詢報表,它的概念如下:
【步驟一】在頁面上新增 2 個下拉式清單和按鈕的控制項。
點擊工具列上的「新增控制項」>「下拉式清單」或是「按鈕」
【步驟二】日期的控制項,欄位我們選擇「Date」的日期欄位,並將它更名為「請選擇日期」
【步驟三】幣別的控制項,欄位我們選擇「Currency」的幣別欄位,並將它更名為「請選擇幣別」
【步驟四】按鈕的控制項,按鈕動作類型請選擇「導覽」,然後接下來是這個功能的關鍵,在按鈕連結網址的這個部分,請選擇「動態連結 (來自維度)」,然後在選擇包含網址的維度選擇我們剛新增的欄位「link_url」,接著可以勾選下面的「在新分頁中開啟連結」的功能。
【步驟五】完成之後我們就可以測試。當我們選擇好「日期」以及「幣別」之後,點擊「查詢匯率」的按鈕後,就會發現跟剛剛表格的模式一樣,會開啟新的分頁,且正確查詢我們所指定的日期與幣別的匯率囉!
結語
以上是本次分享給各位讀者的文章內容。
其實這個範例只是個開頭,重點想要傳達的是報表本身其實不單單只能被動的顯示收集到的數據,而且還可以利用這些數據欄位,進一步作為向外部系統查詢的關鍵資訊,比方說查詢匯率、天氣、定位地圖位置,甚至是跟公司的系統結合,又或者是和 AI 工具結合等。透過這樣的應用,可以讓我們的報表有更多應用的可能性!
如果您也有不錯的應用案例,也歡迎您來信分享喔!