IUT280_463

203
I n t e r n a l U s e S A P P a r t n e r O n l y I n t e r n a l U s e S A P P a r t n e r O n l y ' SAP AG IUT280 Preface-1 SAP AG 1999 IUT280 Print Workbench Print Workbench Print Workbench IUT280 IUT280 SAP AG SAP AG ! R/3 System ! Release 4.63 / IS-Utilities / Customer Care Service ! Collection 13 ! September 2001 ! Material number: 50044892

description

IUT Document

Transcript of IUT280_463

Page 1: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 Preface-1

SAP AG 1999

IUT280 Print Workbench

Print WorkbenchPrint Workbench

IUT280IUT280

SAP AG SAP AG

! R/3 System

! Release 4.63 / IS-Utilities / Customer Care Service

! Collection 13

! September 2001

! Material number: 50044892

Page 2: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 Preface-2

SAP AG 1999

Copyright 2001 SAP AG. All rights reserved.

Neither this training manual nor any part thereof maybe copied or reproduced in any form or by any means,or translated into another language, without the priorconsent of SAP AG. The information contained in thisdocument is subject to change and supplement without priornotice.

All rights reserved.

Copyright

! Microsoft ®, Windows ®, NT ®, PowerPoint ®, WinWord ®, Excel ®, Project ®, SQL-Server ®, Multimedia Viewer ®, Video for Windows ®, Internet Explorer ®, NetShow ®, and HTML Help ® are registered trademarks of Microsoft Corporation.

! Lotus ScreenCam ® is a registered trademark of Lotus Development Corporation. ! Vivo ® and VivoActive ® are registered trademarks of RealNetworks, Inc. ! ARIS Toolset ® is a registered Trademark of IDS Prof. Scheer GmbH, Saarbrücken ! Adobe ® and Acrobat ® are registered trademarks of Adobe Systems Inc. ! TouchSend Index ® is a registered trademark of TouchSend Corporation. ! Visio ® is a registered trademark of Visio Corporation. ! IBM ®, OS/2 ®, DB2/6000 ® and AIX ® are a registered trademark of IBM Corporation. ! Indeo ® is a registered trademark of Intel Corporation. ! Netscape Navigator ®, and Netscape Communicator ® are registered trademarks of Netscape

Communications, Inc. ! OSF/Motif ® is a registered trademark of Open Software Foundation. ! ORACLE ® is a registered trademark of ORACLE Corporation, California, USA. ! INFORMIX ®-OnLine for SAP is a registered trademark of Informix Software Incorporated. ! UNIX ® and X/Open ® are registered trademarks of SCO Santa Cruz Operation. ! ADABAS ® is a registered trademark of Software AG ! The following are trademarks or registered trademarks of SAP AG; ABAP/4, InterSAP, RIVA, R/2,

R/3, R/3 Retail, SAP (Word), SAPaccess, SAPfile, SAPfind, SAPmail, SAPoffice, SAPscript, SAPtime, SAPtronic, SAP-EDI, SAP EarlyWatch, SAP ArchiveLink, SAP Business Workflow, and ALE/WEB. The SAP logo and all other SAP products, services, logos, or brand names included herein are also trademarks or registered trademarks of SAP AG.

! Other products, services, logos, or brand names included herein are trademarks or registered trademarks of their respective owners.

Page 3: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 Preface-3

SAP AG 1999

SAP Utilities (IS-U/CCS)

Introduction to the IS-U/CCS

IUT110 5 days

Level 2 Level 3

Work Management

IUT221 3 days

Customer Service

IUT250 4 days

Contract AccountsReceivable andPayable

IUT240 5 days

Print Workbench

IUT280 2 days

Device Management

IUT220 3 days

Billing and Invoicing

IUT230 5 daysBasic Data/ BasicFunctions

IUT210 3 days

Real Time Pricing

IUT235 2 days

Energy DataManagement

IUT225 2 days

Page 4: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 Preface-4

SAP AG 1999

! BC460 SAPscript: Form Design and TextManagement

! IUT110 SAP Utilities: Introduction to the System

! BC400 ABAP Workbench

! BC460 SAPscript: Form Design and TextManagement

! IUT110 SAP Utilities: Introduction to the System

! BC400 ABAP Workbench

Course Prerequisites

! It is essential that you have attended the courses IUT110 and BC460 (SAPscript). The course BC400 is recommended.

Page 5: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 Preface-5

SAP AG 1999

Target Group

# Participant

! Project managers responsible for implementing IS-U

! Project team responsible for modeling businessprocesses

! Administrators responsible for optimizing processes

! Consultants preparing for IS-U implementation

# Duration: 2 days

# Participant

! Project managers responsible for implementing IS-U

! Project team responsible for modeling businessprocesses

! Administrators responsible for optimizing processes

! Consultants preparing for IS-U implementation

# Duration: 2 days

! The training materials are not intended for self-study. They are complete only in conjunction with the instructor's explanations. Space is provided in the documents for you to make your own notes.

Page 6: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 Preface-6

SAP AG 1999

Course Goals

This course will enable you to:

# Identify the components of the print workbench

# Identify the components that you will use as the user

# Understand how to obtain a form that is ready forprinting

# Understand how a prepared form is integrated into anapplication

# Identify the options available for the print process

Page 7: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 Preface-7

SAP AG 1999

Course Objectives

At the conclusion of this course, you will be able to:

# Describe the components of the print workbench

# Understand the link between the print workbenchand SAPscript

# Create and maintain an application form

# Use the tools of the maintenance transaction forapplication forms

# Understand how the print workbench is integratedinto IS-U

# Describe the different options for the print process

Page 8: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 Preface-8

SAP AG 1999

Course Content

Unit 1 Introduction

Unit 2 SAPscript

Unit 3 Print workbench

Unit 4 Maintaining application forms

Unit 5 Integration and examples

Unit 6 Print action records

Unit 7 Print control and print environment

Unit 8 Summary

Preface

Page 9: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 1-1

SAP AG 1999

SAPscriptSAPscript

Introduction

Print WorkbenchPrint Workbench

Maintaining Application FormsMaintaining Application Forms

Integration and ExamplesIntegration and Examples

Print Control and Print EnvironmentPrint Control and Print Environment

SummarySummary

Print Action RecordsPrint Action Records

Print Workbench: Introduction

Page 10: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 1-2

SAP AG 1999

Introduction: Topic Overview

! Scenario

! R/3 SAPscript

! IS-U Print Workbench

! External Processing and Archiving

Page 11: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 1-3

SAP AG 1999

Introduction: Unit Objectives

! At the conclusion of this unit, you will be able to:

! Describe the scenario for printing forms at a utilitycompany

! Describe the tools for form design in the R/3 System

! Explain the concept of the print workbench

Page 12: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 1-4

SAP AG 1999

Introduction: Scenario

! Scenario

! R/3 SAPscript

! IS-U Print Workbench

! External Processing and Archiving

Page 13: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 1-5

SAP AG 1999

BillBill

Dunning noticeDunning notice

Welcome letterWelcome letter

Installment plancorrespondenceInstallment plancorrespondence

Customer meterreading card

Customer meterreading card

AccountstatementAccount

statement

Collective billCollective bill

Utility

Forms Used at a Utility Company

" A utility company has various correspondences, which can be sent from the different applications.

" The correspondences are normally forms that are generated automatically. The company frequently sends out a large number of forms at the same time.

" The print process is different for each application.

Page 14: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 1-6

SAP AG 1999

Form Printing Requirements

Form designMail processing

and optimumpostage

Data transfer

Archiving Integration

Mass printing

" Numerous technical requirements must be met before you can generate and send forms.

" The R/3 system provides a large number of functions for form printout. However, not all requirements can be fully met by the R/3 system alone.

Page 15: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 1-7

SAP AG 1999

Introduction: R/3 SAPscript

! Scenario

! R/3 SAPscript

! IS-U Print Workbench

! External Processing and Archiving

Page 16: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 1-8

SAP AG 1999

This matterand hopethat youare happywith theresults.

Yourssincerely,inThis matterand hopethat youare happywith theresults.

Mr.J. Public25 Main St.Anytown, NY 20901

Badische StaatsbankKtNr.:0815 4711BLZ:000000000

Item ref. Price 00345 200.- 00379 150.- 02378 50.- 00458 300.-Total 700.00

Print programreport jh_form_01.

tables: scustom.select * from scustom... ......call function 'OPEN_FORM' ......call function 'START_FORM' ......call function 'WRITE_FORM' ......

report jh_form_01.

tables: scustom.select * from scustom... ......call function 'OPEN_FORM' ......call function 'START_FORM' ......call function 'WRITE_FORM' ......

ABAPreportABAPreportApplication

data

SAPscript form

SAPscriptSAPscript

DB

R/3 SAPscript Form Design Tool

" The print workbench is an IS-U/CCS product. It is not an independent tool; it is based on SAPscript.

" SAPscript is the central form design tool in the R/3 system and is used in all standard application components.

" The SAPscript form stores all the layout information. The print program contains the flow logic of the form.

" The print program also contains the access commands, which allow the application data to be selected from the database.

" Documents are generated as a result of the interaction between the SAPscript form and the print program.

Page 17: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 1-9

SAP AG 1999

Introduction: IS-U Print Workbench

! Scenario

! R/3 SAPscript

! IS-U Print Workbench

! External Processing and Archiving

Page 18: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 1-10

SAP AG 1999

IS-U Print Workbench Form Design Tool

Print WorkbenchPrint Workbench

Datahierarchy

Form class

Text

1

Text

2

Application form

Event-drivenhierarchy

SAPscriptform

layout

" The print workbench completely separates the data retrieval and the layout design of the form.

" The flow logic and the layout information are specified in the application form or in the SAPscript form. The data retrieval is stored in the form class.

" The form classes are provided by SAP.

Page 19: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 1-11

SAP AG 1999

Introduction: External Processing and Archiving

! Scenario

! R/3 SAPscript

! IS-U Print Workbench

! External Processing and Archiving

Page 20: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 1-12

SAP AG 1999

External Processing and Archiving

R/3

PrintWorkbench SAPscript

ArchiveLink

RDIRDI

Archive

Third PartyWord Processing

Software

Formatted document

" If you wish, third party software can be used to format documents.

" A raw data interface (RDI) file is used for interfaces with third party software.

" The raw data that is sent does not include layout information (font, spacing, etc.); the task of formatting is assumed entirely by the third party software.

" During the print process, SAPscript gives you the option of sending the formatted document to an external system for archiving in the file format used by the archive (PDF, for example). If a document has been formatted by an external system and is to be archived, it must be archived via this external system.

Page 21: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 1-13

SAP AG 1999

! SAPscript is the central tool for form design in theR/3 system.

! The Print Workbench is an IS-U/CCS product. It isnot an independent tool. It is based on SAPscript.

! The Print Workbench separates the data retrievalfrom the layout design of a form, and makescreating and maintaining forms easier.

! Third party software can be used to formatdocuments. A raw data interface (RDI) file is usedfor interfaces with third party software.

Summary

Page 22: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-1

SAP AG 1999

SAPscript

IntroductionIntroduction

Print WorkbenchPrint Workbench

Maintaining Application FormsMaintaining Application Forms

Integration and ExamplesIntegration and Examples

Print Control and Print EnvironmentPrint Control and Print Environment

SummarySummary

Print Action RecordsPrint Action Records

Print Workbench: SAPscript

Page 23: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-2

SAP AG 1999

SAPscript: Topic Overview

! Form Components

! Maintaining Forms

! Texts

! Symbols and Control Commands

! Print Program

Page 24: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-3

SAP AG 1999

SAPscript: Unit Objectives

At the conclusion of this unit, you will be able to:

! Describe the components of the SAPscript form

! Create a SAPscript form and SAPscript texts

! Use SAPscript symbols and control commands

! Describe how the SAPscript form and the printprogram interact

Page 25: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-4

SAP AG 1999

SAPscript: Form Components

! Form Components

! Maintaining Forms

! Texts

! Symbols and Control Commands

! Print Program

Page 26: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-5

SAP AG 1999

Form Components

PagesPages

Paragraph formatsParagraph formats

Windows and Page Windows Windows and Page Windows

Character formatsCharacter formats

Page 27: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-6

SAP AG 1999

LETTERLETTER

DIN A5 LandscapeDIN A5 Landscape

DIN A4DIN A4

Page format Static page sequence

Page 1Page 1 Page 2Page 2

Next

page

Next page

Pages

" A SAPscript form can have one or more pages. The page sequence determines which page will follow the page you are currently editing. You always have to specify a first page in the header data of the form.

" Every SAPscript form has been assigned a page format (such as LETTER, DIN A4).

" SAPscript supports automatic page numbering.

Page 28: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-7

SAP AG 1999

SenderSender Date

AddresseeAddressee

FooterFooter

Window with body text

Window with body text

Window Form: Page windows

Page 1Page 1

Page 2Page 2

Windows and Page Windows

" Windows can appear on several pages of a SAPscript form. For this reason, SAPscript differentiates between logical windows and physical page windows.

" The user determines the placement of the page windows on each page by entering their size and position. A window can have different sizes and positions on different pages.

" Texts that appear in a logical page window are defined for the corresponding logical window throughout the entire SAPscript form.

Page 29: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-8

SAP AG 1999

SenderSender DateDate

AddresseeAddressee

FooterFooter

Window withbody text

Window withbody text

Window

Window type: MAIN

Window type: VAR

Window type: VAR

Window Types

" Windows are the output areas of a SAPscript form.

" SAPscript has two main window types: MAIN and VAR.

" Type MAIN windows are used to output texts that are several pages long.

" Type VAR windows can vary in size and position on every page where they appear. However, the text that was entered in the corresponding logical window is displayed on every page where the window physically appears. Any text that cannot be displayed completely in the window because the window is too small is lost.

" R/3 Release 4.0 and earlier also had a window type CONST. This type of window has almost the same characteristics as type VAR windows.

Page 30: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-9

SAP AG 1999

15.07.1998 15.07.1998

Dear Sir or Madam,

Please find below an overview of your outstandingitems as of August 26, 1997:

ID Date Amount Text-----------------------------------4711 07/20/97 45 USD Payment req.4811 07/20/97 112 USD Payment req.4711 08/21/97 45 USD Payment req.4812 08/21/97 112 USD Payment req.

Page 1 Page 1 Page 2 Page 2

Turnaround Inc.145 Apple Valley Ln.Ithaca, NY 14850

Utility Inc.4 Truckee Way 4Durango, CO 85650

ID Date Amount Text-----------------------------------4711 08/23/97 100 USD Dunning chrg.4711 07/25/97 200 EUR Retro-bill.

Sincerely yours...

Main Window

" Texts of a variable length - such as all of a business partner's outstanding items - are displayed in the main window.

" When the output area on one page is full, SAPscript continues outputting the text in the main window of the next page, as long as the text was assigned to the BODY area.

" Main windows can have different heights and positions on the different pages, but the width remains constant on all pages.

" The output areas of a window are classified as TOP, BODY, and BOTTOM.

Page 31: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-10

SAP AG 1999

Standard attributesStandard attributes

Font attributesFont attributes

TabsTabs

Outline attributesOutline attributes

Paragraph formats

Paragraph Formats

" You can define the following font attributes for paragraph:

$ Font family, such as COURIER, HELVETICA, TIMES, ...

$ Font size

$ Bold/italic/underlined

" You can define any number of tab stops in each of your paragraph formats. These settings replace the default positions in the header data of the form. You can use right-aligned, left-aligned, and centered tab stops.

" SAPscript offers flexible outline options that enable you to organize your text by multiple criteria (such as chapter, sub-chapter, section). SAPscript numbers the paragraphs automatically. Possible outline types are:

$ Arabic digits

$ Roman numerals

$ Letters

Page 32: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-11

SAP AG 1999

Dear Sir or Madam,

order and confirm the following

postings:

Thank you for your

WindowWindow

IndentationIndentation

Space afterSpace after

Space beforeSpace before

Left marginLeft margin Right marginRight margin

Paragraph Formats: Example

" You can also use SAPscript to determine the following paragraph formatting attributes:

$ Line spacing and blank lines

$ Right and left indent to window border

$ Paragraph alignment (right, left, centered)

$ Line indentation

Page 33: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-12

SAP AG 1999

Character formatsCharacter formats

Standard attributesStandard attributes

Font attributesFont attributes

Character Formats

" SAPscript supports the following line formats:

$ Font

$ Font size

$ Bold/italic

$ Underlined

Page 34: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-13

SAP AG 1999

Utility Inc.

4 Truckee Way4Durango, CO 85650

Turnaround Inc.145 Apple ValleyLn.Ithaca, NY 14850

15.07.1998

Dear Sir or Madam,

Please find below an overview of youroutstanding items as of August 26, 1997:

ID Date Amount Text-----------------------------------4711 07/20/97 45 USD Payment req.4811 07/20/97 112 USD Payment req.4711 08/21/97 45 USD Payment req.4812 08/21/97 112 USD Payment req.

Dear Sir or Madam,

Please find below an overview of youroutstanding items as of August 26, 1997:

ID Date Amount Text-----------------------------------4711 07/20/97 45 USD Payment req.4811 07/20/97 112 USD Payment req.4711 08/21/97 45 USD Payment req.4812 08/21/97 112 USD Payment req.

Page 1

Bold, italic,16 point

Courier, 16 point, bold

Character Formats: Example

Page 35: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-14

SAP AG 1999

SAPscript: Maintaining Forms

