簡體   English   中英

如何在每次創建時向 informatica 目標平面文件添加遞增的數字序列

[英]How to add a incrementing number sequence to informatica target flat file everytime its created

我一直在努力尋找解決方案,但我沒有運氣。 我是 informatica 的新手,我在 informatica 中創建了一個帶有目標平面文件的映射。 我的目標平面文件名為Startup_YYMMDD_XXX.csv xxx代表每次創建文件時的序列號。 例如,如果我第一次運行映射,它應該是 001,第二次應該是 002,依此類推。 有人可以幫我嗎?
謝謝你

創建一個持久的工作流變量,並在它運行時在映射中增加它。 將值存儲回存儲庫。 使用它在目標中使用 FileName 端口命名文件

您也可以使用 stg 文件或 DB 表來存儲最后一個 run_id,然后每次運行將其增加 1。這里有更多詳細信息 -

  1. 在目標定義中,添加一個 FileName 端口。
  2. 查找 stg 文件/DB 表以獲取最新的 run_id。 使用任何虛擬列作為查找條件。 確保此數據類型為 NUMBER。
  3. 接下來使用 run_id+1 生成下一個 run_id。 創建一個 output 端口以生成帶有 run_id- 的名稱
    out_FileName = 'Startup_'|| TO_CHAR(SYSDATE,'YYMMDD')||'_'|| LPAD(IIF(ISNULL(latest_run_id),0,latest_run_id) +1,3,'0')||'.csv'
  4. 將 out_FileName 端口上方鏈接到目標中的目標文件名並生成目標。
  5. 將 latest_run_id+1 存儲在同一個 stg 文件中。

但是大多數 ETL 系統通過一些工具來跟蹤這個運行 ID。 您也可以使用這些工具生成的 ID。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM