🔥 Spotfire 自動匯出報表出現錯誤?完整教學:InvalidOperationException 原因與解法
🧠 前言:為什麼 Spotfire 匯出報表會突然失敗? 如果你在使用 Spotfire 做自動報表(Auto Report),可能會遇到這種錯誤: InvalidOperationException: Invalid operation when system is executing 很多人看到這串英文會一頭霧水,其實它背後的意思很簡單👇 🚨 錯誤核心意思(白話版) 👉 系統還在忙,你又叫它做下一件事,所以它拒絕了你。 就像你在: 電腦還在開 Excel 你又瘋狂連點 5 次開啟 結果就會卡住或報錯。 🔍 用生活例子理解(最簡單) 想像你在做這件事: 打開報表頁面 資料還在跑(Loading) 你馬上按「匯出 PDF」 👉 結果: 系統說:「等一下,我還沒準備好!」 🧨 常見發生情境(工程師實務) 以下是最常出錯的幾種情況: ❌ 情境 1:資料還沒跑完就匯出 表格正在重新計算 Data Function 還沒結束 ❌ 情境 2:切換頁面太快 剛切到新頁面 視覺圖還沒載入完成 ❌ 情境 3:連續執行多個動作 例如: 更新資料 立即匯出 又再觸發下一個匯出 ❌ 情境 4:腳本跑太快(最常見) IronPython 腳本速度太快,Spotfire 跟不上 🛠 解決方法(從簡單到進階) ✅ 方法一:加「等待時間」(最簡單有效) 👉 概念:讓系統「喘一下」 from time import sleep # 暫停 2 秒,等待畫面與資料準備完成 sleep ( 2 ) # 再執行匯出(假設有 export_report() 函式) export_report () 📌 適用情境: 自動報表 批次匯出 資料量大 ✅ 方法二:先切頁 → 等 → 再匯出 # 切換頁面 go_to_page ( "Summary" ) # 等待畫面穩定 sleep ( 3 ) # 再匯出 generate_pdf ( "report.pdf" ) 📌 原因: 👉 切頁會觸發 Spotfir...