2013-04-17 24 views
1

我有以下報告結構,顯示全年產品的銷售目標和銷售情況。
每個產品將有兩行:顯示銷售的行和顯示sales_target的行。目前,我的報告在報告的每一行旁邊都有編輯鏈接。有沒有辦法從sales_target行中刪除編輯鏈接?僅在頂點報告中的某些行上顯示'編輯'鏈接

select 'red ball'"Product",'sales'"type",'1'"jan",'11'"feb",'31'"mar",'41'"apr",'61'"may",'15'"jun",'15'"jul",'1'"aug",'1'"sep",'21'"oct",'14'"nov",'61'"dec",'Edit' "Edit record" from dual 

我想我寫的代碼某處如果銷售類型的銷售,而不是sales_target只顯示該行的「編輯」鏈接欄的條件?

任何想法?謝謝。

回答

2

Usally我用這樣的:

  1. 在 「編輯欄」 - > 「欄目鏈接」 - > 「連接屬性」 添加如下因素的字符串:

    class="#TYPE#"
  2. 添加此css樣式到你的頁面:

    .sales_target { display: none; }

你的鏈接將是這樣的:

<a href="#" class="sales_target">sales_target_edit</a> 
or 
<a href="#" class="sales">sales_edit</a> 

帶class = 「sales_target」 所有鏈接將隱藏。

+0

好主意。我通常有點太過於觸發 - 對於使用jQuery來完成這些事情很開心。 CSS是一個不錯的選擇! – Tom

+0

@Blob您可以通過編輯頁面在頁面上添加CSS。如果你在apex 4.2,那麼你將有一個「內聯CSS」textarea,你可以簡單地複製和粘貼上面的css規則。如果不是4.2,那麼你將不得不通過'' – Tom

+1

我認爲使用動態動作並不好理念。遍歷所有行並刪除每個報告刷新後的編輯鏈接...嗯...我認爲這是非常糟糕的。如果您重新命名報告列名稱TYPE,會出現什麼情況?如果報告發生變化,將會發生什麼?如果你改變申請的主題會怎樣?如果你添加另一個鏈接列?你確定這個代碼可以在任何地方工作,你不會刪除任何其他鏈接? – NoGotnu

1

在列上設置條件將導致列顯示或不顯示整列,而不是顯示特定行。

一個可能的解決方案可能是通過javascript刪除額外的列鏈接。 刷新報表後,在動態操作中運行此代碼。執行javascript,執行頁面加載檢查。我給了我的報告區域一個靜態的ID,這是代碼中的「rStatic」。

$("#report_rStatic .report-standard td[headers='TYPE']").each(function(){ 
    if($(this).text()=='SALES'){ 
    $(this).closest('tr').find("td[headers='EDIT_RECORD'] a").remove(); 
    }; 
}); 

這將循環遍歷所述TYPE列中的所有單元,並且當類型是SALES它會刪除在EDIT_RECORD列中的錨定標記。

+0

與這個湯姆一起徘徊,按照指示完成,但似乎沒有工作。我甚至在動態行動中提醒一下,以便在報告刷新時測試它是否觸發(並彈出)。這可能是因爲我在其他地區有報道嗎?或者也許是因爲我有一個基於兩個文本字段的更改生成報表的動態操作?我沒有在刷新之後將JavaScript添加到該動態操作中,但仍然沒有任何喜悅。我需要安裝任何庫嗎? – Blob

+0

它可能是jQuery選擇器。您爲報告區域的靜態名稱使用了什麼名稱?現在我注意到我可能沒有把這個拼寫出來,但是當你使用'rStatic'作爲靜態id時,選擇器仍然必須是'report_rStatic',以縮小搜索範圍。還有'.report-standard',我只用它來選擇包含報告的表格,但最終這可能取決於報告模板(或主題,擴展名)。你可以在那裏沒有'.report-standard'的地方試試。如果你真的被困住了,請在apex.oracle.com上做一個小例子,我可以在那裏看看你。 – Tom

+0

我剛纔使用了你的名字,我打電話給rStatic報告。它的互動報告會不會很重要?我再給它一次,如果沒有病的話,按要求做。謝謝 – Blob

相關問題