Search This Blog

2008-05-09

SAP Spool Request

SAP has a default spool request number of 32,000, and default clean up job SAP_REORG_SPOOL does not clean up output request by background job.

Therefore, it is offend to see GB of database storage allocated for print request (use transaction code SP12 to view), or hitting max spool request number of 32,000.

It is highly recommend to create a new custom variant, e.g. ZPURGE090DAYS, with following parameters:
  1. Client number: 000
  2. Username: Any user who can create variant with SE38 and modify job in SM37
  3. Variant name: ZPURGE090DAYS
  4. Expiry Date - Requests past expiration date: Disable
  5. Minimum age in days: 90
  6. Completed req. with min. age: Disable
  7. All requests with min. age: Enable
  8. Do you want to log everything?: Disable
  9. Log instead of dialog boxes?: Enable
  10. Log only without deletion?: Disable
  11. COMMIT all...Spool requests: 1,000 to 10,000
Step 1, 2, and 4 are important not to change. Free to change other value according to your requirement.

Execute transaction code SM37. Modify job SAP_REORG_SPOOL in any client number. Modify the job and replace variant SAP&001 with ZPURGE090DAYS. Duplicate the this job, and execute it immediately. In a typical spool size of 1 GB, it takes about 15 min to cleanup. Use sm37, sp12 - TemSe data storage, and spad - print request overview - client to monitor the progress

If after cleanup and you still encountering one of these errors:
  1. SPOOL_INTERNAL_ERROR (assume is related to this article)
  2. spool overflow (assume you have not adjust max spool number before)
  3. ...no more free spool request numbers...
SAP note 48284 mentioned that change:
  1. In Client 000, execute transaction SNRO -Number Range button - Interval. Default numbering range is 100 - 32,000 (which can print up to 31,900 requests)

  2. Define profile parameter rspo/spool_id/max_number up to 2^31
  3. Define rspo/spool_id/loopbreak to same value as above, but I think it is optional
I don't see a need to have more than 31,900. If a server is holding so much request, I believe they must never purge old request from database. Indirectly, database table size going to grow to few GB, and indirectly slowing down all print request, as well as unnecessary database size

If custom variant not defined in Client 000, then background job SAP_REORG_SPOOL will shown following error. Create the custom variant in Client 000 to fix it.
  • Variant ZPURGE090DAYS does not exist

No comments: