應用程序對話框 ^TABLENAME 參考親愛的社區,
我已經苦苦掙扎了一段時間,試圖在應用程序對話框標題中填充對話框 ^TABLENAME 引用。
似乎它只對我的應用程序啟動時已經加載的 Current DataTable 做出反應。
但這實際上是Dialog1的目的,選擇打開什麼數據表,從無到有:

這裡的問題是,即使 Dialog1 腳本以打開選定的數據表結束,Dialog2 標題 TABLENAME 仍然為空:

我已經在 Dialog1 腳本的末尾嘗試了幾種語法,沒有任何變化:(
OnNext1 = Function( {},
file_path = FilePath << GetText();
If ( file_path != "",
//IST Text File
dt = Open(
file_path,
...
);
dt << CurrentDataTable();
CurrentDataTable( dt );
Dialog2 << CreateInstance( dt );
}關於如何在對話框標題中將我的“dt”數據表推送到此 ^TABLENAME 引用的任何建議?
謝謝
數據表其他腳本回复:應用程序對話框 ^TABLENAME 參考非常感謝丹,
超過500次瀏覽後第一次解決回复必須接近記錄!

我還找到瞭如何避免對應用程序名稱進行硬編碼:
(thisModuleInstance << GetBox) << SetWindowTitle( (thisApplication << GetName) || " - " || (dt2 << GetName));
它現在按預期工作正常。
乾杯!
回复:應用程序對話框 ^TABLENAME 參考你好Stéphane - 不幸的是,Application Builder 中的 ^TABLENAME 替換僅設計用於當前數據表。Application Builder 在初始化時解析所需的數據表。在應用程序啟動時允許一個表來自當前數據表,其餘表要么通過名稱、通過文件標識,要么通過腳本動態分配。數據表對於應用程序是全局的,因此沒有與每個模塊關聯的表。
幸運的是,有一種直接在 Dialog2 模塊的腳本中設置標題的簡單方法。在調用“thisModuleInstance << Create Objects”時創建窗口。在該行之後,您可以添加如下內容:
(thisModuleInstance << Get Box) << Set Window Title("IST Analyser - " || (dt << Get Name));
在哪裡dt是數據表的 JSL 符號的名稱,如 Dialog2 模塊中所定義。我希望這有幫助!