2016-03-27 23 views
2

Kullanıcının veri kaynağı dosyasını en baştan seçmesini sağlamak için iMacros komut dosyasını yapmaya çalışıyorum.iMacros javascript dosyasındaki Veri kaynağı dosyasını seçin

Bu buldum bir çözümdür ve çalışır:

var sourcefile = istemi ("dosya konumunu girin");

ve sonra komut dosyasında {{sourcefile}} değişkenini kullanıyorum.

macro + = "SET! DATASOURCE {{sourcefile}}" + "\ n";

Sorun, kullanıcının bu durumda tam yol ve dosya adı girmesi gerektiğidir. Javascript kodunu değiştirmek istiyorum, böylece kullanıcılar Gözat düğmesine sahip olacak ve üzerine tıklayarak veri kaynağı dosyasını seçebileceklerdir.

cevap

1

bir prompt -Diyalog yerine aşağıdaki kodu deneyin:

var sourcefile = imns.Dialogs.browseForFileOpen("Enter file location"); 
if (sourcefile) 
    sourcefile = sourcefile.path; 
+0

Harika! Teşekkürler Shugar, bu muhteşem oldu :) – vlayausa

0

Ben filetype ile daha iyi olduğunu düşünüyorum (gibi * .csv):

// imacros imns.Dialogs.browseForFileOpen() does not provide a way to appendFilter 
var fp = Components.classes["@mozilla.org/filepicker;1"].createInstance(Components.interfaces.nsIFilePicker); 

// initial directory use Macros folder as defined in iMacros Preferences 
fp.displayDirectory = imns.Pref.getFilePref('defsavepath');//DataSources=defdatapath 
fp.init(window, "Select a File", Components.interfaces.nsIFilePicker.modeOpen); 
fp.appendFilter("CSV File (*.csv)", "*.csv"); 

var sourcefile; 
if(fp.show() == 0){ 
    sourcefile = fp.file.path; 
} 
+0

Bu harika çalışıyor. Varsayılan klasörü Veri Kaynakları olarak değiştirmeyi seviyorum. – vlayausa