SAP Knowledge Base Article - Public

1218588 - How to increase the number of values for dynamic parameter list of values (LOV) in Crystal Reports? [Video]

Symptom

  • Dynamic prompt not populated with all values.
  • List of Values (LOV) is not showing everything.
  • Dynamic Parameter does not display all the values in the List of Values (LOV).
  • How to modify the maximum number of values available in a dynamic parameter in Crystal Reports?

Environment

  • SAP Crystal Reports 2013   
  • SAP Crystal Reports 2016
  • SAP Crystal Reports 2020
           
  • SAP BusinessObjects Business Intelligence Platform 4.1
  • SAP BusinessObjects Business Intelligence Platform 4.2
  • SAP BusinessObjects Business Intelligence Platform 4.3

Reproducing the Issue

  1. In Crystal Reports, create a report based on any data source.
  2. Create a dynamic LOV parameter containing over 1,000 values.
  3. Insert the parameter on the report.
  4. When refreshing the report, notice it only display a maximum of 1,000 values.
               
    This is also true after saving the report to the SAP BusinessObjects BI Platform and viewing the report in InfoView or SAP BI Launchpad.

Cause

  • For performance reasons, the maximum number of values that are returned for a List of Values (LOV) in Crystal Reports is set to 1,000.

Resolution

  • To increase the maximum number of values for a List of Values (LOV), you can either:
        
  • Microsoft Registry Key: MaxRowsetRecords          
    To increase the maximum number of values for a List of Values (LOV), set the registry key: MaxRowsetRecords, to a value greater than 1,000:
       
    WARNING The following resolution involves editing the Microsoft Registry. Using the Microsoft Registry Editor incorrectly can cause serious problems. Use the Microsoft Registry Editor at your own risk. For more information see the SAP Knowledge Base Article 1323322
       
    1. Open the Microsoft Registry Editor (regedit)
         
    2. In the Microsoft Registry Editor, navigate to the path corresponding to the version of the product used:
             
      • Crystal Reports 2013, 2016:
                 
        • 32bit version of MS Windows: 
          HKEY_LOCAL_MACHINE\SOFTWARE\SAP BusinessObjects\Suite XI 4.0\Crystal Reports\DatabaseOptions\LOV
             
        • 64bit version of MS Windows: 
          HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\SAP BusinessObjects\Suite XI 4.0\Crystal Reports\DatabaseOptions\LOV
            
                              
      • Crystal Reports 2020:
          
        • HKEY_LOCAL_MACHINE\SOFTWARE\SAP BusinessObjects\Suite XI 4.0\Crystal Reports\DatabaseOptions\LOV  
            
             
      • Crystal Reports for Visual Studio 2010:
           
        • 32bit version of MS Windows: 
          HKEY_LOCAL_MACHINE\SOFTWARE\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Crystal Reports\DatabaseOptions\LOV
           
        • 64bit version of MS Windows: 
          HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Crystal Reports\DatabaseOptions\LOV
             
                                     
      • SAP BusinessObjects Business Intelligence Platform 4.1, 4.2, 4.3 ( MS Windows Server ):
                   
        • 64bit version of MS Windows:
          HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\SAP BusinessObjects\Suite XI 4.0\Crystal Reports\DatabaseOptions\LOV
               
            
      • SAP BusinessObjects Business Intelligence Platform 4.3 ( MS Windows Server ):
          
        • HKEY_LOCAL_MACHINE\SOFTWARE\SAP BusinessObjects\Suite XI 4.0\Crystal Reports\DatabaseOptions\LOV
            
      • NOTES:  Add the key LOV, if it is not present.                 
          
    1. Add the String value: MaxRowsetRecords
              
    2. Set the value of: MaxRowsetRecords to the maximum number of records in the table where the values are stored. 
                                       
      IMPORTANT NOTES:
      The higher the number of values set, the longer it will take to see the dynamic parameter prompt screen. In brief, it impacts the performance.
      - The value 0 (unlimited), or any value less than 1, will not work with BusinessObject Enterprise XI 3.1 or SAP BI 4.0, 4.1, 4.2, and 4.3 (including Crystal Reports Server), you must specify a value equal to or greater than 1.
                      
    3. For the change to take effect, restart the application.
      • For Crystal Reports: Close and reopen Crystal Reports.
      • For SAP BusinessObjects Business Intelligence platform, and SAP Crystal Server,
        restart the Server Intelligent Agent (SIA)
         
             
  •  For SAP BusinessObjects Business Intelligence platform 4.1, 4.2, and 4.3 installed on Unix / Linux:
     
    1. Go to <install_dir>/sap_bobj/data/.bobj/registry/32/software/sap businessobjects/suite xi 4.0/crystal reports/databaseoptions

      Note: if navigating manually to this location, files and folders starting with dot (.) are hidden by default and should use ls -la to see them.
        
    2. Create a new key/folder called lov if it does not exist.
       
    3. Inside lov key/folder, create a new file called .keyname if it does not exist.
        
    4. vi .keyname
       
    5. Ensure it contains LOV on the first line of this file. Insert LOV at the beginning if you created the file.

    6. Save and exit.
       
    7. Inside lov key/folder, create a new file called .registry if it does not exist.
       
    8. vi .registry
        
    9. Add the following line (change to another number if needed):
      "MaxRowsetRecords"="5000"
        
    10. Save and exit

       

    • Environment Variable Solution for the SAP BusinessObjects Business Intelligence Platform
      1. In MS Windows, create a system environment variable named: BOE_CRLOVMAXSIZE
           
      2. Set the value of: BOE_CRLOVMAXSIZE, to the maximum number of records in the table where the values are stored. 
            
        For example 5000:
                 
            BOE_CRLOVMAXSIZE = 5000
                     
        IMPORTANT NOTES:
        The higher the number of values set, the longer it will take to see the dynamic parameter prompt screen. In brief, it impacts the performance.
        - The value 0 (unlimited), or any value less than 1, will not work with BusinessObject Enterprise XI 3.1 or SAP BI 4.0, 4.1 and 4.2 (including Crystal Reports Server), you must specify a value equal to or greater than 1.
        - This will override the registry key value if present.
              
      3. For the change to take effect, restart the application, restart the Server Intelligent Agent (SIA)
            

     

    Media not computed.

    See Also

    • To modify the maximum number of values available in a dynamic parameter list on UNIX system, see to the SAP Knowledge Base Article 1219715
           
    • The registry key: MaxRowsetRecords, does not affect the List of Values returned when a report is based off:
      - Universe or 
      - SAP BW BEx Query.
         
      For Universe List of Values, see the SAP Knowledge Base Article 1195974  
      For SAP BW BEx Query, there is no option to increase the List of Values.

    Keywords

    Parameter, LIST OF VALUES, LOV, PICK LIST, PICKLIST, NUMBER OF VALUES, CASCADING, Crystal Reports Dynamic and cascading prompts Parameter pick list limitation limit max MaxRecordsReturned,  MaxRowset, 1000 , KBA , BI-RA-CR , Crystal Reports designer or Business View Manager , BI-BIP-ADM , BI Servers, security, Crystal Reports in Launchpad , How To

    Product

    SAP Crystal Reports 2013 ; SAP Crystal Reports 2016 ; SAP Crystal Reports 2020