パスを指定せずに Save Presentation() を使用した後にパスとファイル名を取得するSave Presentation() を使用してジャーナルを ppt に保存しています。ただし、ユーザーが ppt を保存するためのパスとファイル名を指定できるようにしたいと考えています。パス/ファイル名を指定せずに Save Presentation() を指定すると、JMP はオペレーティング システムの [ファイルの保存] ウィンドウを非常に適切にポップアップ表示します。これにより、ユーザーは希望するフォルダーに移動し、希望するファイル名を指定できます。問題は、この方法を使用する場合、保存されたファイルのパスとファイル名を取得する方法がわからないことです。
この質問に対する解決策を持っている人はいますか?
Re: パスを指定せずに Save Presentation() を使用した後のパスとファイル名の取得ウェンディ、
これは非常に近いです....
あなたの輝きをありがとう
Re: パスを指定せずに Save Presentation() を使用した後のパスとファイル名の取得やあ、ジム。
Save オプションを備えた Pick File() は、あなたが説明したものにかなり近いようです。
rbiv << Save Presentation( path = Pick File("save", "$TEMP", {"PowerPoint|pptx"}, 1, 1) );
Show( path );
/*:
path = "/C:/Users/wemurp/AppData/Local/Temp/myPowerPoint.pptx";<BR />
お役に立てば幸いです!
Re: パスを指定せずに Save Presentation() を使用した後のパスとファイル名の取得ごめんなさい、ジム。
私の質問の解釈はあなたのスキルや知識と矛盾していると思いました。
以前に一度質問したのですが、Save Presentation が空の文字列を返してログに記録するのは奇妙だと思いました。
以前の JMP および Windows OS の多くのバージョンでは、デフォルト ディレクトリが機能するように見えましたが、PC 内ですべてのバックグラウンド処理が行われているため、JMP はデフォルト ディレクトリの動作を変更しました。 JMP 11 頃、私は「JMP Pick Directory または Save または Open に最後に使用されたパスがある場合、それを JSL 経由で公開すると便利だろう」と主張しました。
以前これを試したとき、ディレクトリを選択するためのフォルダーの選択ボタンにクリックを送信する方法を探しました。
[ディレクトリの選択] ウィンドウのフォーカスは [フォルダーの選択] ボタンにあり、パスは最後に選択されたパスであるため、次のようになります。
_xx = ログ キャプチャ (ディレクトリを選択() << クリック)
しかし、何を試しても成功しませんでした。
そのため、ウィッシュ リストの項目として、[プレゼンテーションを保存] がファイル パスを変数またはログに書き込むことが挙げられます。 現在、空の文字列がログと変数に書き込まれているため、 xx = (rbiv << Save Presentation() );それは大した質問ではないようです。ただし、Get Path("$Last_Path") のような JSL 関数をセッション変数として提供することをお勧めします。
PS この書籍用に作成されたサンプル アプリケーションには、PowerPoint を保存するメニュー項目があるため、メニュー項目用に独自の選択ディレクトリとファイル インターフェイスを作成し、[プレゼンテーションの保存 (ファイル名付き)] を使用しました。
Re: パスを指定せずに Save Presentation() を使用した後のパスとファイル名の取得ユーザーが選択したパス/名前を JSL から取得する方法がわかりません。
Re: パスを指定せずに Save Presentation() を使用した後のパスとファイル名の取得モーガンさん、
ご返信いただきありがとうございます。
私は明らかに、質問を一貫性を持って具体化することに失敗しました。 もう一度試してみます。
次のコードを使用すると:
Names Default To Here( 1 );
Open( "$SAMPLE_DATA/Big Class.jmp" );
biv = bivariate( y( :weight ), x( :height ) );
rbiv = biv << report;
rbiv << Save Presentation( );
二変量プラットフォームの出力が生成され、「Save Presentation()」にはパス/ファイル名が指定されていないため、JMP は非常に適切にウィンドウを開き、ユーザーが任意のディレクトリに移動して指定できるようにします。ファイル名は任意です。

これが私が望む動作です。ただし、必要だが i を取得する方法がわからないのは、ユーザーが「保存」をクリックした後、二変量出力が場所とファイル名に保存されることです。
「ユーザーが指定したパス/ファイル名を確認するにはどうすればよいですか?」
Re: パスを指定せずに Save Presentation() を使用した後のパスとファイル名の取得ジム、
これを行うにはいくつかの方法があります。 以下は、プロンプトを表示せずにプレゼンテーションを保存する 2 つの方法を示すいくつかのスニペットです。 JSL Companion 第 2 版にスクリプトを追加しました。プレゼンテーションの保存を使用し、スケーリングの問題に対処するための BKM (最もよく知られている方法) について説明するスクリプト。
複雑な PPTX 出力を作成する必要がある場合は、JSL を使用して外部プログラム p3icli のコマンドを作成し、[プログラムの実行] を使用してそれを実行します。
/*
Save Presentation appends if the file exists. This next line assures that only the current programs requested
reports are saved. Another option is to add a datetime to the filename for version control.
*/
if( FileExists(usr_aa["pptPath"]), DeleteFile(usr_aa["pptPath"]) );
Copy File(templ,usr_aa["pptPath"]);
result << Save Presentation( usr_aa["pptPath"], Insert(2), Outline Titles("BottomRight"), "PNG");
wait(2);
result << Close Window(NoSave);
) または、この構文を使用します
nme = "c:\temp\ROR Report-" || Format(Today(),"yyyymmdd") ||".pptx";
tjwin << Save Presentation(nme, Template("$JSL_Companion/ROR_BaseTemplate.pptx"),"PNG" );
説明: P3ICLI (PowerPoint 画像挿入コマンド ライン インターフェイス) は、
ユーザーが選択した画像やグラフィック ファイルを挿入するスクリプト駆動のアプリケーション
Microsoft PowerPoint(R) スライドにコピーします。
P3ICLI は次からダウンロードできます。 https://sourceforge.net/projects/p3icli/
ppt テンプレート、JSL スクリプト、説明、結果を含む JSL の例を文書化します。
pptxファイルhttps://p3icli.sourceforge.io/jsl_example.html 。 柔軟性が高い点が気に入っています
サイズ、レイアウト、タイトル、キャプションをカスタマイズします。 注: 結果の PPTX へのリンクは、Web ページの最後の行にあります。