Skip to main content

 
IBM Power Systems software  >  IBM i  > Software  > 

Net.Data for i5/OS

  
Overview News Library Education Support

Improving Net.Data Performance
Here are some techniques that will improve the performance of your Net.Data macros:

  • General
    • Minimize the number of rows that are to be returned to browser.
      If you are using the row block to generate HTML output, then you must have a table. The table may have been generated from any source (e.g. as a result of an DB2 for i query). If the time to return the data back to the browser is unacceptable, then you should experiment with RPT_MAX_ROWS and START_ROW_NUM to determine an acceptable reponse time to return a subset of rows in the table back to the browser and adding "Next" and "Previous" buttons in order for the rest of the rows to be viewed.

      There is an example of how to use START_ROW_NUM on the Sample Library page (you will need the latest Net.Data PTFs to use START_ROW_NUM).

    • Avoid having lots of built-in function calls within a row-block.
      If you have a lot of built-in function calls within a row-block, there may be an alternative method you can use that will eliminate the need of the built-in function calls. The most common mistake is to use a built-in function call to manipulate each field in the table instead of using a table built-in function that will process all the fields in a table with one call.
    • Avoid using VLIST and NLIST, if possible.
      Referencing these variables requires Net.Data to perform additional work to construct these variables from the table that is being processed in the report block. It is faster to access individual fields, such as V1 and N1.
    • Avoid using the ALIGN report variable.
      The ALIGN report variable results in significant overhead.
  • Rexx
    • External Rexx programs run faster than in-line Rexx programs.
      Although it is nice to have all your source within a macro, you do pay a slight price in performance for having your Rexx programs within the macro instead of in a seperate file.