! Form Components

! Maintaining Forms

! Texts

! Symbols and Control Commands

! Print Program

Page 36: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-15

SAP AG 1999

Form: RequestForm: RequestForm Edit Goto Attributes Utilities Settings Environment System Help

%%

Sub-objectsHeaderPage layoutParagraph formatsCharacter formatsDocumentation

Form ACCOUNT_STMT

Language ENCreate

Display Change

Initial Screen

" You can create and maintain SAPscript forms from the main R/3 menu:

Tools -> SAPscript -> Form

" You can edit sub-objects of a SAPscript form directly from the initial screen:

$ Header data

$ Page layout (pages, windows, page windows)

$ Paragraph formats

$ Character formats

$ Documentation

Page 37: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-16

SAP AG 1999

Alphanumeric Alphanumeric Form Painter GraphicalGraphical

Character formatsCharacter formats

Header dataHeader data

WindowWindow

PagesPages

Page windowsPage windows

Paragraph formatsParagraph formats

Character formatsCharacter formats

Alphanumeric and Graphical Form Painter

Paragraph formatsParagraph formats

Header dataHeader data

LayoutLayout

" A Form Painter with graphical user interface has been available since Release 4.0 to enable faster form design.

" Of course, you can still use the alphanumeric Form Painter if you wish.

" The Pages, Windows, and Page Windows components in the alphanumeric Form Painter have been grouped together in a single component of the graphical Form Painter - Layout - in the maintenance transaction for SAPscript forms.

" The graphical Form Painter is only available for Windows NT 4.0 or Windows 95 and later.

Page 38: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-17

SAP AG 1999

Form: Page LayoutForm: Page LayoutPagePAGE 1 Address page

WindowDescription

Left marginUpper marginWindow wdthWindow hght

Main windowDefault par.

Window

OptionsDesign / Text

Page 1: Page LayoutPage 1: Page Layout

MAIN*

MAIN

X

1.60 CM1.60 CM9.00 CM6.00 CM

WINDOW1*

WINDOW2*

Admin. windowAdmin. windowAdmin. window Design windowDesign windowDesign window

Graphical Form Painter: Page Layout

" You can edit the layout in both the administration window and the design window in the graphical Form Painter.

" You can use the drag and drop technique to determine the size and position of output areas in the design window.

" The most important attributes of the current page and its windows are displayed in the administration window.

Page 39: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-18

SAP AG 1999

SAPscript: Texts

! Form Components

! Maintaining Forms

! Texts

! Symbols and Control Commands

! Print Program

Page 40: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-19

SAP AG 1999

C This is <U>underlined.</>*

B CL

S U

PC Editor

Line editor

Standard Text: RequestSettings

PC editor...

Line editor

ParagraphParagraphformatsformats

This is underlined.oCharacterCharacterformatsformats

PC Editor and Line Editor

" Two types of editor are available for entering texts in SAPscript: The PC Editor and the line editor.

" Your operating system has to meet certain requirements if you want to use the PC Editor. Your PC must be running either Windows NT 4.0 or Windows 95 or later. In addition, the PC Editor requires certain DLL and OXC files that are automatically installed by the SAP GUI.

" You can choose between the PC Editor and the line editor with Settings -> Form Painter...

Page 41: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-20

SAP AG 1999

SAPscript: Symbols and Control Commands

! Form Components

! Maintaining Forms

! Texts

! Symbols and Control Commands

! Print Program

Page 42: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-21

SAP AG 1999

....+....1....+....2....+....3....+....4....+....5....+....6...* &SGH& &WA_BUS_PART-NAME&, &DATE&**

Insert Line Format Page

Text Edit Goto Format Insert System Help

Standard symbols like "Dear Ms. ..."Standard symbolsStandard symbols like "Dear Ms. ..."like "Dear Ms. ..."

Program symbols (from print program) report saprprint. data: wa_bus_part like ekun_ext .

Program symbols (from print program)Program symbols (from print program) report saprprint.report saprprint. data: wa_bus_part like ekun_ext .data: wa_bus_part like ekun_ext .

Please find enclosed ....

System symbols System symbolsSystem symbols

Symbols

" You can use symbols in addition to fixed texts in the SAPscript text editor. These symbols are filled with values at runtime.

" Symbols differ from normal text in that they are surrounded by the "&" (ampersand) character.

" There are different types of symbols:

$ Program symbols are defined globally in the print program

$ Standard symbols with values from Customizing tables

$ System symbols are defined by the system

$ Text symbols are defined in SAPscript text

Page 43: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-22

SAP AG 1999

&SYMBOL&&SYMBOL+4& Offset&SYMBOL(5)& Length&SYMBOL(I)& Suppress initial value&SYMBOL(Z)& Suppress leading zeros&SYMBOL(C)& Compress blank spaces&SYMBOL(R)& Right-aligned output&SYMBOL(S)& Suppress operators&SYMBOL(8.2)& Decimal format&�text1�SYMBOL�text2�&Surrounding text

Symbols: Formatting Options

" The value of a symbol is displayed fully by default. Trailing blanks are cut off. The following options are available for influencing how the symbol is displayed:

$ Offset Value is only displayed from the offset position

$ Length Value is only output in the specified length

$ I If the value is initial, nothing is printed

$ Z Leading zeros are suppressed

$ C Multiple, consecutive blanks are reduced to one blank

$ R Value is printed right-aligned

$ S The +/- character is hidden

$ (x, y) Value has length x with y decimal places

" You can insert text before or after the symbol within the ampersands (&), for example: &�Text1�SYMBOL�Text2�&.

" You can also combine the formatting options.

Page 44: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-23

SAP AG 1999

/: INCLUDE/: DEFINE/: ADDRESS ... ENDADDRESS/: PROTECT ... ENDPROTECT/: NEW-PAGE/: IF ... ENDIF/: CASE ... ENDCASE

Control Commands

" Control commands enable you to modify the text output as follows:

$ Include text in a document

$ Assign values to text symbols

$ Set/prevent a page break

$ Check conditions

" To activate a control command, you have to use formatting key /: in the format column of the line editor.

" The length of a command must not exceed the line width.

" More information on control commands is available in the Extended Help:

Help -> R/3 Library -> Form Design -> (Browser is started) -> BC Basis -> Basis Service/Communication Interface -> SAPscript -> BC Style and Form Maintenance -> Symbols and Control Commands

Page 45: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-24

SAP AG 1999

/: ADDRESS/: TITLE &WA_BP_ADDRESS-TITLE&/: NAME &WA_BP_ADDRESS-NAME1&, &WA_BP_ADDRESS-NAME2&/: STREET &WA_BP_ADDRESS-STREET&/: POSTCODE &WA_BP_ADDRESS-POST_CODE1&/: CITY &WA_BP_ADDRESS-CITY1&/: COUNTRY &WA_BP_ADDRESS-COUNTRY&/: ENDADDRESS

Example: The Command ADDRESS ... ENDADDRESS

Page 46: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-25

SAP AG 1999

SAPscript: Print Program

! Form Components

! Maintaining Forms

! Texts

! Symbols and Control Commands

! Print Program

Page 47: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-26

SAP AG 1999

SAPscript form" Pages" Window" Paragraph formats" Character formats" (Text elements)

SAPscript form" Pages" Window" Paragraph formats" Character formats" (Text elements)

Print program" Beginning/end of print process" Specification of the form" Prompt for print options" Data retrieval" Flow logic of the form

Print program" Beginning/end of print process" Specification of the form" Prompt for print options" Data retrieval" Flow logic of the form

SAPscript Form and Print Program

" The SAPscript form and print program interact during the print process.

" The SAPscript form contains the layout information.

" The print program contains the flow logic and data retrieval. As a result, the dynamics of the form is determined by the call sequence of the SAPscript texts in the print program.

Page 48: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-27

SAP AG 1999

Data retrievalData retrieval

Open formOpen formprintoutprintout

Close formClose formprintoutprintout

Print output inPrint output informform

Change of formChange of form

program rstxexp1.tables: scustom, sbook, ...select * from ......call function 'OPEN_FORM'

exporting form = ......call function 'START_FORM' ......call function 'WRITE_FORM'

exporting element = ...window = ...

...call function 'END_FORM' ......call function 'START_FORM' ......call function 'END_FORM' ......call function 'CLOSE_FORM' ...

Basic Structure of the Print Program

" SAPscript function modules form the interface between the print program and the SAPscript form.

" The OPEN_FORM and CLOSE_FORM function modules start and end the print process, respectively.

" The START_FORM and END_FORM function modules open and close the individual document, respectively, during the print process.

" The WRITE_FORM function module triggers the printout of a text element (SAPscript text) that was defined in the SAPscript form.

Page 49: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-28

SAP AG 1999

Summary

! The pages of the SAPscript form are determined bypages, logical windows and physical page windows.

! SAPscript texts can be customized with paragraphand character formats.

! Using symbols, you can make use of any data fromthe R/3 System in the form.

! You can dynamically influence the process logic andform logic by using control commands in SAPscripttexts.

! The print process represents the interactionbetween the SAPscript form and the print program.

Page 50: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-29

Exercises

Unit: SAPscript Topic: Maintaining Forms

At the conclusion of these exercises, you will be able to

• Create a SAPscript form

• Use the SAPscript form components to design a layout

Your utility company needs a new form to inform a business partner about the status of her open items. In these exercises, you will design the SAPscript layout for this form.

1-1 Go to SAPscript form maintenance and create form ZACCOUNT## (## = your group number).

1-1-1 Choose the alphanumeric Form Painter as the working environment in the initial screen.

1-1-2 If Client Customizing requires you to create a request for the object, follow the system prompts. You could name the request �SAPscript layout for account statement, group ##�.

1-1-3 Go to the maintenance screen. Choose form ZACCOUNT with language EN as the copy template.

1-1-4 Example the components (basic settings, pages, windows, page windows, paragraph/line formats) of the copied ZACCOUNT form. What is the name and format of the single form page?

1-1-5 Because you want to design your own layout, delete the existing character formats (BD, UL), the paragraph formats (CL and IH; not: AS), the page windows (ADDRESS, FOOTER, INFO; not: MAIN) and windows (like page windows).

1-1-6 Save your SAPscript form. If the system prompts you to enter a development class when you save as a result of your client Customizing, enter $TMP (= local development class).

1-1-7 What is the status of the SAPscript form?

Page 51: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-30

1-2 Create the components that are required for your account statement.

1-2-1 Create two additional windows (ADDRESS & INFO) with a window type of VAR.

1-2-2 Place the two new windows as page windows on the START page. Place the ADDRESS window at the top left and the INFO window to its right.

1-2-3 Create the following paragraph formats:

IH Header: Font size 14 and bold CL Closing signature: Italic

1-2-4 Create the following character format:

BD � Bold: Bold

1-3 Activate the SAPscript form.

1-3-1 What is the status of the SAPscript form?

Page 52: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-31

Solutions

Unit: SAPscript Topic: Maintaining Forms

1-1 Choose Tools → Form printing → SAPscript → Form to go to SAPscript form maintenance. In the Form field, type ZACCOUNT##. Enter EN in the Language field.

1-1-1 In the initial screen, choose Settings → Form Painter and delete the flag for the Graphical Form Painter if it was set.

1-1-2 Press Create in the initial screen. If client Customizing requires you to create a request for the object, press Create request in the dialog box and enter the above request description.

1-1-3 When you reach the maintenance screen, choose Form → Copy to copy the form and enter form name ZACCOUNT, language EN.

1-1-4 Go successively to the views Basic Settings, Character Formats, Paragraph Formats, Page Windows and Windows by pressing the appropriate pushbuttons.

The single form page of the copied form ZACCOUNT is called START and Page format DINA4. It is its own Following page. This information is displayed in the Header Data/Basic Settings.

1-1-5 Delete the sub-objects BD and UL (character formats), CL and IH (paragraph formats; not: AS) and ADDRESS, INFO and FOOTER (page windows and windows; not: MAIN), by selecting the objects (double-click) and choosing Edit ### Delete element in the menu.

1-1-6 Press Save to save the SAPscript form.

1-1-7 The status should be New � Saved. To display this information, press Header data and then Administration data.

Page 53: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 2-32

1-2 To create the form components, proceed as follows:

1-2-1 Choose Goto → Window. Then choose Edit → Create element for each component. Enter ADDRESS and INFO as the respective window names and choose window type VAR.

1-2-2 Choose Goto → Page window. Then, on the START page, choose Edit → Create element and then double-click to select the respective windows from the list. Enter the positions of the windows in the Attributes of the page window. Remember: a DINA4 page has a width of 21 cm and a length of 28.7 cm.

1-2-3 Choose Goto → Paragraph formats. Then choose Edit → Create element. Specify the name of the paragraph format and enter a short description. Choose Continue. Press the Font pushbutton to display the font attributes for the paragraph format. Use the required entry field Font height and the optional fields Bold and Italic to select the relevant attributes.

1-2-4 Choose Goto → Character formats. Then choose Edit → Create element. Specify the name of the character format and enter a short description. Choose Continue. Press the Font pushbutton to display the font attributes for the character format. Use the optional field Bold to select the relevant attribute.

1-3 Choose Form & Activate.

1-3-1 The status should be Active � Saved.

Page 54: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 3-1

SAP AG 1999

SAPscriptSAPscript

IntroductionIntroduction

Print Workbench

Maintaining Application FormsMaintaining Application Forms

Integration and ExamplesIntegration and Examples

Print Control and Print EnvironmentPrint Control and Print Environment

SummarySummary

Print Action RecordsPrint Action Records

Print Workbench: Print Workbench

Page 55: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 3-2

SAP AG 1999

Print Workbench: Topic Overview

! The Print Workbench Concept

! Form Class

! Application Form

! Print Action Records

Page 56: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 3-3

SAP AG 1999

Print Workbench: Unit Objectives

At the conclusion of this unit, you will be able to:

! Describe the difference and relationship between theprint workbench and SAPscript

! Identify the components of the print workbench

! Describe the functions of each of these components

! Explain how the components are related to each other

Page 57: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 3-4

SAP AG 1999

Print Workbench: Print Workbench Concept

! The Print Workbench Concept

! Form Class

! Application Form

! Print Action Records

Page 58: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 3-5

SAP AG 1999

SAPscript Concept

" Pages

" Window

" Text elements

" Pages

" Window

" Text elements

Print program

SAPscript form

Database

Flow logicCALL FUNC. OPEN_FORM

CALL FUNC. WRITE_FORM

CALL FUNC. CLOSE_FORM

Flow logicCALL FUNC. OPEN_FORM

CALL FUNC. WRITE_FORM

CALL FUNC. CLOSE_FORM

Data retrievalSelect * from ...

Data retrievalSelect * from ...

Data retrievalData retrievalData retrieval

Layout designLayout designLayout design

" The print program has two logical parts: data retrieval and the flow logic, which determines the layout dynamically.

" Data retrieval is the task and responsibility of SAP, since the relevant application has the most information about the tables and how they are related to each other.

" Data retrieval changes with each new release and must be adjusted accordingly in the form.

Page 59: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 3-6

SAP AG 1999

! It requires detailed knowledge of ABAP & DDIC

! It requires detailed knowledge of the print program

! No overview of the print program structure is available

! Upgrade problems occur with print programs

! Data retrieval is inflexible

! It requires detailed knowledge of ABAP & DDIC

! It requires detailed knowledge of the print program

! No overview of the print program structure is available

! Upgrade problems occur with print programs

! Data retrieval is inflexible

More maintenance and customizing of print programs

More maintenance and customizing of print programs

Disadvantages of SAPscript

" The disadvantage of this concept is that the print program has to be maintained.

Page 60: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 3-7

SAP AG 1999

! Defined interface between SAP and users based onSAPscript

! Separation of data retrieval and layout design

! Dynamically generated print programs

! Full integration of a form with the corresponding application

! Maximum flexibility of forms through user exits

! Faster form design through flexible tools

! Integrated SAP upgrade

! Defined interface between SAP and users based onSAPscript

! Separation of data retrieval and layout design

! Dynamically generated print programs

! Full integration of a form with the corresponding application

! Maximum flexibility of forms through user exits

! Faster form design through flexible tools

! Integrated SAP upgrade

The Print Workbench as the Solution

" The print workbench is not a replacement for SAPscript. It is simply a tool enabling you to work with SAPscript more easily.

" The print workbench offers an improved means of creating forms. In addition, it makes data retrieval flexible and easy to understand.

Page 61: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 3-8

SAP AG 1999

GeneratesPrint programPrint program

Data: ... Select * from ...Call functionOPEN_FORM ...

Datahierarchy

Text

1

Text

2

Application form

Event-drivenhierarchy

Form classlibraryForm classForm classlibrarylibrary

Form class

LayoutLayout

SAPscript form

Database

The Print Workbench Concept

" The SAPscript form remains an independent object.

" The form class library is an ABAP program. Its program code is copied to the print program when this is generated.

" The print program is a function module.

" You define the sequence of the texts in the hierarchy of the application form.

" When the print program is generated, the hierarchy is analyzed and converted to ABAP commands.

" Once it is generated, the print program is fully executable. No further interpretation of the hierarchy occurs at runtime.

Page 62: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 3-9

SAP AG 1999

Print Workbench: Form Class

! The Print Workbench Concept

! Form Class

! Application Form

! Print Action Records

Page 63: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 3-10

SAP AG 1999

! Contains a logical view of the data of an application

! Contains detailed information about the data for an application

! Contains a library of modularized access routines

