簡體   English   中英

SSIS:將創建日期添加到腳本任務中的變量

[英]SSIS: Add Creation Date to Variable in Script Task

我正在嘗試使用腳本任務獲取 SSIS 中文件的創建日期。 我創建了一個名為“User::File_Created”的變量並將該變量添加到以下腳本任務中:

        public void Main()
        {
            string fileName = @"[FilePath]";
            FileInfo fi = new FileInfo(fileName);

            if (Dts.Variables.Contains("User::File_Created") == true)
            {
                Dts.Variables["User::File_Created"].Value = fi.CreationTime;
            }
        }

雖然完成后,我仍然只看到存儲在變量中的當前日期。 任何幫助,將不勝感激。

這是一個常見的混淆點。

變量 window 是您創建 SSIS 變量並分配設計時值的地方。 設計時間值就是這樣,只有設計。 package 將使用這些值進行初始化,但它們可以在執行期間更改。 當 package 終止時,它不會將當前值保存回 package,因為那都是運行時的。 設計時間保持不變。

在此處輸入圖像描述

要查看運行時值,您需要拉起 Locals window,展開 Variables 集合節點,然后您可以看到所有當前值(或為其設置監視)。 在這里你可以看到我的 package 正在運行,因為我們有綠色節點(將我的變量值設置為 ZYX 的表達式任務)並且變量 window 顯示 ABC 但局部變量 window 反映了 ZYX 的真實值

在此處輸入圖像描述

要訪問 Locals window,而 package 正在調試,請單擊調試菜單,在 Windows、select Locals 下。 https://learn.microsoft.com/en-us/visualstudio/debugger/autos-and-locals-windows?view=vs-2019

暫無
暫無

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

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