window.open() に渡した帳票出力URLが変更されてしまう

ホーム 掲示板 ReportsConnect for Salesforce window.open() に渡した帳票出力URLが変更されてしまう

このトピックは 2 発言者 で 19 件の返信 、  HNagatomi 9 年と 3 ヶ月 前 に最終更新されました。

20投稿中16~20 5件表示
  • 作成者
    投稿
  • #192

    HNagatomi
    参加者

    たいへんお世話になっております。

    ご指示通り、インストール後に再度試しましたが、残念ながら同じ結果となります。
    以下にその際のURLを記載させていただきます。

    [本番環境]帳票オブジェクトを開いた時点のURL:

    https://nissan-neji–kpsr.ap0.visual.force.com/apex/ReportDev?id=a1710000002VTCa&sfdc.override=1

    [本番環境]帳票オブジェクトの印刷テスト時
    ・印刷画面になる正常ケースのURL:

    https://kps-reportsconnect5.herokuapp.com/dl2?state=x005752034675807982

    ・ログイン画面になるケースのURL:

    https://test.salesforce.com/

    [本番環境]帳票出力プログラムの実行時
    ・印刷画面になる正常ケースのURL:

    https://kps-reportsconnect5.herokuapp.com/dl?code=aPrxr1wu_XMKux1YKuln.afR.08MxdZY9Nivz9diBJQHBOQgfPqijgMEvJqNSMshG37G8nWGGw%3D%3D&state=x6254333645250197

    ・ログイン画面になるケースのURL:

    https://test.salesforce.com/

    #何れもログイン画面になるケースでは、ログイン画面に、sandboxのユーザーIDが表示されます。
    #ブラウザ(Chrome、IEの2種)のキャッシュには本番ユーザーIDのみを保存するようにしてもです。
    #この点が、最初にご指摘いただいたキャッシュの問題なのかとも思われます。

    [sandbox]帳票オブジェクトを開いた時点のURL:

    https://nissan-neji–sb1–kpsr.cs6.visual.force.com/apex/ReportDev?id=a17N00000023nM1&sfdc.override=1

    [sandbox]帳票オブジェクトの印刷テスト時
    ・印刷画面になる正常ケースのURL:

    https://kps-reportsconnect5.herokuapp.com/dl2?state=x4460084676121463

    ・ログイン画面になるケースのURL:

    https://test.salesforce.com/

    [sandbox]帳票出力プログラムの実行時
    ・印刷画面になる正常ケースのURL:

    https://kps-reportsconnect5.herokuapp.com/dl?code=aPrxr1wu_XMKux1YKuln.afR._85O.ClflNzafurBUlcieYdmsHOgk0prcuqKK.Ah_oLtr9NmQ%3D%3D&state=x8909639167430297

    ・ログイン画面になるケースのURL:

    https://test.salesforce.com/

    #たいへんお手数をおかけしております。何度もご対応いただき感謝致します。
    #ブラウザ(Chrome、IEの2種類)のキャッシュ操作も細かくやっているのですが…。
    #これまで御社にて同様のお問い合わせがないということでしたら、弊社のSalesforceの環境の問題でしょうか。

    #193

    sweetie
    参加者

    HNagatomiさん、

    恐れ入りますが、再度以下のURLからv1.23をインストールしてみてください。

    https://login.salesforce.com/packaging/installPackage.apexp?p0=04tG0000000Mgl7

    それで、うまくいかない帳票オブジェクトの画面で、「パラメーター」のテキストエリアに以下の文字列を入れてください

    Kps_hostSafix=a

    頭のKps_の一文字目は大文字です
    これにより、login.salesforce.com方に必ずいくはずです。

    その状態で、「データの確認」ボタンを押してください。
    サブウインドウに出て来る情報のうち、パラメータ一覧 のボックスのなかで、kpsdebug_hostに設定されている値を知らせてください。

    こんな感じで出ていると思います。↓

    “kpsdebug_host”:”kpsr.na11.visual.force.com”

    先ほどの投稿に「印刷画面になる正常ケースのURL:」
    とありますが、正常にいく場合もあるのですか?

    #194

    HNagatomi
    参加者

    お世話になっております。
    以下の内容となりました。
    “kpsdebug_host”:”nissan-neji–kpsr.ap0.visual.force.com”

    今回は子ウィンドウの表示が本番のログイン画面になったので、
    そのままユーザーIDをワンクリックすると、データ確認結果画面が表示されるという
    動きになりました。

    今回のプログラムは本番環境だけのプログラムなのでしょうか?
    sandboxにも導入しましたが、sandboxでは、子ウィンドウに本番のログイン画面が表示されて
    しまいます。

    >正常にいく場合もあるのですか?

    はい、最初の問合せにも書きましたが、書込みが多くなってしまい申し訳ありません。
    10回くらいリトライすると、うまく印刷画面が表示される場合があります。
    ただし、規則性がありません。

    以上です、よろしくお願い致します。

    #195

    sweetie
    参加者

    HNagatomiさん、

    “kpsdebug_host”:”nissan-neji–kpsr.ap0.visual.force.com”

    と、いうことなので、ホスト名としてパラメータで上がっているのは
    nissan-neji–kpsr.ap0.visual.force.com
    と、いううことになります。

    こちらの環境で試す限り、このホスト名に対しては正常にlogin.saleforceを返しています。

    恐らくそちらの環境の問題と思われますが、回避する手段としては、印刷時にkpsr.ReportsConnectControllerのgetParms().putメソッドで明示的にパラメータを上書き可能ですので、goPrintメソッドを呼ぶ前に

    rc.getParms().put(‘Kps_hostSafix’,'a’);

    という感じで、Kps_hostSafixパラメータを上書きして回避してもらえないでしょうか。
    これで、login.salseforceにいくはずです。

    なお、明示的にsandboxへ行かせたい場合は、
    rc.getParms().put(‘Kps_hostSafix’,'kpsr.cs5.visual.force.com’);

    で、test.salesforceへ行きます。

    なお、帳票オブジェクトの印刷テスト等を行う場合は、先ほどのように「パラメータ」テキストエリアにパラメーターを入れて上書きしてください。

    #196

    HNagatomi
    参加者

    お世話になっております。

    明日以降、少し時間が空くやもしれませんが、お教えいただいた方法でやってみます。

    何度もご検討・ご教授いただきまして、まことにありがとうございました。

    失礼致します。

20投稿中16~20 5件表示

このトピックに返信するためにはログインしなければなりません。