! Is allocated to and integrated with an application

! Is provided and maintained by SAP

! Can be used by different application forms

! Represents all possible data that is available to an application

Form Class

" The form classes form the basis for all forms of the print workbench.

" Most IS-U applications with a print option have a form class.

" The form class library is an ABAP program that contains only subroutines. It has no other executable function.

" The form classes are updated every time the system is updated by SAP.

" To display a form class, choose Utilities -> Tools -> Print workbench -> Form class.

Page 64: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 3-11

SAP AG 1999

1:1 level1:1 level

The Hierarchy of the Form Class

Example: Account Statement

MOVEINDOC Move-in doc.

MOVEINDOCC Move-in document for contract

MATERIAL

IS_U_CS_MOVE_IN_WELCOME_LETTER

LOGIC_NO

Text for price classEQUIPPR_CLASS_T

LOG_REG

INST_FACTS Anlagefakten

IS_U_CA_ACCTSTMT Account statement

5 BUS_PART Business partner

5 BP_ADDRESS Business partner address

5 CLERK1 Clerk 1

CLERK2 Clerk 2

ITEM Items5 OPEN_ITEM Open items

ITM_DIVTXT Text for divisionITM_CNTNAM Name of contract account

Text for transaction

Code

Form class Edit Goto Extras Environment UtilitiesDisplay Form Class: IS_U_CA_ACCTSTMT

Form levelForm level

1:n relationship1:n relationship

1:1 relationship1:1 relationship

Example: Account Statement Example: Account StatementExample: Account Statement

Expand/collapse 1:1 levelsExpand/collapse 1:1 levelsExpand/collapse 1:1 levels

OPN_ITM_TX

" The hierarchy of the form class contains all possible data that is available to an application.

" There are two different node types: form levels and 1:1 levels.

" The form levels always have a 1:n relationship to each other. The 1:1 levels always correspond to one form level and have a 1:1 relationship with this form level. They represent additional information about a form level.

" The hierarchy of the 1:1 levels is not visible in the application forms.

" The 1:1 levels are normally hidden to simplify the overview. Each 1:1 level can be shown or hidden using the Expand/collapse icon next to it.

" Data is retrieved in two phases: the READ phase and the GET phase. This ensures maximum flexibility with regard to performance.

" The form designer needs to know how to interpret the hierarchy of the form class but does not need to maintain it.

Page 65: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 3-12

SAP AG 1999

Level Attributes of a Form Class

Example: Account Statement

MOVEINDOC Move-in doc.

MOVEINDOCC Move-in document for contract

IS_U_CS_MOVE_IN_WELCOME_LETTER

IS_U_CA_ACCTSTMT Account statement

5 BUS_PART Business partner

5 BP_ADDRESS Business partner address

Code

Form class Edit Goto Extras Environment UtilitiesDisplay Form Class: IS_U_CA_ACCTSTMT

Attributes

Name BUS_PART Table EKUN_EXT

Description Business partner

Read Form

Attributes for Form Level BUS_PARTAttributes

Name BP_ADDRESS

Table EADRDAT

Description Business partner address

Read FormFill Form

Attributes for 1:1 Level BP_ADDRESS

DDIC table/structure

DDIC table/DDIC table/structurestructure

Data retrievalroutines

Data retrievalData retrievalroutinesroutines

" You branch to the attributes of a level by double-clicking that level.

" A DDIC table or structure is stored for each form level and 1:1 level. This contains the fields available that correspond to the level.

" The table specified in the attributes does not have to be the table that contains the data. It can also be a database view that the developer has created only for that form class.

" In the attributes of the form class, a BOR object type is also stored. This is used in the application form for the test printout.

Page 66: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 3-13

SAP AG 1999

Print Workbench: Application Form

! The Print Workbench Concept

! Form Class

! Application Form

! Print Action Records

Page 67: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 3-14

SAP AG 1999

Application Form

! Is allocated to one form class

! Is linked to SAPscript by the SAPscript form

! Is maintained by the customer

! Reflects the flow logic of the form in a hierarchy

! Generates a complete print program

! Provides numerous user exits for individual requirements

! Is integrated with the system via the form class

! Provides functions and tools for maintenance purposes

" SAP provides reference forms, which are not intended for productive use.

" The application form provides a completely new view of the form. Instead of working directly with the print program, you now work with an event-driven hierarchy.

" To maintain application forms you require knowledge of SAPscript.

Page 68: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 3-15

SAP AG 1999

Form classForm classForm class

User exit include

User top include

Gen. function groupGen. function module

Hierarchy

Text 1 SAPscript form

Attributes

Application formApplication formApplication form

Components of the Application Form

Event-driven hierarchy

Text 2

" The application form consists of the hierarchy, which resembles the hierarchy of the form class, and the attributes, in which administration data is stored.

" The form class is allocated when an application form is created and cannot be changed afterwards.

Page 69: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 3-16

SAP AG 1999

Hierarchy

levels

Hierarchy

levels

Flow rules

Events

Flow rules

Events

PWB_ACCOUNT_STATEMENT Account statement Status: Active

5 BUS_PART Business partner

PWB_ACCOUNT_ADDRESS Business partner address Information for the customer

PWB_ACCOUNT_INTRODUCTION Notification textOPEN_ITEM Open items B D

Output of total on cover sheetPWB_ACCOUNT_CLOSING_REMARK Complimentary close

5 OPEN_ITEM Open items

PWB_ACCOUNT_NEW_PAGE New page TPWB_ACCOUNT_OPEN_ITEMS Open item data

TextsTextsTexts User exitsUser exitsUser exits

PWB_ACCOUNT_SUM

PWB_ACCOUNT_INFO

Hierarchy of the Application Form

" The hierarchy of the application form reflects the flow logic in the print program.

" In addition to the form levels, texts (or rather text links) can now also be inserted in the hierarchy.

" The form levels and the texts can be interpreted as events of a top-to-bottom flow logic:

$ Form levels represent the start of a loop. All the entries that belong to the current entry of the form level above them are processed.

$ The text nodes simply mean that the text is printed.

" In addition, you have the option of processing user exits in the hierarchy. These user exits are attached to form levels or to texts. There are also specific rules that apply to processing user exits.

" The hierarchy functions as a workbench since you can branch from it to the maintenance screens of the individual objects.

Page 70: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 3-17

SAP AG 1999

Application form

" Flow logic (hierarchy)

" Names of external objects

" User exits

Application form

" Flow logic (hierarchy)

" Names of external objects

" User exits

Form class

" Data retrieval routines

Form class

" Data retrieval routines

Print programPrint programR/3 application

e.g. Move-In

R/3 applicationR/3 application

e.g. Move-Ine.g. Move-In

The Generated Print Program

" When the print program is generated, the components maintained by the user and those provided by SAP are combined.

" The data retrieval routines are copied from the form class library to the print program, the hierarchy is analyzed, and links to the individual objects (such as the SAPscript form or user includes) are created.

" The generated print program is a complete ABAP program (a function module) that is called from the relevant application at runtime.

Page 71: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 3-18

SAP AG 1999

Print Workbench: Print Action Records

! The Print Workbench Concept

! Form Class

! Application Form

! Print Action Records

Page 72: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 3-19

SAP AG 1999

An additional message is to be sent with the bill, such asnotification of construction work in the area

Mr. Smith ID: 0101010103 Park StreetNew York, NY 12345

BillDear Mr. ....

This is your bill for the period...

Amount determination E N E R G Y C H A R G E99000.0 KWH * 0.0900 $/KWH = 8,910.00plus tax 15.000% 1,336.50

Mr. Smith ID: 0101010103 Park StreetNew York, NY 12345

BillDear Mr. ....

This is your bill for the period...

Amount determination E N E R G Y C H A R G E99000.0 KWH * 0.0900 $/KWH = 8,910.00plus tax 15.000% 1,336.50

Owing toconstruction workthat is taking place

in this area,there may be some

disturbances

Object type ISUPARTNER

Object key 010101010

Form class IS_U_BI_BILL

From date 01.08.1998

To date 01.10.1998

Total 2 Frequency 1

Last processed 0

Individ. textMeter reading order info

12345

Meter reading order infoConstruction site infoRate informationGeneral terms and conditionsGas information

Text Flyer

Free textFree textFree text

Bill for BP010101010Bill for BPBill for BP010101010010101010

Using Print Action Records

" Companies often need to insert additional text that is not specified in the form by the user.

" In addition, you may wish to enclose leaflets (or a flyer) with a bill, for example, at the customer's request.

" Occasionally it is necessary to include temporary additional information in a form.

" Print action records enable you to implement these requirements in any application.

" The key of a print action record determines the event with which the print action record is to be processed.

" In the application form, search commands are stored instead of the actual additional text. These commands search for print action records with the corresponding key and print them out if necessary.

Page 73: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 3-20

SAP AG 1999

Print Workbench: Summary

! The print workbench is a tool used for designingforms. It is based on SAPscript.

! The form classes contain the data hierarchy and thedata retrieval defined for an application.

! The application forms contain a hierarchy thatrepresents the flow logic of the form.

! The print programs required for printing aregenerated from the application form.

! Print action records enable you to print additionalindividual texts without having to change theapplication form.

Page 74: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-1

SAP AG 1999

SAPscriptSAPscript

IntroductionIntroduction

Print WorkbenchPrint Workbench

Maintaining Application Forms

Integration and ExamplesIntegration and Examples

Print Control and Print EnvironmentPrint Control and Print Environment

SummarySummary

Print Action RecordsPrint Action Records

Print Workbench: Maintaining Application Forms

Page 75: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-2

SAP AG 1999

Maintaining Application Forms: Topic Overview

! Hierarchy and Attributes

! Variables and SAPscript Texts

! User Exits

! Other Tools

! Managing Languages

! Application Forms in Multiple Clients andR/3 Systems

Page 76: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-3

SAP AG 1999

Maintaining Application Forms: Unit Objectives

At the conclusion of this unit, you will be able to:

! Create an application form and generate a printprogram from it

! Understand how user exits are integrated

! Use the tools for maintaining the form

! Describe how application forms are maintained inseveral languages

! Describe the strategies for using multiple clients orR/3 Systems

Page 77: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-4

SAP AG 1999

Maintaining Forms: Hierarchy and Attributes

! Hierarchy and Attributes

! Variables and SAPscript Texts

! User Exits

! Other Tools

! Managing Languages

! Application Forms in Multiple Clients andR/3 Systems

Page 78: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-5

SAP AG 1999

Create

Definition of flow logic(hierarchy)

Definition of layout(SAPscript)Generation of the

print program

Test printout

Definition ofuser exits

The Form Maintenance Process

" To maintain the application form, you follow the cycle illustrated above. Once you have created an application form, you gradually extend it and test it.

" The changes you make to an application form take effect the next time the print program is generated.

Page 79: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-6

SAP AG 1999

Application form PWB_ACCOUNT_STATEMENT

Sub-objects

HierarchyAttributes

SAPscript formTextsUser exit includeUser top include

Generated function module

Form classForm class library

Change Display

Application form Edit Goto Environment Utilities System HelpMaintain Application Form: Initial Screen

CreateCreateCreate

Initial Screen

" To access the maintenance screen of the application form, you choose Utilities -> Tools -> Print Workbench -> Application form.

" In the initial screen of this transaction, you can select one of the sub-objects of the application. The initial screen contains the menu functions for creating, changing, displaying, copying, renaming, and deleting application forms.

" When you create an application form, observe the naming conventions: In a customer system, the name of the form must begin with y or z

Page 80: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-7

SAP AG 1999

PWB_ACCOUNT_STATEMENT Account statement Status: Active - Saved

5 BUS_PART Business partner

PWB_ACCOUNT_ADDRESSPWB_ACCOUNT_INFO Information for the customerPWB_ACCOUNT_INTRODUCTION Notification textOPEN_ITEM Open items B DPWB_ACCOUNT_SUM Output of total on cover sheetPWB_ACCOUNT_CLOSING_REMARK

5 OPEN_ITEM Open items

PWB_ACCOUNT_NEW_PAGE New page TPWB_ACCOUNT_OPEN_ITEMS

Level 1:1 level Text Form Code

Application form Edit Goto Extras Environment Utilities System HelpSAPscript formSAPscript formSAPscript form

SAPscript textSAPscript textSAPscript text

Open item data

Complimentary close

User exit includeUser exit includeUser exit include

NavigationNavigationNavigation

Change Application Form: PWB_ACCOUNT_STATEMENT Language EN

Business partner address

Navigation

" You can navigate directly from the maintenance screen for the hierarchy to the maintenance transactions for the objects.

" Under the menu option Environment, you can choose from other navigation options. These include:

$ Generated function module

$ Generated function group

$ User top include

$ Print spool

" The SAPscript texts mask SAPscript standard texts, which can also be maintained using the SAPscript transaction SO10. The name of the text must contain a clear indication of the application form to which the text belongs.

" If you use texts with the same name in different application forms, then changes made in these texts apply to all the forms.

" You can find out where a text is used by choosing Edit -> Text -> Where-used list.

Page 81: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-8

SAP AG 1999

PWB_ACCOUNT_STATEMENT Account statement (IUT280 example) Status: Active

5 BUS_PART Business partner

BP_ADDRESS Business partner address

PWB_ACCOUNT_ADDRESS Business partner addressPWB_ACCOUNT_INFO Information for the customerPWB_ACCOUNT_INTRODUCTION Notification textOPEN_ITEM Open items

1. Read business partner (BUS_PART)2. Read address for business partner (BP_ADDRESS)3. Print 3 texts (PWB_...)4. Read one open item for the business partner (OPEN_ITEM)5. Print text PWB_ACCOUNT_OPEN_ITEM6. Go to next open item (to no. 4) if this exists7. Go to next business partner (to no. 1) if this exists

PWB_ACCOUNT_OPEN_ITEM Open items

5

Document levelDocument levelDocument level

Flow Logic

" The hierarchy of the application form represents a flow logic that has been defined.

" The uppermost form level in the application form is called the document level. This is because a document is created for each entry at this level (in the example a document is created for each business partner).

" A form level represents a loop in which the levels and texts dependent on it are processed.

" When you maintain an application form, you need to understand the flow logic of the hierarchy so that you can insert texts and user exits.

Page 82: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-9

SAP AG 1999

Application form attributes

Application form PWB_ACCOUNT_STATEMENT

Form class IS_U_CA_ACCTSTMT

Description Account statement

Breakpoints

Created SAP 27.06.1998

Changed SAP 01.07.1998

Generated SAP 01.07.1998

Status Active

Orig. system KK4

Specifications for generated print program

User exit include PWB_ACCOUNT_EXIT_300

User top include PWB_ACCOUNT_TOP_300

Gen. function group PWB_ACCOUNT_PRINT_300

Gen. function module PWB_ACCOUNT_PRINT_300

SAPscript form PWB_ACCOUNT Language overview

Attributes for Application Form PWB_ACCOUNT_STATEMENT

Client numberClient numberClient number

Form Attributes

" The attributes of the application form contain control and administrative information.

" The form class determines the application to which the application form belongs and the data hierarchy on which the form is based.

" The breakpoint flag is set if breakpoints are to be generated in the function module during form maintenance. You should not set this flag in live systems.

" The print program can have one of the following status values:

$ New A print program has not yet been generated

$ Active The print program is up-to-date

$ Revised The print program must be generated again

$ Inactive The function module is not yet active

" The names of objects used in multiple clients must end with the number of the current client. This ensures that the object is allocated to the application form.

" If you choose Language overview, you obtain a list of the languages for the SAPscript form that are stored in the application form.

Page 83: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-10

SAP AG 1999

Level attributes

Form level BUS_PART Table EKUN_EXT

Description Business partner

Exit before loopExit during loopExit after loop

Active

Attributes for Form Level BUS_PART

3 user exits3 user exits3 user exits

Active indicatorActive indicatorActive indicator

Table/StructureTable/StructureTable/Structure

Form Level Attributes

" By double-clicking a form level or 1:1 level, you can display the attributes.

" The DDIC table that is copied from the corresponding form class provides information about the available fields of the form level. By double-clicking the table you branch to the ABAP Dictionary display of the table.

" You can name three types of user exits (see below) in the form level attributes.

" A form level can be activated or deactivated. If it is deactivated, it still appears in the hierarchy but is not taken into account in the print program.

Page 84: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-11

SAP AG 1999

PWB_ACCOUNT_STATEMENT Account statement Status: New - Saved

5 Business partner

OPEN_ITEM Open items

Text

BUS_PART

Text properties

Text name PWB_ACCOUNT_ADDRESS

Description Address for customer

User exit

ChildSibling

SAPscript parameters

Window ADDRESS

Window area BODY

Function APPEND

Insert Text Element for BUS_PART

Hierarchical relationshipHierarchical relationshipHierarchical relationshipList ofstandard texts

List ofList ofstandard textsstandard texts

Creating a Text

" In contrast to the SAPscript concept, the texts are no longer located in the SAPscript form. They are stored as SAPscript standard texts and referenced in the hierarchy.

" You insert a text in the hierarchy by placing the cursor at the desired point and then either choosing Edit -> Text -> Create from the menu or pressing the Text pushbutton in the menu bar.

" In the dialog box you must specify the hierarchical relationship (child or sibling) and the SAPscript parameters as well as the name of the text and a description. When you specify the name, observe the naming conventions. Customer objects start with z or y.

" The SAPscript parameters determine the window of the SAPscript form in which the text is to be printed, and the option that is to be used (such as APPEND, SET).

