0

I created a Visual force page for Big object data to be seen. However when i import data from workbench i am unable to see the full data in VF page. For some reason i can only 2 records out of 10 and those 2 record are first and last record in the table. I can not figure out what is the problem that the full data wouldn't be visible in VF table. please advise me what can be the solution to this issue. i am very new to the salesforce and doesnt know much about VF and Apex codes.

Visualforce Codes:

<apex:page controller="EmailArchive" title="Email Archive">
<apex:sectionHeader title="EmailArchive" subtitle="All Archived Email"/>
<apex:pageBlock >
    <apex:pageBlockSection columns="1" >
        <apex:pageBlockTable value="{!listOfEmailArchive}" var="email">
        <apex:column value="{!email.ID__c}"/>  
        <apex:column value="{!email.Parent_ID__c}"/>
        <apex:column value="{!email.Message_Date__c}"/>
        <apex:column value="{!email.Subject__c}"/>
        <apex:column value="{!email.Text_Body__c}"/>
        <apex:column value="{!email.HTML_Body__c}"/>
        <apex:column value="{!email.FROM_ADDRESS__c}"/>
        <apex:column value="{!email.TO_ADDRESS__c}"/>    
       </apex:pageBlockTable>
    </apex:pageBlockSection>
</apex:pageBlock>

Apex class:

public class EmailArchive{
public List<Email_Archive__b> listOfEmailArchive {get;set;}
public EmailArchive(){
    listOfEmailArchive = [SELECT Subject__c, ID__c, CREATED_DATE__c, FROM_ADDRESS__c, Headers__c, TO_ADDRESS__C, Last_modified_DATE__c, System_MOD_Stamp__c, Text_Body__c, HTML_Body__c, From_Name__c, Validated_From_Address__c, CC_Address__c, BCC_Address__c, Incoming__c, Has_Attachment__c, Status__c, Message_Date__c, Is_Deleted__c, Is_Externally_Visible__c, Message_Identifier__c, Reply_to_Email_Message_ID__c, Thread_Identifier__c, Is_Cliet_Managed__c, Related_to_ID__c, Last_modified_by__c, Parent_ID__c, Created_by_ID__c FROM Email_Archive__b];
    if(listOfEmailArchive == null){
        listOfEmailArchive = new List<Email_Archive__b>();
    }
}

}

enter image description here

enter image description here enter image description here

enter image description here

enter image description here

enter image description here

I have inserted all the screenshots that might be needed to find the problem.

Thank you

  • Please copy and paste the relevant sections of your Visualforce code and Apex controller into your question, and use the {} tool or Ctrl-K to format them so we can read them. Your screenshots do not show enough code and are not easy for users to read. – David Reed Nov 23 '18 at 12:17
  • HI david, Thanks for your reply. I have just updated the question. – zsk_1 Nov 23 '18 at 12:33
0

I don't have an authoritative answer here, but I have an idea as to what may be the issue.

BigObjects are intended to hold millions of records or more. The SOQL that is supported by BigObjects is intentionally very limited, and the design intent is that you should be writing a query against the fields you defined as part of the BigObject's index when you created it:

You can query the fields in a big object’s index using a subset of standard SOQL commands.

Build an index query starting from the first field defined in the index, without gaps between the first and last field in the query. You can use =, <, >, <=, or >=, or IN on the last field in your query. Any prior fields in your query can only use the = operator. The !=, LIKE, NOT IN, EXCLUDES, and INCLUDES operators are not valid in any query.

While I can't locate a reference that states that BigObjects cannot be queried without a filter in regular SOQL (as opposed to Async SOQL), I'm speculating that this unusual behavior you've observed is a species of undefined behavior stemming from running an unfiltered SOQL query against a BigObject.

Since you certainly cannot expect such a query to work in production, when your BigObject's data is populated at scale, I would recommend rewriting the query against the BigObject's index fields to see whether the result is as expected in this situation.

| improve this answer | |
  • Thanks david I had figured it out it was due to the chosen Index fields in schema. I couldnt tell the reason behind it but when i recreated Big Object with different Indexed field I was able to see the data. Thank you – zsk_1 Dec 6 '18 at 13:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.