1

Dev、Test、Prod 環境に Oracle Apex 4.0.2 バージョンのインスタンスがインストールされています。

3 つの環境すべてで同じアプリケーション番号を使用します。3 つの環境すべてで 200 が使用されます。

アプリを開発環境からテスト環境にインポートする場合。インタラクティブ レポートのユーザー サブスクリプションが削除されています。

アイデアや提案はありますか?

thnx

4

2 に答える 2

1

これは実際には既知の機能です (見方によってはバグです)。私はこれに遭遇し、Joel Kallman の優れたブログ投稿の助けを借りてなんとか解決しました。

于 2012-09-05T21:11:31.407 に答える
0

以下の手順で、ターゲット環境のユーザーサブスクリプションを取り戻すことができました。

私のシナリオでは、アプリ200を開発環境からテスト環境に移動しています。

  1. [エクスポート設定]タブで[インタラクティブなレポートサブスクリプションを[はい]にエクスポート]を選択して、テスト環境からアプリ200をエクスポートします。
  2. アプリ200.sqlからwwv_flow_api.create_worksheet_notifyコード (複数のユーザーサブスクリプションがある場合は、複数のステートメントが表示されます)を慎重に抽出します 。
  3. wwv_flow.g_flow_idおよびwwv_flow_api.g_id_offset初期化子ステートメントを抽出します。

    以下の例:

    私のシナリオでは、1つのインタラクティブレポートユーザーサブスクリプションでテストしていました

    begin
    wwv_flow.g_flow_id := nvl(wwv_flow_application_install.get_application_id,200);
    wwv_flow_api.g_id_offset := nvl(wwv_flow_application_install.get_offset,0);
    wwv_flow_api.create_worksheet_notify (
    p_id => 3351032625694541+wwv_flow_api.g_id_offset,
    p_flow_id => wwv_flow.g_flow_id,
    p_worksheet_id => 11045125897667191+wwv_flow_api.g_id_offset,
    p_report_id => 11046318922668871+wwv_flow_api.g_id_offset,
    p_owner => 'abc.def',
    p_email_subject => 'Primary Report test',
    p_email_address => 'abc.def@email.com',
    p_start_date => '2012.09.07.01:00:00',
    p_notify_interval => 'D');
    end;
    
  4. アプリ200を開発環境からテスト環境にインポートします。

  5. 上記の例pl/sqlをテスト環境のsqlプロンプトで実行します。

テスト環境でアプリを実行すると、関連するページへのユーザーのサブスクリプションがインタラクティブにレポートされます。

注:この手順は、すべての環境で同じアプリIDを使用している場合にのみ適用されます

于 2012-09-11T15:01:40.897 に答える