" You can also select a text from a list of predefined texts (for example, bank details). You have to define these texts in Customizing.

Financial Accounting -> Contract A/R / A/P -> Basic functions -> Print workbench -> Define standard texts

" When you assign a name for the text, make sure that it refers unmistakably to the corresponding application form. For example, the first ten letters of all the texts in the same application form should be the same.

Page 85: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-12

SAP AG 1999

Text properties

Text name PWB_ACCOUNT_ADDRESS

Description Business partner address

User exit

Language overview

SAPscript parameters

Window ADDRESS

Window area BODY

Function SET

Attributes for Text PWB_ACCOUNT_ADDRESS

Text exitText exitText exitActive

ADDRESS HEADER

MAIN

SAPscriptform

SAPscriptSAPscriptformform

SAPscript parametersSAPscript parametersSAPscript parameters

Text Attributes

" If you double-click the text node, you can display the text attributes that you specified when you created the text.

" You can store user exits for texts as well as for form levels. In this exit, you can specify whether the text is to be printed or not, based on the current data pattern. For this purpose, you can set transfer parameter y_print_text in the interface of the corresponding ABAP subroutine.

" The window specified in the SAPscript parameters must exist in the SAPscript form that is specified in the attributes of the application form.

" By choosing Language overview, you obtain a list of the languages in which the text is available. From this list, you can branch to the text in any of these languages.

Page 86: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-13

SAP AG 1999

! Copy of the data retrieval routines from the form classlibrary

! Analysis of the application form hierarchy

! Incorporation of links into:

! The SAPscript form (OPEN_FORM, START_FORM)

! The SAPscript texts (WRITE_FORM_LINES)

! Integration of user exits

! Incorporation of user includes (exit + top)

! Calling of user exits (perform)

! Creation of a function group and a function module

! Copy of the data retrieval routines from the form classlibrary

! Analysis of the application form hierarchy

! Incorporation of links into:

! The SAPscript form (OPEN_FORM, START_FORM)

! The SAPscript texts (WRITE_FORM_LINES)

! Integration of user exits

! Incorporation of user includes (exit + top)

! Calling of user exits (perform)

! Creation of a function group and a function module

Generation of the Print Program

" You cannot print an application form until a print program has been generated for it.

" Before the print program is generated, the system checks the application form. If errors are reported, you can view the error log to find out where these errors occurred.

" The application forms are not generated when they are released by SAP. You need to generate them yourself; one way to do this is using the Mass generation function (see slide Mass Generation).

" The generated function modules are normally stored in the development class $TMP. If you wish, however, they can be reassigned.

Page 87: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-14

SAP AG 1999

! Hierarchy and Attributes

! Variables and SAPscript Texts

! User Exits

! Other Tools

! Managing Languages

! Application Forms in Multiple Clients andR/3 Systems

Maintaining Application Forms: Variables and Texts

Page 88: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-15

SAP AG 1999

PWB_ACCOUNT_STATEMENT Account statement Status: New - Saved

5 Business partner

OPEN_ITEM Open items

BUS_PART

Level Symbol Short text

BUS_PART Business partner numberBUS_PART Address numberBUS_PART Business partner categoryBUS_PART Business partner typeBUS_PART &WA_BUS_PART-BU_GROUP& Business partner groupingBUS_PART &WA_BUS_PART-BPEXT& Business partner no. in external systemBUS_PART &WA_BUS_PART-BU_SORT1& Search term 1 for business partnerBUS_PART &WA_BUS_PART-BU_SORT2& Search term 2 for business partnerBUS_PART &WA_BUS_PART-SOURCE& Sources of business partner dataBUS_PART &WA_BUS_PART-TITLE& Form of address keyBUS_PART &WA_BUS_PART-XDELE& Central archiving flag

Symbols for Form Level BUS_PART

&WA_BUS_PART-PARTNER&&WA_BUS_PART-ADDRNUMBER&&WA_BUS_PART-TYPE&&WA_BUS_PART-BPKIND&

Variables

" If you place the cursor on a node in the hierarchy and choose Extras → Display symbols, you obtain a list of the symbols that are available.

" A work area (WA_<Name>) exists for each form level and 1:1 level. This work area can be used in the texts and in the user exits.

" If you use this function with the cursor positioned on a text, you obtain a list of all levels higher up in the hierarchy; if the cursor is positioned on a form level or 1:1 level, you obtain a list of the symbols for the relevant level only.

" You can use the Find function to find a field in the list.

" In texts, you can only use fields that belong to form levels or 1:1 levels higher up in the hierarchy.

" You can copy symbols from the list to the clipboard and then insert them into the SAPscript texts with CTRL-V.

Page 89: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-16

SAP AG 1999

! Hierarchy and Attributes

! Variables and SAPscript Texts

! User Exits

! Other Tools

! Managing Languages

! Application Forms in Multiple Clients andR/3 Systems

Maintaining Application Forms: User Exits

Page 90: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-17

SAP AG 1999

Flow Logic with User Exits

Level attributes

Form level OPEN_ITEM

Table FKKOP

Description Open items

Exit before loop INIT_SUM

Exit during loop PERFORM_SUM

Exit after loop

Active

Attributes for Form Level OPEN_ITEM

5 OPEN_ITEM Open items B D

ITM_DIVTXT Text for divisionITM_CNTNAM Name of contract accountOPN_ITM_TX Text for transaction

PWB_ACCOUNT_OPEN_ITEMS Open item data

1. Process INIT_SUM

2. Import open items from table for OPEN_ITEM

3. Import 1:1 levels for current items

4. Process PERFORM_SUM

5. Print text PWB_ACCOUNT_OPEN_ITEM

6. Go to no. 2 if further open items exist

(7. Process exit after loop)

User ExitsUser ExitsUser Exits

" To adapt the application forms to your individual requirements, you can insert user exits at any point in the flow logic. These user exits enable you to alter the flow logic by means of appropriate ABAP statements.

" For each form level there are three different user exits, which are used before, during, and after processing of the corresponding loop:

$ The "exit before loop" can be used for sorting table entries or initializing summation variables.

$ The "exit during loop" is required for calculating totals or for reloading data from the database.

$ The "exit after loop" is processed directly after the loop.

" All user exits are stored in the user exit include. Before you can use user exits, you need to specify the user exit include in the attributes of the application form.

" There are two ways of branching to the user exits:

$ By Clicking the three characters B, D and A in the hierarchy display

$ By double-clicking the exit name in the attributes of the form level

Page 91: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-18

SAP AG 1999

Double-click

Double-Double-clickclick

Level attributes

Form level OPEN_ITEM

Table FKKOP

Description Open items

Exit before loop INIT_SUM

Exit during loopExit after loop

Attributes for Form Level OPEN_ITEM

13 form user_exit_init_sum14 tables xyt_open_item structure fkkop .1516 *sort XYT_OPEN_ITEM by param1 ascending param2 descending .17 clear sum .1819 endform . " USER_EXIT_INIT_SUM

Line 13 - 19 of 55

Markers Mark line

ABAP Editor: Display Program PWB_ACCOUNT_EXIT_300

Inserting User Exits

" You can create new user exits by specifying a name for the exit in the attributes and then double-clicking the field.

" When a new user exit is generated, the frame of the subroutine is transferred to the user exit include. You must not change this frame.

" You can use the variables in the subroutine interface in the user exit.

$ The interface of the exit before loop contains the internal table that is processed directly after the exit. You can sort and reorganize this table.

$ In the interface of the exit during loop you can see the work area of the corresponding form level and an index (c-tabix) that shows the position of the current entry in the internal table.

$ The user exit of a text node contains the variable y_print_text, which you can set to SPACE if the text is not to be printed.

" When you maintain the user exits, make sure that the syntax of the program code you generate is correct (Syntax check function).

Page 92: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-19

SAP AG 1999

1 data: sum like wa_open_item-betrw .23

Markers Mark line

Program Edit Goto Utilities Block/buffer ...

User top includeUser top includeUser top include

ABAP Editor: Display Program PWB_ACCOUNT_TOP_300

User variable, such as totalUser variable, such as totalUser variable, such as total

Defining User Variables

" If you wish to perform calculations, you can define your own global variables in the user top include. Before you can use user exits, you need to specify the user exit include in the attributes of the application form.

" Your variables must be defined by ABAP commands (data ....).

" The variables defined in the user top include can be used in each user exit and in each text.

Page 93: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-20

SAP AG 1999

! Hierarchy and Attributes

! Variables and SAPscript Texts

! User Exits

! Other Tools

! Managing Languages

! Application Forms in Multiple Clients andR/3 Systems

Maintaining Application Forms: Other Tools

Page 94: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-21

SAP AG 1999

PWB_ACCOUNT_STATEMENT Account statement

5 BUS_PART Business partner

BP_ADDRESS Business partner addressPWB_ACCOUNT_ADDRESS Business partner addressPWB_ACCOUNT_INFO Information for the customerPWB_ACCOUNT_INTRODUCTION Notification textOPEN_ITEM Open itemsPWB_ACCOUNT_SUM Output of total on cover sheetPWB_ACCOUNT_CLOSING_REMARK Complimentary close

Open items

Level 1:1 level Text Form Code

Application form Edit Goto Extras Environment Utilities System HelpChange Application Form: PWB_ACCOUNT_STATEMENT Language EN

CopyCopyCopy RenameRenameRename

OPEN_ITEM

CutCutCut

Create new nodesCreate new nodesCreate new nodesDeleteDeleteDelete

Tree Operations

" When operating with nodes and sub-trees, the program makes sure that the hierarchy of the form class remain correct.

" It is possible to process a text or form level several times.

" When you delete or rename a text, an appropriate operation is also proposed for the corresponding standard text. The system also checks that the text is not used by other application forms.

" It is not possible to rename form levels or 1:1 levels.

" When you create 1:1 levels for a form level, the system checks to see which 1:1 levels already exist in the application form and proposes the remaining levels.

Page 95: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-22

SAP AG 1999

Code

Sample code for application form IS_U_CA_ACCTSTMT

perform open_form . LT_BUS_PART[] = T_BUS_PART[] .loop at LT_BUS_PART into WA_BUS_PART .

perform start_form . perform FILL_BUS_PART_BP_ADDRESS using WA_BUS_PART WA_BP_ADDRESS .perform output_text using PWB_ACCOUNT_ADDRESS ADDRESS BODY SET .perform output_text using PWB_ACCOUNT_INFO INFO BODY SET .perform output_text using PWB_ACCOUNT_INTRODUCTION MAIN BODY APPEND .perform GET_BUS_PART_OPEN_ITEM tables LT_OPEN_ITEM using WA_BUS_PART .perform USER_EXIT_INIT_SUM tables LT_OPEN_ITEM . "Exit-Before-Loop for OPEN_ITEM loop at LT_OPEN_ITEM into WA_OPEN_ITEM .

perform USER_EXIT_PERFORM_SUM . "Exit-During-loop for OPEN_ITEM endloop .

perform output_text using PWB_ACCOUNT_SUM MAIN BODY APPEND .

...

Sample Code

" To examine the flow logic of the application form, you can generate sample code from the hierarchy of the application form.

" In the sample code you can see the call sequence of the FORM routines in the print program. It is also possible to branch to the corresponding subroutines or texts.

" The sample code is not identical to the code generated in the print program.

" The sample code is particularly suitable for checking where and how the user exits are integrated.

" In the list, you can also see the sequence and the nesting of the data retrieval routines.

Page 96: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-23

SAP AG 1999

PWB_ACCOUNT_STATEMENT Account statement

5 BUS_PART Business partner

BP_ADDRESS Business partner address

Level 1:1 level Text form Code

Application form Edit Goto Extras Environment Utilities System HelpChange Application Form: PWB_ACCOUNT_STATEMENT Language EN

Name 1/2Street/house numberCity/rgn/PtlCdPhone no.Bank code/acct no.Business partner

Contract acct

Business partnerData Finder: Find Business Partner

Find method ISUPARTNERFind method ISUPARTNERFind method ISUPARTNER

Test Printout

" In an application form, it is possible to perform a test printout with actual data once the function module has been generated for the first time.

" You can start the test printout by choosing Application form -> Test printout -> Execute.

" The dialog box that follows depends on the form class. If a BOR object type is specified in the attributes of the form class, the FIND method of the object type is executed.

" The key of the selected object is used to initiate the test printout of the form.

" If no BOR object type is specified in the attributes of the form class, the initial screen of a generic report for testing the form appears.

" Not all form classes support test printout from form maintenance. You can find out whether the test printout is free of errors by referring to the documentation of the form class.

" Once you have executed the test printout for the first time, the print parameters and the object are saved internally. If you wish to execute the test printout using other print parameters or another object, choose Application form -> Test printout -> New object.

Page 97: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-24

SAP AG 1999

PWB_ACCOUNT_STATEMENT Account statement

5 BUS_PART Business partner

BP_ADDRESS Business partner addressPWB_ACCOUNT_ADDRESS Business partner addressPWB_ACCOUNT_INFO Information for the customerPWB_ACCOUNT_INTRODUCTION Notification textOPEN_ITEM Open itemsPWB_ACCOUNT_SUMPWB_ACCOUNT_CLOSING_REMARK

Open items

Level 1:1 level Text Form Code

Application form Edit Goto Extras Environment Utilities System HelpChange Application Form: PWB_ACCOUNT_STATEMENT Language EN

OPEN_ITEM

Positioning in the hierarchyPositioning in the hierarchyPositioning in the hierarchy

Complimentary closeOutput of total on cover sheet

Breakpoints

" If the Breakpoints indicator is set in the attributes of the application form, and the status of the application form is ACTIVE, you can set breakpoints in the hierarchy.

" The print program does not have to be generated again.

" The breakpoints are only effective during a test printout.

" If you execute the test printout, the R/3 system switches to debugging mode when the corresponding subroutines are executed in the print program.

Page 98: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-25

SAP AG 1999

Control Variable C

" c-langu

" c-tabix

" c-lines

" c-archive_index

" c-formkey

" c-sap_form

" c-itcpp

Current language of the form

Current entry of a form level

Number of entries for current form level

Parameters for archiving

Name of current application form

Name of SAPscript form

SAPscript print parameters

! Is defined globally in the print program

! Contains current print parameters

! Can be used in texts and in the user exits

" The c variable exists in every print program.

" The fields of the c variable are either set once at the start, or updated continually in the print program.

" You can view a list of the most important fields by choosing

Extras -> Display control variable c -> As variable

Page 99: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-26

SAP AG 1999

! Hierarchy and Attributes

! Variables and SAPscript Texts

! User Exits

! Other Tools

! Managing Languages

! Application Forms in Multiple Clients andR/3 Systems

Maintaining Application Forms: Managing Languages

Page 100: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-27

SAP AG 1999

EN English

DE German

...

EN English

DE German

...

Application form

enen

Texts

de...

enende

...

enende

...

SAPscript formenen

de...

Language pool

Translation

" The application form is language-independent.

" In the application form, there is a language pool, which contains the languages into which the application form can be translated.

" The language-relevant components of the application form are the standard SAPscript texts and the SAPscript form.

Page 101: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-28

SAP AG 1999

PWB_ACCOUNT_STATEMENT Account statement

5 BUS_PART Business partner

BP_ADDRESS Business partner address

Level 1:1 level Text

Application form Edit Goto Extras Environment UtilitiesChange Application Form: PWB_ACCOUNT_STATEMENT Language EN

Processing languageProcessing languageProcessing language

LanguageDescription

D GermanE English

Choose Language

Extras →

Language→

Choose

Extras →

Language→

Choose

New language: ?

Create Language

Extras →

Language→

Create

Extras →

Language→

Create

Managing Languages

" The current processing language is displayed in the title bar of the window.

" When the application form is created, the logon language is automatically the first processing language.

" To create other languages, choose Extras -> Language -> Create.

" To choose a different processing language, choose Extras -> Language -> Choose .

Page 102: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-29

SAP AG 1999

Maintaining Application Forms: Clients and Systems

! Hierarchy and Attributes

! Variables and SAPscript Texts

! User Exits

! Other Tools

! Managing Languages

! Application Forms in Multiple Clients andR/3 Systems

Page 103: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-30

SAP AG 1999

R/3 SystemR/3 System

Client 000(SAP)

Client 010(Customer)

Copy from client

Copy from Copy from clientclient

Copying to Another Client

" The application form is client-specific.

" It is possible to copy an application form from another client.

" To copy an application form from another client, choose

Utilities -> Copy from client

in the initial screen of application form maintenance. In the dialog boxes that follow, specify the source client, the application form, and the names of the objects in the application form.

" In this process, sub-objects (such as texts, SAPscript forms, or user includes) can also be copied.

" Once the application form is copied, the print program has to be generated again, so that the application form can be used for printing.

Page 104: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-31

SAP AG 1999

010

Client 000 (Master)

Create links toanother clientCreate links toCreate links toanother clientanother client

020 100 ...

TestTest

R/3 SystemR/3 System

Test 2Test 2 Prod.Prod.

Links to Other Clients

" If you are working in different clients in an R/3 system, you can generate links to one individual client in which the forms are maintained.

" To create a link, choose the following in the initial screen of IS-U form maintenance:

Utilities -> Create link to other client

" You can create links either from the current client to another client, or from other clients to the current client.

" Note that, when you create links, no sub-objects are copied. The print program contains references to the objects in the master client.

Recommended Scenario:

! You should create a client which is only used to maintain application forms, for example 110.

