1

Apex 4.2.1 の使用

実際、私は Apex (IR) レポートを持っており、2 つのレポート列の日付が一致しない場合にユーザーがメッセージを表示できる JavaScript 関数を作成したいと考えています。たとえば、レポートには日付 1 と日付 2 の列があるため、日付 1 は日付 2 より小さくすることはできません。だから私はリンクを作成しました。リンクをクリックすると、ポップウィンドウが(javascript)メッセージボックスを表示し、関数がこれらの2つの日付を比較します。javascript関数でレポート列の値を取得する方法に苦労しています。

どうも。

4

1 に答える 1

1

クリック ポップアップ ソリューションの代わりに、IR のハイライト機能と計算機能を使用できます。

  1. 比較結果を表す計算列 X をレポートに追加します。Actions->Format->ComputeDECODEまたはCASE式を使用して、date1 が date2 より小さい場合に 1 を返します。
  2. X=1 のレポート行を強調表示します。Actions->Format->Highlightで条件と色を選択します。
  3. 必要に応じて、計算列を非表示にします。Actions->Select Columns.
  4. レポートをデフォルトとして保存します。Actions->Save Report->Save As Default Report Settings.

JS で列の値を確認したい場合は、After Refresh イベントでレポート領域に Dynamic Action を使用します。たとえば、次のコードは、DEPTテーブル、アラートDNAME、およびLOC列に基づいて IR の行を調べます。

var $dnames = $( 'td[headers=DNAME]', this.triggeringElement );

$( 'td[headers=LOC]', this.triggeringElement ).each( function( indx, El ) {
  alert( $( El ).html() + " - " + $dnames.eq( indx ).html( ) );
} )

ご覧のとおり、レポート列のエイリアスを使用してセルをフィルター処理しています。

于 2013-06-05T17:37:14.713 に答える