📘【工程師白話解說】為什麼 Spotfire IronPython 常出現「變數不存在」錯誤?一次搞懂資料表、清單、視覺物件的正確關係
🧠 前言:為什麼這類錯誤「看起來很簡單,卻一直修不好」? 很多人在使用 Spotfire + IronPython 做自動化報表時, 都會遇到類似下面的錯誤訊息: ❌ name 'xxx' is not defined 乍看之下好像只是「拼字錯誤」, 但實際上, 背後反映的是「資料流程設計」的問題 。 這篇文章會用「完全不懂程式的人也能懂」的方式, 一步一步說明: 這個錯誤到底在說什麼? 為什麼明明「前面好像有資料」,後面卻說找不到? Spotfire 裡「資料表、清單、畫面元件」到底是什麼關係? 工程師實務上是怎麼避免這類問題的? 🧩 一、什麼是「變數不存在」錯誤?(白話版) 先把專有名詞拿掉,我們用生活例子來說。 📦 想像你在廚房做菜: 你跟朋友說:「把 那鍋湯 拿來」 但你 從來沒煮那鍋湯 朋友就會回你一句: 「哪一鍋?我根本沒看到啊」 在程式世界裡,這句話就叫做: 「變數不存在(not defined)」」 🧱 二、Spotfire 裡其實有三種「不同層級的東西」 很多錯誤不是寫錯,而是「搞混層級」。 1️⃣ 資料表(像 Excel 表格) 裡面有很多列(row)和欄位(column) 例如:產品、日期、設備代碼 👉 工程師會把它想成: 資料的來源 2️⃣ 清單(從資料表整理出來的一組值) 例如: 從「設備代碼」這一欄 整理出「不重複的設備清單」 👉 這是一個 中間產物 3️⃣ 視覺元件(畫面上的表格 / 圖表) Spotfire 畫面上看到的表格 其實是「顯示資料的工具」 👉 它不是資料本身,而是「顯示資料的窗口」 🔄 三、真正的問題:資料流沒有「...