! All clients with test data must consequently have links to the application form client. In this scenario client 110.

! You should create this client with the same number (110) in test, quality and productive systems. Therefore the names of application form sub-objects such as print program and user includes, do not need to be adapted.

Page 105: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-32

SAP AG 1999

R/3 System 1 (Test)

R/3 System 2 (Live)R/3 System 2 (Live)

Transport to otherR/3 SystemsTransport to otherTransport to otherR/3 SystemsR/3 Systems

Transporting to Other Systems

" A company often has more than one R/3 System. For example, it may have a test system and a production system.

" It is possible to create transport request entries for the application form and its sub-objects in order to transport them from one system to another.

" To create a transport entry for application forms, choose

Utilities -> Mass transport

" The SAPscript form, the user includes, and the print program can only be transported if they are in a development class that can be transported (<> $TMP).

" If the sub-objects of an application form are in a development class that cannot be transported, you can change this in the object directory entry:

Environment -> Generated function group -> Object directory entry

" The function group is normally stored in the development class $TMP. The development classes of the other objects are specified by the user when he/she creates these objects.

" A log provides information about the creation of the request.

" Once you have created the request, you must release it (using Transaction SE09). The system administrator must then transport it to the target system.

Page 106: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-33

SAP AG 1999

Application form Status Form description

IS_U_ACCTSTMT New Account statementIS_U_BBP_NOTIFICATION Active Changes to bud. billing plan

IS_U_BILL Revised IS-U bill

IS_U_CA_CASHPAYMENT_RECEIPT01 Active Receipt form: cash payment

IS_U_CA_SECURITY_REQUEST Active Request for security deposit

IS_U_COLLECTIVE_BILL Revised IS-U collective bill

IS_U_DUNNING Active Dunning notice

IS_U_INSTPLAN Revised Installment plan notification

IS_U_INTEREST New Interest notification

IS_U_METER_READING_CARD Active Customer meter reading card

IS_U_METER_READING_COVER_PAGE Active Meter reading cover sheet

IS_U_METER_READING_DOWNLOAD New Download of MR order

IS_U_METER_READING_ORDER Active Meter reading order printout

IS_U_MOVE_IN_WELCOME_LETTER New Welcome letter

IS_U_MOVE_OUT_NOTIFICATION Active Move-out confirmation

IS_U_RETURN Active Returns form

IS_U_SECURITY_REQUEST Revised Request for security deposit

Application FormG

enerate all

Mass Generation

" The print programs may need to be generated together, especially if a new system has just been installed.

" When IS-U is released, all the application forms have the status NEW.

" To start mass generation, choose

Utilities -> Mass generation

Set the process parameters and start the process. Once processing has finished, the log provides information about the run.

Page 107: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-34

SAP AG 1999

Maintaining Application Forms: Summary

! You can perform the following tree operations in thehierarchy of the application form:" Create texts or form levels" Copy and rename sub-trees" Activate or deactivate sub-trees

! Various tools are available to assist you in designingforms:" Display of the available variables" Test printout with actual data" Breakpoints in the hierarchy

! Programs are available for mass generation, masstransport, and creating links to another client.

Page 108: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-35

Exercises

Unit: Maintaining Application Forms Topic: Maintaining Application Forms

At the conclusion of these exercises, you will be able to

• Interpret a form class

• Create an application form.

• Insert texts in the application form hierarchy

• Generate an application form.

• Test printout of the application form.

• Use SAPscript symbols in SAPscript texts

• Program user exits in the application form

Now that you have determined the layout for the open items window, you want to fill the account statement with texts and variables. These texts and variables will be supplied with the data of the current partner at runtime during the print process.

1-1 Go to the form class of the form for the account statement: IS_U_CA_ACCTSTMT.

1-1-1 What are the names of the 1:1 levels assigned to form level OPEN_ITEM?

1-1-2 Display the form class attributes.

1-1-3 Read the documentation. What is the name of the BOR object type for this form class? Will the form class be archived?

1-2 Go to the maintenance transaction for IS-U application forms and create application form ZACCOUNT##_STATEMENT (## is your group number).

1-2-1 Assign the form class IS_U_CA_ACCTSTMT to this application form.

1-2-2 Enter a short description, such as �Acct statement, grp. ##".

1-2-3 In both the Gen. Function Group and Gen. Function Module fields, enter ZACCOUNT##_STMT_<client>, where ## represents the number of your class group and <client> the number of the client you are currently in.

