
創建工作表:每天夜里保存新文件
文本描述了如何創建一個工作表,并在每日午夜保存數據至新文件。由于需要使用Action模塊完成該任務,因此示例工程在DASYLab Full版本中創建。截圖均為DASYLab 11版本,但仍適用于早期版本和新版本。
在當前工作表中,調用Write Data模塊,將待保存的文件以日期命名,如2010-04-09-TestData.asc,日期使用DASYLab的全局字符串。接下來,添加一個TimeBase模塊和一個Action模塊,用來改變文件名。
*注意,除非用戶控制,否則DASYLab不會主動修改文件名! 本例中使用Action模塊來修改文件名。
工作表概覽
圖片顯示了一張完整的工作表(作為示例,十分簡單)。只需在工作表中調用Write Data模塊,編輯其配置選項,并再添加兩個控制模塊即可。
您可以新建一張工作表,或打開調用了Write Data模塊的已有工作表。

在Write Data模塊中建立文件名

在Filename and path欄中選擇”Combi”選項,并使用系統全局字符串命名文件。
如何插入全局字符串
DASYLab提供大量系統全局字符串,均為程序已知的數據信息。日期和時間就是兩個簡單的例子。然而,標準格式的日期字符串中包含了文件名所不允許的字符,舉例來說,標準格式的日期為”1/5/2011”,其中包含了不能出現在文件名中的”/”字符,類似的,時間”10:23 PM”中的”:”同樣無法使用。為了避免此類問題,DASYLab針對Year, Month, Day, Hours, Minutes, Senconds使用了專門的Global Strings。
DASYLab為用戶提供列表來選擇字符串,使其更易使用。要打開列表,在文件名輸入框中任意位置點擊鼠標右鍵,插入Global String。

點擊Global String…,打開Global String對話框,選擇YEAR。年份用4位數表示,如2011。如需使用2位數的年份,則應選擇列表下部的YEAR_2。點擊OK后,DASYLab將在文件名中插入${YEAR}作為占位符。

重復此過程,依次添加${MONTH_LZ}和${DAY_LZ}。這兩個字符串為一位數的月份和日期前補0,從而保證文件的合理排序。同時,可以使用連接線或下劃線作為標點。例如,C:\Users\Public\Documents\DASYLab\11.0.0\ENG\data\${YEAR}‐${MONTH_LZ}‐${DAY_LZ}‐TestData.ASC 將產生類似這樣的文件名:C:\Users\Public\Documents\DASYLab\11.0.0\ENG\data\2011‐01‐05‐TestData.ASC
添加時間控件
Write Data模塊配置完成后,添加另外一個模塊:Special >> Time Base,并選擇Generate time data。

打開此模塊屬性,并在Time data欄中選擇Pulse at Midnight。最后點擊OK,保存設置。

添加模塊Special >> Action Module,配置模塊屬性。
Receiver:Write Data模塊
Event:Rising Edge
Action:Close and Open File
最后點擊OK,保存設置。
總結
現在,工作表已經配置為執行如下任務:使用當時的日期作為文件名的一部分,同時Timebase/Action模塊負責通知DASYLab在midnight關閉并重新打開文件。在midnight,字符串將發生相應變化,接著DASYLab將使用新的文件名創建新文件,本例中,發生變化的字符串即當時的日期。
更多內容請關注君億道