Problem solve Get help with specific problems with your technologies, process and projects.

SAPScript output with first page, multiple 'next' pages and last page

I am working on a SAPScript output that needs a first page, multiple 'next' pages and a last page. The last page...

needs only to be one page long as it needs to have terms and conditions printed on it.

My problem is that on the 'pages' window I can create a last page but I don't know how to 'point' to it. In the section at the bottom of the screen that says standard attributes there is a field called 'next page'. If I write 'next' in this field (for page 'next') then I can get multiple pages to print but of course no last page as nothing is pointing to this page.

If I write 'last' in this field then I get only one next page output but I do get the last page data.

I need multiple next page outputs and also the last page output. Please can you tell me how to do this?


You are correct in your observation that the 'next page' field does not offer much help when it comes to printing a FIRST page, multiple NEXT pages *and* a LAST page. In this situation, the correct entry in this field for page FIRST and NEXT is 'NEXT'. A simple method to get the LAST page to print is to insert a set of commands in your print program at the end of standard form processing (i.e. after pages FIRST and NEXT have printed completely).

Here's how to proceed: In the program, locate the existing 'CLOSE_FORM' command. Just before it, insert a call to function 'START_FORM', specifying that STARTPAGE = 'LAST'. Print any page windows necessary, such as TERMS, then call function 'END_FORM' (all before the 'CLOSE_FORM'). If you haven't already, bookend your existing output with 'START_FORM' and 'END_FORM' logic as well.

So the code would look something like this:

   Call function 'OPEN_FORM'


Form = 'Z_FORM'…

Call function 'START_FORM'.   "Default startpage = FIRST
        [Print all standard form pages]

   Call function 'END_FORM'.         "Printed everything but T&C
   Call function 'START_FORM'      "Start a new page


Startpage = 'LAST'.   "Direct access to page LAST

Call function 'WRITE_FORM'


Window = 'TERMS'.   "Final page T&C
   Call function 'END_FORM'.              "End of printing page LAST
   Call function 'CLOSE_FORM'.

Incidentally, another method of redirecting output to a page not mapped within the standard output flow is the 'NEW-PAGE' command which may be issued within the SAPscript form itself. Its basic syntax is NEW-PAGE xxx, where xxx is an optional parameter. This will force a page break and direct all subsequent output to page xxx. There are some important restrictions on use of this command. For instance, it can be used only within a MAIN window and it triggers immediate output of all remaining windows on the current page. You can find more information on this command in the SAP help portal. Visit Navigate to section BC-SRV-SCR (Basis Services - SAPscript) and click on the subsection entitled "Style and Form Maintenance". Drill down further into "SAPscript Control Commands" and choose "Explicit Page Break: NEW-PAGE".


Dig Deeper on SAP development and programming languages