亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

通過 Apex 和 Visualforce (Salesforce web) 過濾報告

通過 Apex 和 Visualforce (Salesforce web) 過濾報告

牛魔王的故事 2021-06-29 13:29:12
我正在嘗試打印 Salesforce 自定義對象數據庫并有一個過濾器。過濾器工作正常,但“全部”過濾器不會將完整表顯示為默認值,或者當我從另一個過濾器中單擊“全部”時。我怎樣才能做到這一點?這是相關的 Apex 代碼:public string itemPickValue{get; set;}    public List<QC_Issue__c> issuesList{get; set;}    public List<QC_Issue__c> results;     public List<QC_Issue__c> getIssues() {        results = Database.query(            'SELECT Component_Category__c, Issue_Name__c, Issue_Description__c, Severity_1_Criteria__c, Severity_2_Criteria__c, Severity_3_Criteria__c, File__c FROM QC_Issue__c Order By Component_Category__c, Issue_Name__c'        );        return results;     }    public void getIssuesList() {        if(itemPickValue.equals('All')) issuesList = Database.query('SELECT Component_Category__c, Issue_Name__c, Issue_Description__c, Severity_1_Criteria__c, Severity_2_Criteria__c, Severity_3_Criteria__c, File__c FROM QC_Issue__c');        issuesList = Database.query('SELECT Component_Category__c, Issue_Name__c, Issue_Description__c, Severity_1_Criteria__c, Severity_2_Criteria__c, Severity_3_Criteria__c, File__c FROM QC_Issue__c WHERE Component_Category__c =: itemPickValue');    }這是相關的 Visualforce 代碼:<apex:pageBlock title="QC Glossary" id="qc_issues_list">                <h3>Filter by Component Category:</h3>                <br></br>                <!-->Start Filter and List<-->                    <apex:selectList size="1" value="{!itemPickValue}">                        <apex:actionSupport event="onchange" action="{!getIssuesList}" rerender="table"/>                            <apex:selectOption itemLabel="All" itemValue="All"></apex:selectOption>                            <apex:selectOption itemLabel="Animation/VFX" itemValue="Animation/VFX"></apex:selectOption>                    </apex:selectList>                    <br></br>                    <br></br>
查看完整描述

1 回答

?
Qyouu

TA貢獻1786條經驗 獲得超11個贊

我進行了以下更改

  • 刪除了代碼重復,使用 getIssues 方法而不是復制 SOQL 語句。

  • 添加了一個 if/else 子句;你的主要問題是getIssuesList你有一個 if 語句,如果 true 將存儲完整的結果issuesList,然后立即在下一行用過濾列表覆蓋它,嘗試使用類別名稱“全部”

這里還有很多其他的事情需要指出;但我暫時不說了。

結果:

public String itemPickValue{get; set;}

public List<QC_Issue__c> issuesList{get; set;}

public List<QC_Issue__c> results; 


public List<QC_Issue__c> getIssues() {

    results = Database.query(

        'SELECT Component_Category__c, Issue_Name__c, Issue_Description__c, Severity_1_Criteria__c, Severity_2_Criteria__c, Severity_3_Criteria__c, File__c FROM QC_Issue__c Order By Component_Category__c, Issue_Name__c'

    );


    return results; 

}


public void getIssuesList() {

    if(itemPickValue.equals('All')) {

        issuesList = getIssues();

    } else {

        issuesList = Database.query('SELECT Component_Category__c, Issue_Name__c, Issue_Description__c, Severity_1_Criteria__c, Severity_2_Criteria__c, Severity_3_Criteria__c, File__c FROM QC_Issue__c WHERE Component_Category__c =: itemPickValue');

    }

}


查看完整回答
反對 回復 2021-07-07
  • 1 回答
  • 0 關注
  • 183 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號