TEMP-TABLE|BUFFER [name] is not used

Rule "tableusage" is a rule that identifies unused TEMP-TABLE, WORK-TABLE, and BUFFER definitions.


The author, Igor Natanzon says:

  • Line number for the END keyword is not a reliable block indicator (
    ie. END. END. on one line). However, as each block is processed
    separately, I haven't noticed any problems yet. I suspect it should
    not be a problem because procedures, functions, and event triggers
    cannot be nested (or can they??).
  • Blocks I consider local for buffer define purpose are PROCEDURE,
    FUNCTION, METHOD, and ON event trigger. Any more? Any other define is
    considered global.


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
jurjen's picture

This week we discovered an

This week we discovered an enormous DBI file growth in OpenEdge 10 compared to Progress 9. The reason was that OpenEdge allocates 9 blocks (8 kbyte each) in the DBI file as soon as it runs a "DEFINE TEMP-TABLE" statement. This adds up to a very large DBI file which is especially bad when users are sharing a Citrix/WTS box. This Prolint rule helps us locate the unused temp-tables and save diskspace.

Cringer's picture


Upgrade to v11 and the TTs are only instantiated when they are needed ;)