Friday, February 18, 2011

SAPscript PART - 1


Often there are instances where an output from a SAP program is required on a physical paper in a pre-designed format. Using normal ABAP code this is not possible. Instead SAP provides an object called SAPSCRIPT to generate such kind of documents which can contain logos, tables and other objects and which can look like pre-printed documents.
This article focuses on the design and use of Layout sets in ABAP programs to generate beautified output in SAP.
A layout set is a template designed in SAP to place the stream of data coming from a SAP program on different parts of a physical page. The designer needs to lay out the various elements that need to be printed on the page and store it as an object in the SAP system. An ABAP program will subsequently call this object to generate an instance of the template – thus generating an output document from the program.
In this 7 article tutorial we will cover subjects such as:
  • Main elements of SAPscript
  • Commands that can be used in a layout set
  • How to include a graphical image
  • Commands that can be used in SAPscript
  • Step-by-step walkthrough of example
  • Example layout set
  • Example SAPscript code
    Language
    Language in which the data coming on to the layout set will be printed. Generally, this will be the language that has been set up as default in the SAP systemHeader
    Section to define the various attributes of the layout set on a global level. Changing these attributes will affect all the components of the layout set.
    The various components of the header are explained below
    • Administration Information
    This shows the information about the layout set – details of the designer, details of changes occurring to the design, development class of the layout set and the language details for the layout set
    • Standard Attributes
    1. Description - Brief description or title of the layout set
    2. Default paragraph - The base paragraph that is globally applicable to the document. This can be overridden at lower level of the layout set by using other paragraphs
    3. Tab Stop - The base tab-stop that is globally applicable to the document. These can be overridden at lower level of the layout set by using other tab stops
    4. First Page - The start page of the layout set
    5. Page Format
    6. Orientation - The direction of printing the data on a page – P for portrait (vertical) and L for landscape (horizontal)
    7. Lines per inch
    8. Characters/inch
    • Font Attributes
    Here the various attributes and the base font applicable to the document can be defined. This font setting can be overridden at a lower level using the character strings

    Paragraphs
    Used to define the start and end positions for the different texts and objects that need to be printed on the output document

    Character Strings
    Used to define the fonts and the formatting and printing styles for each and every character that needs to be printed on the output document. The start of the character string is indicated by <string name>, while the end of the character string is indicated by </>PagesThe designer needs to organise the template as a series of pages. When an actual output document is printed, it will refer to each page for putting the data coming from the ABAP program. The order of pages is also taken from the template i.e the layout set defined.WindowsVarious parts of the output document can be conveniently organised on the pages using windows. Thus the data stream coming from the ABAP program can be logically grouped into various parts and can be placed on different locations on a page
    There are 2 main types of windows that can be used in a layout set:
    MAIN - A layout set can have only one MAIN window which is created by default. This window can flow over multiple pages.
    CONSTANT - A layout set can have any number of constant windows. A constant window can be used once per page
    Text ElementsAny text that needs to be written on the output document should be placed within a text element. This includes constant text as well as variable data like internal table data coming from the ABAP program.
    It is advisable to group logically related data within one text element.
    The fields of various tables defined in the ABAP program will be included under these text elements. These fields are carriers of data. Every field should be included in a pair of & characters. (e.g. &aufk-aufnr&)Page WindowsAll the windows that form a page of the layout set.
    Choose the window and click the Text Elements button to go to the Layout Set Editor. This consists of 2 parts
    The small space on the left is for specifying the type of command, while the window adjacent to it is for writing the command or the text that needs to go under a text element.

    The various types of commands that can be used within a layout set are tabulated below

  • Command
    Purpose
    *Default paragraph
    BlankContinuous text
    =Extended Line
    (Raw Line
    /Line Feed
    /=Line feed and extended line
    /(Line Feed and Raw Line
    /:Command Line
    /*Comment Line
    /EText Element
    <PN>This is either the name of the paragraph that should be applicable from that line of the layout set

No comments:

Post a Comment