2014-01-30 28 views
0

請幫忙,Oracle form專家!如何添加用戶控件以在主 - 明細表單上填充記錄?

我創建了一個主 - 細節表單,用戶現在想要添加一個控件來填充它的記錄 - 打開的項目,已關閉的項目或所有項目。

我創建了一個新的數據塊有一個項目(Radio_Group),並制定了3個單選按鈕打開,關閉&所有應該匹配像值的表列OPEN「Sent1,Sent2,Sent3,評論」, '拒絕,拒絕'關閉,所有人都應該覆蓋他們兩人。

On Radio_Group Property_Pallete,Item Type:Radio Group;子類信息:RADIO_GROUP;其他值的映射:打開; &初始值:打開

對於3個單選按鈕,標籤&單選按鈕值是相同的:打開,關閉& ALL。

在WHEN-RADIO-改變,我寫道:

IF :RADIO_DISPLAY.DISPLAY = 'OPEN' THEN 

    SET_BLOCK_PROPERTY('CCR_MANAG_MAIN', DEFAULT_WHERE, 
    'upper(ISG_STATUS) like ''SEN%'' or upper(ISG_STATUS) like ''%REVIEW'''); 
    GO_BLOCK('CCR_MANAG_MAIN'); 
    CLEAR_FORM('NO_VALIDATE'); 
    execute_query; 

IFELS upper(:RADIO_DISPLAY.DISPLAY) = upper('CLOSED') THEN 
    SET_BLOCK_PROPERTY('CCR_MANAG_MAIN', DEFAULT_WHERE 
     ,'upper(ISG_STATUS) not like ''SEN%'' and upper(ISG_STATUS) not like ''%REVIEW'''); 
    GO_BLOCK('CCR_MANAG_MAIN'); 
    CLEAR_FORM('NO_VALIDATE'); 
    execute_query; 

ELSE 
    SET_BLOCK_PROPERTY('CCR_MANAG_MAIN', DEFAULT_WHERE,''); 
    GO_BLOCK('CCR_MANAG_MAIN'); 
    CLEAR_FORM('NO_VALIDATE'); 
    execute_query; 
END IF; 

沒有編譯錯誤,但單選按鈕不工作。我錯過了什麼?謝謝。

回答

0

我相信你的CLEAR_FORM('NO_VALIDATE');發送遊標到控制塊,然後你的execute_query在錯誤的塊中執行。

嘗試使用CLEAR_BLOCK('NO_VALIDATE');如果清除字段是非常必要的。

+0

我已經離開了這個國家五個星期,現在又回到了這個項目。謝謝埃利亞斯回答我的問題。但是,我做出了改變,仍然無法正常工作。還有什麼我需要檢查? – user3245395

+0

歡迎回來,哈哈; 那麼,關於你的問題:現在我不確定它到底是什麼。查詢是否正在執行?檢查是否有任何預查詢觸發與您的查詢搞亂。 此外,您可以檢查正在創建的查詢是否一致。 –

+0

我試圖把代碼放在WHEN-RADIO-CHANGED的預查詢中(也在WHEN-NEW_FORM-INSTANCE中),但是無法讓它工作。我的目標是爲用戶提供3種選擇來填充主多記錄表單:所有項目,未清項目和應該基於3個選擇語句的已關閉項目 – user3245395

相關問題