1-2-4 In the SAPscript form field, enter the name of the SAPscript form you created earlier (ZACCOUNT##).

1-2-5 Save the application form.

1-2-6 What is the current status of the application form?

1-3 Insert the first text ZACCOUNT##_INTRODUCTION in your application form hierarchy. It should read as follows:

Page 109: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-36

Dear Customer, As you requested, please find enclosed your current account statement.

Form level: BUS_PART Relationship: Child Window: MAIN Window area: BODY Function: APPEND

1-4 Generate the print program.

1-4-1 What is the current status of the application form?

1-5 Perform a test printout of your application form.

1-5-1 Select business partner PM0000C0## (## is your group number).

1-5-2 Enter the following print parameters:

Output type PRINTER RDI indicator <SPACE> Printer LT0Q

1-6 Now that you have generated some output it is time to enhance the account statement by inserting additional texts (incorporating the program symbols available in the application form (business partner name, for example)).

1-6-1 What are the names of the variables for the form of address and the last name of the business partner?

1-6-2 In text ZACCOUNT##_INTRODUCTION, change the greeting from

�Dear Customer� to

�Dear <Form of address> <Business partner�s last name>�.

Insert the following line:

�This information is from <Today�s date>� (variable &DATE&)

1-6-3 Insert text ZACCOUNT##_ADDRESS in the SAPscript ADDRESS window. Use the SAPscript command ADDRESS TYPE 2... ENDADDRESS.

1-6-4 Insert text ZACCOUNT##_INFORMATION in the SAPscript INFO window.

Account statement For business partner: <business partner number>

Office hours Monday � Friday: 8.00 a.m. to 5:00 p.m.

Page 110: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-37

1-6-5 Insert text ZACCOUNT##_CLOSING in the SAPscript MAIN window. The text should appear at the end of the document (that is, after the OPEN_ITEMS form level). The text should read as follows:

Sincerely, Your Low Rate Utility Company

1-6-6 Insert text ZACCOUNT##_OPEN_ITEMS in the SAPscript MAIN window. This text will contain the open items in a table.

The column header is

Account Amount Due Date Account Name

and should only appear once. Then list the following data:

<contract account number> <amount and currency> <due date> <contract account name>

What are the names of these variables?

1-6-7 Generate the application form.

1-6-8 Perform a number of test printouts. Make improvements to the appearance of the form until you are happy with it.

Page 111: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-38

1-7 Add a sum total for all the items listed and sort the items by their due dates. In this exercise you will have to work with user exits and define a global variable SUM with the same category as the amounts to be totaled.

1-7-1 Specify a user exit include and a user top include in the application form�s attributes. Use the names ZACCOUNT##_EXIT_<client> and ZACCOUNT##_TOP_<client>, (## is your group number and <client> is the number of the client you are currently in).

1-7-2 Define the variable SUM in the user top include. It should be of the same category as the variable to be totaled.

What is the name of the variable containing the amount to be totaled?

1-7-3 Specify the user exits SUM_INIT and SUM_PERFORM in the attributes of the form level OPEN_ITEM for the exit before loop and exit during loop respectively. Then add the following functions to the user exits: SUM_INIT: -> Sort open items by due date -> Initialize the total SUM_PERFORM -> Calculate the total

1-7-4 Insert text ZACCOUNT##_SUM in the hierarchy. You want it to appear only once, after the totaling. Make sure you have the correct position in the hierarchy. Depending on whether the sum total is zero or not, the text should read as follows.

If blank: There is currently no outstanding balance on your account(s).

Else: The total outstanding balance on your account(s) is <sum total and currency>.

1-7-5 Generate the application form and test it for different business partners. Make improvements to the appearance of the form until you are happy with it.

Page 112: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-39

Solutions

Unit: Maintaining Application Forms Topic: Maintaining Application Forms

Note In these solutions we assume that you used the alphanumeric text editor (line editor) for SAPscript texts. We recommend that you use this editor rather than the graphical text editor here because of the clearer, simpler view the line editor provides of format features such as paragraph formats and tabs. You can select your preferred text editor by choosing Goto → Set editor from the text view screen.

1-1 Choose Utilities Industry → Tools → Print Workbench → Form Class. Enter type IS_U_CA_ACCTSTMT in the Form class field and choose the Display button.

1-1-1 Choose the symbol to the right of the name of the OPEN_ITEM form level to display the 1:1 levels assigned to it (or click again to hide them again). The 1:1 levels are ITM_DIVTXT, ITM_CNTNAM and OPN_ITM_TX.

1-1-2 Choose Goto → Attributes.

1-1-3 Press the Documentation button in the initial screen of the form class and read the documentation. The object type is ISUPARTNER. The account statements will be archived.

1-2 Choose Utility industry → Tools → Print workbench → Application form. Enter ZACCOUNT##_STATEMENT in the Application form field and choose Application form → Create.

1-2-1 Use F4 for the Form class field to choose IS_U_CA_ACCTSTMT.

1-2-2 See exercise

1-2-3 See exercise

1-2-4 See exercise

1-2-5 Press Save to save the application form.

1-2-6 The status should be New � Saved.

Page 113: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-40

1-3 Position the cursor on the BUS_PART form level and choose Create text. The text attributes are as follows:

Text name ZACCOUNT##_INTRODUCTION MAIN Window area BODY Function APPEND

Choose Continue and Save. Press the Create text button next to the text node. You go directly from the IS-U application form to the SAPscript text editor. If you prefer to use the alphanumeric editor, but the graphical editor is set (or vice-versa), choose Goto ### Set editor. Enter the above text and press Return to generate the line feed (format column: *). Once the text has been entered in the editor it looks like this:

* Dear Customer,

* As you requested, please note below your outstanding balance as of today.

Choose Save and Back.

1-4 Choose Application form → Generate.

1-4-1 The status should be Active � Saved.

1-5 Choose Application Form → Test Printout → Execute.

1-5-1 See exercise

1-5-2 See exercise

1-6 Continue maintaining your application form as described below:

1-6-1 Position the cursor on the ZACCOUNT##_INTRODUCTION text and choose Extras → Display Symbols. A list of the available symbols is displayed. You can Select these symbols to copy them and then insert them in the SAPscript text with <Ctrl> + V.

Form of address &WA_BP_ADDRESS-TITLE_MEDI& Last name &WA_BP_ADDRESS-NAME2&

1-6-2 The opening text now reads as follows:

* Dear &WA_BP_ADDRESS-TITLE_MEDI& &WA_BP_ADDRESS-NAME2&,

* This information is from &DATE&.

Page 114: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-41

1-6-3 Position the cursor on the ZACCOUNT##_INTRODUCTION text and choose Create text. The text attributes are as follows:

Text name ZACCOUNT##_ADDRESS Window ADDRESS Window area BODY Function APPEND

The fields you need for the address can all be found in the BP_ADDRESS 1:1 level. The text might look something like this:

/: ADDRESS TYPE 2

* &WA_BP_ADDRESS-TITLE_MEDI&

* &WA_BP_ADDRESS-NAME1& &WA_BP_ADDRESS-NAME2&

* &WA_BP_ADDRESS-STREET& &WA_BP_ADDRESS-HOUSE_NUM1&

* &WA_BP_ADDRESS-POST_CODE1& &WA_BP_ADDRESS-CITY1&

/: ENDADDRESS

1-6-4 The variable for the business partner number is WA_BUS_PART-PARTNER. Position the cursor on the ZACCOUNT##_ADDRESS text and choose Create text. The text attributes are as follows:

Text name ZACCOUNT##_INFORMATION Window INFO Window area BODY Function APPEND

* <BD>Account Statement

* For business partner: <BD>&WA_BUS_PART-PARTNER&

*

* <BD>Office Hours

* Monday � Friday: 8:00 a.m. to 5:00 p.m.

1-6-5 Position the cursor on the OPEN_ITEM form level and choose Create text. The text attributes are as follows:

Text name ZACCOUNT##_CLOSING Window MAIN Window area BODY Function APPEND

* Sincerely,

*

CL Your Low Rate Utility Company

Page 115: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-42

1-6-6 Position the cursor on the OPEN_ITEM form level and choose Create text. The text attributes are as follows:

Text name ZACCOUNT##_OPEN_ITEM Relationship Child Window MAIN Window area BODY Function APPEND

The variables are:

Contract account number WA_OPEN_ITEM-VKONT Amount WA_OPEN_ITEM-BETRH Currency WA_OPEN_ITEM-WAERS Due date WA_OPEN_ITEM-FAEDN Contract account name WA_ITM_CNTNAM-VKBEZ

The text reads (,, = tab)

/: IF &C-TABIX(Z)& EQ '1'

IH Account,,,,Amount,,,,Due Date,,Account Name

/: ENDIF /: IF &WA_OPEN_ITEM-ABWTP& <> 'R'

* &WA_ITM_CNTNAM-VKONT&

= ,,&WA_OPEN_ITEM-BETRH(10)&&WA_OPEN_ITEM-WAERS&

= ,,&WA_OPEN_ITEM-FAEDN&

= ,,&WA_ITM_CNTNAM-VKBEZ&

/: ENDIF If the analyzed account has an installment plan agreement, then only the installment plan items should be displayed, not the source receivable. In this case, an appropriate control field has to check whether the item (ABWTP) has content �R�.

1-6-7 Press Generate to generate the application form.

1-7 To create and edit user exits, proceed as follows:

1-7-1 Choose Goto → Attributes. In the user exit include and user top include fields, type the names specified above. Choose Continue.

1-7-2 The variable to be totaled is called WA_OPEN_ITEM-BETRH.

Choose Environment → User Top Include → Display. If you are prompted to specify a development class, choose $TMP (local development class). The ABAP statement for defining the sum total variable is: DATA: SUM LIKE WA_OPEN_ITEM-BETRH.

Page 116: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-43

1-7-3 Position the cursor on the OPEN_ITEM form level and press Select (F2). Enter the names SUM_INIT and SUM_PERFORM in the relevant fields for the Exit Before Loop and Exit During Loop. Choose Continue. The symbols B and D now appear in the hierarchy next to the OPEN_ITEM form level.

Press the B symbol. Whenever you are prompted to specify a development class, choose $TMP (local development class). Add the two ABAP statements (for initializing the sum total and sorting the items) to the pre-generated outline.

*&--------------------------------------------------------------------------------* *& Form USER_EXIT_SUM_INIT * *&--------------------------------------------------------------------------------* *& Use this form e.g. to sort table XYT_OPEN_ITEM or to load * *& additional data from database * *& This exit is processed *BEFORE* looping at XYT_OPEN_ITEM * *&-------------------------------------------------------------------------------- * *& <--> XYT_OPEN_ITEM * *&---------------------------------------------------------------------------------* form user_exit_sum_init tables xyt_open_item structure sfkkop . clear sum . sort xyt_open_item by faedn ascending. endform . " USER_EXIT_SUM_INIT

Save the include and choose Back.

Now choose the symbol D in the OPEN_ITEM form level line in the hierarchy. Add the totaling statement to the pre-generated outline.

*&--------------------------------------------------------------------------------- * *& USER_EXIT_SUM_PERFORM * *&--------------------------------------------------------------------------------- * *& Use this form e.g. to prepare the data for the printing or * *& to perform summations * *& This exit is processed *DURING* a form_level-loop * *& X_INDEX denotes the current entry in the associated table * *&-------------------------------------------------------------------------------- * *& <--> X_OPEN_ITEM * *&-------------------------------------------------------------------------------- * form user_exit_sum_perform using x_open_item like sfkkop value(x_index) like sy-tabix . IF WA_OPEN_ITEM-ABWTP <> 'R'. add wa_open_item-betrh to sum . ENDIF. endform . " USER_EXIT_SUM_PERFORM

The source receivable of an installment plan agreement should not be included in calculating the item total. This can be achieved by checking the contents of field ABWTP to make sure it is not equal to �R�.

Page 117: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-44

1-7-4 Position the cursor on the OPEN_ITEM form level and choose Create text. The text attributes are as follows:

Text name ZACCOUNT##_SUM Relationship Sibling Window MAIN Window area BODY Function APPEND

/: IF &SUM(4.2)& <> '0.00' * * The total outstanding balance on your account(s) is &SUM(C)& = &WA_OPEN_ITEM-WAERS(C)&. * /: ELSE * * There is currently no outstanding balance on your account(s). * /: ENDIF

1-7-5 Press Generate to generate the application form. The finished form should look something like this:

Page 118: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 4-45

Mr. J. Public Account Statement:

3 Park Street For business partner:

TM0000C001

NEW YORK, NY 12345 Office hours:

Monday - Friday:

8:00 a.m. to 5:00 p.m.

Dear Mr. Public,

As you requested, please note below your outstanding balance as of 09/03/1998.

Account Amount Due Date Account Name

TM0000C001 100.00 UNI 09/01/98 Trainer

TM0000C001 100.00 UNI 10/01/98 Trainer

TM0000C001 100.00 UNI 11/02/98 Trainer

TM0000C001 100.00 UNI 12/01/98 Trainer

TM0000C001 100.00 UNI 01/04/99 Trainer

TM0000C001 100.00 UNI 02/01/99 Trainer

TM0000C001 100.00 UNI 03/01/99 Trainer

TM0000C001 100.00 UNI 04/01/99 Trainer

TM0000C001 100.00 UNI 05/03/99 Trainer

TM0000C001 100.00 UNI 06/01/99 Trainer

TM0000C001 100.00 UNI 07/01/99 Trainer

TM0000C001 100.00 UNI 08/02/99 Trainer

The total outstanding balance on your account(s) is 1,200.00 UNI.

Sincerely,

Your Great Value Utility Company

Page 119: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 5-1

SAP AG 1999

SAPscriptSAPscript

IntroductionIntroduction

Print WorkbenchPrint Workbench

Maintaining Application FormsMaintaining Application Forms

Integration and Examples

Print Control and Print EnvironmentPrint Control and Print Environment

SummarySummary

Print Action RecordsPrint Action Records

Print Workbench: Integration and Examples

Page 120: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 5-2

SAP AG 1999

Integration and Examples: Topic Overview

! Bill

! Installment Plan

! Welcome Letter

Page 121: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 5-3

SAP AG 1999

Integration and Examples: Unit Objectives

At the conclusion of this unit, you will be able to:

! Identify examples of application forms

! Describe how an application form is integratedwith an application

! Print an application form from the correspondingapplication

Page 122: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 5-4

SAP AG 1999

Integration and Examples: Bill

! Bill

! Installment Plan

! Welcome Letter

Page 123: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 5-5

SAP AG 1999

BudgetBudgetbilling plansbilling plans

BillingBillingdocumentsdocuments

FI-CA documentsFI-CA documents

Physicalprintout

Invoicing- Validations- Processing of FI-CA documents

Credit memos/Credit memos/BackbillingsBackbillings

FI-CA postingdocuments

FI-CA postingFI-CA postingdocumentsdocuments

Budget billing plans

Budget billing Budget billing plansplans

Printdocuments

Invoicing and Billing

" Invoicing...

$ Creates accounting documents for receivables or credit memos from billing documents

$ Settles the accounting documents against down payments already made, in particular against budget billings

$ Supports the determination and collection of taxes, charges, and duties

$ Formats the data for the bill printout

$ Creates new budget billing plans

" Invoicing sends accounting documents and budget billing plans to FI-CA, and FI-CA sends open items to invoicing.

Page 124: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 5-6

SAP AG 1999

IS_U_BILL IS-U bill

5 DOC_HEADER Document header

IS_U_BILL_ADDRESS Address dataIS_U_BILL_HEADER Header dataIS_U_BILL_ITEM_CONSUMPTION_... Header data: consumption det.

5 DOC_ITEM Line items

IS_U_DOC_ITEM_CONSUMPTION Consumption determination

5 DISCOUNT_I Quantity and price discounts

IS_U_BILL_DISCOUNT Quantity discounts

IS_U_DOC_ITEM_AMOUNT_HEADER Header data: amount determination DOC_ITEM Line items

IS_U_DOC_ITEM_AMOUNT Amount determination

IS_U_BILL_SUM Bill sum totalIS_U_ACC_DATA Account dataIS_U_GREETINGS Close

5

Start with print documentStart with print document

Form Class IS_U_BI_BILL

Bill Form

" The slide shows the hierarchy of a bill in simplified form. Starting at the document header, the items are processed twice:

$ The first time they are processed the consumption is printed. In addition, discounts are printed for each item, if this is applicable.

$ The second time, the amounts to be charged to the customer are determined.

" After amount determination, the total is printed.

" The bill form is the most complex document a utility company produces. It will not be possible to cover all the details in this course.

Page 125: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 5-7

SAP AG 1999

Contract acct 553 ContAcctCateg NE

Partner/address 1208 Harry Smith US/76001/Washington/3 Park St. Fix

General dataCont. acct name ACC0010

Acct in legacy MIG0010

Trading partnerWU list Ols. Acct relation. Deletion flag

Planning group CM extra days 0 Tolerance groupReference no. Auth. groupPaid by Interest keyAlt. bill rec. FixJurisdict.code Coll. bill acctMan.bill.statem. In. manual OSrt 0

No. outsortings Outsorting grp Additional bill Trans. currency

Payment terms TB01 Within 14 days due net. Account classSettlement cat. STD Standard settlement AcctDetID 01

Applicat. form IS_U_BILL Language

Bill formBill form

Contract acctContract acct

Specifying the Bill Form

" You specify the bill form in the contract account. You must choose an application form for the form class IS_U_BI_BILL or IS_U_BI_COLLECTIVE_BILL.

" If a bill is printed from a print document, the application form is determined beforehand from the corresponding contract account.

Page 126: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 5-8

SAP AG 1999

Printing the Bill

Selection parametersNumber of print document toBusiness partner toContract account toPortion toBilling procedure toInvoicing reconciliation key toCreation reason 01 to

Simulated documentsPosted documentsDocuments not released

Print and archiving parametersPrint parameters defined

Print parameters

Program Edit Goto System HelpPrint Document(s)

Name selectionName selectionparametersparameters

Name print Name print parametersparameters

Report REAPRIN0

" The printing of bills is a bulk business with critical time constraints. For this reason an ABAP report is available for executing the bill printout.

" In the initial screen of the report you can limit the number of print documents to be processed.

" Before actual printing takes place, you must specify the print parameters.

" The print parameters are saved when a report variant is created, so that variants of this report are fully executable and can be scheduled as a job.

" Documents that have been processed are marked as printed. After this, they can only be used for reprinting.

" To access the report in order to print a bill document, choose

Utilities industry -> Invoicing -> Invoice processing -> Mass processing -> Print document.

Page 127: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 5-9

SAP AG 1999

Integration and Examples: Installment Plan

! Bill

! Installment Plan

! Welcome Letter

Page 128: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 5-10

SAP AG 1999

Inst. Plan: CreateInst. Plan: Change

Installment plan

Amount due: $1000New due datesNew due datesOld due dateOld due date TimeTime

$250$250 $250$250 $250$250 $250$250Installmentplan

parameterse.g.

repaymentplan

Installmentplan

parameterse.g.

repaymentplan

Installmentplan cover

letter

Installment Plan

" In the installment plan, open receivables are distributed over a certain period. The customer receives notification of the new receivables and the due dates.

" When an installment plan is created, an installment plan document is generated, which contains the data of the plan.

Page 129: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 5-11

SAP AG 1999

IS_U_INSTPLAN Installment plan notification

5 INST_DOC Installment plan document (header)

IS_U_HEADER Header lineIS_U_FOOTER FooterIS_U_BP_ADDRESS Business partner addressIS_U_INFO_BOX Window for informationIS_U_INSTPLAN_INFO1 SubjectIS_U_INFO_TEXT Standard entries in info boxIS_U_INSTPLAN_INFO2 Document numberIS_U_INSTPLAN_TEXT Text for installment plan notificationIS_U_INSTPLAN_HEADER Heading for first repetition group

5 INST_ITEM Individual installment due date

ISU_INSTPLAN_ITEMS Installment plan receivables

IS_U_INSTPLAN_TEXT2 Text line

5 ORIG_ITEM

ISU_INSTPLAN_ORIG_ITEMS Source receivables

IS_U_SIGNATURE Signature

Form Class IS_U_CA_INSTPLAN

Installment Plan Form

Start with installment plan doc.Start with installment plan doc.

" The form class IS_U_CA_INSTPLAN is available for the installment plan notification.

" The starting point of this form class is the installment plan document. The individual due dates and the source receivables are situated below this level in the hierarchy.

Page 130: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 5-12

SAP AG 1999

InstallPlanNo. 300001235

Currency USD

Business part. 101010101 Smith Peter 10 Farnham Rd., Ft. Worth Contract acct 200016

1234

03AUG199810AUG199817AUG199824AUG1998

2,500.002,500.002,500.002,500.00

2,500.002,500.002,500.002,500.00

Status OpenDeactv.BalancedInterest cal

TotalsTotal outstandg 10.000.00

Total cost 10.000.00

Install. total 10.000.00

Difference 0.00

Add install. Delete inst. Print notification

Installment plan Edit Goto Environment System Help

Installment amountNo.Due Open amount

Change Installment PlanPrint InstallmentPrint Installment

PlanPlan

Printing the Installment Plan

" To display an installment plan, choose Utilities industry -> Contract accounts receivable and payable -> Account -> Installment plan -> Display.

" In the maintenance screen of the installment plan, you choose Print notification to initiate printing. You then choose the application form in the dialog box.

" It is also possible to create a print request instead of printing immediately (Delayed Printing pushbutton).

Page 131: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 5-13

SAP AG 1999

Integration and Examples: Welcome Letter

! Bill

! Installment Plan

! Welcome Letter

Page 132: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 5-14

SAP AG 1999

Move-inMove-inMove-inCustomermoves in

Meterreading

Businesspartner,account

Contract (Cash security deposit)

Report,customer call

(Overallcheck)

Billingplan

Move-infinished

Customercontact

Move-inMs. Jones

Move-in

31July

Bud.bill.$250

Welcomeletter

Move-In

" The customer reports the move-in (by telephone, for example).

" When the move-in process is completed, the customer receives a welcome letter containing the data for the move-in.

Page 133: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 5-15

SAP AG 1999

IS_U_MOVE_IN_WELCOME_LETTER Welcome letter

5 MOVEINDOC Move-in doc.

IS_U_MOVE_IN_ADDRESS Address dataIS_U_MOVE_IN_SUBJECT Subject for letterIS_U_MOVE_IN_HEADER Header information for customerIS_U_MOVE_IN_INTRODUCTION Introduction

5 MOVEINDOCC Move-in document for contract

IS_U_MOVE_IN_CONTRACTS Contract information

5 LOGIC_NO Billing data: installation struct. at device level

IS_U_MOVE_IN_DEVICES Device data in installation

IS_U_MOVE_IN_GREETINGS Close

Start with Move-In Document Start with Move-In Document

Form class IS_U_CS_MOVE_IN_WELCOME_LETTER

Welcome Letter

" The slide shows a simplified hierarchy for the welcome letter.

" The printout begins with the move-in document header. After the texts (for the address, notification, etc.) at the highest hierarchy level, the data for the individual contracts is printed. This is followed by the device information.

" Instead of printing immediately, you can also generate a print request that is processed later during batch processing.

Page 134: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 5-16

SAP AG 1999

Move-in doc. 1097

Business part. MH00000223 Harry Smith 14 Old Street WashingtonContract acct 1390 Smith's accountPremise 670 Washington, 14 Old Street 1

Administrative dataMove-in status 05 Register readings fully enteredMove-in date 01JAN1998

Division 01 ElectricityBilling class TA Residential

ConnectObj.adr.

Title Mr.

First name HarryLast name Smith

Rate maint. Overall chk BB plan Welcome letter

Move-in Edit Goto Extras Environment System HelpChange Move-In Document

Name of business partner

Print welcome letterPrint welcome letter

Printing a Welcome Letter in Move-In

" The welcome letter is printed from move-in processing. A pushbutton to start printing is available.

" To access move-in processing, choose Utilities industry -> Customer service -> Process execution -> Move-in -> Change.

Page 135: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 5-17

SAP AG 1999

Integration and Examples: Unit Summary

! The forms of the print workbench are used in differentapplications

! The application form can be specified in one of thefollowing ways:" In Customizing

" In the master data

" In dialog mode

! There are different ways of printing forms:" In batch processing using a report (for example, the bill)

" By creating print requests (correspondence)

" By printing individual documents (for example, the welcome letter)

Page 136: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-1

SAP AG 1999

SAPscriptSAPscript

IntroductionIntroduction

Print WorkbenchPrint Workbench

Maintaining Application FormsMaintaining Application Forms

Integration and ExamplesIntegration and Examples

Print Control and Print EnvironmentPrint Control and Print Environment

SummarySummary

Print Action Records

Print Workbench: Print Action Records

Page 137: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-2

SAP AG 1999

Print Action Records: Topic Overview

! Usage

! Maintenance

! Integration

! Customizing

Page 138: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-3

SAP AG 1999

Print Action Records: Unit Objectives

At the conclusion of this unit, you will be able to:

! Explain how print action records are used

! Describe how print action records are integratedwith application forms

! Create and test a print action record

Page 139: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-4

SAP AG 1999

Print Action Records: Usage

! Usage

! Maintenance

! Integration

! Customizing

Page 140: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-5

SAP AG 1999

Use of Print Action Records (1)

Masscreation

Temporaryconstruction site

Bill

Additional infofor the residentin the bill

Additional infofor the residentin the bill

" Print action records can be used for a number of situations.

" In the above example, temporary construction work is being carried out in a residential area. An additional text apologizing for the inconvenience caused is to be printed on the bill for the residents in this area.

" The print action records enable you to include additional text on a form without actually making changes to the basic form.

Page 141: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-6

SAP AG 1999

Use of Print Action Records (2)

Individual creation: additional textIndividual creation: additional text

Invoicing documentoutsorted

Invoicing documentoutsorted

Checked byclerk

Checked byclerk

Released byclerk

Released byclerk

Clerk insertsadditional note

in the bill

Clerk insertsadditional note

in the bill

" The clerk may wish to include an extra explanatory text on a certain bill, for instance, if he/she edited the bill manually after outsorting.

Page 142: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-7

SAP AG 1999

Use of Print Action Records (3)

Individual Creation: Enclosing Leaflets with Bill

"Could you send mesome information about your rates?"

"We'll send you some generalinformation about rates with your

next bill."

" In certain cases, you may wish to enclose a leaflet or flyer with a letter or bill.

Page 143: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-8

SAP AG 1999

The Solution: Print Action Records

! Definition and selection of individual texts! Definition and selection of individual texts

! Connection of print action records to:" The form class (such as the bill)" The BOR object type (such as the

business partner)

! Connection of print action records to:" The form class (such as the bill)" The BOR object type (such as the

business partner)

! Limited validity period! Limited validity period

! Limited number to be processed! Limited number to be processed

" These requirements can be implemented using print action records.

" You either allocate an individual piece of text to a print action record or select from a list of predefined texts.

" A print action record is linked to a document by:

$ A form class, which specifies the type of form

$ A BOR object type and an object ID, which allocates the print action record to a logical object (such as a business partner)

" You can limit the validity period of a print action record.

" Similarly, you can set a limit for the number of times a print action record is to be processed.

Page 144: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-9

SAP AG 1999

Print Action Records: Maintenance

! Usage

! Maintenance

! Integration

! Customizing

Page 145: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-10

SAP AG 1999

Object type ?

Object key ?

Form class

Print action record Edit Goto System HelpCreate Print Action Record: Initial Screen

Print Action Records: Manual Generation

Obj. type Form class

ISUACCOUNT IS_U_BI_BILLISUCONTRCT IS_U_BI_BILLISUCONTRCT IS_U_DM_MR_ORDERISUPARTNER IS_U_BI_BILL

Object type

Possiblelinks

PossiblePossiblelinkslinks

Possible entries (F4)

" There are several ways of creating a print action record. The simplest way is to create one single print action record in dialog mode.

" To create a print action record, choose Utilities industry -> Tools -> Print workbench -> Print action records -> Create.

" If you display the possible entries for the Object type field, you obtain a list containing the links currently in use. These links are stored in the customizing table EPRINTACTT.

" The object key belongs to the BOR object type (for example, it can be the business partner number for the BOR object type ISUPARTNER).

" The user must therefore already know in which form the text is to appear and to which entity it belongs.

Page 146: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-11

SAP AG 1999

Maintenance Screen

General data

Object type ISUPARTNER

Object key 0101010101

Form class IS_U_BI_BILL

From date 1JUL98

To date 31JUL98

Description

Total 2 Frequency 1

Last processed 1

Meter read. order info 18JUL98

12345

Meter reading order infoConstruction site infoRate informationGeneral terms and conditionsGas information

No. Description Text Flyer

" You can set the following parameters in the print action record:

$ From-date and to-date

$ Maximum number of times a print action record is to be processed

$ How often a print action record is to be processed if it is not to be used for every document

" In the lower half of the screen you can select from the standard texts or flyers that are defined in the system.

" You define the settings for the texts or flyers in Customizing.

Financial Accounting -> Contract A/R / A/P -> Basic functions -> Print workbench -> Print action records -> Define flyers/standard texts for print action records

" The texts contain a key for a SAPscript text, which is stored in the print action record when the text is selected.

" The flyers are identified in the system by an ID (between 1 and 99), which must be analyzed by an external system.

Page 147: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-12

SAP AG 1999

Reference report:SAPRISU_PRINTACTION_GENERATE

Reference report:SAPRISU_PRINTACTION_GENERATE

Copy

and then

modifyYour own report:" Uses conditions" Uses properties of the new print action record" Uses the programming interface

Your own report:" Uses conditions" Uses properties of the new print action record" Uses the programming interface

Automatic Mass Creation of Print Action Records

" To create a large number of print action records, you must use an ABAP report.

" You use the reference report SAPRISU_PRINTACTION_GENERATE, which you have to copy and then modify.

" In the report you have to specify the conditions for creation of the print action records, for example, all business partners residing near the construction site.

" You must specify the properties (such as texts to be used, from- and to-date, etc.) of the print action record by entering them in the structure EPRINTACT.

" Function modules are available for actual generation of the print action records. You can call these function modules at the end of the report (see slide Programming Interface).

Page 148: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-13

SAP AG 1999

Print Action Records: Integration

! Usage

! Maintenance

! Integration

! Customizing

Page 149: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-14

SAP AG 1999

Print Action Record as Form Level

IS_U_BI_BILL IS-U bill

5 DOC_HEADER Document header

5 DOC_ITEM Line items

CONVERSION ConversionsPRINTACT_D Print action record: contractDISCOUNT_I Quantity and price discounts

PRINTACT_H Print action record: bus.partner/account

Search for PAR forSearch for PAR forcontractcontract

Search for PAR forSearch for PAR forBusiness partnerBusiness partnerContract accountContract account

" Print action records are integrated as form levels in form class IS_U_BI_BILL.

" In the form class IS_U_BI_BILL there are two form levels for print action records: one for the contract and one for the business partner and contract account.

" If one of these two form levels is included in the hierarchy of the application form, the print program automatically searches for print action records with the corresponding properties and, if necessary, prints the appropriate texts.

" If the Flyer indicator is set in any of the print action records found, you must ensure that the corresponding ID is transferred to an external system. You can do this using a text that is attached to the corresponding form level.

Page 150: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-15

SAP AG 1999

Print Action Records: Customizing

! Usage

! Maintenance

! Integration

! Customizing

Page 151: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-16

SAP AG 1999

Programming Interface

% ISU_S_PRINTACTION_CHANGE

% ISU_S_PRINTACTION_CREATE

% ISU_S_PRINTACTION_DELETE

% ISU_S_PRINTACTION_DISPLAY

% ISU_S_PRINTACTION_TEXT_PROVIDE

% ISU_S_PRINTACT_PRINT_UPDATE

% ISU_S_PRINTACT_SEARCH_UPDATE

% ISU_S_PRINTACTION_CHANGE

% ISU_S_PRINTACTION_CREATE

% ISU_S_PRINTACTION_DELETE

% ISU_S_PRINTACTION_DISPLAY

% ISU_S_PRINTACTION_TEXT_PROVIDE

% ISU_S_PRINTACT_PRINT_UPDATE

% ISU_S_PRINTACT_SEARCH_UPDATE

Function group EEPA

Create, change, delete, ordisplay print action record

Supplies the appropriate text

Prints records already read,and sets number of timesprocessed

Searches, prints, and sets thenumber of times processed

" A programming interface in the form of function modules is available to enable you to insert print action records in application forms.

" The function modules can also be called in the user exits of the application form..

" By specifying function module parameters, you can execute the appropriate function of each module.

Page 152: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-17

SAP AG 1999

Print Action Records: Unit Summary

! Print action records are used for:

" Inserting individual texts in a form

" Defining which leaflets must be sent with the bill or letter

! Print action records are identified by:

" A BOR object type (for example, ISUPARTNER)

" A BOR object ID (for example, business partner number)

" A form class (for example, IS_U_BI_BILL)

! You create print action records:

" Using a transaction (for individual records)

" Using a report (for a large number of records)

! Print action records are integrated:

" By form levels in the application form

" Using the programming interface in user exits in the applicationform

Page 153: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-18

Page 154: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-19

Exercises

Unit: Print Action Records Topic: Creating and Integrating Print Action Records

At the conclusion of these exercises, you will be able to

• Create print action records

• Enter additional text for a print action record

• Test print action records in a bill

Now that you have consolidated your grasp of the basic principles of the application form, you are ready to take a closer look at the way print action records work, taking a utility company bill as an example.

1-1 Go to the maintenance transaction for print action records to create a print action record for the bill.

1-1-1 In this case, you wish to create a print action record for business partner PM0000D0## (BOR object ISUPARTNER) in a bill (form class IS_U_BI_BILL).

1-1-2 Assign the text CONSTRUCTION SITE INFORMATION to your print action record. Save the print action record.

1-1-3 Create an individual text of your choice for the print action record.

1-2 Now that you have created your print action record and assigned texts to it, you can test whether the system actually finds the record during the print process.

1-2-1 Determine which form level is responsible for finding your print action record in the bill (application form IS_U_BILL).

1-2-2 Perform a test printout. To find a bill printout document, use business partner PM0000D0## again.

Page 155: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-20

Page 156: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 6-21

Solutions

Unit: Print Action Records Topic: Creating and Integrating Print Action Records

1-1 Choose Utility industry → Print workbench → Print action records → Create.

1-1-1 Position the cursor on the Object type field and choose Possible entries (F4).

Select the following entries:

Object type ISUPARTNER Form class IS_U_BI_BILL Object key Business partner PM0000D0##

Choose Continue.

You are now on the screen where you can maintain your print action record.

1-1-2 See exercise

1-1-3 Press Create indiv. text. Enter a text of your choice. Save the text and choose Back.

1-2 Choose Utility industry → Tools → Print workbench → Application form.

1-2-1 Enter IS_U_BILL in the Application form field and choose Display. Under the form level DOC_HEADER , right at the end of the hierarchy, you will find the form level PRINTACT_H. This is the level responsible for finding print action records for the business partner.

1-2-2 Choose Application Form → Test Printout → Execute. In the Business partner field, enter the business partner number specified above and then choose Continue. Specify a printer of your choice (for example, LT0Q) and choose Print preview. Check that the texts you selected in your print action record appear in the bill displayed in print preview.

Page 157: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-1

SAP AG 1999

SAPscriptSAPscript

IntroductionIntroduction

Print WorkbenchPrint Workbench

Maintaining Application FormsMaintaining Application Forms

Integration and ExamplesIntegration and Examples

Print Control and Print Environment

SummarySummary

Print Action RecordsPrint Action Records

Print Workbench: Print Control and PrintEnvironment

Page 158: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-2

SAP AG 1999

Print Control and Print Environment: Topic Overview

! Printing Scenarios

! Raw Data Interface

! External Printing Systems

! Delayed Printing

! Dispatch Control and Correspondence

! Archiving

Page 159: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-3

SAP AG 1999

Print Control and Print Environment: Unit Objectives

At the conclusion of this unit, you will be able to:

! Identify the various printing scenarios

! Describe how and why you use the RDI

! Describe the criteria for integrating external printingsystems

! Describe how to create print requests for delayedprintout

! Describe the procedure for archiving

Page 160: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-4

SAP AG 1999

Print Control and Print Environment:Printing Scenarios

! Printing Scenarios

! Raw Data Interface

! External Printing Systems

! Delayed Printing

! Dispatch Control and Correspondence

! Archiving

Page 161: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-5

SAP AG 1999

Individual Processing Online

Individual processing" Printer" Spool" Print request

Clerk

" Individual processing refers to the printing of an individual document. The clerk can choose between several output modes:

$ Direct printing using a local printer

$ Printing using the R/3 spool

$ Creation of a print request (for delayed printing). In this case, the document is not printed immediately; instead it is included in a printing run, which is either scheduled periodically or initiated manually.

Page 162: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-6

SAP AG 1999

Mass processingMass processing

Mass Processing

! ABAP reports

! Print requests (correspondence)

! Printer! Spool! RDI

" The alternative to printing individual documents is mass printing. This can be initiated in one of two ways:

$ Using ABAP reports which are run in the background

$ By processing print requests

" There are several types of output, such as direct printing, generation of a spool file or the RDI (see below).

" The RDI is most commonly used for mass processing, since the physical print process is usually accompanied by complex print controls (such as mail processing) that are not supported by SAPscript.

Page 163: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-7

SAP AG 1999

Print Control and Print Environment: Raw Data Interface

! Printing Scenarios

! Raw Data Interface

! External Printing Systems

! Delayed Printing

! Dispatch Control and Correspondence

! Archiving

Page 164: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-8

SAP AG 1999

Raw Data Interface (RDI)

11

22

Printprogram

Printprogram

External systems-Printing of large numbers of documents-Use of mail processing (use of barcodes, OMR)-Postage determination/use of franking machines-Information about postage reduction-Integration of document management systems-Layout creation with external editors (such as Word, WordPerfect, and so on.)

External systems-Printing of large numbers of documents-Use of mail processing (use of barcodes, OMR)-Postage determination/use of franking machines-Information about postage reduction-Integration of document management systems-Layout creation with external editors (such as Word, WordPerfect, and so on.)

Raw data interfaceHeader data: -Key-ITCPP (SAPscript output parameter)-5int./5ext. data fields (freely definable; here, for example, data required by external systems for further processing can be transferred, such as customer no., postal code, information regarding type and number of supplements, etc.)

Line data:Form window Text element Variable name Contents------------------------------------------------------------------------------------Window1 Element1 FKKKO-BUDAT 01.01.1997Window1 Element2 EVER-SPARTE 01...

ApplicationForm

generates

11

22

11 RDI = <space>

RDI = 'X'22

SAPscriptform

SAPscriptform

Spool file

" SAPscript offers you the option of formatting the form yourself or of sending extracts of the form through the raw data interface to external systems for formatting.

" The raw data output contains all the symbols used in the print process but not the layout information.

" The layout and the interpretation of the data must be handled by an external system.

" The raw data interface can only be accessed via SAPscript. Only data that appears in a SAPscript text is included in the RDI output.

" The RDI is an official SAP interface, which is integrated with the Complementary Software Program.

" Certified partners for this interface are listed in SAPNet (see below).

Page 165: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-9

SAP AG 1999

Print parameters

Output type PRINTER

RDI X

Output device ?

Select Print Parameters

RDI IndicatorRDI IndicatorRDI Indicator

RDI Short description

* Form settings are valid Formatting by SAPscriptX Raw data interface (output mode: spool)I Raw data interface (output mode: IDoc)

Possible entries (F4)

RDI Indicator

Raw data interface (simple RDI)S

" You select the raw data interface by setting the appropriate indicator in the print dialog. There are five possible settings:

* The indicator set in the SAPscript form is valid

' ' The document is always formatted by SAPscript

X The raw data interface is used in the spool mode

I The raw data interface is used in the IDoc mode

S The raw data interface is used in the spool mode as an extract

Page 166: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-10

SAP AG 1999

PWB_ACCOUNT_STATEMENT_RDI Bank statement for the RDI

5 BUS_PART Business partner

* &WA_BUS_PART-PARTNER&* &WA_BP_ADDRESS-NAME1&* &WA_BP_ADDRESS-NAME2&* &WA_BP_ADDRESS-NAME3&* &WA_BP_ADDRESS-NAME4&* &WA_BP_ADDRESS-NAME_TXT&* &WA_BP_ADDRESS-NAME_CO&* &WA_BP_ADDRESS-CITY1&

PWB_ACCOUNT_RDI_BUS_PART Data at the business partner levelOPEN_ITEM Open items

PWB_ACCOUNT_RDI_OPEN_ITEM Data at the open item level

5

* &WA_OPEN_ITEM-BETRW&* &WA_OPEN_ITEM-VKONT&

RDI Application Form

" If you intend to use the RDI for an application form, you are advised to include in the texts only those symbols that affect the relevant document.

" You can use the application form to pre-select or presort data, so that only the data required for creation of the application form is included in the RDI output.

" If the symbols are supplied with formatting options, they appear formatted in the RDI output.

Page 167: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-11

SAP AG 1999

/: DEFINE &SORT01& = ‘SAP’/: DEFINE &SORT02& = ‘FI’/: PERFORM RDI_FILL_INTERNAL_SORTFIELDS IN PROGRAM RSTXSORT/: USING &SORT01&/: USING &SORT02&/: ENDPERFORM

Use SAPscript command PERFORM in SAPscript text

H040A010000000016045DIS_U_BI_BILL1 PRINTER P23503 SSAP FI CCODEPAGE 1100 LANGUAGE EN CPAGENAME PAGE1 DMAIN XX ....

Generates RDI output

Sort line

Sort parameters

RDI Sort Fields

Page 168: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-12

SAP AG 1999

X (Spool RDI)

H 3000000028399DZIS_U_CA_FORM01 PRINTER P27607 1P510POSTSCPT...CCODEPAGE 1100 LANGUAGE ENCPAGENAME PAGE1DMAIN XX 001DMAIN X 001DMAIN SGF 017Dear Ms.DMAIN 001DMAIN WA_BUS_PART-NAME_LAST 007Pleite1DMAIN 002,DMAIN X 001DMAIN 060Please find belowDMAIN 001DMAIN 067If you alreadyDMAIN 062paid, please ignoDMAIN 012message.DMAIN 001DMAIN X 001DMAIN 001...

Window Symbol Symbol value

RDI Mode (1)

Layout Information Not Included!Layout Information Not Included!

HeaderHeader Page infoPage info

Data recordsData records

" The RDI output consists essentially of a control structure, page information, and data records.

" In the spool mode, the first character of each line denotes the type of line.

" The control line consists mainly of the SAPscript control structure ITCPP.

" A data line consists of the information about the window name, the name of the variable, and the corresponding value.

" The data appears in the RDI output in table form. This means that:

$ One line is generated for each variable

$ The variable names and their values appear in the same column

" The RDI output does not contain layout information. The target system or program must have a full interpreting mechanism in order to convert this output to a document.

Page 169: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-13

SAP AG 1999

S (Simple RDI)

H046A113000000028398DZIS_U_CA_FORM01 PRINTER P27607SCCODEPAGE 1100 LANGUAGE ENCPAGENAME PAGE1DSGF Dear Ms.DWA_BUS_PART-NAME_LAST Pleite1DWA_CONT_ACCT-VKONT 1000869DWA_OPEN_ITEM-OPBEL 100000955DWA_OPEN_ITEM-VOTXT Other FordDWA_OPEN_ITEM-MBETM 555.00DWA_OPEN_ITEM-FAEDN 01/01/1999DWA_OPEN_ITEM-MAHNS 01DWA_OPEN_ITEM-OPBEL 100000956DWA_OPEN_ITEM-VOTXT Other FordDWA_OPEN_ITEM-MBETM 222.00DWA_OPEN_ITEM-FAEDN 12/10/1998...

Symbol Symbol value

RDI Mode (2)

Layout Information Not Included!Layout Information Not Included!

" The reduced RDI output consists essentially of a control structure, page information, and data records.

" In the spool mode, the first character of each line denotes the type of line.

" The control line consists mainly of the SAPscript control structure ITCPP.

" A data line consists of the information about the window name, the name of the variable, and the corresponding value.

" The data appears in the RDI output in table form. This means that:

$ One line is generated for each variable

$ The variable names and their values appear in the same column

" The RDI output does not contain layout information. The target system or program must have a full interpreting mechanism in order to convert this output to a document.

Page 170: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-14

SAP AG 1999

Print Control and Print Environment:External Printing Systems

! Printing Scenarios

! Raw Data Interface

! External Printing Systems

! Delayed Printing

! Dispatch Control and Correspondence

! Archiving

Page 171: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-15

SAP AG 1999

! Large daily printing volume

! Controlling mail processing or franking machines

! Automatic payment

! Document bundling to reduce postage

! You can do without SAPscript as the layout tool

! Large daily printing volume

! Controlling mail processing or franking machines

! Automatic payment

! Document bundling to reduce postage

! You can do without SAPscript as the layout tool

Criteria for Using External Printing Systems

Page 172: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-16

SAP AG 1999

! RDI certificate

! Compatible with SAP ArchiveLink

! Network integration (online printing)

! Performance

! Graphical flexibility (charts, for example)

! Support for multiple dispatch types (e-mail, fax, EDI)

! RDI certificate

! Compatible with SAP ArchiveLink

! Network integration (online printing)

! Performance

! Graphical flexibility (charts, for example)

! Support for multiple dispatch types (e-mail, fax, EDI)

Requirements of External Printing Systems

Page 173: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-17

SAP AG 1999

Complementary Software Path in SAPNet

Page 174: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-18

SAP AG 1999

! Advantages" Easier online printing" Better integration with the R/3 System

! Disadvantages" Redundant maintenance of forms (SAPscript + ext. system)

required" Complicated RDI printing, large RDI volume" Document cannot be changed before printing (no preview)" Local document differs from mass document

! Advantages" Easier online printing" Better integration with the R/3 System

! Disadvantages" Redundant maintenance of forms (SAPscript + ext. system)

required" Complicated RDI printing, large RDI volume" Document cannot be changed before printing (no preview)" Local document differs from mass document

Application form is maintained completely in R/3with SAPscript for layout design

Application form is maintained completely in R/3with SAPscript for layout design

Strategies for Local Printing Combined with RDI (1)

Page 175: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-19

SAP AG 1999

! Advantages" Easier online printing" Better integration with the R/3 System" RDI output remains simple

! Disadvantages" Redundant maintenance of forms (2x PWB + 1x external)" Document cannot be changed before printing" Local document differs from mass document

! Advantages" Easier online printing" Better integration with the R/3 System" RDI output remains simple

! Disadvantages" Redundant maintenance of forms (2x PWB + 1x external)" Document cannot be changed before printing" Local document differs from mass document

Two different application forms

for online printing and RDI (external printing systems)

Two different application forms

for online printing and RDI (external printing systems)

Strategies for Local Printing Combined with RDI (2)

Page 176: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-20

SAP AG 1999

Application form designed only for RDI

and not for layout (recommended)

Application form designed only for RDI

and not for layout (recommended)

! Advantages" No selection of RDI or different application forms that

would be required" Additional features of external system can be used" Simple structure of application form / reduced

maintenance effort

! Disadvantages" Highly dependent on external system" No integration with the R/3 System

! Advantages" No selection of RDI or different application forms that

would be required" Additional features of external system can be used" Simple structure of application form / reduced

maintenance effort

! Disadvantages" Highly dependent on external system" No integration with the R/3 System

Strategies for Local Printing Combined with RDI (3)

Page 177: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-21

SAP AG 1999

Print Control and Print Environment:Delayed Printing

! Printing Scenarios

! Raw Data Interface

! External Printing Systems

! Delayed Printing

! Dispatch Control and Correspondence

! Archiving

Page 178: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-22

SAP AG 1999

Create print request

Print immediately

" Batch printout (e.g. overnight) " Monitoring and reorganization

" Distribution by correspondence type

" Batch printout (e.g. overnight) " Monitoring and reorganization

" Distribution by correspondence type

Batch printout

Delayed Printing

" Instead of printing right away, the clerk can create a print request. All the print requests created over a certain period can be processed in one printing run, for example, overnight.

" The print requests are grouped according to document type ('correspondence type') and these groups can be handled separately.

" You can reorganize the print requests and print them according to specific criteria.

Page 179: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-23

SAP AG 1999

Creating Print Requests

Form selectionForm class IS_U_CA_INSTPLAN

Application Form IS_U_INSTPLAN

Print Parameters

Output type PRINTER

RDI *

Output device ?

Select Print Parameters

Delayed PrintingIndicator:Indicator:

Create print requestCreate print request

Example: Print installment planExample: Print installment plan

Creation of a print containerCreation of a print container

" You create print requests by setting the Delayed printout indicator in the dialog box where you specify the print options.

" In the above example this indicator is set, so that a print request is generated for the correspondence type Installment plan.

" The print container contains all the information required for executing the printout.

" Whether Delayed printing is possible or not depends on each individual application. Any application can generate print requests provided that it has a correspondence type.

Page 180: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-24

SAP AG 1999

Run on 04.08.1998

Identification ET

Status No parameters entered as yet

Parameters History

Correspondence Edit Goto Extras System HelpAutomatic Correspondence

IdentificationIdentificationIdentification

Print run parametersPrint run parametersPrint run parameters

Run on 04.08.1998

Identification ET

0005

All proposals Additional log

Select Correspondence Types

plan coverletter

0002 Account statement

Correspondence typesCorrespondence typesCorrespondence types

Save parametersSave parametersSave parameters

Additional restrictionsAdditional restrictionsAdditional restrictions

Scheduling a Print Request (1)

" The Delayed printing indicator generates print requests and places them in the correspondence container, where the clerk can call them up and print them out at the end of the day:

Utilities industry -> Contract A/R / A/P -> Period. work -> For Contract A/R / A/P -> Correspondence -> Print

" You then enter a date and an ID consisting of four characters.

" You then need to enter the parameters for the print run; You then need to enter the parameters for the print run; in other words you specify the correspondence type and any additional parameters you may require (such as business partner or contract account).

" You can assign individual Dispatch control groups to the business partner's forms in the contract account - for example, how many copies to send of an installment plan cover sheet and which medium to use.

Page 181: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-25

SAP AG 1999

Scheduling a Print Request (2)

Run on 04.08.1998

Identification ET

Status Parameters were entered

Parameters Schedule printout

Automatic Correspondence

Schedule printoutSchedule printout

Job parametersStart date 04.08.1998

Start time 00:00:00

Start immediat.Target computer

Print runOutput device LT0Q

Output typeRDI

Schedule printout Schedule sample printout

Schedule Correspondence Printout

" Once you have specified the parameters for the print job, you can schedule this job.

" You can either schedule the job for a certain time or start it immediately.

" The print parameters include the Output device, the Output type, and the RDI indicator.

Page 182: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-26

SAP AG 1999

! Printing Scenarios

! Raw Data Interface

! External Printing Systems

! Delayed Printing

! Dispatch Control and Correspondence

! Archiving

Print Control and Print Environment:Correspondence

Page 183: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-27

SAP AG 1999

Correspondence Containers

Application program 1Application program 1

Dunning activitiesDunning activities

Correspondence containerCorrespondence container

Application program nApplication program nONE report to

print

ONE report toprint

ALL application programs

with printed output load thecorrespondence data container

ALL application programswith printed output load the

correspondence data container

.

.

.

.

.

.

" Print requests from delayed printing are managed in the correspondence container, in the menu for contract accounts receivable and payable (see above):

Utilities industry -> Contract A/R / A/P -> Period. work -> For Contract A/R / A/P -> Correspondence -> Print

Page 184: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-28

SAP AG 1999

Dispatch Control in Correspondence

NavigationDispatch Control-->Dispatch Types

Dispatch Control DEF

Dispatch Items

12EMAILPRINTER

12

X 33

No.Type Copies RDIArch.Mod.PrinterLT0QP649

Printout e-mail

Bill PrintoutContract acct.: 4711

Dispatch control: DEF

Bill PrintoutContract acct.: 4711

Dispatch control: DEF

Correspondence type

� Account statement� Dunning letter� Installment plan� Interest notification

Correspondence type

� Account statement� Dunning letter� Installment plan� Interest notification

" The correspondence variant is stored in a business partner's contract account. It contains the allocation between correspondence type and dispatch control group.

" Correspondence types are supplied for every form type in contract accounts receivable & payable, as well as for move-in/move-out processing. They represent the link between a business partner's individual contract account and the correspondence container with all of a clerk's contract accounts.

" Customizing the dispatch control group:

Financial Accounting -> Contract A/R / A/P -> Basic functions -> Print workbench -> Dispatch control

" The dispatch control group controls how many pieces of correspondence are dispatched and with which media.

" Customizing the correspondence variant:

Financial Accounting -> Contract A/R / A/P -> Basic functions -> Correspondence -> Configure correspondence variants

Page 185: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-29

SAP AG 1999

Print Control and Print Environment: Archiving

! Printing Scenarios

! Raw Data Interface

! External Printing Systems

! Delayed Printing

! Dispatch Control and Correspondence

! Archiving

Page 186: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-30

SAP AG 1999

Archiving

Utility 1 : 1 Copy1 : 1 Copy

Archive

" When a utility company sends a letter to a customer, it is usually important to archive a 1:1 copy of the document in electronic format.

" Archiving takes place in an external archiving system (such as IXOS) and is linked to the R/3 system by SAP ArchiveLink.

" If it is linked correctly to SAP ArchiveLink, the R/3 system can both archive outgoing documents directly and access an archived document directly from an R/3 application.

Page 187: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-31

SAP AG 1999

! Customizing of the archive

! Customizing of document types

! Link tables with keys

" BOR object type (for example, PRINTDOC = billdocument)

" BOR object ID (bill document number)

" Archive ID (for example, A7)

" Document ID from archive (40-digit number)

! Customizing of the archive

! Customizing of document types

! Link tables with keys

" BOR object type (for example, PRINTDOC = billdocument)

" BOR object ID (bill document number)

" Archive ID (for example, A7)

" Document ID from archive (40-digit number)

How SAP ArchiveLink Works

" SAP ArchiveLink represents the central interface to external archive systems.

" The archive is linked by customizing the host addresses and, if there are several archives, by naming the archives.

" In SAP ArchiveLink you define document types (such as ISU_BILL); these are generally equivalent to the form classes. These document types allow you to differentiate between documents with the same BOR object type.

" You define the link between object type (such as PRINTDOC for bill), document type (such as ISU_BILL) and external storage system (such as T1) under

Tools -> Business Documents -> Basic settings -> Links

" An archived document is identified by its archive name (the archive ID) and an archive document ID. SAP ArchiveLink creates a logical link between the archived document and a BOR object in the R/3 system.

" For detailed information about the linking of an archive via SAP ArchiveLink, see the R/3 online documentation.

Page 188: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-32

SAP AG 1999

R/3

SAPscript

SAP ArchiveLink

Archive" Formatted document, e.g. in PDF" BOR object" BOR ID" Document type" Archive ID

" BOR object" BOR ID" Document type" Archive ID+ Archive document ID

ASYNCHRONOUS

Archiving Using SAPscript as Layout Instrument

" You can activate archiving by setting the archiving mode to 2 or 3 (Only archive or Print and archive) in the SAPscript dialog box.

" The archiving mode can only be set to 2 or 3 if:

$ An archive system was linked correctly

$ The relevant application has implemented archiving (see documentation for the respective form class)

$ The Customizing settings for the relevant application have been correctly defined (see above)

" During the print process, SAPscript sends an archiving command to the archive system, which contains both the document to be archived in a format (such as PDF) and the data for the logical link (BOR object, object ID).

" Once archiving is complete, the archive generates a 40-digit ID, which it sends back to the R/3 system via RFC or BAPI together with the data obtained from the R/3 system.

" This generates a link entry in SAP ArchiveLink.

Page 189: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-33

SAP AG 1999

Archiving Using External Systems via the RDI

R/3

SAPscript

SAP ArchiveLink

Archive Server

RDI:- Header data- Variables/data- Archiving parameters

External printingsystem

" Formatted document" BOR object" BOR ID" Document type" Archive ID

" BOR object" BOR ID" Document type" Archive ID+ Archive document ID

" When you print using the RDI, the archiving must be carried out by the external system.

" The archiving parameters must be contained in the RDI output. They must be transferred to the RDI output by using the variable c-archive_index (DDIC structure TOA_DARA) in one of the texts.

" The archiving mode is contained in the header data of the RDI output and must be interpreted by the external system.

" As is the case when you print using SAPscript, the archive generates the link entry to the R/3 system, once the archive document ID has been generated, using an RFC or a BAPI.

Page 190: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-34

SAP AG 1999

Accessing an Archived Document (1)

Example: Bill

Document number 700000003104 Line item 1 / 6

Cust./acct Billing/MR Price data Further data

Customer/account dataBusiness part. GZZ Contract acct GZZ TransactionCompany code 0001 Contract GZZ Main trans. 0010

G/L account Division 02 Sub-transaction 8010

Presorting B2 Jur.code Offsett. trans. 9010

Line item type 000001

Simulate bill Object link

Print document Edit Goto Environment System HelpDisplay Print Document Display from archiveDisplay from archive

" You can access an archived document by choosing Object links in the relevant application, such as the bill in the Print document display.

" The system searches for a link entry using the key PRINTDOC and the document number. Any link entries that are found are displayed in an archive viewer (such as Acrobat Reader) on the local PC.

" You can also navigate from the display transaction for a form document (for example, display print document, display move-in document) via

System -> Links

to the display of the archived documents.

" From the initial screen of application form maintenance, you can use the Environment menu to branch to the display of all archived documents (SAP ArchiveLink: Administration of Archived Documents).

Page 191: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-35

SAP AG 1999

Accessing an Archived Document (2)

Object link

Object type = PRINTDOCObject ID = Document numberDocument type = ISU_BILL

ArchiveLink

Archive document ID

Archive Server

Starts ViewerLocal PC

" To ensure that the above process functions correctly, the following criteria must be met:

$ The archive system must be correctly linked to SAP ArchiveLink

$ The SAP ArchiveLink option must be installed on the local SAP GUI front end

$ An archive viewer corresponding to the data format must be installed on the local PC

Page 192: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-36

SAP AG 1999

Print Control and Print Environment: Summary

! There are various printing scenarios:" Online printing

" Mass print runs

! A form can be formatted:" Directly using SAPscript

" Using the RDI and an external printing system

! Archiving" Takes place in an external archive system

" Is carried out by the system that formats the form

" Is implemented in the R/3 system using SAPArchiveLink

Page 193: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-37

Exercises

Unit: Print Control and Print Environment Topic: Multiple-Choice Questions on the Print

Environment

At the conclusion of these exercises, you will know more about

• RDI

• Archiving

• Print requests (correspondence)

The examples and questions that follow are designed to throw light on key aspects of the above components.

1-1 RDI

1-1-1 What is the purpose of the RDI?

To enable graphical formatting using SAPscript To enable data to be processed further in external programs To pass on the formatted document to external programs To bypass the Print Workbench To suppress text formatting in the R/3 System

1-1-2 Which information is contained in RDI output?

Window locations Window names Formatted data Raw data Texts to be printed Fonts and font attributes Tabs Status information (printer, user name)

Page 194: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-38

1-2 Archiving

1-2-1 What is archived during optical archiving?

The data contained in the form The completely formatted form Only the document number, so the archive can access the data The contained data and the SAPscript form

1-2-2 Which information is contained in a complete R/3 system link entry for accessing the external archive?

BOR object type Form class ArchiveLink document type Archive ID BOR object ID Application form SAPscript form Archive document ID

1-3 Print requests

1-3-1 What are print requests used for?

To speed up the printing process To collect print requests and print them with a single job To get a better overview of the individual print processes To control automatic correspondence

1-3-2 How can you generate print requests?

By setting the Print request indicator in the SAPscript form By setting the Print request indicator in the application form By setting the Print request indicator in the dialog box immediately

before printing They can be generated automatically in correspondence

1-4 Generate a print request for an installment plan and then start a job to carry out the print request.

1-4-1 Go to the installment plan view and choose the installment plan for business partner PM0000C0##.

1-4-2 Generate a print request for the installment plan notification letter.

1-4-3 Start a print run in the correspondence for the print request you have just generated.

Page 195: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-39

Solutions

Unit: Print Control and Print Environment

1-1 RDI

1-1-1 What is the purpose of the RDI?

To enable data to be processed further in external programs To suppress text formatting in the R/3 system

1-1-2 Which information is contained in RDI output?

Raw data The texts to be printed Status information (printer, user name)

1-1-3 You can generate RDI output in the following manner:

Choose Print workbench → Application form. Enter your application form and choose Application form → Test printout → Execute. Choose business partner PM0000C0##. On the next screen, choose RDI = �X�. Choose Continue.

You can display the RDI output in the following manner:

Once printing is complete, choose System → Own spool requests. Position the cursor on the last entry and choose Spool request → Display.

Page 196: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-40

1-2 Archiving

1-2-1 What is archived during optical archiving?

The complete form, including all formatting

1-2-2 Which information is contained in a complete R/3 system link entry for accessing the external archive?

BOR object type ArchiveLink document type Archive ID BOR object ID Archive document ID

1-3 Print requests

1-3-1 What are print requests used for?

They allow a large number of print transactions to be collected

together and scheduled as one job They control automatic correspondence

1-3-2 How can you generate print requests?

By setting the Print request indicator in the dialog box before printing They can be generated automatically in correspondence

Page 197: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 7-41

1-4 Choose Utility industry → Contract accounts receivable and payable → Account → Installment plan → Display.

1-4-1 From the F4 help, select the installment plan number for business partner PM0000C0##. Choose Continue to go to the installment plan view.

1-4-2 Choose Generate notification. Set the Generate print request indicator in the print parameters and choose Continue.

1-4-3 Choose Utilities industry % Contract accounts receivable and payable % Periodic processing % Correspondence % Print.

First, enter an identification for the print run: Date <Today�s date>

Identification G##.

Enter business partner number PM0000C0## in tab page �General selection�. Enter the appropriate key for Installment plan under �Correspondence type� (tab page Correspondence selection) and press Save.

Now you can schedule the print run and start it. First make sure that printer LT0Q has been specified in tab page �Print parameters�. Choose Schedule program run and set Start now. Printing now starts. The status of the run is displayed and can be updated whenever you choose.

You can display the results of your print run in the spool (System → My spool requests).

Page 198: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 8-1

SAP AG 1999

SAPscriptSAPscript

IntroductionIntroduction

Print WorkbenchPrint Workbench

Maintaining Application FormsMaintaining Application Forms

Integration and ExamplesIntegration and Examples

Print Control and Print EnvironmentPrint Control and Print Environment

Summary

Print Action RecordsPrint Action Records

Print Workbench: Summary

Page 199: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 8-2

SAP AG 1999

Summary: Topic Overview

! Print Workbench as Interface and SAPscriptAdd-On

! General Notifications

! Invoice Printing Workshop

Page 200: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 8-3

SAP AG 1999

SAP Customer

Form classes Application forms

SAPscriptApplications

Add-on

Print WorkbenchPrint Workbench

Belong to

Print Workbench as Interface and SAPscript Add-On

" The print workbench links SAP objects (form classes, data retrieval) with the objects that belong to the customer (application forms, SAPscript forms).

" In addition, the print workbench offers effective tools to speed up the process of form maintenance.

Page 201: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 8-4

SAP AG 1999

" What are the customers' requirements?

" Which data is required?

" How general is 'general'?

" Are existing form classes to be used?

" Can general notifications be modeled in theprint workbench ?

" What are the customers' requirements?

" Which data is required?

" How general is 'general'?

" Are existing form classes to be used?

" Can general notifications be modeled in theprint workbench ?

General Notifications

" General notifications are planned for IS-U Release 2.0. We are currently collecting and considering customer requirements.

" It is not yet certain whether general notifications can be modeled in the print workbench.

Page 202: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 8-5

SAP AG 1999

! Requirements:

" IUT230

" IUT280

" Experience with billing & invoicing in IS-U

! Topics

" Collecting customer inquiries

! Requirements:

" IUT230

" IUT280

" Experience with billing & invoicing in IS-U

! Topics

" Collecting customer inquiries

Invoice Printing Workshop

" The bill is by far the most important and the most complex document produced by a utility company.

" To create a bill, you require not only knowledge of the print workbench, but also detailed knowledge of billing and invoicing.

" The topics for the workshop consist mainly of customer inquiries.

Page 203: IUT280_463

I n t

e r

n a

l

U s

e

S A

P

P a

r t

n e

r

O n

l y I n

t e r n a l U

s e S A

P P

a r t n e r O

n l y

© SAP AG IUT280 8-6

SAP AG 1999

Goodbye

Thanks for coming!