2011-08-05 3 views
0

pl/sql에서 영역을 숨기는 프로세스를 만드는 데 문제가 있습니다. 누구나 어떻게 할 수 있습니까?영역을 숨기기위한 페이지 프로세스 만들기

탱크.

+0

"pl/sql에서 지역 숨기기"란 무엇을 의미합니까? Javascript 또는 Dynamic Actions로 숨길 수 있으며, 지역에 조건을 설정하여 조건부로 렌더링 할 수도 있습니다. –

+0

지역에서 조건부로 시도했지만이 방법이 효과가 없습니다. 아이템': P1_HIDDEN'을 생성 한 후,이 과정을 통해 값을 넣습니다.'DECLARE NUMBER; b NUMBER; (PID가 = (tn_tree로부터 ID를 선택 TN_TREE 곳에서 ID를 선택 여기서 PID = P1_ID)) (1) TN_HISTORY_ITEMID 로부터 곳에서 상품 ID로하는 선택 횟수 BEGIN; surv_host_data에서 b로 count (1)를 선택합니다. 여기서 id_client = : P1_ID; b>> 0이고 a = 0 인 경우 : P1_HIDDEN : = 3; elsif a = 0 then : P1_HIDDEN : = 3; elsif b = 0 then : P1_HIDDEN : = 3; else : P1_HIDDEN : = 3; end If; End;하지만 작동하지 않습니다. – macwadu

답변

1

해당하는 경우 조건 유형 "PL/SQL 함수 본문 반환"을 사용하여 조건에 직접 필요한 PL/SQL을 넣을 수 있습니다. 예를 들어 (나에게 매우 잘 보이지 않는, 위의 코드를 사용하여 - = 3 숨겨진에 모든 도로 리드!) :

DECLARE 
a NUMBER; 
b NUMBER; 
hidden NUMBER; 
BEGIN 
select count(1) into a from TN_HISTORY_ITEMID where itemid in (select id from TN_TREE where pid = (select id from tn_tree where pid =:P1_ID)); 
select count(1) into b from surv_host_data where id_client = :P1_ID; 
if b <> 0 AND a = 0 then hidden := 3; 
elsif a = 0 then hidden := 3; 
elsif b = 0 then hidden := 3; 
else hidden := 3; 
end If; 

return (hidden = 3); 
End; 

당신이 과정과 페이지 항목과 그것을 할 필요가 있다면, 아이템이 region보다 먼저 렌더링되고 숨겨진 region이 렌더링되기 전에 프로세스가 실행되는지 확인해야합니다. 그렇지 않으면 항목이 설정 될 때까지는 너무 늦을 것입니다.

+0

예, 과거와 사본을 할 때 오류가있었습니다. 그러나 그것으로 나는': P1_HIDDEN' 값을 값으로 설정합니다. – macwadu

+0

당신이 의미하는 것이 확실하지 않습니다 -': P1_HIDDEN : = 3;'은 P1_HIDDEN의 값을 설정합니다. –

+0

나는 값이없는 아이템을 가지고 있고, 프로세스에 값을 설정하고 싶다. 이것이 가능한가? – macwadu

관련 문제