ネットワーク内の相対パスの検索<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />JMP に、スクリプトが配置されているのと同じディレクトリから「テンプレート テーブル」を取得させたいと考えています。 この経路は、ネットワーク設定によりユーザーによって異なる場合があります (たとえば、私にとってディスクの名前は K ですが、他のユーザーにとっては L または N という名前になる可能性があります)。 次の「修正された」リンクを使用することができました。
TempTable = "K:\...\TableTemplate.jmp";
オープン (TempTable);
(この設定は機能します)
データテーブルはスクリプトと同じディレクトリにあるため、次のものを使用できるはずだと考えます。
TempTable ="..\[フォルダ]\TableTemplate.jmp"
オープン (TempTable);
しかし、これは機能しません。
サーバー上でスクリプト (テーブルではなく) が保存されているフォルダーを見つける方法について、誰かが私に提案をしてくれませんか。
敬具
アンダース
Re: ネットワーク内の相対パスの検索ディスク ドライブのマッピングが異なることを避けるには、長い UNC 形式の名前を使用できます。何かのようなもの:
\\disk.rd.com\folder1\folder2\folder3\TableTemplate.jmp
あるいは、アドインを作成することをお勧めします。あなたのアドインが呼ばれるとしますcom.cmpny.dept.myapp 。構文は次のようになります。
一時テーブル= "$ADDIN_HOME(com.cmpny.dept.myapp)\TableTemplate.jmp" ;
開ける(一時テーブル) ;
Re: ネットワーク内の相対パスの検索ユーザーがこのスクリプトを実行するためのプロセスは何ですか?スクリプトを開いてから、[スクリプトの実行] アイコンをクリックしてスクリプトを手動で実行するのでしょうか、それともスクリプトが開かれたときに自動的に実行されるのでしょうか?
単純なスクリプトとデータ テーブルを同じディレクトリに配置し、[JMP File==>Open] と Windows Explorer ウィンドウの両方から開きましたが、次のコードを使用しても問題は発生しませんでした。
//!
名前のデフォルトは Here(1) です。
path=デフォルトのディレクトリを取得();
dt=open(path||"カップルズゴルフ会員.jmp");
Re: ネットワーク内の相対パスの検索Get Default Directory ではスクリプト ファイルの場所が返されないということですか?
通常、パスはスクリプトの場所に対する相対パスであるため、テーブルが同じディレクトリにある場合は次のように書くことができます。
Open("テストテーブル.jmp")
または、スクリプトを含むフォルダーとデータテーブルを含むフォルダー (両方とも同じレベル) がある場合は、次のように書くことができます。
Open("../データ テーブル フォルダー/テスト テーブル.jmp")
スクリプトは 1 つだけですか? それともインクルード ファイルを使用していますか?
Re: ネットワーク内の相対パスの検索私が使用しようとしたことを付け加えたいと思います:
path=デフォルトのディレクトリを取得()
成功せずに