Side Project Document
  • 如果沒能一次成功,那就叫它 1.0 版吧。
  • Stock Price for LINE Notify V1
    • 前言
    • 一、申請玉山富果 API
    • 二、申請 LINE Notify Token
    • 三、環境架設與資料表設定
    • 四、SSIS 設計
      • SSIS 流程圖
      • Move to History Table & Truncate Table
      • Foreach Loop to Get API
      • Lookup File - Chart
      • Lookup File - Quote
      • Join Table to Result Set
      • Post Result Set to LINE Notify
      • Delete Over 3 days Files
      • 事件處理常式
    • 五、安裝教學
  • Stock Price for LINE Notify V2
    • 前言
    • 一、軟體架構與流程圖
    • 二、環境架設與資料表設定
    • 三、Python 程式說明
      • 主程式:Local_Stock_Main.py
      • 取得個股基本資訊:Local_Stock_Meta.py
      • 取得個股交易資訊:Local_Stock_Quote.py
      • 將折線圖發送至 LINE Notify:Local_Stock_Line_Notify.py
      • 資料解密:Local_Encryption.py
      • 排程設定
  • Stock Price for LINE Notify V3
    • 前言
    • 一、軟體架構與流程圖
    • 二、環境架設與資料表設定
    • 三、Python 程式說明
      • Local_Stock_Main.py
      • Local_Stock_Meta.py
      • Local_Stock_Quote.py
      • Local_Stock_Line_Notify.py
      • Create_RSA_Key.py
      • Encrypt_Data.py
      • Decrypt_Data.py
      • 排程設定
      • 加碼:.py 打包成 .exe 執行檔
Powered by GitBook
On this page
  • 控制流程
  • 資料流程
  • Get API Chart & Quote
  • Deserialize JSON & Insert Into Table - Chart
  • Deserialize JSON & Insert Into Table - Quote
  • 連接管理員
  • 事件處理常式
  • 可執行檔:Package(OnError)
  • 可執行檔:Deserialize JSON & Insert Into Table - Chart(OnError)
  • 可執行檔:Deserialize JSON & Insert Into Table - Quote(OnError)
  1. Stock Price for LINE Notify V1
  2. 四、SSIS 設計

SSIS 流程圖

Last updated 3 years ago

控制流程

資料流程

Get API Chart & Quote

Deserialize JSON & Insert Into Table - Chart

Deserialize JSON & Insert Into Table - Quote

連接管理員

  • Chart_Backup、Quote_:Backup檔案連接管理員,用於備份檔案路徑。

  • ErrorFile_Chart、ErrorFile_Quote:檔案連接管理員,當反序列化 JSON 或是 Insert Into Table 執行生發錯誤時,將錯誤 JSON 檔案移動至 ErrorFile 資料夾。

  • Source File_Stock Code:自訂股票代號 txt 的檔案路徑。

  • Stock_API:OLE DB 資料庫連線。

事件處理常式

可執行檔:Package(OnError)

可執行檔:Deserialize JSON & Insert Into Table - Chart(OnError)

可執行檔:Deserialize JSON & Insert Into Table - Quote(OnError)