<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8515918989646549727</id><updated>2024-11-24T02:11:21.222-08:00</updated><title type='text'>STEP BY STEP SAP BI</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>43</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-8258461343733937876</id><published>2012-09-22T23:06:00.001-07:00</published><updated>2012-09-22T23:06:03.864-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;topc1&quot; style=&quot;background-color: white; color: #597347; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; text-align: justify;&quot;&gt;
&lt;h1 style=&quot;background-image: none; background-position: 0% 0%; background-repeat: no-repeat no-repeat; border: none; color: #0099ff; font-size: 16px; height: 40px; line-height: 24px; margin: 0px; padding: 0px;&quot;&gt;
&lt;a href=&quot;http://adf.ly/CUXg0&quot; target=&quot;_blank&quot;&gt;What is Web Dynpro?&lt;/a&gt;&lt;/h1&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
We
 present the place and role of the Web Dynpro within the SAP NetWeaver 
platform. So, we start with the layers of the SAP NetWeaver platform, we
 continue with the importance of the Application Platform layer, and we 
conclude with the place and role of Web Dynpro (ABAP and Java) within 
the Application Server ABAP and, respective, Application Server Java.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
As
 we can see, four layers are distinguished in this context: Application 
Platform, Process Integration, Information Integration and People 
Integration.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
The
 Application Platform represents the technical basis of almost all the 
other SAP products. This is the reason why the Application Platform 
plays a central role in the SAP NetWeaver.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
The
 Application Platform essentially offers two programming interfaces: 
ABAP and Java (J2EE). ABAP is the programming interface for Application 
Server (AS) ABAP and Java is the programming interface for AS Java.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;To
 create ABAP and Java applications, we have two independent development 
environments: ABAP Workbench for ABAP and SAP NetWeaver Developer Studio
 for Java.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
Both
 development environments offer the possibility to create web based 
applications built by using declarative programming techniques based on 
the Model View Controller (MVC) paradigm.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
SAP
 NetWeaver Developer Studio is the SAP’s own development environment 
used to develop Java-based multilayer business applications. This 
development environment is based on Eclipse and offers a Web Dynpro 
Perspective to create Web Dynpro Java applications.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
All the tools we need to create Web Dynpro Java applications are found within the SAP NetWeaver Developer Studio.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;b&gt;SAP NetWeaver components (SAP)&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;img src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/venkat.jpg&quot; /&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;b&gt;SAP NetWeaver Developer Studio–Web Dynpro perspective&lt;/b&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;img src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%201/1-SAP-NetWeaver-components-%28SAP%29.png&quot; /&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
ABAP
 Workbench is the SAP’s own development environment used to develop 
ABAP-based multilayer business applications. This development 
environment offers Web Dynpro Explorer to create Web Dynpro ABAP 
components&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;ABAP Workbench–Web Dynpro Explorer&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;img src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%201/3-ABAP-Workbench-%E2%80%93-Web-Dynpro-Explorer.png&quot; /&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
The Application Server ABAP has the structure presented.&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;AS ABAP (SAP)&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;img src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch1_4.jpg&quot; /&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
As we can see, most of the AS ABAP components can be divided into three layers:&lt;/div&gt;
&lt;ul style=&quot;color: #597347; margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;color: #333333; list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Presentation layer&lt;/li&gt;
&lt;li style=&quot;color: #333333; list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Business layer&lt;/li&gt;
&lt;li style=&quot;color: #333333; list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Persistence layer&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
Web Dynpro ABAP is part
 of the presentation layer and it’s the SAP standard UI technology used 
for developing web business applications without knowing HTML or 
JavaScript.&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
Web Dynpro ABAP offers many advantages, as follows:&lt;/div&gt;
&lt;ul style=&quot;color: #597347; margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;color: #333333; list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Strict separation between the layout and business data&lt;/li&gt;
&lt;li style=&quot;color: #333333; list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Re-use and better maintainability through reusability.&lt;/li&gt;
&lt;li style=&quot;color: #333333; list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Automatic input checks.&lt;/li&gt;
&lt;li style=&quot;color: #333333; list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Automatic data transport, using data binding.&lt;/li&gt;
&lt;li style=&quot;color: #333333; list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;WYSIWYG (What You See Is What You Get) view editor.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
Web Dynpro ABAP and Web
 Dynpro Java mostly offer the same functionalities. But, of course, 
there are some differences between them, for example:&lt;/div&gt;
&lt;ul style=&quot;color: #597347; margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;color: #333333; list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px; text-align: justify;&quot;&gt;Web
 Dynpro Java, unlike the Web Dynpro ABAP, disposes of a ViewSet that 
allows us to integrate in a Screen more Views, by using certain 
pre-defined layouts. In this respect, their common part is the View 
Container UI Element.&lt;/li&gt;
&lt;li style=&quot;color: #333333; list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px; text-align: justify;&quot;&gt;Web
 Dynpro Java offers graphical tools that ease the programming work, 
as:Navigation Manager and Diagram View, unlike the Web Dynpro ABAP where
 we dispose only of a tool used to visualize and to define the window 
structure.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
The Web Dynpro ABAP is 
what the current book is about. More information about Web Dynpro Java 
can be found in the Book Inside Web Dynpro for Java by Chris Whealy.&lt;/div&gt;
&lt;center style=&quot;color: #597347;&quot;&gt;
&lt;ins style=&quot;border: none; display: inline-table; height: 60px; margin: 0px; padding: 0px; position: relative; visibility: visible; width: 468px;&quot;&gt;&lt;/ins&gt;&lt;/center&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/8258461343733937876/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/what-is-web-dynpro-we-present-place-and_22.html#comment-form' title='10 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/8258461343733937876'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/8258461343733937876'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/what-is-web-dynpro-we-present-place-and_22.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-5710093348358028219</id><published>2012-09-22T23:05:00.001-07:00</published><updated>2012-09-22T23:05:17.812-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;a href=&quot;http://adf.ly/CUXGD&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 16.0pt; mso-bidi-font-size: 12.0pt;&quot;&gt;TRANSACTIONS&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
GENERAL INTRODUCTION TO TRANSACTION&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Transaction,
in R/3 system is an operation that lets the user make necessary changes to the
database. The entire R/3 system is nothing but set of business transaction. The
data transfer from old system to SAP R/3 database, or modifying data, or
deleting data, which is not required, is done through transaction.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
For SAP
system, Transaction is nothing but sequence of steps called as dialog steps and
for user it is sequence of screens that appears one after the other depending
upon the option he selects. The special transaction monitor called the SAP
dispatcher handles the sequence of steps that takes place in any transaction.
The main task of transaction is to update database table. The database table is
not updated until a transaction is completed. All changes can be rolled back if
the transaction has not finished.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
The
transaction contains two steps which are as following:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Interactive phase&lt;/b&gt;: In this step, user
enters the data, which needs to be inserted or deleted or modified on to the
screen. There can be single screen or multiple screens depending upon the
transaction. So this step can consist of single step or multiple steps.&amp;nbsp; In this phase you prepare database record.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Update phase&lt;/b&gt;: This phase processes the
database record and updates the database table. Actual updating of database
table takes place in this phase.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
All the
transactions are associated with transaction code. And all these codes are
stored in a table &lt;b&gt;TSTC&lt;/b&gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;Logical Unit of Work (LUW)&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;span style=&quot;line-height: 16pt;&quot;&gt;The R/3 system
is multi user system and many users access the same information at the same
time, which is mainly DATA. Consider the case where one user is modifying a
record, and second user is trying to delete the same record. If the second user
is successful in deleting the record then the first user will face problem for
modifying the record that is already deleted. The avoid such situation, R/3
system has provided Logical Unit of Work, which is defined as a locking
mechanism to protect transaction integrity. Of course, there are other
measures, which ensures data integrity like check table i.e. foreign key
relationship. Within SAP system there are three types of transaction and may be
distinguished as:&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Database transaction known as LUW.&amp;nbsp; It can be defined as a period in which
operation requested must be performed as a unit, i.e. all or nothing
operation.&amp;nbsp; At the end of LUW, either of
the database changes are committed or rolled back.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Update transaction or SAP LUW.&amp;nbsp; One SAP LUW can have several databases LUW.
So a set of a database is either committed or rolled back. The special ABAP/4
command COMMIT WORK, marks the end of a SAP LUW.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;ABAP/4 transaction. Is made up of a set of
related task combined under one transaction code. ABAP/4 transactions are for
programming environment, in which ABAP/4 transaction functions like one
complete object containing screens, menus and transaction codes.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
R/3 system has
provided in built locking mechanism, which defines the Logical Unit of Work.
Also user can set his own locking mechanism. The LUW starts when a lock entry
in the system table is created, and it ends when the lock is released.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
To provide the
user the facility to communicate with the table in order to modify or delete or
insert data, R/3 has provided tool called SCREEN PAINTER. This tool allows you
to design screen, process screen through program and update the database
table.&amp;nbsp; SAP has provided one and only one
way to update the database table, i.e. transaction.&amp;nbsp; Though you can update database table by using
open SQL statement through program, SAP usually doesn’t recommend this kind of
updating.&amp;nbsp; Many standard transactions are
available to update standard table but if the need arises, the developer should
be able to develop new transaction, which allows the updating of database
tables. This can be achieved by using various components of screen painter.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Following are
the few concepts and steps for creating entire new transaction.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;span style=&quot;font-variant: small-caps;&quot;&gt;Dynpro&lt;/span&gt;
concept&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;span style=&quot;font-size: 12pt; text-align: left;&quot;&gt;A
dynpro refers to the screen + flow logic. With screen painter you can develop
screen and flow logic. The relationship between screen, flow logic, and program
can be shown as follows:&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
 &lt;br /&gt;
&lt;table align=&quot;left&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;
  &lt;tbody&gt;
&lt;tr&gt;
   &lt;td height=&quot;24&quot; width=&quot;83&quot;&gt;&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr&gt;
   &lt;td&gt;&lt;/td&gt;
   &lt;td&gt;&lt;/td&gt;
  &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br clear=&quot;all&quot; style=&quot;mso-special-character: line-break; page-break-before: always;&quot; /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Dynpro, as figure indicates
consist of screen and flow logic and places exactly one call to module pool
program. A transaction consists of many screens and for each screen flow logic
is attached. When the transaction is executed, the screen places a call to flow
logic and flow logic in turn places a call to module pool program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;A module program is usual ABAP/4 program that
consist of modules and data declaration.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;ABAP/4 is an event driven language. In module
pool program too, events get triggered and these events are handled in flow
logic. Flow logic editor is subset of ABAP/4 editor. The system automatically
displays the two important events for the flow logic.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Screen is the important component of dynpro and
can be created, designed by screen painter.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h2&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Screen Painter&lt;/span&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
A screen painter can be started
by&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Development workbench &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt;
Screen &lt;span style=&quot;text-transform: uppercase;&quot;&gt;p&lt;/span&gt;ainter&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Or&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;SE51&lt;/b&gt; transaction code.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Using Screen &lt;span style=&quot;font-variant: small-caps;&quot;&gt;p&lt;/span&gt;ainter&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
The process of creating a dynpro
includes the creation and definition of all the needed screen components.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
The steps involved in creating
the dynpro are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Create screen and attributes by using screen
attribute screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Select and place the needed fields within the
screen by using dict/program fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Establish the field attributes to which the
screen belongs by using field list.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Define the flow logic respect to the transaction
to which it belongs by using flow logic.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Creating a new Screen&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Steps involved are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Enter the name of program and number of the
screen&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Click on Create&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;On “screen attribute” screen enter short
description&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Enter screen type. Normally, you select &lt;st1:place w:st=&quot;on&quot;&gt;NORMAL&lt;/st1:place&gt; option for usual R/3 screen. Other options
available are SUBSCREEN &amp;amp; MODAL DIALOG BOX. Modal dialog box is used to
establish independent and interactive dialog box while subscreen is screen
within screen.&amp;nbsp; &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Next attribute to be passed is NEXT SCREEN. Here
you need to specify the next screen number, which must be processed after the
current one.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Designing of Screen&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Screen can be designed by using
FULL SCREEN EDITOR. You can go to full screen editor.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
From screen attribute screen&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
By pressing full screen editor
pushbutton&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Or&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
From initial screen of screen
painter.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
There are two modes available
with full screen editor.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Graphical mode. The graphical mode works
similarly to typical window application. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Alphanumeric mode (rarely used).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
Elements of screen&lt;o:p&gt;&lt;/o:p&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Text – Standard text or field labels.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Entry&amp;nbsp; -
display field.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Radiobutton – All radiobutton must be associated
with one group.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Checkbox – Normally used for YES/NO operations.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Pushbutton – Used for activating particular
function.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Boxes – grouping together many screen elements.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Subscreens – This is a screen area in which you
can display another screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Table controls – This area of screen is similar
to table but should be treated as a loop.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Status - Display output fields containing icon.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
All these elements are on the
control bar of full screen editor and can be placed on the screen work area by
clicking and placing them wherever needed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h1&gt;
Selecting Screen &lt;span style=&quot;text-transform: uppercase;&quot;&gt;f&lt;/span&gt;ields&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Screen field can be either
dictionary objects or program fields. Steps involved in the placing of fields
on the screen are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Click the pushbutton Dict/program
fields on the full screen editor &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Or&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Goto &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt;
dict/prog fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Enter table name.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Click Get from dictionary.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Select fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Click copy pushbutton.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Position the cursor where you want those fields
to be placed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
To adjust various screen
elements, you can use drag and drop facility for screen elements.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Attributes of Screen Elements&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
The entire element of a screen
has some attributes, which determines their behavior.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;General – These attributes are directly managed by
the screen painter like name of the element, or text of element or column width
and various things associated with the screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Dictionary – These attributes are applicable to
fields, which are from dictionary. Various components of dictionary can be attached
to this element like search help, foreign key.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Display – Behavior of the element with respect
to their display feature.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Attribute dialog box can be
displayed by&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Clicking on the &lt;span style=&quot;text-transform: uppercase;&quot;&gt;Attribute&lt;/span&gt; push button on the application tool bar.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Double clicking on the element.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h1&gt;
Field List&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
This list
displays a list of all screen elements together with their screen
attributes.&amp;nbsp; One important element of
Field list is OKCODE. Any pushbutton is associated with function code as in
menu item in menu painter. When the user clicks the pushbutton this code is
stored in OKCODE. This OKCODE is created by system without a name and is not
visible on the screen. In ABAP/4 this field is work field and is nothing but an
area wherein system stores the variable and is the last field of the field list
and is invisible, hence user needs to give the name OKCODE. It is not mandatory
to give the name OKCODE; developer can give any name to this field.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Screen Flow Logic&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
You can go to
this screen either by&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Initial screen
of &lt;span style=&quot;text-transform: uppercase;&quot;&gt;s&lt;/span&gt;creen painter &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt;
Flow logic&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Or&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
From Screen
attribute screen &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt; Flow logic&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
When
transaction is executed, the screen is displayed, user enters few fields,
selects few functions. Later the screen is processed and processing of screen
is done by flow logic.&amp;nbsp;&amp;nbsp;&amp;nbsp; The events that
are associated with screen are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Process before Output (PBO)&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Process after input (PAI)&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Process on value request (POV)&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Process on help request (POH)&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
The system
automatically displays two very important events or modules in flow logic i.e.
PAI and PBO&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;PBO event&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
This event is
triggered before the screen is displayed. The processing of screen before the
display of screen is done in this event. For example, filling in default values
in the screen fields.&amp;nbsp; &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;PAI event&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
This event is
responsible for processing of screen after the user enters the data and clicks
the pushbutton. The processing of screen can include displaying another screen,
or just displaying list or quitting the transaction itself and many more
things. Usually it is displaying another screen. These operations can be
carried out in the PAI event. OKCODE plays an important role in this operation.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;POV event&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Process on
value request is triggered when the user clicks F4 key. You can handle this
event when the user presses F4 key by writing code for the same in module pool
program. Normally when the user presses F4, list of possible values is
displayed.&amp;nbsp; The standard list produced by
system is adequate for applications you develop yourself.&amp;nbsp; However, you can also have the option of
setting up your own documentation and lists of possible values that are more
detailed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;POH event&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Normally when
the user places the cursor on the field and presses F1 function key, the system
displays its own Help for that particular field. You can add your own
functionality to the Help button by writing code for the same in the POH event.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 11.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h2&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Module Pool Programming&lt;/span&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
This component
though is not attached to the screen painter, plays important role in
transaction. Normally, for reports, on line executable programs are written but
for transaction, Module Pool Programs are written. The module pool program
contains only modules to handle various events associated with screen and data
declaration statements.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
System divides
the module pool program into several include program. These are global field,
PBO modules, and PAI modules. It is entirely user’s decision whether to use
these modules or write directly into main program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Creation of Module Pool Program&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
You can create
module pool program either through &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Object browser&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
System
automatically creates the module pool program and for these program which are
created through object browser, system creates the include modules.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Or&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
ABAP/4 editor&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
It is similar
to normal program creation. Type of program should be given ‘M’ and is not
created by system.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Communication between Dynpro and Module Program&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
For each
screen, the system executes the flow logic, which contains corresponding
events. The control is passed to Module Pool Program. Module Pool Program
handles the code for these events and again passes back control to the flow
logic and finally to screen. Unlike on line program, in this case, the control
remains with flow logic. The switching of control between flow logic and module
pool program and back is common process when user executes transaction.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h2&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Creation of a Complete Transaction&lt;/span&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Steps involved to create a complete transaction&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Create module pool program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;From screen painter create screens.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Write flow logic for each screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Write code for all the events in module pool
program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Check for any error in screen and flow logic.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Generate each and every component of screen i.e.
flow logic and screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Single screen can be tested using Screen
Painter.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Create transaction code through object browser.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Generate the transaction code.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;User can execute the transaction by entering the
transaction code in the command field.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Handling Function Code&lt;/h1&gt;
&lt;h1&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
The function
code or OKCODE is the last field of Field list. Function code can be handled as
follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
During the
Designing of the screen, a function code is assigned to pushbutton.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;In field list, developer needs to specify OKCODE
as last field.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;In module program it is a global field and can
be evaluated in the PAI event.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;A function code is treated in the same way,
regardless it comes from pushbutton, menu item or any other GUI element.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
A complete
example for transaction is shown below:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
If you have a
screen like the one below:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
When the user clicks on the
Display button, you want to display details of sflight, with corresponding carrid
and connid (which is entered by the user).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Module pool program to handle
this particular screen is as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Program YVTEST7.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;Tables:
SFlighT.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;data:
okcode (4).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;Module
input1 input,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;case okcode.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;&amp;nbsp; when ‘disp’.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Select * from sflight &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;where carrid =&amp;nbsp; sflight – carrid and &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; connid = sflight –
connid.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Endselect.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; leave to screen 200.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;&amp;nbsp; When ‘exit’.&amp;nbsp;
Leave to screen 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp; Endcase.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;endmodule.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; “input1
input&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;module user_command_0200 input.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;case okcode.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify; text-indent: .5in;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;when ‘back’. Leave to screen 100.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;endcase.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;Endmodule.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; “user_command_0200
input&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
When the user clicks on display,
control is transferred to screen no. 200 on which you display sflight details
&amp;amp; on the same screen, when user clicks on BACK button, he comes back to
main screen. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Flow logic for screen 100 is as
follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;Process
after input.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;Module input.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Flow logic for screen 200&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
PROCESS AFTER
INPUT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;User_command_0200.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
MODULES: &lt;span style=&quot;text-transform: uppercase;&quot;&gt;m&lt;/span&gt;odules are handled in module pool
program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
You need to
write flow logic for screen 200 and design screen 200.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In case of
transaction transfer of data from program to screen is automatic i.e. you need
not transfer the data from program to screen explicitly. The fields, which you
define in the screen receives the data from program and displays the same.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h2&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;The Field Checks&lt;/span&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
As already
mentioned Transaction is the only method, which SAP recommends to update the
database tables. Data entered in the database table should be valid and
correct. Data entered is validated at each and every point. ABAP/4 offers
various methods to validate data and those are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Automatic field checks&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Checks performed in the flow logic&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Checks performed in the ABAP/4 module pool
program&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Automatic Field Checks&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
These checks
are based on the field information stored in the dictionary. These checks are
performed by the system automatically when the user enters the data for the
screen field. System performs these checks before PAI event is triggered. Types
of field checks performed by system are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Required input&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
While
designing the screen, for particular screen field if you click the Req. Entry
checkbox, the field becomes mandatory. When the transaction is executed if user
leaves this particular field blank, the system displays error message. User
cannot proceed until the user enters some data.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Proper &lt;span style=&quot;text-transform: uppercase;&quot;&gt;d&lt;/span&gt;ata
Format&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Each field has
its own data format whether it is table field or screen field. Whenever data is
entered, system checks for the proper format of the data. For example date.
Each user has its own format for date, which is defined in the user master
record. If the date defined in the user master record is in the format
DD/MM/YYYY, if the user enters the date, say, in YY/DD/MM, the user displays
the error message. System also checks for the value of month or days. For
example if month entered is greater than twelve then the error message is
displayed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Valid Value for the Field&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In data
dictionary two tables are related by Primary key-Foreign key relationship.&amp;nbsp; Whenever the user enters the data, the system
checks for the check table values.&amp;nbsp;&amp;nbsp; Also
in Domain, if you have fixed values, then the system checks for these values.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;Automatic field checks are repeated each
time the user enters the data.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/h4&gt;
&lt;h1&gt;
About at Exit – Command&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Automatic
field checks can be avoided by AT EXIT-COMMAND, which works exactly the same
way as Cancel works on application tools bar. In the R/3 screen, if you want to
quit the processing of that particular screen without entering the mandatory
fields, user can click the Cancel button. Same functionality can be
incorporated in the user-defined transaction by using AT EXIT-COMMAND. This
module can be called before the system executes the automatic field checks and
it goes without saying that before PAI event. Code for AT EXIT-COMMAND in flow
logic and in module pool program can be written as follows:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&lt;br /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;h1&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; In
module pool program.&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-align: justify;&quot;&gt;
Module
exit.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-align: justify;&quot;&gt;
Case
okcode.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-align: justify;&quot;&gt;
When
‘Exit’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-align: justify;&quot;&gt;
Leave
to screen 0.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
To achieve
this kind of functionality a pushbutton or menu item should be assigned a
function type ‘E’. It tells the system to process this particular module before
carrying out any field checks.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Flow Logic Validations&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Consider the
case where you want user to enter only ‘LH’ and ‘SQ’ for sflight-carrid. In
this case, you are restricting value of a screen field. This cannot be achieved
by automatic field check. Hence there is a need of additional validation. It
can be done in flow logic by using following statement:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Field --------------- Values&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Syntax&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;PAi.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Field
sflight-carrid values (‘LH’).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
For multiple
values&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;PAI.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Field
sflight-carrid values (‘LH’ ‘SQ’).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Field
sflight-price values (between 1000 and 2000).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case
when the user enters the value, PAI is triggered&amp;nbsp; and field is checked for&amp;nbsp; that particular value. If the value entered
happens to be wrong, that field is enabled for user to enter. If you have
multiple Field statements in your flow logic, it is sequential execution.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Consider the
following case:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;PAI.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;h1&gt;
Module &amp;nbsp;assign.&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Field
sflight-carrid values (‘LH’ ‘SQ’).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In ABAP/4&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Module&amp;nbsp; assign.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Data: carrid1
like sflight-carrid.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Carrid1 =
sflight-carrid.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Endmodule.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case,
Sflight-carrid is used in the flow logic before the field statement. The system
will give invalid value or some previous value as the field sflight-carrid is
used in module before it is checked i.e., field statement is after the module
in which sflight-carrid is being used. &lt;b&gt;The
field is not available to the system unless it executes the field statement&lt;/b&gt;.
Field statement transfers the values to the program and is done only once. If
you don’t have Field statement in your flow logic, transfer of values takes
place in PAI event.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Consider one
more case where you have multiple field statement.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;

&lt;br /&gt;
&lt;table align=&quot;left&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td height=&quot;18&quot; width=&quot;30&quot;&gt;&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td&gt;&lt;/td&gt;
  &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;br clear=&quot;ALL&quot; /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-align: justify;&quot;&gt;
PAI.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-align: justify;&quot;&gt;
Field
Sflight-carrid values (‘LH’).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-align: justify;&quot;&gt;
Field
Sflight-connid values (‘0400’ ‘0500’).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case
if the user enters only carrid wrong, then this particular field is enabled and
rest of the fields are disabled for user to input. Many times if the user
enters wrong value for one field, then you might want to give option to user to
enter all the fields, which is not possible by using Field statement only. This
functionality can be achieved by &lt;span style=&quot;text-transform: uppercase;&quot;&gt;Chain –
endchain.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Syntax&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Chain.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Field
sflight-carrid value (‘LH’).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Field sflight-connid values (between
‘200’ and ‘500’).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Endchain.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Field
sflight-price values (‘100’ ‘1000’).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case,
if the user enters wrong value only for carrid, both the fields i.e. carrid and
connid are enabled as they are grouped together in the Chain statement. The
field price will be disabled for input. Usually, logically related fields are
grouped together with Chain-Endchain statement.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Module Pool Program Validations&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Checking
fields ABAP/4 program includes&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Field statement in flow logic.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Module statement in ABAP/4 module pool Program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Syntax&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
PAI.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Field
sflight-carrid module &amp;lt;name&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
This module
can be handled in the main program i.e. module pool program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In ABAP/4
program&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Module Check.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Select single
* from sflight where carrid = sflight-carrid.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
If sy-subrc ne
0.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Message e001.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Endif.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case,
field sflight-carrid is checked in the table for its existence.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 11.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h2&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Dynamically Calling the Screens&lt;/span&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
About Displaying Next Screen&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Transaction is
a sequence of screens, which are displayed one after the other. The next screen
displayed depends upon the attributes of first screen. In attributes you need
to give Next Screen number i.e. if next screen displayed should be 200 screen,
then this number should be given in next Screen attributes. These are static
attributes of the screen. By default, if nothing is specified in the program,
the system branches out to the screen number, which is specified in the
attribute screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
But this
doesn’t happen always. If you have many pushbuttons on the screen like the one
in the following case:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
In this case, if user selects
MARA pushbutton, then fields from Mara table are displayed. When the user
clicks on the MARD, then the fields from MARD table are displayed. Depending
upon users selection, the screen is branched out and this has to be done during
runtime. This functionality can be achieved by dynamically calling the screen
in module pool program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
The screen can
branch out to new screen depending upon user selection. Following command in
module pool program can do this:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol; text-transform: uppercase;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;text-transform: uppercase;&quot;&gt;Set
Screem&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol; text-transform: uppercase;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;text-transform: uppercase;&quot;&gt;Call
Screen&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;text-transform: uppercase;&quot;&gt;Leave to
screen &amp;lt;number&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;A&lt;/span&gt;ll these commands override the
specifications given in the attributes. This overriding is temporary. The
values stored in the attribute are not changed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Set Screen&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;Syntax&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Set screen
&amp;lt;number&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In module pool
program&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Case okcode.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; When&amp;nbsp;
‘&lt;span style=&quot;text-transform: uppercase;&quot;&gt;Disp&lt;/span&gt;’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set screen 200.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; When ‘&lt;span style=&quot;text-transform: uppercase;&quot;&gt;List&lt;/span&gt;’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set screen 300.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Endcase.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case,
the entire processing of current screen takes place and then the system
branches out to next screen. If you want to branch out to the next screen
without processing the current screen, LEAVE SCREEN should be used along with
the &lt;span style=&quot;text-transform: uppercase;&quot;&gt;set screen.&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;For
Example:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Case okcode..&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; When&amp;nbsp;
‘&lt;span style=&quot;text-transform: uppercase;&quot;&gt;Disp&lt;/span&gt;’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set screen 200.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Leave Screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; When ‘&lt;span style=&quot;text-transform: uppercase;&quot;&gt;List&lt;/span&gt;’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set screen 300.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Leave Screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Endcase.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText3&quot;&gt;
When SET SCREEN is used, control cannot be
transferred to the main screen or previous screen, unless you write code for
the same.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Call Screen&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Usually used
for pop up screens. Many times, there is a need for user to enter additional
information or secondary information on another screen or pop up screen. Once
the user enters the data, he should be able to go back to main screen or to the
screen where he started. This is not possible by using SET SCREEN. CALL SCREEN
achieves this functionality&lt;span style=&quot;text-transform: uppercase;&quot;&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;Syntax&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;C&lt;/span&gt;all Screen 200.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Will simply
call a screen number 200 from a main screen. Once the screen is displayed the
user can enter all the data and return to the main screen by clicking &lt;span style=&quot;text-transform: uppercase;&quot;&gt;back&lt;/span&gt; button.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
To call screen
as pop up screen the syntax is &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Call
screen starting at &amp;lt;col.no.&amp;gt; &amp;lt;line no&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Ending at &amp;lt;col no&amp;gt; &amp;lt;line no&amp;gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case
window will be popped as window and user can close it by using &lt;span style=&quot;text-transform: uppercase;&quot;&gt;back&lt;/span&gt; button.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Leave to screen &lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
To SET a new
screen without processing current screen, you need to use the following two
statements together:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;SET Screen 200.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;Leave Screen.&lt;/span&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Or a Single
statement&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;Leave to screen 200.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 11.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h2&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Subscreens&lt;/span&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
A subscreen is
a screen within screen. Consider the following case.&lt;/div&gt;
&lt;h2&gt;
&lt;span style=&quot;color: yellow;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
If user clicks
on &lt;span style=&quot;text-transform: uppercase;&quot;&gt;First&lt;/span&gt; pushbutton, you want to
display details of MARA table and if user clicks on the &lt;span style=&quot;text-transform: uppercase;&quot;&gt;second&lt;/span&gt; pushbutton, you want to display details of &lt;span style=&quot;text-transform: uppercase;&quot;&gt;mard&lt;/span&gt; table.&amp;nbsp; You can do this by calling two different
screens. But the information will be displayed on the next screen. Displaying
data on the same screen is possible by using &lt;span style=&quot;text-transform: uppercase;&quot;&gt;Subscreens.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Step to create
a subscreen are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Create a subscreen area on &lt;span style=&quot;text-transform: uppercase;&quot;&gt;main&lt;/span&gt; screen and name it.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Create a separate screen of subscreen type.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Arrange the fields on this screen so that they
fit in subscreen area exactly. Only when it is larger, the part of the screen
that fits in the main area will be visible. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Write code for calling subscreen in flow logic.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
To call
subscreen, from your flow logic, you need to include the statement both in PAI
and PBO.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Syntax&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
PBO.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Call
subscreen &amp;lt;area&amp;gt; including &amp;lt;prg name&amp;gt; &amp;lt;’screen no’&amp;gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
PAI.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Call subscreen
&amp;lt;area&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Area - is the
name of the area on main screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Prg. Name - is
the name of the module pool program. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Screen number
- is subscreen screen number.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Some of the
don’ts with subscreen are:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
GUI status cannot
be set to the subscreen&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;OKCODE is not applicable to the subscreen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Subscreen cannot call another screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;It cannot contain &lt;span style=&quot;text-transform: uppercase;&quot;&gt;at Exit-Command.&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
You can call
multiple subscreen in the same area (at any given point of time, only one
subscreen can be called in the subscreen area) and is done dynamically during
runtime by using variable screen number.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h2&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/h2&gt;
&lt;h2&gt;
Table Controls &lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
A table can be
created in transaction. These tables when designed on the screen are called as &lt;span style=&quot;text-transform: uppercase;&quot;&gt;Screen Tables&lt;/span&gt;. These screen tables are
of two types viz.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Table controls&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Step loops&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Though these
are tables when code is written to handle them, the&amp;nbsp; tables are treated&amp;nbsp; as loops.&amp;nbsp;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Features of Table Controls&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Data is displayed in the form of table when many
records match the criteria.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Table control gives user the feeling of an
actual table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;You can scroll through the table vertically and
horizontally.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;You can select rows and columns&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Resize the width of a column&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;You can have separator lines in between rows and
columns&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Automatic resizing of the table when the user
resizes the window.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In general
table control includes all the features of an actual table and user gets the
feeling that he is actually working with table. You can update information in
table control and it can be updated in the database table by writing code for
it.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Steps
associated for creating complete screen table are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Declaration of table control in module pool
program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Designing of table control on the screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Passing data to table in flow logic.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Declaring of Table Control in the Module Pool
Program&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;Syntax&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Controls
TCI type Tableview using screen &amp;lt;screen no.&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
When you use
table control in a screen you must declare the structure in module pool
program. Important fields of tableview are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Lines – number of displayable rows in a table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Top_line – the row of table where the screen
displays start.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Current_line – The row currently being processed
inside a loop.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
When you
process the table control in flow logic depending upon where you want to start
display of rows, you need to use these variables.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Designing Table Control on Screen&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;To design table control on the screen, you need
to click on Table in control bar and place it on the screen. You can adjust the
length and width of table control.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Name the table control. (Here you need to use
same name which you have used for declaration of table control in module pool
program)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;From dictionary object, select table fields and
place them in the table control.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Passing data to &lt;span style=&quot;text-transform: uppercase;&quot;&gt;t&lt;/span&gt;able
Control&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
As already
mentioned, table controls are tables but are treated like loops. Usually
transfer of data from program to screen is automatic. But in case of table
control, transfer of data is not automatic. You need to explicitly transfer the
data to table control. ABAP/4 provides loop statement, which is associated with
flow logic to transfer the data. Because table control is treated like a loop,
data from where it is transferred should be a loop. You cannot transfer the
data by only select statement; you need to put the data into internal table.
ABAP/4 provides the &lt;st1:place w:st=&quot;on&quot;&gt;LOOP&lt;/st1:place&gt; statement, which is
associated with the flow logic and allows you to loop through the table control
and internal tables. In between LOOP-ENDLOOP, you can use most of the flow
logic keywords like field values.&amp;nbsp; Module
etc.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
You need to
code a &lt;st1:place w:st=&quot;on&quot;&gt;LOOP&lt;/st1:place&gt; statement in both PBO and PAI
event of the screen. With &lt;st1:place w:st=&quot;on&quot;&gt;LOOP&lt;/st1:place&gt; statement, you
can transfer the data from program to table control and vice versa.&amp;nbsp; That is, if user updates the value in the
table control, you can update database table with its value. And this can be
done in PAI event. So even if you are not updating database table through the
table control, you need to put the &lt;st1:place w:st=&quot;on&quot;&gt;LOOP&lt;/st1:place&gt;
statement in the PAI event also.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText3&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;PBO.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;Loop at &lt;/span&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&amp;lt;internal table&amp;gt; with control &amp;lt;table
control name&amp;gt; cursor &amp;lt;scroll variable&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;PAI.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Loop
at itab.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Proper usage
of Table Control is as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText3&quot;&gt;
In flow logic.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;

&lt;br /&gt;
&lt;table align=&quot;left&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td height=&quot;16&quot; width=&quot;10&quot;&gt;&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td&gt;&lt;/td&gt;
  &lt;td&gt;&lt;img height=&quot;184&quot; src=&quot;file:///C:/Users/pondu/AppData/Local/Temp/msohtmlclip1/01/clip_image010.gif&quot; v:shapes=&quot;_x0000_s1033&quot; width=&quot;502&quot; /&gt;&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;br clear=&quot;ALL&quot; /&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;PBO.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;LOOP at iTAB with control
Tc1 cursor tc1-top_line.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;Module assign.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;Endloop.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;Pai.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;loop at itab.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;endloop.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Considering,
we have following fields in table control and the screen looks like this: &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In module pool
program&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;

&lt;br /&gt;
&lt;table align=&quot;left&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td height=&quot;18&quot; width=&quot;20&quot;&gt;&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td&gt;&lt;/td&gt;
  &lt;td&gt;&lt;img height=&quot;171&quot; src=&quot;file:///C:/Users/pondu/AppData/Local/Temp/msohtmlclip1/01/clip_image013.gif&quot; v:shapes=&quot;_x0000_s1034&quot; width=&quot;353&quot; /&gt;&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;br clear=&quot;ALL&quot; /&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;Control TC1 t&lt;/span&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;ype tableview using screen
200.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Module assign.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Sflight – carrid = itab – carrid.&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-align: justify;&quot;&gt;
Sflight
- connid= itab -&amp;nbsp; connid.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-align: justify;&quot;&gt;
Sflight
- fldate= itab – fldate.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-align: justify;&quot;&gt;
Endmodule.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
The transfer
of the data from program to table control takes place in steps and these steps
are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;With LOOP AT statement the first row is picked
up and placed in the header of the internal table. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Whatever statements you have in between
LOOP-ENDLOOP are executed.&amp;nbsp; In this case,
you have Module statement. In Module statement, value of internal table is
assigned to table control field.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;The row in internal table is transferred to the
first line of the table control as stated in the &lt;st1:place w:st=&quot;on&quot;&gt;LOOP&lt;/st1:place&gt;
AT statement.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;The system encounters the ENDLOOP statement and
Control is passed to the next line of the internal table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;In the same way, all the records of the internal
table are passed to the table control.&lt;/div&gt;
&lt;h2&gt;
STEP LOOPS&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Step Loops are
type of screen table as already mentioned. Step loops are repeated blocks of
field in a screen. Each block contains one or more fields and these blocks are
repeated. Step loops aren’t like actual table. You can scroll vertically but
not horizontally. Three steps are associated with creation of step loops:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Creation of step loops on screen, which includes
declaring fields on the screen and then defining the step, loops for these
fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Passing data to the step loop is exactly similar
to the passing of data to table controls.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;In step loop, you don’t need to define the step
loop as such in the module pool program but the cursor needs to be defined in
the program.&lt;/div&gt;
&lt;h1&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/h1&gt;
&lt;h1&gt;
Types of Step Loops&lt;/h1&gt;
&lt;h1&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Static – Static Step Loop (SSL) have fixed size
that cannot be changed during the runtime. If user resizes the window, the size
of the static step loop is not changed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l2 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Dynamic – Dynamic Step Loop (DSL) is variable in
size. When the user resizes the window, the system increases or decreases the
number of the step loop blocks.&amp;nbsp; &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
You can have
only one dynamic step loop and can have as many static loops in your&amp;nbsp;&amp;nbsp;&amp;nbsp; transaction.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Programming
with the Static and dynamic step loop is exactly same.&amp;nbsp; For the system or for the user it doesn’t
make any difference whether it is static or dynamic step loop.&amp;nbsp; Only attribute, which you fix during
designing of the step loop, is type attribute for step loop F for fixed i.e
static and V for variable i.e. dynamic.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Writing code
for Step Loop in the flow logic. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PBO.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Loop
at itab cursor cl.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-indent: .5in;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Module set.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-indent: .5in;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Endloop.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAI.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Loop
at itab.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Endloop.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;* Empty
loop is must for both table control and step loop&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
LOOP AT statement for step loops and Table controls is similar. &lt;st1:place w:st=&quot;on&quot;&gt;Loop&lt;/st1:place&gt; At statement transfers the data to screen table. You
need to have the Module to assign the values for the screen table.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
In module pool program you need
to define the cursor.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Date:&amp;nbsp;&amp;nbsp; CL TYPE&amp;nbsp;&amp;nbsp;
i.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;* Cursor
parameter tells which line of step loop display should start.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
“Module Set” in module pool
program assigns the values to step loop fields, which is similar to table controls.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;color: yellow;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Branching to List Processing &lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;
&lt;/div&gt;
&lt;h1&gt;
Switching To List Mode &lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You can display a list within a transaction.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You can produce a list from
module pool program by using the command &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Leave to List-Processing.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
This statement switches the
system from dialog mode to list mode. And from this point onwards until you
return to dialog mode, you can use all the normal report statement like write,
select or any other event.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Returning back from LIST mode&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You can return back to dialog
mode by clicking the BACK button.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You can have your GUI status and write code for the same. You can
include the command LEAVE LIST-PROCESSING. When the system reaches this
command, it leaves the list mode and returns to the dialog mode.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Help &amp;amp; Value Request&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;In
any transaction, When the user presses F1 or ? on a field, System provides the
help&amp;nbsp; facility for that particular field.
In dialog program, when F1 is pressed, help provided by R3 system is sourced
from data element documentation. If this documentation is not present for that
particular field or if user needs to display additional information for that
particular field, then user defined help can be provided through PROCESS ON
HELP REQUEST.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
In ABVP/4 help can be provided to
the user by:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Data element documentation: The
F1 help can be enhanced, by adding an additional text for the data element in
ABAP/4 dictionary.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
It can be done with the help of
following steps:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Place cursor on the screen field,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
GOTO &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt; DOCUMENTATION &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt;
DATA ELEMENT DOCUMENT&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You can now extend the existing
help.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
USING THE PROCESS ON
HELP-REQUEST.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
If you don’t have this event in a
program, then the documentation of the field in the ABAP/4 dictionary is taken
into consideration. If this event exits in the program then it is executed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Process on HELP-REQUEST event&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
This event is triggered when user
presses F1 on a screen field. You need to handle this event in flow-logic by
specifying the fields and attaching the module to it.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Syntax&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
PROCESS ON HELP –REQUEST.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
FIELD SFLIGHT-CARRID MODULE
HELP-FOR-CARRID.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
In module pool program&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
MODULE HELP.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Write&amp;nbsp;&amp;nbsp; : `This is field is from sflight table’&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Write&amp;nbsp;&amp;nbsp; : /&amp;nbsp;
‘It is of four Character’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
ENDMODULE.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When the user presses F1 on this
particular field, then this message will be displayed on the screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Value Request&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Whenever the
user presses F4 on the screen field list of possible values, particular fields
are displayed. If the standard value-help is inadequate or if you want to
display additional fields or with different combination of fields, developer
can program this in PROCESS ON VALUE-REQUEST event in the flow-logic and
subsequent module in the module pool program. When the user presses F4, list of
possible values are displayed either from matchcode objects or check table or
help view or domain. Each one of them is explained briefly.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Matchcode objects:&lt;/b&gt; Are
aggregated dictionary objects and detailed procedure to create these objects is
explained in the later part of the material.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Check Table:&amp;nbsp; If a check table is assigned to the table
field and if the user presses F4 for that particular field, then all the key
fields are displayed. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Domain Values: The values defined
in the domain are displayed. These values are set in domain when the domain is
created in the dictionary.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Help views:&amp;nbsp; In cases where the check table is not sufficient,
you can create a help view with this check table, which gives additional
information like explanatory text for the fields of the check table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
PROCESS ON VALUE_REQUEST.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Each time the user presses F4 on
the screen field, following algorithm is called internally.&lt;/div&gt;
&lt;div class=&quot;MsoToc1&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
When the user presses F4 on flight number, the following
screen is displayed.&lt;/div&gt;
&lt;h2&gt;
&lt;span style=&quot;font-weight: normal; mso-bidi-font-weight: bold;&quot;&gt;&amp;nbsp;&lt;/span&gt;Flow-logic code&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
PROCESS ON VALUE-REQUEST.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FIELD
SFLIGHT-CONNID MODULE HELP-FOR-CONNID.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Code for module pool program. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
MODULE HELP-FOR-CONNIDINPUT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
DATA: BEGIN OF ITAB OCCURS 0,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CONNID(50),&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; END OF ITAB.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
REFRESH ITAB.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
ITAB-CONNIDI= POSSIBLE VALUES FOR
CONNECTION ID’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
APPEND ITAB.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
SELECT CONNID FROM SFLIGHT INTO
TABLE ITAB.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
CALL FUNCTION
‘POPUP_WITH_TABLE_DISPLAY’&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-indent: .5in;&quot;&gt;
EXPORTING&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-indent: .5in;&quot;&gt;
ENDPOS_COL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 45&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-indent: .5in;&quot;&gt;
ENDPOS_ROW&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 25&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-indent: .5in;&quot;&gt;
STARTPOS_COL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-indent: .5in;&quot;&gt;
STARTPOS_ROW&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-indent: .5in;&quot;&gt;
TITLETEXT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
‘TEXT’&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-indent: .5in;&quot;&gt;
IMPORTING&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-indent: .5in;&quot;&gt;
CHOISE&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Some Integer Variable&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-indent: .5in;&quot;&gt;
TABLES&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VALUETAB&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ITAB&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-indent: .5in;&quot;&gt;
EXCEPTIONS&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-indent: .5in;&quot;&gt;
BREAK_OFF&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =1&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-indent: .5in;&quot;&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OTHERS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =2.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
ENDMODULE.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
“HELP-FOR-CONNID&amp;nbsp; INPUT&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Changing The Screen During
Runtime&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The attributes are assigned to the screen field when the screen is
designed in full screen editor.&amp;nbsp; Such
kind of assignment is static, which means that these attributes are fixed. But
many times the need to change the attributes of the screen arises. And this has
to be done during runtime.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Need To Change Screen&lt;span style=&quot;line-height: 16pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
There can be a requirement in the
transaction that, certain fields on the screen &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Appear only in certain
conditions.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Are in Change/display mode
according to user inputs&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Become mandatory subject to
specific inputs.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Changes its format depending upon
certain conditions.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;Modifying the screen&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
At the runtime, attributes for each screen field is stored in system
defined internal table, with header line, called as SCREEN TABLE. It contains
name of field and its attributes. This tab le can be modified during the runtime
i.e. through module pool program. Screen table has following fields:&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1 style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;Field Name &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Length&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Description&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 30&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Name of screen field&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
GROUP1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Field
belongs to field group1&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
GROUP2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Group
2&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
GROUP3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Group
3&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
GROUP4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Group
4&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
ACTIVE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Hide/Show&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
REQUIRED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Field
input is mandatory&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
INPUT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Enable/Disable&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
OUTPUT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Field
for display only&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
INTENSIFIED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Field
is highlighted.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
INVISIBLE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Field
is suppressed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
LENGTH&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Field
output length is reduced &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
DISPLAY 3D&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Field
is displayed with 3-D Frame&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
VALUE_HELP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Field is displayed with
Value help&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
E.g., SCREEN-ACTIVE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0&amp;nbsp;&amp;nbsp;
has the same effect as the following statements.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCREEN- INPUT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCREEN-OUTPUT&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCREEN-INVISIBLE = 1.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The fields SCREEN-NAME and
SCREEN-GROUP 1 through SCREEN-GROUP4 tell you which field and / or field group
has the attributes.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You can assign up to 4 groups to
a field.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You need to program screen
modifications in module, which is processed during the event PROCESS BEFORE
OUTPUT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
`SCREEN’ is an internal table and, in order to change the field values,
LOOP statement has to be used so that the header-line can be populated with the
new values, changing the earlier values, the SCREEN table consisted for the
specific screen. Finally the changed record in the header-line is NOT APPENDED,
but is MODIFIED to the SCREEN table. That is, we first use `LOOP AT SCREEN’ and
then assign the values. And finally PRIOR TO ENDLOPP give `MODIFY SCREEN’.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
PROCESS BEFORE OUTPUT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;MODULE MODIFY_SCREEN OUTPUT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h2 align=&quot;left&quot;&gt;
&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;MODULE MODIFY_SCREEN.&lt;/span&gt;&lt;span style=&quot;font-weight: normal; mso-bidi-font-weight: bold;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h2 align=&quot;left&quot;&gt;
&lt;span style=&quot;font-weight: normal; mso-bidi-font-weight: bold;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&amp;nbsp; &lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314948&quot;&gt;&lt;/a&gt;&lt;st1:place w:st=&quot;on&quot;&gt;LOOP&lt;/st1:place&gt; AT SCREEN.&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; IF SCREEN-NAME =
‘SFLIGHT-CARRID’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCREEN-INPUT =
1.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MODIFY SCREEN.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; ENDIF.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp; ENDLOOP.&lt;/div&gt;
&lt;h2 align=&quot;left&quot;&gt;
&lt;span style=&quot;font-weight: normal; mso-bidi-font-weight: bold;&quot;&gt;ENDMODULE.&lt;/span&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Working with Matchcode
Objects&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoHeader&quot; style=&quot;line-height: 16.0pt; tab-stops: .5in;&quot;&gt;
A Matchcode is
an aggregated object and it gives list of possible values for the user. A
matchcode is a collection of search terms on which you retrieve a data from the
database table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
All matchcode are associated with either selection criteria or
parameters. When an input field has a little triangle in the right-hand corner,
it indicates that it has an associated matchcode. When you click on drop-down
arrow or press F4 button, it gives a list of all possible values. For example
Matnr field i.e. material number from MARA table, user might not know all the
material number, but they might know other details like material description,
type or any other details. You can create matchcode, which has all these search
terms i.e. you can create matchcode with description as search term or
matchcode with type as search term.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
R/3 system
includes many predefined matchcode but developers can create new matchcode as
is created in following case. Usually, system displays list of possible values
for all the primary keys with particular search term. Usually you create
matchcode in following cases:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When you use non-primary key of
input.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You need different search term
for the primary key.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Creating Matchcode object&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Entire Matchcode object is
created in two steps:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Defining of Matchcode object.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Defining one or more search ids
for the object.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Defining Matchcode object &lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
It includes all the tables and
fields, which make up the Matchcode, which are used for Matchcode Ids.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Steps for defining Matchcode
object are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
From dictionary, enter name (four
character).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Select Matchcode radiobutton and
click on CREATE.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Define attributes for the object
i.e. description.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Select primary table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Select the fields for the table
by clicking on the fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Activate the object.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
If at all you are selecting
secondary table then it is done after selecting primary table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
And steps are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Tables &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt; Choose secondary
table. A dialog box appears, which displays list of possible secondary tales.
Select the table by Choose&amp;nbsp; &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt;
copy.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
To activate the object,&amp;nbsp; Matchcode object&amp;nbsp; -&lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; activate&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Creating Matchcode ids.&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Once the object is created, you
need to define search term for the object and steps are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Click on the Matchcode ID from
maintenance screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Enter attributes for the Matchcode&amp;nbsp; &lt;st1:state w:st=&quot;on&quot;&gt;Id.&lt;/st1:state&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Short text.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Update
type&amp;nbsp; - Default is 1 for logical
updating. It means that at the moment when you access the Matchcode object, the
table is created like view. Unlike logical updating, physical updates are:&amp;nbsp; A,S,P.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
System
Matchcode:&amp;nbsp; If you click this particular
field, it indicates a system matchcode, which is used by SAP software and
cannot be changed by the end user.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Autho.checks:
If it is checked, the system performs authorization checks for this matchcode &lt;st1:state w:st=&quot;on&quot;&gt;Id.&lt;/st1:state&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Selecting secondary tables&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Position the cursor on the base
table of the ID.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Edit &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt; Choose secondary
tables &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
A dialog box appears listing the
tables linked to the table by foreign keys&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Select table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Save.&lt;/div&gt;
&lt;h3 align=&quot;left&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;;&quot;&gt;Selecting fields for Matchcode Id&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Select fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Choose fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Once all the fields are selected,
click on copy fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Fields are transferred to the
matchcode &lt;st1:state w:st=&quot;on&quot;&gt;Id.&lt;/st1:state&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Activation of Id&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
A corresponding database view is
created in the database during activation for the Ids of update type I. During
activation, a check is made to see whether the corresponding index to support
view selection exists in the database. If it doesn’t, a warning is displayed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Testing the Matchcode Id.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
To test the matchcode Id:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Maintain matchcode object.Utilities &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt; display matchcode
data.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;span style=&quot;color: #274e13;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Using Matchcode&lt;span style=&quot;line-height: 16pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When the user do not know which
matchcodes are available for a field, user can find the matchcode by:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Positioning the cursor on a field
and clicking on drop arrow or pressing the F4 key.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
A dialog box appears with a list
of available matchcode &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
User can select another matchcode
by clicking on the NEW selection button.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Double click on a matchcode to
use it. If you want to use this as default matchcode, click on standard button.
If user does this once, the selected matchcode is proposed automatically the
next time.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You can enter the search term and
press ENTER. If search term is not specified, the system displays all the
records for the specific matchcode.&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Lock Objects&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
In a system where many users can
access the same data, it becomes necessary to control the access to the data.
In R/3 system this access control is built-in on database tables. Developers
can also lock objects over table records.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
To lock an object you need to
call standard functions, which are automatically generated while defining the
lock object in ABAP/4 dictionary. This locking system is independent of the
locking mechanism used by the R/3 system. This mechanism also defines LUW i.e.
Logical Unit of Work. Whenever an object is locked, either by in built locking
mechanism or by function modules, it creates corresponding entry in global
system table i.e. table is locked. The system automatically releases the lock
at the end of transaction. The LUW starts when a lock entry is created in the
system table and ends when the lock is released.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;span style=&quot;color: #274e13;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Creating Lock Objects&lt;span style=&quot;line-height: 16pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Lock object is an aggregated
dictionary object and can be defined by using the following steps:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;ul style=&quot;margin-top: 0in;&quot; type=&quot;circle&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l1 level1 lfo3; tab-stops: list .5in;&quot;&gt;From initial data dictionary screen, enter the name
     for the object, Click Lock object radiobutton and then click on Create.
     The system displays a dialog box for Maintain Lock Objects screen&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l1 level1 lfo3; tab-stops: list .5in;&quot;&gt;Enter short text as usual and the name for primary
     table.&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l1 level1 lfo3; tab-stops: list .5in;&quot;&gt;Save&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l1 level1 lfo3; tab-stops: list .5in;&quot;&gt;Select Tables option&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
From this screen you can:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Select secondary tables, if any,
linked by foreign key relationship.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Fields for the lock objects. This
option allows you to select fields for objects (R/3&amp;nbsp; system allows locking up to record level).
Lock object argument are not selected by user but are imposed by the system and
includes all the primary keys for the table.&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Types of locks&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You can lock the table or record
by using following types of locking:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Exclusive (E) the locked data can
only be displayed or modified by single user i.e the owner of the object.
Access to other users is denied.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Shared (S) several users can
access the same record simultaneously, but only in display mode and except the
first one, who has asked for the data in update mode.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Exclusive not cumulating (X) it
is similar to exclusive lock. It allows only a single user access. E can be
called several times from the same transaction. In contrast, a lock type X can
be called only once during the transaction. Any other call for this lock is
rejected.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314955&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;span style=&quot;color: #274e13;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Activation of Lock Object&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When you activate the lock
object, the functions are automatically generated. And these are ENQUEUE-EZN
and DEQUEUE-EZN. EZN is name of the lock object.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
While ENQUEUE is used in program
to set the code over the selected data depending upon the lock object
arguments. DEQUEUE is used to release the lock.&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
EXERCISES&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
1.&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Create&amp;nbsp; a
matchcode for MARA-MATNR with one matchcode ID. The fields in the ID should be
MARA_MATNR., MARD-WERKS. MARD-LGORT. MAKT-MAKTX.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l0 level1 lfo2; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
2.&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Create a GUI status of type list with the
following features and attach it to a report. (Create a simple report with
Write statement).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Use the
statement SUBMIT REPORT AND RETURN TO CALL A REPORT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Menu&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
REPORTS&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYSTEM&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HELP&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Materials&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Vendors&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Exit&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Application
tool bar: 3 push button&amp;nbsp; - Material,
vendors, exit.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
When material
push button or menu option is chosen to display a list a materials with the
following fields:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
MARA-MATNR,
MARD-WERKS,MARD-LGORT,MAKT-SPRAS.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
When vendor
pushbutton or menu option is chosen, display a list of vendors with the
following fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
LFA1-LIFNR,
LFA1-NAME1, LFA1-ORTO1.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Exit to quit
the program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l0 level1 lfo2; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
3.&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Create a transaction with three screens&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Screen 1:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Radiobutton&amp;nbsp; :&amp;nbsp;&amp;nbsp; 2
R1,R2.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Pushbutton&amp;nbsp;&amp;nbsp;&amp;nbsp; :2-Next, Exit,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When NEXT button is pressed,
display screen 2 or screen 3 on the radio button selected.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
i.e., if R1 is selected display
screen 2 or if R2 is selected display screen3.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Screen 2:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Entry fields&amp;nbsp;&amp;nbsp; : SPFLI-CARRID, SPFLI-CONNID,SPFLI-CITYFROM,
SPFLI-CITYTO.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Pushbutton&amp;nbsp;&amp;nbsp; : First screen, Exit.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Screen&amp;nbsp; 3.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Entry fields&amp;nbsp;&amp;nbsp;&amp;nbsp; : SFLIGHT-CARRID.&amp;nbsp;&amp;nbsp;
SFLIGHT-CONNID.SFLIGHT-FLDATE.SFLIGHT-SEATSMAX,SFLIGHT-SEATSOCC.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Pushbuttons: First screen, Exit.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
`Firstscreen’ pushbutton is to
display screen 1 and exit is to quit the transaction.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
***********USE
SELECT-SINGLE*************&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l0 level1 lfo2; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
4.&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Create a transaction with on screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Screen one&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Entry fields:
MARD-MANTNR,MARD-WERKS,MARD-LGORT&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Pushbuttons: Firstrecord Next
Record, Previous record, Last Record, Exit.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Select the data from MARD into an
internal table and whenever a button is pressed display the corresponding
record (i.e. First, Next, Previous, or Last) using the internal table index.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Exit to quit the transaction.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l0 level1 lfo2; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
5.&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Copy above transaction and enhance it with these
features. Place another pushbutton ‘List’. When this button is pressed, Display
a list with the following fields. MARD-MATNR,MARD-WERKS,MARD-LGORT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
**********Use
LEAVE –TO-LIST-PROCESSING***********&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
6.&amp;nbsp;&amp;nbsp;&amp;nbsp; Create a transaction with two normal
screens and two subscreens.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Screen1&amp;nbsp;&amp;nbsp; : &lt;st1:place w:st=&quot;on&quot;&gt;Normal&lt;/st1:place&gt;
screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Entry fields&amp;nbsp; : MARA-MATNR&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Radiobuttons: Plant, Description&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Push-button :Display, Exit.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Screen2: &lt;st1:place w:st=&quot;on&quot;&gt;Normal&lt;/st1:place&gt;
screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Display fields: MARA-MATNR.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Pushbuttons:Back,Exit.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Screen3: Subscreen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Display fields:
MARD-WERKS,MARD-LGORT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Screen4: Subscreen&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Display
fields:MAKT-SPRAS,MAKT-MAKTX.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When the display pushbutton is
clicked, display Screen2 with proper subscreen attached to it based on the
selection of radio button..&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
i.e. Screen 3 -&amp;nbsp; if plant is selected and Screen 4 - if
description is selected.&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/5710093348358028219/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/transactions-general-introduction-to_22.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/5710093348358028219'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/5710093348358028219'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/transactions-general-introduction-to_22.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-9180371708076587193</id><published>2012-09-22T23:04:00.005-07:00</published><updated>2012-09-22T23:04:48.362-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://adf.ly/CUZ3v&quot; target=&quot;_blank&quot;&gt;SAP Easy Access&lt;/a&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Abstract
 This chapter presents the SAP Easy Access, highlighting some aspects 
found in our everyday work. So, we show how to change the standard 
settings, how to add in the Favorites list the frequently used 
transactions, and how to create a Shortcut on the Desktop.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
SAP
 easy access starts automatically after logging-in into the SAP system. 
In the left side, we can see the user menu. Here are the functions the 
user needs to perform his tasks.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;SAP easy access&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%202/1-SAP-easy-access.png&quot; /&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px;&quot;&gt;
&lt;span style=&quot;color: #fd9645; font-size: 16px; font-weight: 700; line-height: normal;&quot;&gt;Changing the SAP Easy Access&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
U.Gellert and A.D.Cristea,Web Dynpro ABAP for Practitioners,&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
DOI 10.1007/978-3-642-11385-7_2, # Springer-Verlag Berlin Heidelberg 2010&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
We can change the SAP easy access settings through the menu Extras -&amp;gt; Settings,&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
by specifying settings as follows:&lt;/div&gt;
&lt;ul style=&quot;color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px; text-align: left;&quot;&gt;The place of the Favorites&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px; text-align: left;&quot;&gt;The presents of the menu&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px; text-align: left;&quot;&gt;The easy access picture in the right side of the screen – to be present or not&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px; text-align: left;&quot;&gt;Displays or not the technical names&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
&lt;b&gt;Settings&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
&lt;img src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%202/2-Settings.png&quot; /&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-weight: bold;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span class=&quot;topichd&quot; style=&quot;border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700;&quot;&gt;Favorites List&lt;/span&gt;&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700;&quot;&gt;
&lt;/span&gt;&lt;span style=&quot;color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;&quot;&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
The
 user menu is mostly defined by the administrator, but we can define our
 own Favorites list. Here, we can create our own list of favorites 
containing items as transaction, files, web addresses or other objects.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
To add new transactions in the Favorite list, we can choose from the menu Favorites -&amp;gt;Insert Transactions&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
&lt;b&gt;Inserting transaction onto the Favorites list&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
&lt;img src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp2_3.jpg&quot; /&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
As a result, the new item appears in our Favorites list&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
&lt;b&gt;Favorites list&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
&lt;img src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp2_4.jpg&quot; /&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
We
 can find the list of the SAP transaction codes in the transparent table
 TSTC. Besides the transactions predefined in the system, we can create 
our own transactions (e.g. with transaction SE93) which are going to be 
inserted in this table.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
Every
 time we use a transaction, the system verifies in this table whether 
the transaction exists and if we have the proper authorization to use 
it.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
As support for our daily tasks, we add here some of the transactions we use in this book&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
&lt;b&gt;Transactions used&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
&lt;img src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp2_5.jpg&quot; /&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
To add other objects, we can choose them from the menu Favorites ! Add Other Objects&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
&lt;b&gt;Adding new objects in Favorites list&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
&lt;img src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp2_6.jpg&quot; /&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
We add the web address to open the SDN page&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
&lt;b&gt;Inserting a web address&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
&lt;img src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp2_7.jpg&quot; /&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
We
 can use Favorites -&amp;gt; Download to PC to save on our computer a list 
with all the objects we have in the Favorites folder. To upload in a 
Favorites folder objects from a list saved on our computer, we can use 
Favorites -&amp;gt; Upload from PC.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span class=&quot;topichd&quot; style=&quot;border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700;&quot;&gt;Setting a Transaction as Start Transaction&lt;/span&gt;&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700;&quot;&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;167-setting-a-transaction-as-start-transaction&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;&quot;&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
We
 have the possibility to set a transaction as start transaction:Extras 
-&amp;gt; Set start transaction .In this way, the desired transaction is 
automatically started after logging-in into the system (in our case the 
SE80 transaction), and we don’t see the SAP easy access anymore. saved 
on our computer, we can use Favorites -&amp;gt; Upload from PC.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
&lt;b&gt;Setting the start transaction dialog box&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
&lt;img src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp2_8.jpg&quot; /&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-weight: bold;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span class=&quot;topichd&quot; style=&quot;border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700;&quot;&gt;Creating a Shortcut&lt;/span&gt;&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700;&quot;&gt;
&lt;/span&gt;&lt;span style=&quot;color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;&quot;&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div style=&quot;color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
After
 installing the SAP GUI, a SAP logon icon appears on our desktop. By 
using this logon, we can login into the system. Additionally, we can 
create a SAP logon shortcut to be used to perform the same logon, but we
 don’t need to fill all the entries in the logon form. A SAP shortcut 
allows us not only to perform a logon into the system, but to execute 
other commands, too. So, we can start a SAP transaction, run a report or
 perform a system command.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
To
 create a SAP Shortcut on our desktop to start the transaction SE80, we 
can use the Wizard available in the layout menu, by clicking on the 
respective icon located in the system function bar.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
&lt;b&gt;Creating a SAP Shortcut on our Desktop&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
&lt;img height=&quot;609&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%202/4-Creating-a-Shortcut.png&quot; width=&quot;640&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px; text-align: left;&quot;&gt;
Another
 possibility to create a SAP shortcut on our desktop is to select a 
transaction or another object from the Favorites list, and to use the 
menu Edit -&amp;gt; Create Shortcut on the Desktop.&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/9180371708076587193/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/sap-easy-access-abstract-this-chapter.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/9180371708076587193'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/9180371708076587193'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/sap-easy-access-abstract-this-chapter.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-3026747875319392085</id><published>2012-09-22T23:04:00.003-07:00</published><updated>2012-09-22T23:04:38.044-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h1 style=&quot;background-color: white; background-image: none; background-position: 0% 0%; background-repeat: no-repeat no-repeat; border: none; color: #0099ff; font-family: Verdana, Arial, Helvetica, sans-serif; height: 40px; line-height: 24px; margin: 0px; padding: 0px; text-align: justify;&quot;&gt;
&lt;a href=&quot;http://adf.ly/CUYzz&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Designing a Web Dynpro Component&lt;/span&gt;&lt;/a&gt;&lt;/h1&gt;
&lt;div&gt;
Abstract
 The present chapter is dedicated to the constitutive elements of a Web 
Dynpro ABAP component. Moreover, we show how to use the ABAP Debugger to
 execute, by line or by section, a Web Dynpro application, and how to 
use the new tool offered by ABAP Debugger to reach the context 
attributes values.&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
In
 order to develop a Web Dynpro ABAP component, we have to open the ABAP 
Workbench of the Application Server ABAP.To work with ABAP Workbench, we
 need an authorization as a developer or developer key, and for the SAP 
NetWeaver ABAP trial version we can use BCUSER, automatically registered
 as a developer.Web Dynpro is available with release SAP NetWeaver 2004s
 and later.&amp;nbsp;After logging into AS ABAP, we can use the transaction SE80 
to call the object navigator.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;b&gt;Object navigator&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;img src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_1.jpg&quot; /&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;All
 the repository objects we develop with the ABAP Workbench tool we build
 by using the Object Navigator. Here, we develop not only Web Dynpro 
applications,but also other development objects (e.g.reports,database 
tables, data elements,classes, function modules, etc).&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
The
 development objects we create as customer have the first letter “y” or 
“z”. Therefore, we created a Web Dynpro component with the name 
y_wd_component.&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
We 
have to assign all the development objects created with ABAP Workbench 
to a package. We can use the default package “$TMP” to create test 
programs without transporting, or we can create our own packages. We 
choose to create our own package, named Y_WEBDYNPRO.&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating the package Y_WEBDYNPRO&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;img src=&quot;http://e-university.wisdomjobs.com/userfiles/image/advanced%20java/ABAP.png&quot; /&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
We have chosen the package type “Not a Main Package”, because this package holds development object and not other packages.&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
After creating the package, we create a Web Dynpro component, as follows:&lt;br /&gt;
right-click on the package name and, from the context menu, we select&amp;nbsp;&lt;b&gt;Create -&amp;gt; Web Dynpro -&amp;gt; Web Dynpro component&lt;/b&gt;. We have to enter the component name, a short description, the type we want to create, the view name and the window name&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating a Web Dynpro component&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;img src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_3.jpg&quot; /&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
After saving our component, we have to assign it to our package&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Assigning the component to a package&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;223&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_4.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
As a result, in Object Navigator we can see the Package Y_WEBDYNPRO and our first created Web Dynpro Component.&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The content of our package&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;360&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%203/5-The-content-of-our-package.png&quot; type=&quot;image&quot; width=&quot;595&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
The
 name of the development objects marked in blue are not active. After 
creating the Web Dynpro component, we have to activate it.&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component activation&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;265&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%203/6-WD-component-activation.png&quot; type=&quot;image&quot; width=&quot;595&quot; /&gt;&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-size: 16px; font-weight: 700;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;186-view&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;View&lt;/span&gt;&lt;span style=&quot;color: #333333; font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;color: #333333; font-family: Arial, Helvetica, sans-serif;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Each
 Web Dynpro application has at least one view. Each View has a view 
Layout, where we can add different UI (User Interface) elements that can
 be nested one in the other one, to create the screen. The positioning 
of the UI elements in a view is realized by using the layout and data 
layout.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Each
 View has a view controller that is automatically created for this view 
and each View has several tabs (Properties, Layout, Outbound Plug, 
Inbound Plug, Attributes, Context, Actions and Methods). This indicates 
that a View consist of many parts.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;View Layout.&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The screen content of a view is designed in the Layout tab. The View Layout is divided in three areas:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;UI element library&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;View designer&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Context menus, UI elements properties and UI element hierarchy.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View Layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;338&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_7.jpg&quot; type=&quot;image&quot; width=&quot;585&quot; /&gt;&lt;br /&gt;
the
 UI Elements are grouped in a library to be accessed via the View 
Layout. We have several ways to add an UI element into the view layout. 
For example:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;By right-clicking on the ROOTUIELEMENTCONTAINER&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;By dragging &amp;amp; dropping&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Adding UI elements into the view&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;148&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_8.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
All
 the UI Elements we enter into a screen are children of the node 
ROOTUIELEMENTCONTAINER and are represented as a hierarchy where 
ROOTUIELEMENTCONTAINER is the top of this hierarchy. With “Swap Root 
Element” we have the possibility to transform ROOTUIELEMENETCONTAINER 
from a Transparent Container into another UI element (Table, 
FlashIsland, Group, etc.).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this way, we can use, for example, the FlashIsland UI element to 
integrate Adobe Flex into our web Dynpro component. This transformation 
is possible only if the ROOTUIELEMENTCONTAINER doesn’t have any child UI
 elements.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Adding UI elements into the view&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;276&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_9.jpg&quot; type=&quot;image&quot; width=&quot;565&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 our ROOTUIELEMENTCONTAINER, we insert one Group UI element, one 
InputField UI element, one Label UI element, one TextView UI element and
 one Button UI element&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View Layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;112&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_10.jpg&quot; type=&quot;image&quot; width=&quot;485&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
If
 we select individual UI elements in the layout of a view, their 
properties are displayed in the Properties area. In this way, we can 
change the properties of each element. For example, we have changed the 
property design of the button UI element and the property state of the 
InputField UI element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 a result of changing the property state of the InputField UI element 
from the Normal item to the required one, the label associated to this 
UI element becomes a red star and the end user knows that this value is 
mandatory.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 a property, we can create fixed character strings, we can choose from a
 list, or we can bind properties to context nodes or attributes by using
 the Binding button. For the text property of an UI element Button, we 
have created a fixed character string “Save”. For the design property, 
we have chosen from the list one of the supported designs.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;UI element properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;280&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_11.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 need to bind the value property of the InputField UI element and the 
text property of the TextView UI element. To be able to do this, we will
 create two context attributes&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using “Context Menus” we have the possibility to create, for an 
application, our own context menus displayed in the Browser when the 
user presses right click on an UI element. In standard mode, the web 
Dynpro Framework offers the default context menus with certain 
functionalities, e.g. hiding an UI element displayed into the Browser. 
After running the application, we can test this standard mode by 
rightclicking on the inputField UI element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Context View&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 data are stored in the context and the UI Elements are the only objects
 the user&amp;nbsp;interacts with.&amp;nbsp;Every View has a Context View where we can 
create context nodes and attributes. Via data binding, the context of a 
view controller provides a view with all the required data. For our 
application, we create two context attributes named NAME and GREETING, 
of STRING type.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To put the data on the screen and to read data from user, we connect the proper&amp;nbsp;UI Elements properties with attributes or nodes.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 our case, we connect the property value of the InputField UI element 
with the NAME attribute. To create a greeting for the user and to show 
it after the user presses the Save button, we connect the property text 
of the TextView UI element with the GREETING attribute. These 
connections are known as data binding.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating an attribute in context view&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;340&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_12.jpg&quot; type=&quot;image&quot; width=&quot;545&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Data binding&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;279&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_13.jpg&quot; type=&quot;image&quot; width=&quot;485&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 effect of the binding is that, at runtime, any data changes are 
transported in both directions and these changes affect all the 
properties bound to this element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Actions&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Some
 of the UI Elements have special events that are linked with the user 
actions. The UI element Button is one of these UI elements and that’s 
why we have to create an action that reacts to the user interaction. To 
do this, we use the Action tab.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating an action&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;140&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_14.jpg&quot; type=&quot;image&quot; width=&quot;485&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we can see, each action has a corresponding event handler method, 
automatically generated by the Framework. An event handler method is a 
special method of a view controller that has the ONACTION prefix 
followed by the action name. For the SAVE action, the Framework 
generates the ONACTION event handler.&amp;nbsp;After creating an action, we can 
assign it to an UI element that has attached an event.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Assigning an action to an UI element&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;174&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_15.jpg&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After generation, this method is empty, but we can fill it with source code by using the Methods tab.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Methods&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the Methods tab of a View, we can find some types of methods (e.g. 
event handler methods, Hook methods, user-defined instance methods).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 our case, in the Methods tab we can find the Hook methods, 
automatically generated by the Framework, and our event handler method 
ONACTIONSAVE&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Methods tab&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;217&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_16.jpg&quot; type=&quot;image&quot; width=&quot;585&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
With double-click on the method name, we open the ABAP editor.In this way, we can insert the source code.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;ABAP editor&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;227&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_17.jpg&quot; type=&quot;image&quot; width=&quot;585&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 user enters his name that we use to show a greeting message with the 
help of textView UI element. To create a greeting for the end user, we 
concatenate his name with the string “WELCOME” and we pass this string 
value in the GREETING attribute. After this, we reset the inputField UI 
element. To do this, we pass an empty string into the NAME attribute 
bound to the corresponding UI element&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;On action save event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionsave .
 DATA: lv_name TYPE string,
 lv_greeting TYPE string.
 wd_context-&amp;gt;get_attribute(
 EXPORTING
 name = `NAME`
 IMPORTING
 value = lv_name).
 CONCATENATE ‘Welcome’
 lv_name INTO lv_greeting SEPARATED BY space.
 wd_context-&amp;gt;set_attribute(name = &#39;GREETING&#39;
 value = lv_greeting).
 CLEAR lv_name.
 wd_context-&amp;gt;set_attribute(name = &#39;NAME&#39;
 value = lv_name).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Properties&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the Properties tab, we can create a description text for our view, we 
have information about the view and about the person who created and 
changed this view. In this tab, we can set the view lifetime:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Framework controlled – controlled by Framework&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;When
 visible – lifetime limited to its visibility. A view controller is 
always deleted as soon as the corresponding view is no longer displayed 
on the user interface. It is used when a view is displayed only once and
 not repeatedly.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Additionally, Property tab offers the possibility to define the usages .&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Properties view&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;284&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_18.jpg&quot; type=&quot;image&quot; width=&quot;585&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 can define a usage to be able to access the methods of another internal
 controller or of an interface controller, if the usage has been defined
 for an external component. To create a new usage in the Used 
Controller/Components table, we have to choose the Button Create 
Controller Usage. The table Used Controller/ Components includes a list 
with all the global controllers of our own component and, in case we 
define usages, this list includes the external component and its 
interface controller.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 our case, we don’t use any external components. In the list we have 
only the global controller COMPONENTCONTROLLER. We have to specify that,
 for each view controller, the usage of the corresponding component 
controller is automatically created.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Attributes&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Each View controller contains some attributes automatically generated by the Framework&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Attributes tab&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;149&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_19.jpg&quot; type=&quot;image&quot; width=&quot;535&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 attribute WD_COMP_CONTROLLER is a reference variable of IG_ 
COMPONENTCONTROLLER type that we can use to access all the publicly 
accessible methods of the component global generated interface of the 
corresponding component controller.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 attribute WD_THIS is a self-reference to local controller interface. 
This self-reference works similarly with the self-reference me found in 
the ABAP Objects. We can use it, for example, to call a user-defined 
method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 attribute WD_CONTEXT is a reference to the controller context. The 
IF_WD_CONTEXT_NODE interface provides several methods that enable us to 
obtain read and write access to a context node.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Additionally,
 we can create our own attributes. These attributes are used to store 
application data that are not relevant for the UI elements and we don’t 
store in the context. To access these attributes, we use the 
self-reference: wd_this -&amp;gt; attribute_name&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-size: 16px; font-weight: 700;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;187-componentcontroller&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Componentcontroller&lt;/span&gt;&lt;span style=&quot;color: #333333; font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;color: #333333; font-family: Arial, Helvetica, sans-serif;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 default, every Web Dynpro component has a component controller that 
acts as the central controller instance within the entire component&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Component controller&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;188&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_20.jpg&quot; type=&quot;image&quot; width=&quot;535&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Data
 required across different views can be stored in his context. Besides 
the Context tab, each COMPONENTCONTROLLER disposes of tabs: Properties, 
Attributes, Events and Methods. Hereunder, in our examples, we will see 
how we can cross-component access the methods and the attributes defined
 here.&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-size: 16px; font-weight: 700;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;188-window&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Window&lt;/span&gt;&lt;span style=&quot;color: #333333; font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;color: #333333; font-family: Arial, Helvetica, sans-serif;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
A
 Window is an entity into which we embed all the views that will be used
 to construct the screen for the end user. When the user interacts with a
 view, theirinteraction will cause a request to the server. In response,
 one or more views that build the current screen will require to be 
replaced with other views. This is possiblethrough navigation links 
among the various views in the window.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Each Web Dynpro component can have several Windows. We have created only one Window, named W_default.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
A
 view or several Views are generally embedded in a Window. The first 
view created at the WD component creation is directly embedded into the 
Window. To embed other views in a Window, we can use dragging &amp;amp; 
dropping or right-clicking on the window name to choose between 
embedding an empty view or the View we have created. The Empty View is a
 special type of View, presented in the View- ContainerUIElement 
example.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 every window, at least one view is marked as default. A default view is
 the first view displayed when the window is called. The first embedded 
view is marked as default, but we can change it. To mark as default, 
after right-clicking on the view we choose Set as default from the 
contextual menu.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Embed View&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;322&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_21%281%29.jpg&quot; type=&quot;image&quot; width=&quot;585&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using Inbound plugs and Outbound plugs, we define the navigation 
between views or windows. For a Window, these plugs can be of Standard, 
Startup or Resume type. As we can see, the Framework generates for each 
window an inbound plug of Startup type and an event handler method .By 
using this event handler method, we can read, for example, the URL 
parameters from a Web Dynpro application.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Default inbound plug for a window&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;130&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_22.jpg&quot; type=&quot;image&quot; width=&quot;535&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For a View, we don’t have the possibility to define a specific plug type.&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-size: 16px; font-weight: 700;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;189-application&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Application&lt;/span&gt;&lt;span style=&quot;color: #333333; font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;color: #333333; font-family: Arial, Helvetica, sans-serif;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 developing a Web Dynpro component, we need to provide the users with 
access to its functionality. To do this, we have to create a Web Dynpro 
Application.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating an application&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;283&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_23.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For each application, the Framework generates an URL. We find this URL in the Properties tab.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Application URL&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;321&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_24.jpg&quot; type=&quot;image&quot; width=&quot;585&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In the same time, we can specify here how the Messages are handled:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;l Show Message Component on demand – the Message Component is displayed only when we have a message.&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Always
 Display Message Component – the Message Component is always displayed 
on the screen, even when we don’t have any messages.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using the Parameters tab, we can define our own parameters for the 
application or we can choose from the parameters offered by the Web 
Dynpro Framework.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Application parameters list&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;222&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_25.jpg&quot; type=&quot;image&quot; width=&quot;475&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To run the application, we can use the Execute button or we can copy and past the URL into the browser.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Running the application&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;273&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_26.jpg&quot; type=&quot;image&quot; width=&quot;575&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When
 the user interacts with the screen, specific adapter techniques are 
used to convert data and events, as part of the request response cycle, 
into the browser format as HTML, JavaScript or XML. In Fig., we can see 
the generated source code for our WD component.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Generated source file&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;262&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_27.jpg&quot; type=&quot;image&quot; width=&quot;475&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-size: 16px; font-weight: 700;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;190-abap-debugger&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;ABAP Debugger&lt;/span&gt;&lt;span style=&quot;color: #333333; font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;color: #333333; font-family: Arial, Helvetica, sans-serif;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
If
 any errors occur in our Web Dynpro components, we can use the ABAP 
Debugger to execute our WD component, by line or by section.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To work with the debugger, we can create Breakpoints at the point where the program should pause&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Setting a Breakpoint&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;325&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_28.jpg&quot; type=&quot;image&quot; width=&quot;495&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We run the application and, in the moment when the program flow reached the defined breakpoint, the ABAP Debugger is open&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;ABAP Debugger&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;293&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_29.jpg&quot; type=&quot;image&quot; width=&quot;595&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we can see in the Process Information, the main component of the ABAP 
Debugger, we debug an HTTP application. The “Exclusive” represents the 
fact that the application we debug occupies a work process of the 
application server.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using the Buttons from the Control Area, we can control the program 
flow. For Example,We can choose to execute the program line by 
line-single step or to execute the program up to the next 
Breakpoint.Continue.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We can use the ABAP Debugger tools to have information about the variable&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Tool Component of the ABAP Debugger&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;127&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_30.jpg&quot; type=&quot;image&quot; width=&quot;495&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using the New Tool Button,We can open a selection window that offers 
the possibility to access additional functionalities. In the Special 
Tools section, we can find the created tool, to be used for a better 
debugging of the Web Dynpro components.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;ABAP Debugger – New tool selection window&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;366&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_31.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we can see in, we are offered the possibility to have access to all the
 individual elements of the Web Dynpro component; we can see the view 
attributes, the view layout, the UI elements and data binding, the 
context structure and its attributes, etc.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The ABAP debugger – web Dynpro ABAP tool&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;305&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%203/32-The-ABAP-debugger-%E2%80%93-web-Dynpro-ABAP-tool.png&quot; type=&quot;image&quot; width=&quot;595&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 are able to see not only the context structure, but also to display the
 runtime object, by choosing from the contextual menu Display Runtime 
Object.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Displaying the runtime object&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;334&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_33.jpg&quot; type=&quot;image&quot; width=&quot;595&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
These
 are only some of the ABAP Debugger capabilities that can be used along 
with other performance tools (for example, the transactions 
WD_TRACE_TOOLS, S_MEMORY_INSPECTOR), to help us to develop Web Dynpro 
applications.&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-size: 16px; font-weight: 700;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;191-web-dynpro-logon-page-configuration&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Web Dynpro Logon Page Configuration&lt;/span&gt;&lt;span style=&quot;color: #333333; font-family: Arial, Helvetica, sans-serif;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;color: #333333; font-family: Arial, Helvetica, sans-serif;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we have seen, a logon page appears when running our application, where 
we have to provide some values, as follows: Logon Language, Client, User
 Password, etc.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Example of a webDynpro application log on page&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;323&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_34.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 can change the modality this logon page looks like and the modality we 
realize the user authentication, by using the SICF transaction (HTTP 
Service Hierarchy Maintenance). In the webdynpro ! sap hierarchy, each 
Web Dynpro application disposes of one corresponding entry.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By using this transaction, we search for all the entries that begin with Y_WD_* and are created by our test user Gellert.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Searching for a service with the SICF transaction&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;251&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_35.jpg&quot; type=&quot;image&quot; width=&quot;535&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We find the entry that corresponds to our created Web Dynpro component.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Entry corresponding to our Web Dynpro component&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;120&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_36.jpg&quot; type=&quot;image&quot; width=&quot;475&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
With
 double-click, we are allowed to view or/and to change this service. In 
the lower part of the Error Page tab, we can find the Configuration 
button for the system logon. Here, we can define our own settings by 
choosing from the lists, or we can use the global settings.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;System logon configuration&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;654&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_37.jpg&quot; type=&quot;image&quot; width=&quot;585&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 a result of our changes, in the logon page we have to provide only the 
User and the Password, through a popup window, and we are able to change
 our logon password.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Logon page&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;151&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp3_38.jpg&quot; type=&quot;image&quot; width=&quot;385&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/3026747875319392085/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/designing-web-dynpro-component-abstract.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/3026747875319392085'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/3026747875319392085'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/designing-web-dynpro-component-abstract.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-594399652696349174</id><published>2012-09-22T23:04:00.001-07:00</published><updated>2012-09-22T23:04:07.149-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h1 style=&quot;background-color: white; background-image: none; background-position: 0% 0%; background-repeat: no-repeat no-repeat; border: none; color: #0099ff; font-family: Verdana, Arial, Helvetica, sans-serif; height: 40px; line-height: 24px; margin: 0px; padding: 0px; text-align: justify;&quot;&gt;
&lt;a href=&quot;http://adf.ly/CUYv5&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;ABAP Dictionary&lt;/span&gt;&lt;/a&gt;&lt;/h1&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
Abstract
 The following section details and describes the ABAP Dictionary.The 
main purpose of this chapter is to show how to realize all the 
development objects to be used in the future Web Dynpro 
applications.Therefore,we present not only the modality to create the 
various development objects in the ABAP Dictionary, but also the 
modality to use them in realizing Web Dynpro applications.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
We
 can create development objects in ABAP Dictionary,by using the 
transaction SE11(ABAP Dictionary Maintenance) or the Object Navigator.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;b&gt;Development object with transaction SE11&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;236&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_1.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;ABAP
 programming language has a number of ten elementary data types that we 
can use in our programs. When we want to create global data types by 
using the ABAP Dictionary, we have to use dictionary built-in types. 
These predefined types are different from the elementary data types. We 
need them for reasons of compatibility with the external data types.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
In
 this we presented some of the ABAP Dictionary Built-In types and a few 
corresponding examples of Dictionary built-in data types and 
ABAPelementary types.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;b&gt;Some of ABAP Dictionary Built-In types and corresponding ABAP elementary types&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;input height=&quot;262&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_2.jpg&quot; type=&quot;image&quot; width=&quot;495&quot; /&gt;&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;228-data-element&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Data Element&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
A data element defines an elementary data type and has certain properties. We create a data element YDATEOFBIRTH&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Definition of a data element&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;316&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%204/3-Definition-of-a-data-element.png&quot; type=&quot;image&quot; width=&quot;585&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the “Data Type” tab we can choose between the elementary type and 
reference type. The elementary type can be a domain and a build-in type.
 In this case, we have chosen the build-in type DATS that has a 
predefined format (YYYYMMDD) and a predefined length 8.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the tab “Field Label”, we can set a field label that is automatically 
shown in the label, or caption of an UI Element that is bound to an 
attribute of this type.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For a data element, we can create documentation F1 Help with&amp;nbsp;&lt;b&gt;Goto -&amp;gt; Documentation -&amp;gt; Change&lt;/b&gt;.
 This documentation is not seen on screen if the Web Dynpro application 
attribute WDHIDEMOREFIELDHELPASDEFAULT was set as ABAP_TRUE. We create a
 text that describes the content of our data element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating a F1 help for a data element&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;375&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_4.jpg&quot; type=&quot;image&quot; width=&quot;475&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;229-domain&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Domain&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
A
 domain defines a value range.To be able to use it in a Web Dynpro 
application,in other repository object, as parameter in GUI 
programming,etc.we have to assign it to a data element&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Data elements and domains&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;259&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_5.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create a domain named Y_COUNTRY_DOMAIN that holds all the names of EU 
member states, with the proper abbreviation. In “Definition” tab we have
 to specify properties as data type, number of characters or length of 
output&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Definition of a domain – tab “Definition”&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;289&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_6.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In “Value Range” we have three possibilities:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Single values&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Intervals&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Value table&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 begin with the first possibility, “Single values”. We define the domain
 fixed values – all the abbreviations of the EU countries, and a short 
text – the corresponding country names.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Definition of a domain – tab “Value Range”&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;376&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_7.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we have specified, to be able to use a domain we have to assign it to a
 data element. To do this, we create a new data element and we choose 
the elementary type – domain.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Assigning a domain to a data element&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;170&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_8.jpg&quot; type=&quot;image&quot; width=&quot;475&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When
 we use this data element in our Web Dynpro application, for example to 
define a parameter or a context attribute, the user is allowed to choose
 only the values that range among values we have defined in Domain.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 explain the next possibility (“Intervals”), we take an example where we
 need to store, in a table column, the ages between 18 and 45. In this 
case, we can use an interval to limit the values that the user may 
enter.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Definition of a domain – interval&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;189&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_9.jpg&quot; type=&quot;image&quot; width=&quot;585&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We use this interval in the database table YPERSON, defined hereinafter. For this, we assign it to a data element Y_DEINTERVAL.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To explain the last possibility (“Value Table”), we use a domain that is defined in the system: WAERS.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Domain WAERS – value table&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;218&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_10.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
It
 is recommendable to use the value table when we have many fixed values.
 In our case, we have used the system table TCURC. This table holds all 
the system currency.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 use this value table in the database table YEU_COUNTRIES, defined 
hereunder. For this, we assign it to a data element Y_CURRENCY.&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;230-structure&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Structure&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Structures
 consist of any combination of other data types of the ABAP 
Dictionary.In fig. we present a structure with three components: 
FIRSTNAME, LASTNAME and DATEOFBIRTH.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Definition of a structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;180&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_11.jpg&quot; type=&quot;image&quot; width=&quot;465&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For each component it is defined a component type, as follows: a data element,other structure, table type, etc.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 a component type for a structure, we can choose a type that is already 
defined in the ABAP Dictionary, or we can create a new type. For 
example, the component DATEOFBIRTH has YDATEOFBIRTH data type. This data
 type has been already defined.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
If
 we want to create a new type for a component, we have to enter its name
 (for example, YFIRSTNAME) and then, with double-click, we can choose 
the new type.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating a new component type&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;184&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_12.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 we create a structure, we have to maintain the enhancement category: 
Extras ! Enhancement Category, from the menu. In case we don’t want to 
further extend the component structure, we choose “Cannot be Enhanced”.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Maintaining enhancement category&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;173&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_13.jpg&quot; type=&quot;image&quot; width=&quot;495&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We can use the structures defined in ABAP Dictionary to create the context node structure for a Web Dynpro application.&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;231-table&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Table&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We create two transparent tables, YPERSON and YEU_COUNTRIES. We will use this table later, for our Web Dynpro example.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the YPERSON table, we want to store the competition candidates. All the
 candidates should be 18–45 years old and live in an EU country. After 
creating the table, we have to enter a short description along with the 
delivery and maintenance&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Table maintenance&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;148&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_14.jpg&quot; type=&quot;image&quot; width=&quot;495&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 set “Data Browser/Table View Main” ! Display/Maintenance Allowed, to be
 able to populate our table with values, using “Create Entries”, from 
the menu.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Then,
 we will define our table structure. To do this, we select the tab 
“Fields” and enter the table columns For the fields MANDT and ID_PERSON,
 we have marked the option “Key”, meaning they are the table keys. The 
field MANDT is the SAP client field, a three-character client ID. The 
field “ID_PERSON” represents the candidate’s ID, required to uniquely 
identify each competition candidate.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Table structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;191&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_15.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 can be seen, we have used the data elements created hereinbefore: 
YFIRSTNAME, YLASTNAME, Y_DEINTERVAL, Y_DEFORDOMAIN. When we want to 
create a new data element, we write its name and, with double-click, we 
activate the forward navigation. If this data element doesn’t exist, we 
are asked if we want to create the new data element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating a data element&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;164&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_16.jpg&quot; style=&quot;border: none;&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Before being able to activate this table, we have to maintain the technical settings&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;How to maintain the technical settings for the table YPERSON&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We choose a size category 0, because we don’t require many data records. We have to maintain the enhancement category:&amp;nbsp;&lt;b&gt;Extras -&amp;gt; Enhancement Category&lt;/b&gt;,
 from the Menu. We choose the same “Cannot be Enhanced”, because we 
shouldn’t further extend the table structure.&amp;nbsp;After this, we can 
activate our table and create the second table YEU_COUNTRIES.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 hold here all the EU Member states information, as follows: country 
name, year of EU entry, political system, capital city, currency and the
 flag image name. The structure of this table is presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Table structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;201&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_18.jpg&quot; type=&quot;image&quot; width=&quot;495&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 this, we have to define a foreign key for the field CHECK_CUR. For this
 purpose, we use the button “Foreign Keys”. We are asked if we want to 
use the value table TCURC as check table.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;How to create foreign key&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;305&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_19.jpg&quot; type=&quot;image&quot; width=&quot;545&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We need TCUC as a check table, because we want to use its table contents, respectively the Currency Codes.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Currency codes&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;308&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_20.jpg&quot; type=&quot;image&quot; width=&quot;585&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After we maintain the Technical settings and enhancement category, we can activate the same as for the table YPERSON.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The candidates can live only in an EU country. Therefore, we create a 1 to CN relationship between the tables.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
From the table YPERSON field ID_COUNTRY, we create a foreign key.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;How to create a foreign key&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;317&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_21.jpg&quot; type=&quot;image&quot; width=&quot;535&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 system can generate the graphical representation of the relationships 
we have defined between tables. To show this graph,we use the Button 
“Graph”.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Foreign key relation&amp;nbsp;&lt;/b&gt;&lt;b&gt;ship&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;227&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_22.jpg&quot; type=&quot;image&quot; width=&quot;495&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We can see our tables YEU_COUNTRIES, YPERSON and the 1:CN relationship.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 table TCUC is the check table for the table YEU_COUNTRIES. To see this 
relationship also, we have to select the name of YEU_COUNTRIES table and
 to press the Button “Check Table”.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Foreign key relation ship&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;155&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_23.jpg&quot; type=&quot;image&quot; width=&quot;465&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We can create contents with&lt;b&gt;Utilities --&amp;gt; Table content --&amp;gt; Create&lt;/b&gt;&amp;nbsp;Entries from&amp;nbsp;&lt;b&gt;Menu&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Insert – table YEU_COUNTRIES&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;212&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/rami.jpg&quot; style=&quot;border: none;&quot; width=&quot;350&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To display the content:&lt;b&gt;&amp;nbsp;Utilities --&amp;gt; Table content --&amp;gt; Display&lt;/b&gt;&amp;nbsp;from Menu.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Select – table YEU_COUNTRIES&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;189&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/rami1.jpg&quot; type=&quot;image&quot; width=&quot;585&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;85&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/tttttttttttttttttttttttttttttttttttt.jpg&quot; style=&quot;border: none;&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 can use the transparent tables defined in the ABAP Dictionary to create
 the context node structure for a Web Dynpro application.&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;232-search-help&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Search Help&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
ABAP
 Dictionary offers the possibility to create simple search help and 
collective search help.&amp;nbsp;To create a search help, we can use the context 
menu of our package.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating a development object in the ABAP Dictionary by using the Object Navigator&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;335&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_26.jpg&quot; type=&quot;image&quot; width=&quot;525&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We create a simple search help YSH_ID_PERSON for the column ID_PERSON of the table YPERSON&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating a simple search help&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 can be seen at Data collection ! Selection method, we have used the 
table name YPERSON. This means that all the data required come from our 
table YPERSON. A search help can have the following parameters: “import 
parameters”, “export parameters” or “no import” and “no export”. We have
 used ID_PERSON as export parameter, because we want its value to be 
returned to the input template. LPos represents the parameter position 
in the hit list: FIRSTNAME has the position 1 and it is firstly 
displayed in the hit list, and LASTNAME has the position 2, being 
displayed after the FIRSTNAME.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Testing a search help&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;230&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/rr143.png&quot; type=&quot;image&quot; width=&quot;525&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Afterwards,
 we want to use this search help in a Web Dynpro application. We create a
 search option for a competitor. The user has to enter the competitor’s 
ID into a search mask. The list of IDs is limited to the number of 
competitors. When the user doesn’t know the competitor’s ID, he uses the
 search help and can choose the competitor’s name. The content of the 
ID_PERSON parameter is returned to the search mask as soon as the user 
has selected a line of the hit list in the input help. In this way, we 
facilitate the input.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 can use this search help if we link it with the ID_PERSON column of the
 YPERSON table. To do this, we select the column ID_PERSON and press the
 button “Srch Help”.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Search Help for the field ID_PERSON&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;224&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_28.jpg&quot; type=&quot;image&quot; width=&quot;525&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After we enter the search help name, we have to create the search help attachment, and to save and activate the table&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;How to create search help attachment to the column ID_PERSON&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;192&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_29.jpg&quot; type=&quot;image&quot; width=&quot;525&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this way, we have created a simple search help for the column ID_PERSON
 of the table YPERSON. When we use this column in Web Dynpro, the 
Framework creates a special icon to be used at the runtime to call the 
input help. Moreover, we can use the keyboard key F4 to call an input 
help.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 be able to access a search help from a WD component, the proper Input 
Help Mode context attribute property has to be set (“Automatic” or 
“Dictionary Search Help”).&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;233-database-view&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Database View&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using a view, we can combine the data distributed in several tables. 
For a better understanding, we create a view on the tables YPERSON and 
YEU_COUNTRIES.&amp;nbsp;When we create a view, we can choose one of the four view
 types.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View &amp;nbsp;types&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;253&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_30.jpg&quot; style=&quot;border: none;&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 choose to create a database view named YVIEW_CMPETITION. At the 
beginning of the “view definition”, we have to select the view base 
table (in ourcase, the table YPERSON.After the base table definition, we
 link this table by defining the joining conditions. To create this 
link, we use the button “Relationships”.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating a view&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;296&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_31.jpg&quot; type=&quot;image&quot; width=&quot;525&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Joining conditions&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;212&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_32.jpg&quot; type=&quot;image&quot; width=&quot;525&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the next step, we have to select the fields we need in our view. We can
 enter each field manually or we can use the Button “Table fields”.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View fields&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;226&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_33.jpg&quot; type=&quot;image&quot; width=&quot;525&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After activation, we can see our view content using the “Contents Button”.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View content&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;99&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_34.jpg&quot; type=&quot;image&quot; width=&quot;525&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In this way, we have created a database view on the tables YPERSON and YEU_COMPETITION.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View definition on the database&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;237&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_35.jpg&quot; type=&quot;image&quot; width=&quot;525&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using this view, we can create the context node structure for our Web 
Dynpro application and so we simultaneously select the logically 
connected data, from two tables.&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;234-table-type&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Table Type&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We create a table type named YTABLE_TYPE, the line type being our YPERSON table&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating a table type&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;177&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/venk.png&quot; type=&quot;image&quot; width=&quot;545&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 the line type, we can use an existing type (table, structure, view, . .
 .) or we can enter the data type, length and number of decimals.&amp;nbsp;The 
typical use of table type is the declaration of an internal table.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Another
 example of using table type is to populate with values a context node 
via a supply function. To be able to do this, we create a table type 
named YTABLE_ TYPE_STRUCTURE with the line type – the structure 
YSTR_PERSON.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Table type – line type structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;171&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_38.jpg&quot; type=&quot;image&quot; width=&quot;545&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In the next chapter, we show how we can use this table type to populate a context node.&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;236-lock-object&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Lock Object&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We create a Lock Object for the database table YPERSON. The lock object name has to begin with the prefix E (from “Enqueue”).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Lock object&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;173&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_39.jpg&quot; type=&quot;image&quot; width=&quot;545&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Our
 case consists of exactly one table, and the lock argument is the 
primary key of this table. The lock mode is set to write, but can be 
overwritten.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After the lock object activation, the ABAP Dictionary generates two Function Modules, named ENQUEUE_&lt;lock_name&gt;&amp;nbsp;and DEQUEUE_&lt;lock_name&gt;.
 The Function Modules with enqueue prefix help us to set a lock, and the
 Function Modules with dequeue prefix help us to release the locks.&lt;/lock_name&gt;&lt;/lock_name&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
With
 the SE37 transaction we can see the two generated Function Modules: 
ENQUEUE_EYPERSON and DEQUEUE_EYPERSON. Figure shows the structure of the
 Function Module required to set a lock.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Function Module for lock setting&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;351&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp4_40.jpg&quot; type=&quot;image&quot; width=&quot;545&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
SAP
 offers a lock mechanism required to provide two transactions by 
simultaneously changing the same data in the database.&amp;nbsp;The lock table 
represents a table in the memory of the enqueue server and is used to 
manage all the locks in the system. This lock table is checked every 
time when the enqueue server receives a lock request. A program sends, 
to the lock table, the key of the table entries it wants to lock; if no 
lock is set, the request is accepted and the new lock is written in the 
lock table. If a lock is set, the request collides with an existing lock
 and the request is rejected.&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/594399652696349174/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/abap-dictionary-abstract-following.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/594399652696349174'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/594399652696349174'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/abap-dictionary-abstract-following.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-346199882496514330</id><published>2012-09-22T23:03:00.007-07:00</published><updated>2012-09-22T23:03:51.315-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h1 style=&quot;background-color: white; background-image: none; background-position: 0% 0%; background-repeat: no-repeat no-repeat; border: none; color: #0099ff; font-family: Verdana, Arial, Helvetica, sans-serif; height: 40px; line-height: 24px; margin: 0px; padding: 0px; text-align: justify;&quot;&gt;
&lt;a href=&quot;http://adf.ly/CUYpq&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Context Nodes and Attributes at Design Time&lt;/span&gt;&lt;/a&gt;&lt;/h1&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
This
 chapter mainly focuses on the context nodes and attributes statically 
realized at design time. In this respect, we will explain not only the 
role and modality to create context nodes and attributes, but also the 
modality to access the values stored in the attributes of the nodes.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
An
 attribute is a context entity that has certain properties and can be 
directly created in the root node CONTEXT, or as a child for another 
node. Usually, a node is used to group more attributes that belong 
together. In Fig. &amp;nbsp;we present a context example created in a view 
context.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
A
 context node can have attributes or can hold other nodes, but a context
 attribute cannot have other attributes or nodes. We create a 
hierarchical arrangement that has, as the start point, the root node 
CONTEXT. This is automatically created when the controller is 
initialized and all the nodes and attributes we created are children of 
this root node.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;b&gt;Example of the structure of a View Context&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;/b&gt;&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;163&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp5_1.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
The
 data hold in the context nodes and attributes are transient, they exist
 only for the lifetime of the controller. After this, all the data are 
lost if we don’t store them in storage media (e.g. database table).&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;245-attributes&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Attributes&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 create an attribute, we have to select the node where the attribute 
should be inserted (in this case, the root context node) and, with 
right-click, to open its context menu.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating an attribute&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;181&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp5_2.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We have to enter the attribute properties – name and type are required, but the other settings are optional.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Defining the attribute properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;217&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp5_3.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 data type for an attribute, we can use a data type as string, xstring, 
d,i or we can use the data type defined in the ABAP Dictionary. In our 
example,the attribute type YDATEOFBIRTH is a data element defined in the
 ABAP Dictionary. In the system, we find a list with all the data types 
we can use for an attribute.&amp;nbsp;The coding presented in Listing shows how 
we can access, in a method, the value of the attribute created in the 
context node.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Searching for an attribute data type&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;325&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp5_4.jpg&quot; type=&quot;image&quot; width=&quot;575&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Access of an attribute from context node&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; DATA lv_dateofbirth type ydateofbirth.
 wd_context-&amp;gt;get_attribute(EXPORTING name =&#39;DATEOFBIRTH&#39;
 IMPORTING value = lv_dateofbirth).&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 have defined a local variable named lv_dateofbirth of YDATEOFBIRTH 
type, the same type as the attribute. We pass the value of the attribute
 DATEOFBIRTH in our local variable, by using the method get_attribute of
 the interface if_wd_context_node. The interface if_wd_context_node has 
many methods we can use to work with context nodes. We can see all the 
available methods of this interface by double-clicking on the 
get_attribute method.&amp;nbsp;To set the value of an attribute, we can use the 
method set_attribute of the same interface.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 can be seen in Fig, the property Input Help Mode of the attribute is 
set AUTOMATIC. This means that it is used the search help assigned to 
the data type of the context attribute in the ABAP Dictionary. In 
principle, we have a data element of D type. This is the reason why we 
will have a CALENDAR as input help&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Calendar input help&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;279&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp5_5.jpg&quot; style=&quot;border: none;&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 read-only property set “no” means that the attribute is not write- 
protected.&amp;nbsp;To put data on the screen and to read data from user, we 
connect the proper UI Elements properties with the attributes or nodes. 
The data are stored in the attributes, the UI Elements being the only 
object the user interacts with. For our example, we have an UI Element 
InputField where the user enters his date of birth. Web Dynpro Framework
 transports these data from the UI element to the attribute DATEOFBIRTH 
when the user presses the SAVE Button, after he enters the value. The 
attribute keeps the value for further processing. To be able to access 
the value of this attribute in our methods, we have to pass this value 
in a local variable (lv_dateofbirth). We can use this value, change it 
or pass the new value back in the context (Fig) This value is kept in 
the context for the lifetime of the controller. Then, these data are 
lost if we don’t store them.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Connection among attribute, ABAP Dictionary, method and UI Element&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;219&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp5_6.jpg&quot; type=&quot;image&quot; width=&quot;575&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;246-nodes&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Nodes&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We can directly create a node in the context root node or as child for other node. In Fig. we show how we can create a node.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating a node&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;199&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp5_7.jpg&quot; style=&quot;border: none;&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 each node we create, we have to set some properties, as: cardinality, 
selection, etc. We can individually create the attributes for a node, or
 we can use some repository objects from the ABAP Dictionary. For 
example, when we work with tables, structures or views defined in the 
ABAP Dictionary, we can use them to define our node, and the attributes 
will be automatically generated.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Creating a Node that Uses an ABAP Dictionary Repository Object&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We create a context node that uses the ABAP Dictionary structure YSTR_PERSON.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Node properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;257&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp5_8.jpg&quot; style=&quot;border: none;&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The Button “Add Attribute from Structure” allows us to add all the structure components or only a part of them.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Selecting components of Structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;107&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp5_9%281%29.jpg&quot; style=&quot;border: none;&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Because
 we need a proper attribute for all these structure components, we 
select all of them. As result, we have created a node, the attributes 
being automatically generated according to the structure components we 
have selected.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context node STUDENT at design time&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;177&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp5_10.jpg&quot; style=&quot;border: none;&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 properties of the node we have chosen are: cardinality 0. . .n, 
singleton – yes and Init. Lead Selection – yes.&amp;nbsp;Web Dynpro Code 
Wizard,reading a context node or attribute.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 cardinality properties are very important, because they tell us how 
many elements a context node may have at runtime. We have four possible 
values:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;1. . .1 Exactly one context element is instantiated&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;0. . .1 Maximum one context element is instantiated&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;0. . .n Zero or more context elements are instantiated&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;1. . .n One or more context elements are instantiated&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 singleton property can be set YES or NO. When a node is singleton at 
the runtime, we have only one instance of this node. As usage example, 
for a nonsingleton node we can specify the context structure required 
for a Tree UI Element – sequential implementation.The Lead Selection 
Initialization property determines if the lead selection should be 
automatically set or manually programmed. In our case, this property is 
set “YES”, meaning that the lead selection is AUTOMATIC and the first 
element of this node it automatically selected. More details about lead 
selection – Table UI element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 our node, we have defined the supply function named supply_student. 
Each node may have a supply function defined for it and automatically 
called by the Web Dynpro Framework. The scope of using a supply function
 is to populate a context node. In certain cases, we can use the Hook 
Method wdDoInit instead of a supply function. For more details, see the 
Hook Methods chapter.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 coding presented in Listing shows how we can use the supply function 
method to populate the context node STUDENT with three values.&amp;nbsp;We have 
defined two variables: ls_student and lt_student. Ls_student is of type 
if_view_name=&amp;gt;element_student, where “view_name” represents the view 
name and “student” represents the node name. ”if_view_name” represents 
the programming interface for our view controller. By double-clicking on
 his name or clicking on the icon Display Controller Interface we can 
see the coding of this interface. Listing shows a coding part for the 
context node STUDENT.&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Example of supply function Method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD supply_student .
 DATA ls_student TYPE if_view_name=&amp;gt;element_student.
 DATA lt_student LIKE TABLE OF ls_student.
 ls_student-firstname = &#39;Ionescu&#39;.
 ls_student-lastname = &#39;Ana Maria&#39;.
 ls_student-dateofbirth = &#39;19700309&#39;.
 APPEND ls_student TO lt_student.
 ls_student-firstname = &#39;Marinescu&#39;.
 ls_student-lastname = &#39;Loredana&#39;.
 ls_student-dateofbirth = &#39;19800523&#39;.
 APPEND ls_student TO lt_student.
 ls_student-firstname = &#39;Marton&#39;.
 ls_student-lastname = &#39;Luminita&#39;.
 ls_student-dateofbirth = &#39;19831108&#39;.
 APPEND ls_student TO lt_student.
 node-&amp;gt;bind_table(
 new_items = lt_student).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Example of view controller programming interface.&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  constants:
  wdctx_Student type string value `STUDENT`.
  types:
  Element_Student type YSTR_PERSON,
  Elements_Student type
  standard table of Element_Student
  with default key.
  …..
&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 can be seen, Element_Student is of YSTR_PERSON type (our ABAP 
Dictionary structure).But, when we manually create context nodes without
 dictionary structure,in the view controller programming interface,a new
 structured type is created (Listing).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Example of view controller programming interface&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  …..
  types:
  begin of Element_Faculty,
  FACULTY_NAME type String,
  SPECIALIZATION type String,
  end of Element_Faculty,
  ……&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This is why we use the following form to append values:&amp;nbsp;ls_student-firstname = ‘Ionescu’.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The way we append values in an ABAP structure is:&amp;nbsp;structure_name-component_name = value&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
With
 the declaration “DATA lt_student LIKE TABLE OF ls_student”,we declare 
an internal table.We use APPEND statement to add each new line at the 
end of the last line of the internal table.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
At the end,we use the bind_structure method to populate the node with values.Instead of the declaration:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;DATA ls_student TYPE if_view_name=&amp;gt;element_student&lt;/b&gt;.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
we can use:&lt;br /&gt;
&lt;b&gt;DATA ls_student TYPE wd_this-&amp;gt;element_student.&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In this way, we don’t need the view name anymore,because we use the wd_this self-reference.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The runtime structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;196&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp5_11.jpg&quot; style=&quot;border: none;&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 node STUDENT was set Singleton, it has only an instance at runtime and 
the cardinality was set 0. . .n, meaning that, at runtime, we can have 
from zero to n elements. Because the lead selection was set “YES”, it 
was selected the first element of the node.&amp;nbsp;To read, set or append a 
context node or attribute, we can use the Web Dynpro Code Wizard.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 option “As table operation” can be used in combination with the Read, 
Set or Append options for a node that allows the usage of this 
combination. We can read, for example, the entire context node STUDENT 
in an internal table.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
DATA lt_student TYPE wd_this-&amp;gt;elements_student.&amp;nbsp;lr_node-&amp;gt;get_static_attributes_table( IMPORTING table = lt_student).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Web Dynpro Code Wizard, reading a context node or attribute&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;234&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp5_12.jpg&quot; type=&quot;image&quot; width=&quot;525&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this case, the wizard has generated a variable lt_student of type 
wd_this -&amp;gt; elements_student. In Listing we saw that, in Interface 
Controller, besides the definition of a variable, the Element_structure 
Framework has also defined a variable Elements_Student, with the form:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;i&gt;Elements_Student type&amp;nbsp;standard table of Element_Student&amp;nbsp;with default key.&lt;/i&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This is the reason why the Wizard offers the possibility to read all the values from the STUDENT node in lt_student.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we have mentioned in the last chapter, we can use a table type to 
populate with data a context node via a supply function. Our node 
STUDENT has its attributes from the YSTR_PERSON structure.&amp;nbsp;The table 
type YTABLE_TYPE_STRUCTURE defined in the ABAP Dictionary has the same 
YSTR_PERSON structure, as line type.&amp;nbsp;Listing shows how we can use a 
table type to populate with data a context node.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Example of supply function Method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD supply .
 DATA: lt_student TYPE ytable_type_structure .
 DATA: ls_student TYPE ystr_person.
 ls_student-firstname = &#39;Ionescu&#39;.
 ls_student-lastname = &#39;Ana Maria&#39;.
 ls_student-dateofbirth = &#39;19700309&#39;.
 APPEND ls_student TO lt_student.
 ls_student-firstname = &#39;Marinescu&#39;.
 ls_student-lastname = &#39;Loredana&#39;.
 ls_student-dateofbirth = &#39;19800523&#39;.
 APPEND ls_student TO lt_student.
 node-&amp;gt;bind_table(new_items = lt_student).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Working with Child Nodes&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We create the context structure presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Example of child node&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;284&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp5_13.jpg&quot; style=&quot;border: none;&quot; width=&quot;350&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
It
 has a context node FACULTY, cardinality 1. . .1, Singleton with child 
node ADDRESS, cardinality 1. . .1, Singleton and two attributes 
FACULTY_NAME type STRING and SPECIALIZATION type STRING.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 read data from the attributes of the node ADDRESS as a child node for 
FACULTY. Listing shows a possible method to read these attributes.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Reading the attributes values of the child node “ADDRESS”&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; DATA: lr_node TYPE REF TO if_wd_context_node,
 lr_subnode TYPE REF TO if_wd_context_node.
 DATA: lv_street TYPE string,
 lv_number TYPE y_char,
 lv_city TYPE string.
 lr_node = wd_context-&amp;gt;get_child_node(&#39;FACULTY&#39;).
 lr_subnode = lr_node-&amp;gt;get_child_node(&#39;ADDRESS&#39;).
 lr_subnode-&amp;gt;get_attribute EXPORTING name =&#39;STREET&#39;
 IMPORTING value = lv_street).
 lr_subnode-&amp;gt;get_attribute(EXPORTING name =&#39;NUMBER&#39;
 IMPORTING value = lv_number).
 lr_subnode-&amp;gt;get_attribute (EXPORTING name =&#39;CITY&#39;
 IMPORTING value = lv_city ).&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
With
 the first data definition, we create two variable lr_node and 
lr_subnode of if_wd_context_node type. With the second data definition, 
we create three variables with the same data type as the attributes we 
want to read. Data type Y_CHAR represents a data element defined in the 
ABAP Dictionary of CHAR type, length 6. Instead of the declaration:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
lr_node = wd_context-&amp;gt;get_child_node( ’FACULTY’).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
we can use the form:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
lr_node = wd_context-&amp;gt;get_child_node( name = wd_this-&amp;gt;wdctx_faculty).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the first case we have to write with capital letters the node name, and
 in the second case we use the constant wdctx_faculty of string type, 
defined by the Framework in Interface Controller, with the form:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
constants:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
wdctx_faculty type string value ‘FACULTY’.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using the get_child_node method of if_wd_context_node interface, we 
successively access the node FACULTY and the node ADDRESS, and by using 
the method get_attribute, we pass the values of the attributes in our 
local variable.Another possibility to read the values of the ADDRESS 
child node attributes is presented in Listing.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Reading the attributes values of the child node “ADDRESS”&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; DATA: lr_node TYPE REF TO if_wd_context_node,
 lr_subnode TYPE REF TO if_wd_context_node,
 ls_subnode type wd_this-&amp;gt;element_address.
 DATA: lv_street LIKE ls_subnode-street,
 lv_number LIKE ls_subnode-number,
 lv_city LIKE ls_subnode-city.
 lr_node = wd_context-&amp;gt;get_child_node(&#39;FACULTY&#39;).
 lr_subnode = lr_node-&amp;gt;get_child_node(&#39;ADDRESS&#39;).
 lr_subnode-&amp;gt;get_static_attributes(IMPORTING
 static_attributes = ls_subnode).
 lv_street = ls_subnode-street.
 lv_number = ls_subnode-number.
 lv_city = ls_subnode-city.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this case, we have used the get_static_attributes method that supplies a
 copy of all the static attributes for the ADDRESS child node. After 
this, we are able to access the attributes values through the local 
structure “ls_subnode”.Listing shows how we can populate with values the
 elements of the ADDRESS child node&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Populating the attributes of the ADDRESS node&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; DATA:lr_node TYPE REF TO if_wd_context_node,
 lr_subnode TYPE REF TO if_wd_context_node,
 ls_subnode TYPE if_view_name=&amp;gt;element_address.
 lr_node = wd_context-&amp;gt;get_child_node(&#39;FACULTY&#39;).
 lr_subnode = lr_node-&amp;gt;get_child_node(&#39;ADDRESS&#39;).
 ls_subnode-street = &#39;Pforzheimer&#39;.
 ls_subnode-number = &#39;106A&#39;.
 ls_subnode-city = &#39;Pforzheim&#39;.
 lr_subnode-&amp;gt;set_static_attributes(ls_subnode).&amp;nbsp;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/346199882496514330/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/context-nodes-and-attributes-at-design.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/346199882496514330'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/346199882496514330'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/context-nodes-and-attributes-at-design.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-4686783557079107544</id><published>2012-09-22T23:03:00.005-07:00</published><updated>2012-09-22T23:03:42.541-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h1 style=&quot;background-color: white; background-image: none; background-position: 0% 0%; background-repeat: no-repeat no-repeat; border: none; color: #0099ff; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; height: 40px; line-height: 24px; margin: 0px; padding: 0px; text-align: justify;&quot;&gt;
&lt;a href=&quot;http://adf.ly/CUYl3&quot; target=&quot;_blank&quot;&gt;Data Binding, Context Mapping and Interface Methods&lt;/a&gt;&lt;/h1&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
This
 starts with the presentation of the mechanism used to manipulate data 
between the context attributes and UI elements, mechanism called,in Web 
Dynpro,“data binding”. We continue with the mechanism of sharing data 
among the various controllers, which is realized by using different 
variants of context mapping. Finally, we highlight the importance of the
 interface methods required to access them “cross-component”.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
In
 the last chapter, we have created context nodes and attributes in the 
context view.A node or attribute can be created in each context. When we
 create an attribute in the context view, this value is visible only in 
this context view. The mechanism for sharing data among different 
controllers is known as “context mapping”. A context mapping can be 
internal, when the nodes we map are within the same component, and 
external, when the mapping is cross-components.&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;324-data-binding&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Data Binding&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Each
 UI element has certain properties. With data binding, we define which 
node or attribute from the context will act as a data source for an UI 
element property.&amp;nbsp;To exemplify the data binding mechanism, we create a 
component named Y_DATABINDING with a view named V_BIND and a window 
W_DEFAULT.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;/b&gt;&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;b&gt;Structure of Y_DATABINDING component&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;202&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_1.jpg&quot; style=&quot;border: none;&quot; width=&quot;350&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In context view, we create a context node STUDENT with the same dictionary structure YSTR_PERSON.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Structure of STUDENT node&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;116&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_2.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create a WD component that reads the user inputs in the attributes 
FIRSTNAME,LASTNAME and DATEOFBIRTH. When the user presses the “SHOW” 
button, these data are shown by means of TextView UI Elements.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Example of data binding&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;199&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_3.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We have many possibilities to make a data binding. For example, we can:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
(a) Create a “Container Form” for a context node&lt;br /&gt;
(b) Use the Web Dynpro Wizard&lt;br /&gt;
(c) Create data binding for each attribute&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
(a)
 To create a “Container Form”, we add a Group UI element and then, by 
rightclicking,we choose from the contextual menu “Create Container 
Form”.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating container form&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;205&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_4.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 this, we can choose which context node we use for data binding and 
which type of UI Element is associated to each attribute&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&amp;nbsp;As a
 result, the Framework generates for each context attribute an UI 
element InputField and a proper label, and makes the data binding 
between each UI element property (value) and the context attribute.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Data mapping among InputField UI Elements and the context attributes.&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;107&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_6.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To create a “Container Form”, we can use each UI Element of container type.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
(b)
 To create a data binding, we can use the Web Dynpro Wizard button(Fig) 
In case we use the Form option, the Framework generates a 
transparentContainer UI element that contains the UI elements that we 
have to choose inthe same way as we have shown at point (a).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Using wizard to create a form and the proper data binding&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;123&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_7.jpg&quot; type=&quot;image&quot; width=&quot;545&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
(c)
 To manually define a data binding for each attribute, we have to insert
 the proper UI Element and create data binding between an UI element 
property and a context attribute. We insert 3 TextView UI Elements and 3
 Labels UI Elements.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Layout structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;134&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_8.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We have to create the data binding between each text property of the TextView UI Element and the proper context attribute.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Data binding&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;266&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_9.jpg&quot; type=&quot;image&quot; width=&quot;545&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 repeat this step until we make data binding among the text property of 
all the three UI Elements and the proper context attributes.&amp;nbsp;Then,we 
insert a Button UI Element in the Group GRP_STUDENT_WRITE and add an 
action.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Inserting a button and adding an action&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;128&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_10.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this case, we don’t need to enter coding in the generated event handler
 method onactionshow. After creating an application for our component, 
we are ready to run it. The result is presented.&amp;nbsp;At runtime, the context
 attributes are empty. After the user enters values and pushes the SHOW 
button, the context attributes are populated with these values.At design
 time, we realised a data binding among the TextView UI Elements and the
 same context attributes (Firstname, Lastname and Dateofbirth). This is 
the reason why these UI Elements show the values entered by the user in 
the Input-Fields UI elements.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Running the application&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;206&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/vvvvvvvvvrrrr.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;325-context-mapping&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Context Mapping&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
So
 far, we have used only context attributes that were defined in the view
 context.When we want to share data among different controllers, we have
 to define a context mapping.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
A
 context mapping can be an internal context mapping or an external 
context mapping. An internal mapping relationship can be defined between
 any pair of controllers within the same WD component, whereas the 
external mapping defines a mapping across the borders of a WD component.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Internal Context Mapping&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 mentioned before, the mechanism for sharing data among different 
controllers within the same WD component is known as internal context 
mapping.For a better understanding of this mechanism, we create the same
 example from data binding, but in this case we create the two groups 
GRP_STUDENT_READ and GRP_STUDENT_WRITE, in different views. At runtime, 
we display the view V_VIEW1.When the user presses the “SHOW” button, we 
display the second view V_VIEW2. The WD component structure is 
presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;238&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_12.jpg&quot; style=&quot;border: none;&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 cannot create the context node in the view context, because we need the
 values of this attributes not only in the view V_VIEW1, but in the view
 V_VIEW2 as well.In this case,we create the node STUDENT in the context 
of component controller.In this way,through context mapping, we can 
access the context of the component controller via a view 
controller.&amp;nbsp;Context mapping doesn’t cause the duplication of data.The 
nodes in the view controllers only hold a reference to the mapping 
context node from the component controller.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Internal context mapping&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;208&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_13.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 firstly create the context node of the component controller. After 
this, we make a context mapping between the context of the view V_VIEW1 
and the context node of component controller. As a result, the entire 
context node STUDENT is mapped.&amp;nbsp;In the same way, we proceed to make a 
context mapping between the context of the view V_VIEW2 and the context 
of component controller.Consequently,we have to create the view layout 
for the views V_VIEW1,V_VIEW2 and the data binding.Data stored in the 
context of the component.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context mapping&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;164&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_14.jpg&quot; type=&quot;image&quot; width=&quot;525&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The mapping result&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;230&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_15.jpg&quot; type=&quot;image&quot; width=&quot;495&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
controller can be used within a view if we have firstly made a context mapping.The schematic representation is presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Intern context mapping, data binding&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;247&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_16.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 lines between controllers symbolize the context mapping, and the lines 
between view controllers and the views layout symbolize the data 
binding.&amp;nbsp;In the view V_VIEW1, we create the group GRP_STUDENT_WRITE and 
then we can use the view context to create a “Container Form”.Because we
 want to show both views in the same window,after the user presses the 
“SHOW” Button we use a ViewContainerUIElement.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View layout for V_VIEW1&lt;/b&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;170&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_17.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We have to embed the view V_VIEW2 in the ViewContainerUIElement.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Embed view V_VIEW2&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;147&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_18.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We have to embed the view V_VIEW2 in the ViewContainerUIElement (Fig.).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Embed view V_VIEW2&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;105&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_19.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 creating an application,we can see the result. At runtime, the User 
Interface is the same as for the data binding (example – Fig.)The 
difference is the context mapping. In this case, the context is not 
defined in the view context, but in the context of the component 
controller, and can be accessed through context mapping. The data reside
 in the context node of the component controller context, and the 
context node of the views controller simply holds a reference to this.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;External Context Mapping&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
External
 mapping is a cross-component mapping and can be directly mapping or 
reversely mapping. We can create an external context mapping if we have 
firstly declared a usage for the component that holds the respective 
context and the respective context node has been marked as interface.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Direct Mapping&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 a briefly description of this kind of mapping, we can say that the 
external mapping of direct mapping type is a cross-component mapping in 
which the main component directly access the data (represented through 
the context structure) of the used component.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 a better understanding of this type of mapping, we create the same 
example for the internal mapping, but in this case we create two WD 
components.&amp;nbsp;The component Y_EM_LAYOUT has two Views used to create the 
user interface.To hold the data entered by the user, we use the context 
node STUDENT.To be able to access this context node, we have to define a
 component usage.&amp;nbsp;In WD, the component Y_EM_LAYOUT defines a usage of 
the component Y_EM_CONTEXT.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;263&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_20.jpg&quot; style=&quot;border: none;&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 real cases, a faceless component is useful if several components access
 the same set of data. This type of component can be used to create a 
model for a multicomponent application.&amp;nbsp;We firstly create the context 
node in component controller of the component Y_EM_CONTEXT. We keep the 
same context node STUDENT, but in this case we create an interface node.
 If this node has not defined the interface type, we cannot access it 
from another component.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context node structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;352&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_21.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 component Y_EM_LAYOUT has two Views used to create the user interface. 
To hold the data entered by the user, we use the context node STUDENT. 
To be able to access this context node, we have to define a component 
usage.&amp;nbsp;In WD, the component Y_EM_LAYOUT defines a usage of the component
 Y_EM_CONTEXT&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Defining a Usage in a component&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;234&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_23.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 the usage is defined, we have to create a controller usage in the 
component controller. We need to use the component Y_EM_CONTEXT,&amp;nbsp;the 
component use (named CONTEXT) and, hence, we need the 
INTERFACECONTROLLER&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Controller usage definition&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;196&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_22.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 next step is to define a mapping. In this case, it is an external 
mapping, because the node we use to define the mapping is outside the 
component&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Defining an external mapping&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;150&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_24.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As a result, the entire context node is mapped.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The mapping result&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;220&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_25.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the Methods tab, we have to verify in the wddoinit( ) Hook Method if it
 is an&amp;nbsp;instance of the used component. The coding from Listing shows how
 we can&amp;nbsp;verify this and how can be created in case it doesn’t exist.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Checking an instance of the used component&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddoinit .
 DATA:lr_cmp_usage TYPE REF TO if_wd_component_usage.
 lr_cmp_usage = wd_this-&amp;gt;wd_cpuse_context( ).
 IF lr_cmp_usage-&amp;gt;has_active_component( ) IS INITIAL.
 lr_cmp_usage-&amp;gt;create_component( component_name =
 &#39;Y_EM_CONTEXT&#39;).
 ENDIF.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using the method HAS_ACTIVE_COMPONENT&amp;nbsp;of the IF_WD_COMPONENT_USAGE, we 
verify if the usage has an active component.If the component has already
 been initialized, the logic moves on otherwise, we create an instance 
of the component by using the CREATE_COMPONENT method of the same 
interface. We must ensure that the external component has been 
instantiated before the interface controller is accessed.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
It
 is recommendable to create a usage for a component only in the moment 
we need it.In our little example, we have to create the usage in the 
wdDoInit Hook method, but,in case we use navigations plugs to navigate 
to a used component,it is recommendable to create the usage in the 
method used to fire the respective plug.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Further,
 we can proceed as in the previous example: we create an internal 
mapping between the context node of the component controller and the 
context view of the views V_VIEW1 and V_VIEW2. After this, we can create
 the data binding.All these are schematically presented.&amp;nbsp;The line 
between WD components symbolizes the external direct context mapping, 
the lines between component controller and views controllers symbolize 
internal mapping, and the lines between view controllers and views 
layout symbolize the data binding.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Reverse Mapping&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 a briefly description of this king of mapping, we can say that the 
external mapping of the reverse mapping type is a cross-component 
mapping in which the data (represented through the context structure) 
are put at our disposal by the main component.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 realise the screen based on them, we use the interface view of the used
 component.For a better understanding of this type of mapping, we create
 the same example from direct mapping,where we change only the 
implementation part. We create two WD components, named Y_EM_CONTEXT_RM 
and Y_EM_LAYOUT_RM. The WD components structure is presented.&amp;nbsp;We define,
 in the component Y_EM_CONTEXT_RM, the context node STUDENT.This 
component has no view, because we embedded here the interface view&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Schematic representation of an external direct mapping&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;363&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_26.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD components structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;157&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_27.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
of
 the component Y_EM_LAYOUT_RM.The component Y_EM_LAYOUT_RM implements 
the user interface,&amp;nbsp;making usage of the component Y_EM_CONTEXT_RM 
required to have access to the STUDENT node. Schematically, all these 
are presented.&amp;nbsp;We firstly create the context node in the component 
controller of the component Y_EM_CONTEXT_RM, by using the same context 
node STUDENT and interface node.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Schematic representation of an external reverse mapping&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;363&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_28.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Interface node&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;176&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_29.jpg&quot; style=&quot;border: none;&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 component Y_EM_LAYOUT_RM implements the user interface. In component 
controller, we create a node named STUDENT, with the same structure as 
the node STUDENT from the component controller of the component 
Y_EM_CONTEXT_RM.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 creating the node, we make an internal mapping, we create the user 
interface and make the data binding. Another solution is to copy the 
component Y_EM_LAYOUT and to make the proper changes. We can copy this 
component by right-clicking on the component name, and choose “Copy” 
from the contextual menu. We have to specify a name for the new 
component and a package where we want to save this component.&amp;nbsp;We define a
 usage of the component Y_EM_CONTEXT_RM and create an external mapping, 
reverse mapping.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Interface node, Input element&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;381&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_30.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure after usage and mapping&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;224&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_31.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 entering the coding required to verify if it is an instance of the used
 component, we can save and activate.&amp;nbsp;For the next step, we go back to 
the component Y_EM_CONTEXT_RM, where we have to define a usage for the 
component Y_EM_LAYOUT_RM, required to be able to embed its interface 
view.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 this, we can embed the interface view of the component for which we 
have defined only the usage. The Framework generates a corresponding 
interface view when we create a window. This interface can be embedded 
by other component,after the usage was defined. To embed the interface 
view or windows of the Y_EM_LAYOUT_RM component, we proceed in the same 
way as for embedding the views.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Defining the usage&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;195&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_32.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Y_EM_LAYOUT_RM component, we proceed in the same way as for embedding the views.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Embed operation&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;180&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_33.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 entering the coding required to verify if an instance of the used 
component exists, we can save, activate and run the application.&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;1047-interface-methods&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Interface Methods&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
A
 method of a component controller can be marked as interface. In this 
way, it is possible to access it cross-component. This option is 
possible only for the methods applied to the component controllers. The 
methods that take place in Views orWindows can’t be marked as interface.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 a better understanding of this kind of methods, we expand the previous 
example. In this example, after the user enters values and presses the 
“SHOW” button, the context attributes of the node STUDENT of the 
component Y_EM_CONTEXT_RM are populated with these values. When we want 
to verify if the user have entered his first name, we have to define an 
interface method in the component controller of this component, a method
 that verifies if this attribute has a value or it is empty. For this 
purpose, we create the interface method named check_firstname().&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Marking a component controller method as interface&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;207&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_34.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create this method in the component Y_EM_CONTEXT_RM, because there is 
the context node where the values are transferred after the user presses
 the “SHOW” button.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Method check_firstname implementation&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD check_firstname .
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_node TYPE if_componentcontroller=&amp;gt;element_student.
 DATA lv_firstname TYPE string.
 DATA lr_api_controller TYPE REF TO if_wd_controller.
 DATA lr_message_manager TYPE REF TO if_wd_message_manager.
 lr_node = wd_context-&amp;gt;get_child_node(&#39;STUDENT&#39;).
 lr_node-&amp;gt;get_attribute(EXPORTING name = &#39;FIRSTNAME&#39;
 IMPORTING value = lv_firstname).
 IF lv_firstname IS INITIAL.
 lr_api_controller ?= wd_this-&amp;gt;wd_get_api( ).
 lr_message_manager = lr_api_controller-&amp;gt;get_message_manager( ).
 lr_message_manager-&amp;gt;report_error_message(
 message_text = &#39;The Field First Name is empty!&#39;).
 ENDIF.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 read the value of the FIRSTNAME attribute into the local variable 
lv_firstname.After this, we verify if this attribute has a value or it 
is empty. In case this attribute is empty, we want to show a message 
with the string ‘The Field First name is empty!’.In this case, we have 
used the method REPORT_ERROR_MESSAGE of interface IF_WD_MESSAGE_MANAGER.
 To generate a message, we can use the Web Dynpro Code Wizard.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Usage of Web Dynpro Code Wizard&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;182&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_35.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Is
 not recommended this art of programming, where the language-specific 
text elements are entered in the source text. In this case, we have used
 the easy way and not the best one. In the Chap.10, we explain how we 
can create messages easy to use and translate, without more programming 
effort.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 this method is implemented, we have to go back to the component 
Y_EM_LAYOUT_RM. When the user presses the SHOW button, we have to call 
the method check_firstname from the component use.&amp;nbsp;If a method is marked
 as interface, we can cross-component access it. This means that we can 
call it from our onactionshow event handler method after we define a 
usage at the view level.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Usage definition&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;213&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_36.jpg&quot; type=&quot;image&quot; width=&quot;495&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The coding from Listing shows the implementation of onactionshow event handler method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Method call in used controller&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionshow .
 DATA: lr_interfacecontroller TYPE REF TO yiwci__em_context_rm .
 lr_interfacecontroller = wd_this-&amp;gt;wd_cpifc_context( ).
 lr_interfacecontroller-&amp;gt;check_firstname( ).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We can use Web Dynpro Code Wizard to generate this code.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Web Dynpro Code Wizard&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;227&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%206/37-Web-Dynpro-Code-Wizard.png&quot; type=&quot;image&quot; width=&quot;555&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;311&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp6_38.jpg&quot; type=&quot;image&quot; width=&quot;495&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/4686783557079107544/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/data-binding-context-mapping-and.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/4686783557079107544'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/4686783557079107544'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/data-binding-context-mapping-and.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-6852745087669477636</id><published>2012-09-22T23:03:00.003-07:00</published><updated>2012-09-22T23:03:34.263-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h1 style=&quot;background-color: white; background-image: none; background-position: 0% 0%; background-repeat: no-repeat no-repeat; border: none; color: #0099ff; font-family: Verdana, Arial, Helvetica, sans-serif; height: 40px; line-height: 24px; margin: 0px; padding: 0px; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://adf.ly/CUYfr&quot; target=&quot;_blank&quot;&gt;View Controller Methods&lt;/a&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;div&gt;
Abstract
 As we have seen in the previous chapters, in the Methods tab of a View 
we find various types of methods generated by the Framework, and we can 
also create our own methods. The purpose of this chapter is to present 
the role and the modality to use the various methods generated by the 
Framework and the modality to realize our own methods.&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
Each view has exactly one view controller. The view controller can contain&lt;br /&gt;
methods for data retrieval or for processing user inputs.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
As
 we have seen, each view has a Methods tab where we can create our own 
user-defined methods or we can find the methods generated by the 
Framework. In each Method tab of a View, we can find or create three 
types of methods:&lt;/div&gt;
&lt;ul style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; margin: 10px 0px 0px; padding: 0px 0px 0px 25px; text-align: justify;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;Event Handler:&lt;/b&gt;&amp;nbsp;This
 kind of methods respond to actions or to events. An example of such a 
method is generated by the Framework when we define an inbound plug into
 a View. Another example is a method generated from the Framework when 
we create an action.&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;Method:&lt;/b&gt;&amp;nbsp;We
 can use this kind of methods to create User-defined instance methods. 
Another example is the Hook Methods generated by the Framework.&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;Supply Function:&lt;/b&gt;&amp;nbsp;When
 we create a node and define a supply function for it, the Framework 
generates a corresponding supply function method used to populate with 
data a context node.&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;338-hook-methods&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Hook Methods&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
These
 methods cannot be deleted and represent the interface between the 
Framework and our application. The Hook Methods are called in a specific
 sequence according to a phase model. After generation, these methods 
are empty, but can be filled with source codes in case we want to 
interfere in a certain step of this phase model.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;shows the Hook methods to be found in different controllers.&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;205&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%207/Hook-methods.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we can see, the Hook methods wdDoInit and wdDoExit are common to all 
the controllers. shows which Hook methods can be found in a view.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Hook methods in a view&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;205&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_1.jpg&quot; type=&quot;image&quot; width=&quot;595&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;wdDoInit&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 method can be considered the controller constructor. It is 
automatically called when the controller is initialized for the first 
time.&amp;nbsp;We have many examples where we can use this method, for 
example:setting the initial values of a controller context, dynamically 
creation of a context node and attributes,filling context nodes.We can 
use this method instead of the supply function method (to populate with 
values a context node),only if we know that the context is filled only 
once and it’s not invalidated afterwards.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create a WD component that uses the wdDoInit Hook method to populate 
with values a context node. The component structure and the view layout 
are presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure, view layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;257&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_2.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the context view, we create a context node named STUDENT, with the same
 structure as the data binding example –dictionary structure 
YSTR_PERSON,cardinality 1...1,singleton, without supply function.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;127&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_3.jpg&quot; type=&quot;image&quot; width=&quot;197&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Using
 the wdDoInit Hook method,we populate with values this node (Listing). 
When calling the application for the first time, the wdDoInit Hook 
method fills the node STUDENT with all the elements set here.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The wdDoInit Hook method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  METHOD wddoinit .
  DATA lr_node TYPE REF TO if_wd_context_node.
  DATA ls_data TYPE if_v_view=&amp;gt;element_student.
  lr_node = wd_context-&amp;gt;get_child_node(&#39;STUDENT&#39;).
  ls_data-firstname = &#39;Antonia Maria&#39;.
  ls_data-lastname = &#39;Keller&#39;.
  ls_data-dateofbirth = &#39;19800306&#39;.
  lr_node-&amp;gt;set_static_attributes(ls_data).
  ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We can use the wdDoInit Hook Method to dynamically create the context nodeSTUDENT and to populate it with values.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;146&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_4.jpg&quot; style=&quot;border: none;&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The wdDoInit Hook method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  METHOD wddoinit .
  DATA: lr_node TYPE REF TO if_wd_context_node,
  lr_node_info TYPE REF TO if_wd_context_node_info,
  lr_child_node_info TYPE REF TO if_wd_context_node_info.
  lr_node_info = wd_context-&amp;gt;get_node_info( ).
  lr_child_node_info = lr_node_info-&amp;gt;add_new_child_node(
  name = &#39;STUDENT&#39;
  is_singleton = abap_true
  is_multiple = abap_false
  is_mandatory = abap_true
  static_element_type = &#39;YSTR_PERSON&#39;
  ).
  lr_node = wd_context-&amp;gt;get_child_node(&#39;STUDENT&#39;).
  DATA ls_data TYPE ystr_person.
  ls_data-firstname = &#39;Antonia Maria&#39;.
  ls_data-lastname = &#39;Keller&#39;.
  ls_data-dateofbirth = &#39;19800306&#39;.
  lr_node-&amp;gt;bind_structure(EXPORTING new_item = ls_data).
  ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 dynamically create the context node “STUDENT”, we have used the 
method&amp;nbsp;ADD_NEW_CHILD_NODE of the IF_WD_CONTEXT_NODE_INFO interface&amp;nbsp;that 
creates an Info Object and adds it as a Lower-Level Node for the CONTEXT
 root node. The method CREATE_NODEINFO_FROM_STRUCT of the 
CL_&amp;nbsp;WD_DYNAMIC_TOOL class is obsolete and that’s why it is recommendable
 to&amp;nbsp;use the if_wd_context_node_info-&amp;gt;add_new_child_node.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
ADD_NEW_CHILD_NODE have many import parameters of which,for the scope of our example, we have used:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;NAME&lt;/b&gt;&amp;nbsp;of STRING type – the name of the generated context node&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;IS_SINGLETON&lt;/b&gt;&amp;nbsp;of
 ABAP_BOOL type,default value ABAP_FALSE – sets the property node 
SYNGLETON.In our example,the node STUDENT has to be singleton,and that’s
 why we have set this value ABAP_TRUE&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;IS_MULTIPLE&lt;/b&gt;&amp;nbsp;of
 ABAP_BOOL type, default value ABAP_TRUE – sets the property node 
CARDINALITY.In our example,the node STUDENT has the cardinality 
1...1,and that’s why we have set this value ABAP_FALSE&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;IS_MANDATORY&lt;/b&gt;f
 ABAP_BOOL type,default value ABAP_FALSE - sets the same property node 
CARDINALITY.We need the ABAP_TRUE value because the context node must 
have exactly one context element at runtime&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;STATIC_ELEMENT_TYPE&lt;/b&gt;&amp;nbsp;of
 STRING type – we can use it to define the DICTIONARY_STRUCTURE property
 for our context node. Same as the case when this node is created at the
 design time, we can use the name of the development objects created in 
the ABAP Dictionary as Structure or Views&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;wdDoExit&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 method can be considered the controller destructor. It is automatically
 called when exiting the controller, and can be used for executing 
closing statements.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the ABAP Dictionary, we have defined a lock for the database table 
YPERSON. We can use wdDoExit Hook method to release a lock that has been
 set for this table to synchronize the access of several WD applications
 to the same data. To do this, we have to use the generated 
DEQUEUE_EYPERSON Function Module (Listing).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The wdDoExit Hook method&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddoexit .
 DATA lv_id_candidate TYPE yperson-id_person.
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_data TYPE wd_this-&amp;gt;element_candidate.
 lr_node = wd_context-&amp;gt;get_child_node(&#39;CANDIDATE&#39;).
 lr_node-&amp;gt;get_attribute( EXPORTING name = &#39;ID_PERSON&#39;
 IMPORTING value = lv_id_candidate).
 CALL FUNCTION &#39;DEQUEUE_EYPERSON&#39;
 EXPORTING
 id_person = lv_id_candidate.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Here
 we have called the Function Module directly from our WD method, but we 
can create a method in a class used as model for theWDcomponent. If we 
don’t call the corresponding DEQUEUE_EYPERSON Function Module to release
 the database record that was locked with the EQUEUE_EYPERSON Function 
Module, this lock is generally removed at the end of the transaction.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;wd Do Modify View&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 method is mostly used in the dynamic programming, it is a method used 
for modifying the view before rendering.&amp;nbsp;For the dynamically programming
 of the UI elements, we have many classes and methods that help us as 
application developer to dynamically modify a view. To show this, we 
create an example, aWDcomponent, where we use this Hook method to 
dynamically create an InputField, a Label, a TextView and a LinkToAction
 UIelement. The WD component structure and the context node are 
presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure and context node&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;178&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_5.jpg&quot; type=&quot;image&quot; width=&quot;371&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 the scope of this example, we import in the MIMEs (Multipurpose 
Internet Mail Extensions) folder an image: next.JPG that we use for the 
linkToAction UI element. To import a file in this folder, we right-click
 on the WD component name and, from the contextual menu, we choose&lt;b&gt;Create -&amp;gt; Mime Object -&amp;gt; Import&lt;/b&gt;.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 context node PERSON has the Cardinality 1. . .1, Singleton. Its 
attributes are NAME and GREETING, of string type. We can almost use the 
same example as for our first exercise. In this case, we create at 
design time only the UI element Group, the other UI elements being 
dynamically created by using the wdDoModify-&amp;nbsp;View Hook method.The view 
layout is presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;41&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_6.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Listing
 shows the content of the wdDoModifyView Hook method By using the 
FIRST_TIME parameter of WDY_BOOLEAN type, we check if wdDoModifyView is 
called for the first time. In case this parameter is ABAP_TRUE (first 
time), we create a label UI Element:&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; lr_label = cl_wd_label=&amp;gt;new_label(
 id = ‘NAME_LBL’
 label_for = ‘NAME’
 text = ‘NAME’).&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To do this, we use the method new_label of the cl_wd_label class interface&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The WdDoModifyView Hook method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddomodifyview .
 DATA lv_bind_name TYPE string.
 DATA lv_bind_greeting TYPE string.
 DATA lr_link_to_action TYPE REF TO cl_wd_link_to_action.
 DATA lr_container TYPE REF TO cl_wd_group.
 DATA lr_flow_data TYPE REF TO cl_wd_flow_data.
 DATA lr_input_field TYPE REF TO cl_wd_input_field.
 DATA lr_text_view TYPE REF TO cl_wd_text_view.
 DATA lr_label TYPE REF TO cl_wd_label.
 IF first_time EQ abap_true.
 lr_label = cl_wd_label=&amp;gt;new_label(
 id = &#39;NAME_LBL&#39;
 label_for = &#39;NAME&#39;
 text = &#39;NAME&#39;).
 lr_flow_data = cl_wd_flow_data=&amp;gt;new_flow_data(element =
 lr_label).
 lr_container ?= view-&amp;gt;get_element(&#39;GRP&#39;).
 lr_container-&amp;gt;add_child(lr_label).
 lv_bind_name = &#39;PERSON.NAME&#39;.
 lr_input_field = cl_wd_input_field=&amp;gt;new_input_field(
  id = &#39;NAME&#39;
 bind_value = lv_bind_name).
 lr_flow_data = cl_wd_flow_data=&amp;gt;new_flow_data(
 element = lr_input_field).
 lr_container-&amp;gt;add_child( lr_input_field).
 lr_link_to_action = cl_wd_link_to_action=&amp;gt;new_link_to_action(
 id = &#39;LTA_LINKTOACTION&#39;
 on_action = &#39;NEXT&#39;
 image_source = &#39;NEXT.JPG&#39;).
 lr_flow_data = cl_wd_flow_data=&amp;gt;new_flow_data( element =
 lr_link_to_action).
 lr_container-&amp;gt;add_child(lr_link_to_actio ).
 lv_bind_greeting = &#39;PERSON.GREETING&#39;.
 lr_text_view = cl_wd_text_view=&amp;gt;new_text_view(
 id = &#39;TXV_NAME&#39;
 bind_text = lv_bind_greeting).
 lr_flow_data = cl_wd_flow_data=&amp;gt;new_flow_data(element =
 lr_text_view).
 lr_container-&amp;gt;add_child(lr_text_view).
 ENDIF.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 new_label method has many mandatory and optional parameters. We have 
used label_for, text and ID to set the main properties of the Label UI 
element. The text parameter helps us to set the label text. The 
Label_for parameter specifies the UI element for which this label is.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 embedding the UI elements into the layout, we need to specify the 
arrangement of these elements. For this, we have used the FlowLayout 
layout:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
lr_flow_data = cl_wd_flow_data=&amp;gt;new_flow_data( element = lr_label).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Class interface CL_WD_LABEL&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;325&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_7.jpg&quot; type=&quot;image&quot; width=&quot;595&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Parameters for the new_label method&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;180&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_8.jpg&quot; type=&quot;image&quot; width=&quot;595&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 creating the UI element and setting the layout, we have to attach them 
to the ROOTCONTAINERUIELEMENT or to another container.In our case, we 
have attached our new created label to the UI element Group with the GRP
 ID.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
lr_container ?= view-&amp;gt;get_element(‘GRP’).&lt;br /&gt;
lr_container-&amp;gt;add_child(lr_label).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We have used the method add_child( ) that enabled us to do this.After this,we create an InputField UI element:&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; lr_input_field = cl_wd_input_field=&amp;gt;new_input_field(
 id = ’NAME’
 bind_value = lv_bind_name).&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 use the new_input_field method from the cl_wd_input_field class 
interface.The bind_value parameter represents the value property for the
 UI element property.In this case, we dynamically create a data binding 
for this property to the context node PERSON, attribute NAME. Until now,
 we have seen how we can create a data binding at the design time. In 
this case, we can’t create a data binding at design time, because this 
UI element doesn’t exist at the design time; it is dynamically created 
at runtime.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 dynamically create a data binding of the property bind_value with the 
NAME attribute, we have to specify the absolute path of this 
attribute.&amp;nbsp;lv_bind_name = ‘PERSON.NAME’.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In the next step, we dynamically create a LinkToAction UI element:&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  lr_link_to_action = cl_wd_link_to_action=&amp;gt;new_link_to_action(
  id = ‘LTA_LINKTOACTION’
  on_action = ‘NEXT’
  image_source = ‘NEXT.JPG’
  ).&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 use the method new_link_to_action of the cl_wd_link_to_action class 
interface.&amp;nbsp;This UI element has an event associated. We have used the 
parameter on_action to define the action that the Framework triggers 
when the user interacts with this UI element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 a linkToAction UI element, we can define a hypertext link or we can use
 an image instead a text.In our case, we have used the parameter 
image_source to specify the name of the image we want to use.&amp;nbsp;Then, we 
specify the layout and we attach it to our UI element Group with the 
same GRP ID.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
At the end, we dynamically create a TextView UI element by using the new_text_view method of the cl_wd_text_view class interface&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  lr_text_view = cl_wd_text_view=&amp;gt;new_text_view(id = ’TXV_NAME’bind_text = lv_bind_greeting).&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 data binding to the context attribute GREETING is dynamically 
created.After creating the UI element, we specify the layout and we 
attach it to our UI element Group with the same GRP ID.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user presses the linkToAction UI element, the Framework triggers the event handler method onactionnext(Listing ).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Action Next&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;123&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_9.jpg&quot; type=&quot;image&quot; width=&quot;595&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactionnext event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionnext .
  DATA: lv_name TYPE string,
  lv_greeting TYPE string.
  DATA lr_node TYPE REF TO if_wd_context_node.
  DATA ls_data TYPE wd_this-&amp;gt;element_person.
  lr_node = wd_context-&amp;gt;get_child_node( &#39;PERSON&#39;).
  lr_node-&amp;gt;get_attribute(EXPORTING name = &#39;NAME&#39;
  IMPORTING value = lv_name).
  CONCATENATE
  &#39;Welcome&#39; lv_name INTO lv_greeting SEPARATED BY space.
  ls_data-greeting = lv_greeting.
  lr_node-&amp;gt;set_static_attributes(ls_data).
  ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;156&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_10.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In case we want to set “required” the state property of the Input UI element, we need only an extra line code:&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  lr_input_field = cl_wd_input_field=&amp;gt;new_input_field(
  id = ‘NAME’
  state = cl_wd_input_field=&amp;gt;e_state-required
  bind_value = lv_bind_name).&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 use the state parameter to dynamically set the property with the same 
name of the InputField UI element.If we don’t use this optional 
parameter, the default value is set: 
CL_WD_INPUT_FIELD=&amp;gt;E_STATE-NORMAL.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;60&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/chp7_1_3t%281%29.jpg&quot; style=&quot;border: none;&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;wd Do Before Action&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 can use this method to perform our own validation before an action is 
triggered.To exemplify this,we create a Web Dynpro component named 
Y_WDDOBEFOREACTION with a view named V_VIEW and a window W_DEFAULT.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the context view, we create the well-known context node named 
STUDENT,with the same dictionary structure YSTR_PERSON, cardinality 
1...1, singleton,without supply function. Our scope is to check if the 
user enters values in all the in put Fields UI elements bound to the 
attributes of the context node STUDENT. TheView layout is presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The View layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;122&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_11.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the wd Do Before Action Hook method, we use the static method 
CHECK_MANDATORY_ATTR_ON_VIEW of the CL_WD_DYNAMIC_TOOL class to&amp;nbsp;check if
 the user had entered values in all the mandatory fields (the state 
property of the inputField UI elements is set required).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The wdDoBeforeAction Hook method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  METHOD wddobeforeaction .
  DATA lr_api_controller TYPE REF TO if_wd_view_controller.
  DATA lr_action TYPE REF TO if_wd_action.
  lr_api_controller = wd_this-&amp;gt;wd_get_api( ).
  lr_action = lr_api_controller-&amp;gt;get_current_action( ).
  IF lr_action IS BOUND.
  CASE lr_action-&amp;gt;name.
  WHEN ‘SAVE’.
  cl_wd_dynamic_tool=&amp;gt;check_mandatory_attr_on_view(
  view_controller = lr_api_controller).
  ENDCASE.
  ENDIF.
  ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When
 the user presses the Save button, the Web Dynpro Framework firstly 
checks,by using the wdDoBeforeAction Hook method, if all the required 
fields are filled.In case the user doesn’t enter values in all these 
fields, all the operations that had to take place after pressing the 
Save button are finished and the user is informed about this,through 
error messages and by highlighting the UI elements that generated these 
messages. In this way, we don’t have to manually check each mandatory 
field.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;268&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_12.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;wd Do On Context Menu&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 can use this method to provide hierarchical context menus in web Dynpro
 Views.In our first example, we have already seen the default context 
menu displayed by the Web Dynpro Framework when the user presses 
right-click on an UI element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 can create a context menu at design time,by using the CONTEXT_MENUS 
root,or dynamically, by coding the wd Do On Context Menu Hook method.To 
exemplify how we can use this method to dynamically create context 
menus, we use the example from the wdDoBeforeAction Hook method. In this
 case,we offer to the user the possibility to personalize the field he 
wants to be mandatory. He will be able to choose between his first name 
as mandatory field and his last name as mandatory field.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When
 he chooses the first name as mandatory,we will mark the corresponding 
field with a red star, and when he chooses the last name, we will mark 
the corresponding field with a red star. In the default mode, the first 
name is set as mandatory.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 create this example, we have to perform some modifications into the 
last application.In this case,we have to set dynamic the state 
properties of the two inputField UI elements,corresponding to first name
 and last name. To be able to do this, we have to create, in the context
 view,two extra context attributes of WDUI_STATE type,to bind these 
attributes with the corresponding properties.&amp;nbsp;In this way, at design 
time, the two inputField UI elements are not marked as mandatory,anyway.
 To set in the default mode the first name as mandatory,we use the 
wdDoInit Hook method we have just learnt about.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure and data binding&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;228&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_13.jpg&quot; type=&quot;image&quot; width=&quot;595&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Setting the initial values for our node DYNAMIC&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  METHOD wddoinit .
  DATA lr_node TYPE REF TO if_wd_context_node.
  DATA ls_data TYPE wd_this-&amp;gt;element_dynamic.
  lr_node = wd_context-&amp;gt;get_child_node(&#39;DYNAMIC&#39;).
  ls_data-first_name = cl_wd_input_field=&amp;gt;e_state-required.
  ls_data-last_name = cl_wd_input_field=&amp;gt;e_state-normal.
  lr_node-&amp;gt;set_static_attributes(ls_data).
  ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 offer to the end user the capability to dynamically choose what value 
he wants to be mandatory from the two optional values, we have to code 
the wd Do On-ContextMenu Hook method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
With
 the first data statement, we create a local reference to the CL_WD_MENU
 class and two local references to the CL_WD_MENU_ACTION_ITEM, required 
to dynamically create our menu,and two menu options of menuActionItem 
type. We need the two menu options to offer to the user the possibility 
to choose between options:set first name as mandatory or set last name 
as mandatory.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
With
 the second data statement, we create two local variables required to 
read from the context attributes the status properties corresponding to 
the two input-Fields UI elements(firstname, lastname)and a local 
reference required to access our context node.&amp;nbsp;Firstly,we create a 
context menu by using the static method new_menu of the cl_wd_menu 
class.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using the static method&amp;nbsp;new_menu_action_item of the 
cl_wd_menu_action_item class,&amp;nbsp;we create the two menu options we 
need.Fromthe parameters of this class,we have used:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;id&lt;/b&gt;: To set the ID of the view element&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;on_action&lt;/b&gt;: To associate the action that will be triggered when the user presses the respective option&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;text&lt;/b&gt;: The text that will be displayed for the respective menu option&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The wd Do On Context Menu example&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  METHOD wddooncontextmenu .
  DATA: lr_menu TYPE REF TO cl_wd_menu,
  lr_menu_item1 TYPE REF TO cl_wd_menu_action_item,
  lr_menu_item2 TYPE REF TO cl_wd_menu_action_item.
  DATA: lr_node TYPE REF TO if_wd_context_node,
  lv_first_name TYPE wdui_state,
  lv_last_name TYPE wdui_state.
  lr_node = wd_context-&amp;gt;get_child_node(&#39;DYNAMIC&#39;).
  lr_node-&amp;gt;get_attribute(EXPORTING name = &#39;FIRST_NAME&#39;
  IMPORTING value = lv_first_name).
  lr_node-&amp;gt;get_attribute(EXPORTING name = &#39;LAST_NAME&#39;
  IMPORTING value = lv_last_name).
  lr_menu = cl_wd_menu=&amp;gt;new_menu(id = &#39;CONTEXT_MENU&#39;).
  IF lv_first_name = 01 AND lv_last_name = 00.
  lr_menu_item1 = cl_wd_menu_action_item=&amp;gt;new_menu_action_item
  id = &#39;LAST_NAME&#39;
  on_action = &#39;LN_MANDATORY&#39;
  text = &#39;Set last name as mandatory&#39;).
  lr_menu_item2 = cl_wd_menu_action_item=&amp;gt;new_menu_action_item
  id = &#39;FIRST_NAME&#39;
  on_action = &#39;FN_MANDATORY&#39;
  text = &#39;set first name as mandatory&#39;
  enabled = abap_false).
  ELSEIF lv_first_name = 00 AND lv_last_name = 01.
  lr_menu_item2 = cl_wd_menu_action_item=&amp;gt;new_menu_action_item
  id = &#39;FIRST_NAME&#39;
  on_action = &#39;FN_MANDATORY&#39;
  text = &#39;set first name as mandatory&#39;).
  lr_menu_item1 = cl_wd_menu_action_item=&amp;gt;new_menu_action_item
  id = &#39;LAST_NAME&#39;
  on_action = &#39;LN_MANDATORY&#39;
  text = &#39;Set last name as mandatory&#39;
  enabled = abap_false).
  ENDIF.
  lr_menu-&amp;gt;add_item(the_item = lr_menu_item1).
  lr_menu-&amp;gt;add_item(the_item = lr_menu_item2).
  menu = lr_menu.
  ENDMETHOD.&lt;/pre&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;enabled&lt;/b&gt;: To set if this option is active or inactive. In the default mode,this parameter is set ABAP_TRUE,respective enabled&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 local variables used to pass the values of the two attributes 
(firstname and lastname) are of the same type as the attributes: 
WDUI_STATE.By doubleclicking on the TYPE,the forward navigation is open 
and we can see a data element with a Domain as an elementary type.This 
domain has two fixed values:00 for Normal item and 01 for required.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Before
 we effectively create the two menu options, we have to check which one 
of the two state proprieties is set required and which one is set 
normal.In case the firstname is required and lastname is normal,we 
create the two menu options with “Set last name as mandatory” active and
 “Set first name as mandatory” inactive.In case the firstname is normal 
and the lastname is required,we create the two menu options with “Set 
last name as mandatory” inactive and “Set first name as 
mandatory”active.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Then,
 we add the two created menu options of menuActionItem type to our 
context menu and display the respective menu by using the 
wdDoOnContextMenu Hook method, returning the parameter named menu.&amp;nbsp;we 
have already seen that, for our InputFields UI elements, we have set the
 properties:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;context Menu Behaviour&lt;/b&gt;: Provides, not inherits from the container&lt;/li&gt;
&lt;/ul&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;context Menu Id&lt;/b&gt;: Set with the IDs of our context menu options&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;174&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_14.jpg&quot; type=&quot;image&quot; width=&quot;595&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
All
 we have to do now is to create the respective actions: FN_MANDATORY and
 LN_MANDATORY,actions that the Framework triggers when the user presses 
our menu action items. The onactionln_mandatory event handler method is 
presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Event handler method triggered for the menu option with LAST_NAME ID&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  method ONACTIONLN_MANDATORY .
  DATA lr_node TYPE REF TO if_wd_context_node.
  DATA ls_data TYPE wd_this-&amp;gt;element_dynamic.
  lr_node = wd_context-&amp;gt;get_child_node(&#39;DYNAMIC&#39;).
  ls_data-first_name = cl_wd_input_field=&amp;gt;e_state-normal.
  ls_data-last_name = cl_wd_input_field=&amp;gt;e_state-required.
  lr_node-&amp;gt;set_static_attributes(ls_data).
  endmethod.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 case the user chooses the last name as mandatory, we have to set 
required the property state of the corresponding UI element and normal 
the property state of the UI element corresponding to the first name.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 onactionfn_mandatory event handler method is presented in Listing In 
case the user chooses the first name as mandatory, we have to set 
required the property state of the corresponding UI element and to set 
normal the property state of the UI element corresponding to the last 
name.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Event handler method triggered for the menu option with FIRST_NAME ID&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  method ONACTIONFN_MANDATORY .
  DATA lr_node TYPE REF TO if_wd_context_node.
  DATA ls_data TYPE wd_this-&amp;gt;element_dynamic.
  lr_node = wd_context-&amp;gt;get_child_node(&#39;DYNAMIC&#39;).
  ls_data-first_name = cl_wd_input_field=&amp;gt;e_state-required.
  ls_data-last_name = cl_wd_input_field=&amp;gt;e_state-normal.
  lr_node-&amp;gt;set_static_attributes(ls_data).
  endmethod.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;205&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_15.jpg&quot; type=&quot;image&quot; width=&quot;595&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;339-supply-function-methods&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Supply Function Methods&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 have used this type of methods every time we have assigned a supply 
function to a context node, every time we have populated the context 
attributes of the context nodes with initial values via supply function.
 When a controller is called, these methods are called first.&amp;nbsp;We have 
seen that a supply function can be assigned to each context node of a 
Controller.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context node and supply function&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;175&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_16.jpg&quot; type=&quot;image&quot; width=&quot;595&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 Framework generates a corresponding supply function method.An 
alternative for the supply function methods can be the wdDoInit Hook 
method, if we know that the context is filled only once at 
initialization and it is not invalidated afterwards.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Supply function&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;218&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_17.jpg&quot; type=&quot;image&quot; width=&quot;595&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;340-user-defined-instance-methods&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;User-Defined Instance Methods&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the Methods tab, we can create our own user-defined methods with or 
without parameters. After creating a user-defined method, we can call it
 in the same controller, by using the wd_this self reference.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In this case, we copy our example from the wdDoModifyView Hook method and we create two extra user-defined methods:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;A method named GREETING that has two import parameters&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;A method named PERFORM_VALLIDATION that has one import parameter&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the ONACTIONNEXT event handler method, we check whether the attribute 
NAME is initial, respective if the user didn’t enter his first name. In 
case of initial attribute, we call our own defined PERFORM_VALIDATION 
method. By using this method, we show an error message. In case this 
attribute is not empty, we call our own defined GREETING method to 
create a greeting for the end user.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 user-defined GREETING method. As we can see, this method has defined an
 importing parameter named P_NAME of STRING type and an importing 
parameter named P_NODE of ref to if_wd_context_node type. The P_NAME 
parameter holds the value of the NAME attribute.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The&amp;nbsp;user-defined
 PERFORM_VALIDATION method. As we can see, this method has an importing 
parameter named P_ELEMENT, referable to the interface 
IF_WD_CONTEXT_ELEMENT.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this case, we have used the method REPORT_ATTRIBUTE_ERROR_MESSAGE of 
the interface IF_WD_MESSAGE_MANAGER to report a Web Dynpro error message
 to a context attribute.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 ONACTIONNEXT event handler method.&amp;nbsp;As we can see, the local variable 
lv_name holds the value of the NAME attribute. If this attribute is 
empty, we have to show an error message. To do this, we use our own 
defined PERFORM_VALIDATION method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;User-defined GREETING method&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;316&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_18.jpg&quot; type=&quot;image&quot; width=&quot;595&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;User-defined PERFORM_VALIDATION method&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;327&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_19.jpg&quot; type=&quot;image&quot; width=&quot;595&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
wd_this-&amp;gt;perform_validation(EXPORTING
 p_element = lr_element).&amp;nbsp;If this attribute is not initial, we use its 
value as exporting parameter for our own defined method GREETING.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactionnext event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionnext .
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_data TYPE wd_this-&amp;gt;element_person.
 DATA lv_name TYPE string.
 DATA lr_element TYPE REF TO if_wd_context_element.
 lr_node = wd_context-&amp;gt;get_child_node(&#39;PERSON&#39;).
 lr_element = lr_node-&amp;gt;get_element( ).
 lr_node-&amp;gt;get_attribute(EXPORTING name = &#39;NAME&#39;
 IMPORTING value = lv_name).
 IF lv_name IS INITIAL.
 wd_this-&amp;gt;perform_validation(EXPORTING p_element = lr_element).
 ELSE.
 wd_this-&amp;gt;greeting(EXPORTING p_name = lv_name
 p_node = lr_node).
 ENDIF.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;222&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_20.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;341-fire-methods&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Fire Methods&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
A
 Fire method is a special kind of method generated by the Framework when
 we define an outbound plug.We need inbound plugs and outbound plugs to 
define the navigation between two views.These plugs are the entry and 
the exit point for each view.&amp;nbsp;We create an example,a WD component that 
has two Views. The WD component structure is presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;221&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_21.jpg&quot; style=&quot;border: none;&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this case, we want to navigate from the view V_VIEW1 to the view 
V_VIEW2, when the Framework triggers an event handler method, respective
 when the user presses a button.&amp;nbsp;In the COMPONENTCONTROLLER,we create a 
context node PERSON, Cardinality 1...1,Singleton and one attribute NAME 
of string type.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;112&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_22.jpg&quot; style=&quot;border: none;&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 data stored in the context of the component controller are used within 
the two views V_VIEW1 and V_VIEW2, through context mapping.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View V_VIEW1 layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;109&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_23.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View V_VIEW2 layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;99&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_24.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When
 the user presses the Next button,we want to navigate from the view 
V_VIEW1 to the view V_VIEW2.The view V_VIEW1 will be replaced with the 
view V_VIEW2. This navigation is possible through a navigation link 
between the views, in the window.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Plugs and navigation&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;244&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_25.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To set up navigation between our views, we must create an&amp;nbsp;&lt;b&gt;inbound plug&lt;/b&gt;&amp;nbsp;for the view V_VIEW2 and an&lt;b&gt;&amp;nbsp;outbound plug&lt;/b&gt;&amp;nbsp;for the V_VIEW1.&amp;nbsp;In the Outbound Plug tab of the view V_VIEW1, we create an outbound plug named OP_TO_V_VIEW2.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Out bound plug&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;111&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_26.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In the Inbound plug tab of the view V_VIEW2,we create an inbound plug named IP_V_VIEW2.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;In bound plug&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;104&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_27.jpg&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When
 the user presses the Next button,the Framework triggers the event 
handler method onactionnext.Every time we create an outbound plug for a 
view,a special method is added to its interface. This method has the 
statement FIRE_&amp;lt;NAME_OUTBOUND_PLUG&amp;gt;_PLG. To fire this method, we 
can use the Web Dynpro CodeWizard or select an outbound plug when 
creating an Action.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The event handler method has the following statement:&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionnext .
 wd_this-&amp;gt;fire_op_to_v_view2_plg( ).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating an action&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;202&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_28.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 use the self-reference WD_THIS of the view controller to fire the 
method FIRE_OP_TO_V_VIEW2_PLG that was added to this interface when we 
have created the outbound plug.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
All
 the views within a window can be connected to each other by using 
navigation links.To be able to create the navigation,we embed the views 
in the window and then we drag &amp;amp; drop the outbound plug to the 
inbound plug. We can also create navigation by right-clicking on the 
output plug name.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating navigation link&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;178&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_29.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
At
 runtime, when the user interacts with the view V_VIEW1, his interaction
 will cause a request to the server.In response, the view V_VIEW1 will 
be replaced with the view V_VIEW2. This is possible through the 
navigation link defined between these views.&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;342-event-handler-methods&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Event Handler Methods&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
An event handler method responds to&lt;b&gt;&amp;nbsp;actions&lt;/b&gt;&amp;nbsp;or to&lt;b&gt;&amp;nbsp;events&lt;/b&gt;. We have used this type of methods every time we have assigned an&amp;nbsp;&lt;b&gt;action&lt;/b&gt;&amp;nbsp;to
 an UI element.This kind of methods are special methods of a view 
controller that has the prefix ONACTION followed by the action name.&amp;nbsp;As 
we have seen,the action is defined in the Action tab and the 
corresponding event handler method is generated by the Framework.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Action and event handler method&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;275&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_30.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 can assign an action to an UI element that has an event, indifferent if
 this UI element is created dynamically or at the design time.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Action and UI element&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;139&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_31.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Let’s create an example where we use an event handler method implemented to respond to&lt;b&gt;&amp;nbsp;events of inbound plugs!&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 have seen that the outbound plugs are the starting point of navigation,
 called in any method of the view controller by using the statement:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
wd_this-&amp;gt;FIRE_&amp;lt;NAME_OUTBOUND&amp;gt;_PLG( ).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This method allows also parameter transfer&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
wd_this-&amp;gt;FIRE_&amp;lt;NAME_OUTBOUND&amp;gt;_PLG(PARAMETER = ‘value’).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this case, the PARAMETER has to be entered in the parameter table of 
the view controller.&amp;nbsp;For a better understanding,we create the same 
example as for the fire methods, but in this case we show an error 
message when the user doesn’t enter a value in the inputField UI 
element.We will pass a reference to Message Manager from a view to 
another view, via an outbound parameter.&amp;nbsp;In the View_1 we add in the 
parameter table,on the Outbound plug,a parameter named P_MM.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Defining the parameter for an Outbound Plug&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;255&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_32.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user presses the Next button, the Framework triggers the event handler method onactionnext.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionnext .
 DATA: lr_api_controller TYPE REF TO if_wd_controller,
 lr_api_manager TYPE REF TO if_wd_message_manager.
 lr_api_controller ?= wd_this-&amp;gt;wd_get_api( ).
 lr_message_manager = lr_api_controller-&amp;gt;get_message_manager( ).
 wd_this-&amp;gt;fire_op_to_v_view2_plg( p_mm = lr_message_manager).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Inbound plug&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;97&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_34.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 don’t have the possibility to create a parameter for an Inbound Plug.In
 this case, we use the event handler method HANDLEIP_V_VIEW2 to read the
 value of the P_MM parameter.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When
 an inbound plug is called, the handler method that is uniquely assigned
 to this inbound plug is called. This method is automatically generated 
in the view controller when the inbound plug is created.We find this 
method in the Methods tab of the view V_VIEW2.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Event handler method&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;106&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_34.jpg&quot; type=&quot;image&quot; width=&quot;545&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 value of the parameter P_MM is passed by the outbound plug 
OP_TO_V_VIEW2. To be able to read the value of this parameter, we have 
to add the parameter P_MM to the signature of the event handler method 
assigned to the inbound plug,i.e.the HANDLEIP_V_VIEW2 event handler 
method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Event handler method. Implementation&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;357&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_35.jpg&quot; type=&quot;image&quot; width=&quot;595&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this way, the value of the P_MM parameter is known by the event handler
 method and can be used to send a message in case the user doesn’t enter
 a value in the InputField UI element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;54&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7_5_t.jpg&quot; style=&quot;border: none;&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/6852745087669477636/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/view-controller-methods-abstract-as-we.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/6852745087669477636'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/6852745087669477636'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/view-controller-methods-abstract-as-we.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-9070382625789264049</id><published>2012-09-22T23:03:00.001-07:00</published><updated>2012-09-22T23:03:24.476-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.blogger.com/goog_1595663753&quot;&gt;&lt;br /&gt;&lt;/a&gt;
&lt;br /&gt;
&lt;h1 style=&quot;background-color: white; background-image: none; background-position: 0% 0%; background-repeat: no-repeat no-repeat; border: none; color: #0099ff; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; height: 40px; line-height: 24px; margin: 0px; padding: 0px; text-align: justify;&quot;&gt;
&lt;a href=&quot;http://adf.ly/CUYa2&quot; target=&quot;_blank&quot;&gt;Layout UI Elements&lt;/a&gt;&lt;/h1&gt;
&lt;div&gt;
The
 following section details and describes the Layout of the UI elements. 
Here, we are going to present the various types of existent Layouts and 
the modality to use them, either in static or in dynamic variant.&amp;nbsp;The 
layout helps us to manage the arrangement of the UI elements within 
their parent container.&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
All
 the UI elements within a view are hierarchy arranged. The node 
ROOTUIELEMENTCONTAINER is the root of this hierarchy and all the UI 
elements. within a view are children of this root container. It is of 
TransparentContainer type and has initially assigned to it the 
FlowLayout layout. In our first example, we have seen that we have the 
possibility to change it from ransparentContainer into another UI 
element, in case this one doesn’t have any children.&amp;nbsp;Table shows the 
layout UI elements that are available for arranging the UI elements in a
 view, and the corresponding LayoutData.&amp;nbsp;The layout is the abstract base
 class of all the layout UI elements within Web Dynpro and has the 
runtime class CL_WD_LAYOUT.&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;b&gt;Layout and LayoutData UI element&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;input height=&quot;131&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%208/Layout-and-LayoutData-UI-element.png&quot; type=&quot;image&quot; width=&quot;497&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
The
 layout data of an UI element are used to specify the position within a 
container and have the runtime class CL_WD_LAYOUT_DATA.&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;385-flow-layout&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Flow Layout&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
If
 we use the FlowLayout layout, all the UI elements are displayed in a 
line. Byusing the property WRAPPING of the container into which the UI 
elements are going to be integrated, we can manipulate the modality of 
putting these UI elements on screen. In case this property is ABAP_TRUE,
 the UI elements that don’t enter in the first line are arranged bellow,
 in another line, to automatically adapt to the client window. In case 
of ABAP_FALSE, the UI elements are not automatically adapted to the 
client window.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 a better understanding, we create a Registration Form with three 
fields: first name, last name and date of birth. The WD component 
structure and the view layout are presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure and view layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;280&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch81.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In View context, we create the same well-known STUDENT contextnode with the dictionary structure YSTR_PERSON.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
ROOTUIELEMENTCONTAINER
 and Group UI element are both UI elements of container type, which have
 the FlowLayout layout in the default mode.&amp;nbsp;Each UI element reference to
 a LayoutData object and every UI element inserted within a container 
must have the data layout that matches the respective container.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Layout and layout data&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;349&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch82.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime: wrapping ABAP_TRUE&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;326&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch83.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we can see, the UI elements are arranged in a line. Because the 
attributes of STUDENT context node are empty, the InputField’s UI 
elements bound to these attributes are not shown. After the user presses
 the Save Button, we show all the data that the user has entered in the 
InputField UI elements.&amp;nbsp;In this case, all the UI elements don’t enter in
 a line anymore, because the client window is too small for that. The 
elements that don’t enter in the first line are arranged below in 
another line, to automatically adapt to the client window.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 can see that, for the layout data, we can set two properties: 
cellDesign that specifies the distance between rows and vGutter that 
specifies the additional distance to the left edge. The default of these
 values is cellDesign – padless (there is no distance between the row 
and the edges) and vGutter – none (no additional distance).&amp;nbsp;In case the 
wrapping property is ABAP_FALSE, the UI elements that don’t enter in the
 first line are not arranged below in another line, they are not visible
 anymore.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime: wrapping ABAP_FALSE&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;165&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch84.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 a dynamic manipulation, we can use the runtime class CL_WD_FLOW_DATA to
 embedding the UI elements into the container that has a FlowLayout 
layout.An example of using this class we have seen in the wdDoModifyView
 example.&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;537-gridlayout&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;GridLayout&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
f
 we use the GridLayout layout, all the UI elements are arranged in 
container in a tabular grid with a fixed number of columns. We can 
specify the number of columns in the grid by usingthe property colCount.
 The number of rows depends on the number of the UI elements added to 
the container.We create the same example, but in this case we use 
GridLayout layout for the Group container.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Group container: GridLayout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;383&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch85.jpg&quot; type=&quot;image&quot; width=&quot;545&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 arrange all the UI elements from the GRP Group UI element in two 
columns.In this case, at runtime we have:&amp;nbsp;As we can see,the number of 
columns is two and the number of rows is five.We want the Save button to
 remain alone in its row. To do this, we have to use an 
InvisibleElement.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;144&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch86.jpg&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This UI element is an invisible element on the screen and can be used to fill an empty cell in the GridLayout.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;InvisibleElement and GridLayout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;206&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch87.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 a dynamic manipulation, we can use the runtime class CL_WD_GRID_ DATA 
to embedding the UI elements into the GRP container that has a 
GridLayout layout.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;UI elements into the GRP container that has a GridLayout layout&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddomodifyview.
 DATA lv_bind_attribute TYPE string.
 DATA lr_input_field TYPE REF TO cl_wd_input_field.
 DATA lr_container TYPE REF TO cl_wd_group.
 DATA lr_label TYPE REF TO cl_wd_label.
 DATA lr_grid_data TYPE REF TO cl_wd_grid_data.
 IF first_time EQ abap_true.
 lr_label = cl_wd_label=&amp;gt;new_label(id =&#39;FIRSTNAME_LABEL&#39; label_for =&#39;FIRSTNAME&#39; ).
 lr_grid_data = cl_wd_grid_data=&amp;gt;new_grid_data(element = lr_label).
 lr_container ?= view-&amp;gt;get_element(&#39;GRP&#39;).
 lr_container-&amp;gt;add_child(index = 1 the_child = lr_label).
 lv_bind_attribute = &#39;STUDENT.FIRSTNAME&#39;.
 lr_input_field = cl_wd_input_field=&amp;gt;new_input_field(
id =&#39;FIRSTNAME&#39; bind_value = lv_bind_attribute).
 lr_grid_data = cl_wd_grid_data=&amp;gt;new_grid_data(element = lr_input_field).
 lr_container ?= view-&amp;gt;get_element(&#39;GRP&#39;).
 lr_container-&amp;gt;add_child(index = 2 the_child = lr_input_field ).
 ENDIF.
  ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this example,we dynamically created the first two UI elements: 
InputField for the user first name and the corresponding label. To embed
 these UI elements into the GRP container (GridLayout),we use the proper
 GridData layout.&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;538-matrixlayout&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;MatrixLayout&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
If
 we use the MatrixLayout, all the UI elements from a container are 
arranged in columns. With MatrixLayout, we can produce a grid with a 
variable number of columns per row. Each UI element inserted in a 
container that has the MatrixLayout layout will contain either a 
MatrixData object or a MatrixHeadData object.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Layout and layout data&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;195&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch88.jpg&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
An
 UI element that has MatrixHeadData data layout starts a new row and the
 UI elements that have MatrixData data layout are shown in the same row,
 until an UI element is set MatrixHeadData and a new row is created.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;UI elements arranged in a container by using a MatrixLayout layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;181&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch89.jpg&quot; type=&quot;image&quot; width=&quot;475&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 a dynamic manipulation, we can use the runtime class CL_WD_MATRIX_ 
HEAD_DATA and CL_WD_MATRIX_DATA to embed the UI elements into the GRP 
container that has a MatrixLayout layout .&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;GRP container that has a MatrixLayout layout&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddomodifyview.
 DATA lv_bind_attribute TYPE string.
 DATA lr_input_field TYPE REF TO cl_wd_input_field.
 DATA lr_container TYPE REF TO cl_wd_group.
 DATA lr_label TYPE REF TO cl_wd_label.
 DATA lr_matrix_head_data TYPE REF TO cl_wd_matrix_head_data.
 DATA lr_matrix_data TYPE REF TO cl_wd_matrix_data.
 IF first_time EQ abap_true.
 lr_label = cl_wd_label=&amp;gt;new_label(id =&#39;FIRSTNAME_LABEL&#39;
 label_for =&#39;FIRSTNAME&#39;).
 lr_matrix_head_data =
 cl_wd_matrix_head_data=&amp;gt;new_matrix_head_data(element = lr_label).
 lr_container ?= view-&amp;gt;get_element(&#39;GRP&#39;).
 lr_container-&amp;gt;add_child(index = 1 the_child = lr_label).
 lv_bind_attribute =&#39;STUDENT.FIRSTNAME&#39;.
 lr_input_field = cl_wd_input_field=&amp;gt;new_input_field(id =&#39;FIRSTNAME&#39;
 bind_value = lv_bind_attribute).
 lr_matrix_data = cl_wd_matrix_data=&amp;gt;new_matrix_data(element =
 lr_input_field).
 lr_container ?= view-&amp;gt;get_element(&#39;GRP&#39;).
 lr_container-&amp;gt;add_child(index = 2 the_child = lr_input_field).
 ENDIF.
 ENDMETHOD.&lt;/pre&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;539-rowlayout&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;RowLayout&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
If
 we use RowLayout, all the UI elements from a container are arranged 
into horizontal rows.&amp;nbsp;Each UI element inserted in a container that has 
the RowLayout layout will contain either a RowData object or a 
RowHeadData object.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Layout and layout data&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;185&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch90.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 kind of layout is helpful when we want to arrange our UI elements into 
horizontal rows,but where we don’t need a vertical alignment between the
 resulting columns..&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;UI elements arranged in a container by using a RowLayout layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;171&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch91.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 a dynamic manipulation, we can use the runtime class CL_WD_ROW_ 
HEAD_DATA and CL_WD_ROW_DATA to embed the UI elements into the GRP 
container that has a RowLayout layout..&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;GRP container that has a RowLayout layout&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddomodifyview.
 DATA lv_bind_attribute TYPE string.
 DATA lr_input_field TYPE REF TO cl_wd_input_field.
 DATA lr_container TYPE REF TO cl_wd_group.
 DATA lr_label TYPE REF TO cl_wd_label.
 DATA lr_row_head_data TYPE REF TO cl_wd_row_head_data.
 DATA lr_row_data TYPE REF TO cl_wd_row_data.
 IF first_time EQ abap_true.
 lr_label = cl_wd_label=&amp;gt;new_label(id =&#39;FIRSTNAME_LABEL&#39;
 label_for = &#39;FIRSTNAME&#39;).
 lr_row_head_data = cl_wd_row_head_data = &amp;gt;new_row_head_data(element = lr_label).
 lr_container ?= view-&amp;gt;get_element(&#39;GRP&#39;).
 lr_container-&amp;gt;add_child(index = 1
 the_child = lr_label).
 lv_bind_attribute =&#39;STUDENT.FIRSTNAME&#39;.
 lr_input_field = cl_wd_input_field= new_input_field(id =&#39;FIRSTNAME&#39;
 bind_value = lv_bind_attribute).
 lr_row_data = cl_wd_row_data=&amp;gt;new_row_data(element =lr_input_field).
 lr_container ?= view-&amp;gt;get_element(&#39;GRP&#39;).
 lr_container-&amp;gt;add_child(index = 2 the_child = lr_input_field).
 ENDIF.
 ENDMETHOD.&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/9070382625789264049/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/layout-ui-elements-following-section.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/9070382625789264049'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/9070382625789264049'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/layout-ui-elements-following-section.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-8850978024001063655</id><published>2012-09-22T23:02:00.009-07:00</published><updated>2012-09-22T23:02:58.572-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;a href=&quot;http://adf.ly/D1YPv&quot; target=&quot;_blank&quot;&gt;&lt;br /&gt;&lt;/a&gt;
&lt;br /&gt;
&lt;h1 style=&quot;background-color: white; background-image: none; background-position: 0% 0%; background-repeat: no-repeat no-repeat; border: none; color: #0099ff; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; height: 40px; line-height: 24px; margin: 0px; padding: 0px; text-align: justify;&quot;&gt;
&lt;a href=&quot;http://adf.ly/D1YPv&quot; target=&quot;_blank&quot;&gt;User Interface Elements (UI elements) Static and Dynamic Programming-part 1&lt;/a&gt;&lt;/h1&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
The
 UI elements we can use in the Web Dynpro ABAP are divided in various 
categories.In this chapter, we are going to present some of the UI 
elements, included in the categories:action, selection,layout, complex, 
graphic and integration. Each UI element will be illustrated by an 
example,showing the modality of using it either in static or in dynamic 
variant.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
A
 UI element is a User Interface element we use to create a screen for 
the end user. The UI Elements are grouped in categories we can access 
via the View Layout,and each UI Element has some properties, as follows&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;color: #333333; list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Common with other UI elements,inherited from superclasses&lt;/li&gt;
&lt;li style=&quot;color: #333333; list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Specific only for an UI element&lt;/li&gt;
&lt;li style=&quot;color: #333333; list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;For example, the following properties are inherited:&lt;/li&gt;
&lt;li style=&quot;color: #333333; list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;&lt;i&gt;Tooltip:&lt;/i&gt;&lt;/b&gt;&amp;nbsp;Shows a quick info text when the user passes the mouse pointer over the UI element&lt;/li&gt;
&lt;li style=&quot;color: #333333; list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;&lt;i&gt;Visible:&lt;/i&gt;&lt;/b&gt;&amp;nbsp;Determined if an UI element is visible in the screen or not&lt;/li&gt;
&lt;li style=&quot;color: #333333; list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;&lt;i&gt;Enabled:&lt;/i&gt;&lt;/b&gt;&amp;nbsp;Specified if the UI element is active or inactive&lt;/li&gt;
&lt;li style=&quot;color: #333333; list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
By
 using the Class Builder transaction SE24, we can see different classes 
along with their inheritances and attributes. For example, the class 
CL_WD_UIELEMENT is the super class of all the UI elements we use in Web 
Dynpro ABAP. Being super class, this class has 
CL_WD_VIEW_ELEMENT.&amp;nbsp;presents the tooltip,visible and enable properties 
for an InputField UI element.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
Most
 of the UI elements properties can be bound to different context nodes 
or attributes.In this way, we can manipulate the UI elements via the 
data held in the context. Each bindable property of a UI element has a 
certain type. For example,the enabled property can be bound to an 
attribute of WDY_BOOLEAN type.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;input height=&quot;149&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/1.png&quot; type=&quot;image&quot; width=&quot;435&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
when
 this attribute is set ABAP_TRUE, the respective UI element is 
active.When this attribute is set ABAP_FALSE, the respective UI element 
is inactive.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
The
 UI elements, along with the aggregations, determine the appearance and 
behaviour of the UI elements on the screen. The Web Dynpro UI elements 
are divided in categories. Hereunder, we present some of these 
categories.&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;428-graphic&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Graphic&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 category contains UI elements that help us to work with graphics 
maps,etc. Hereunder,we present some of the UI Elements included in this 
category.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Image&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 UI element enables us to integrate graphics in our WD application. Same
 as other UI elements, it has some properties. Hereunder,we show a table
 with some of the Image UI element properties that can be bound,and the 
attribute type in case the property is bindable.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Some of the Image UI element properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;149&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/Some-of-the-Image-UI-element-properties.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create a WD Component, where we can choose among three images and we 
can manipulate the current image via the data held in the context.The WD
 component structure is presented.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;211&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/112.png&quot; type=&quot;image&quot; width=&quot;246&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 import three images in JPG format.As we have mentioned,to import an 
image into a MIME folder,we have to choose Create Mime Object Import 
from the contextual menu,shown by right-clicking on the WD component 
name.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 context node DYNAMIC is Singleton, cardinality 1...1. The attributes 
WIDTH and HEIGH are STRING type and the attribute BORDER is I type. We 
use these attributes to manipulate the properties of the Image UI 
element. For the attributes WIDTH,BORDER and HEIGH, it is defined the 
data binding to the properties (with the same names) of the UI element 
Image.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure and data binding&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;268&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/113.png&quot; style=&quot;border: none;&quot; width=&quot;550&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 context node DROPDOWNBYINDEX has the dictionary structure 
SHSVALSTR2,cardinality 0...n,Singleton.We have defined a data binding 
between the attribute KEY and the property texts of the dropDownByIndex 
UI element. The attribute VALUE is used to manipulate the property 
source of the Image UI element.This property defines the name of the 
image file shown on the screen.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View Layout structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;202&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/114.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 populate with values the context attributes of the context node 
DROPDOWNBYINDEX, we use the supply function method shown in the Listing.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Supply function method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD supply_dropdownbyindex.
 DATA:
 ls_image TYPE wd_this-&amp;gt;element_drop down by index,lt_image LIKE TABLE OF ls_image.
 ls_image-key =&#39;Germany&#39;.
 ls_image-value =&#39;deutschland.jpg&#39;.
 APPEND ls_image TO lt_image.
 ls_image-key = &#39;France&#39;.
 ls_image-value =&#39;france.jpg&#39;.
 APPEND ls_image TO lt_image.
 ls_image-key =&#39;Italy&#39;.
 ls_image-value =&#39;italia.jpg&#39;.
 APPEND ls_image TO lt_image.
 node-&amp;gt;bind_table(
 new_items =lt_image
 set_initial_elements = abap_true).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;311&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/115.png&quot; type=&quot;image&quot; width=&quot;475&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
RUNTIME CLASS: CL_WD_IMAGE&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 present a table showing the correspondence between the view designer 
name and the runtime name, with the proper types,in case of dynamic 
programming of an Image UI element.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The implementation of a dynamic Image UI element contains the following statements:&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic creation of an Image UI element&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; data lr_image type ref to cl_wd_image.
 data lr_image type ref to cl_wd_image.
 Ir_image = cl_wd_image=&amp;gt;new_image( id =‘IMG_IMAGE’
 bind_width =‘DYNAMIC.WIDTH’
 bind_height =‘DYNAMIC.HEIGHT’
 bind_border =‘DYNAMIC.BORDER’
 bind_source =‘DROPDOWNBYINDEX.VALUE’).&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;BusinessGraphics&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 UI element enables us to use several chart types in our WD 
application.The Internet Graphics Service (IGS) helps us to work with 
this UI element,being able to show graphics in a browser.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 chart engine is a C++ library that supports chart types, from simple 
charts (e.g. bars or pie) to complex charts(e.g. gantt).We create a WD 
Component with the structure presented in Fig. By using the 
BusinessGraphics UI element,we show the graphical illustration of the 
data stored in our database table YPERSON.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;151&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/116.png&quot; type=&quot;image&quot; width=&quot;248&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;125&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/117.png&quot; type=&quot;image&quot; width=&quot;193&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 node person has the dictionary structure YPERSON, cardinality 1...n, 
Singleton. From this structure,we choose only LASTNAME and AGE. We have 
used a chart of columns type,to graphically display the data contained 
by the columns of our database table.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View Layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;331&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ran.png&quot; style=&quot;border: none;&quot; width=&quot;550&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using the supply function, we populate the node PERSON with data from 
the database table YPERSON. We select all the data from the two columns 
LASTNAME and AGE.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;311&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/118.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 perform customizing settings for business graphics, we have to use the 
SAP Chart Designer. We access this tool by double-clicking on the chart 
picture, in the view layout. Now,the SAP Chart Designer is open and we 
can customise our chart.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Chart designer&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;291&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/119.png&quot; style=&quot;border: none;&quot; width=&quot;550&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 save the settings we made; the Framework generates a MIME file in XML 
format and sets the property customizing of the BusinessGraphics UI 
element.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Saving the customizing in a XML file&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;169&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/000000000000000000000.png&quot; type=&quot;image&quot; width=&quot;545&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime result&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;301&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/111111111.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
RUNTIME CLASS: CL_WD_BUSINESS_GRAPHICS&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 present a table showing the correspondence between the view designer 
name and the runtime name, with the proper types,in case of dynamic 
programming of a BusinessGraphics UI element (Table). For a BusinessGra 
.&amp;nbsp;The Category object has the CL_WD_CATEGORY runtime class.The Series 
can be Series,runtime&lt;br /&gt;
CL_WD_SERIES or SimpleSeries,runtime class CL_WD_SIMPLE_SERIES&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;230&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/Dynamic-programming.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 implementation of a dynamic BusinessGraphics UI element(with a 
SimpleSeries and a Category)contains the following statements.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic creation of a BusinessGraphics UI element&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddomodifyview.
  DATA lr_flow_data TYPE REF TO cl_wd_flow_data.
 DATA lr_container TYPE REF TO cl_wd_uielement_container.
 DATA lr_businessgraphics TYPE REF TO cl_wd_business_graphics.
 DATA lr_category TYPE REF TO cl_wd_category.
 DATA lr_simpleseries TYPE REF TO cl_wd_simple_series.
 IF first_time EQ abap_true.
 lr_container ?= view-&amp;gt;get_element(&#39;ROOTUIELEMENTCONTAINER&#39;).
 lr_businessgraphics = cl_wd_business_graphics=&amp;gt;new_business_graphics(id = &#39;BGR&#39;
 chart_type = cl_wd_business_graphics=&amp;gt; e_
 chart_type-columns
 dimension = cl_wd_business_graphics=&amp;gt;e_dimension-two
 height = 300
 width = 300
 bind_series_source = &#39;PERSON&#39;
 customizing = &#39;D57PJD6VB3MQAZR78XQHWTMIT.xml&#39;
 ).
 lr_flow_data = cl_wd_flow_data=&amp;gt;
 new_flow_data(element = lr_businessgraphics).
 lr_container-&amp;gt;add_child(lr_businessgraphics).
 lr_category ?= cl_wd_category=&amp;gt;new_category(id = &#39;CATEGORY&#39;
 bind_description = &#39;PERSON.LASTNAME&#39;
 tooltip =&#39;Candidates last name&#39;
 ).
 lr_simpleseries ?=  cl_wd_simple_series=&amp;gt;
 new_simple_series(id =&#39;SIMPLESERIES&#39;
 label =&#39;Candidate Age&#39;
 bind_value =&#39;PERSON.AGE&#39;
 tooltip =&#39;Candidate Age&#39;
 ).
 lr_businessgraphics-&amp;gt;set_category(the_category = lr_category).
 lr_businessgraphics-&amp;gt;add_series(the_series = lr_simpleseries).
 ENDIF.
 ENDMETHOD.
&lt;/pre&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;583-action&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Action&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 UI elements that contain an action are included in this category.Some 
of these UI elements we have already used (Button, LinkToAction).&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Timed Trigger&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 UI element triggers automatically and periodically an event.To specify 
the periodicity,we have to use its delay property. As we have mentioned 
above, most of the UI element properties can be bound. Hereunder, we 
show a table with some of the TimedTrigger properties that can be bound 
and the attribute type in case the property is bindable&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Some of TimedTrigger UI element properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;84&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/Some-of-TimedTrigger-UI-element-properties.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;144&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/_1.png&quot; type=&quot;image&quot; width=&quot;241&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
At
 every 5 s, we trigger an event that uses a Function Module to generate a
 random number under 1,000.In context view, we create a node named 
COUNTER,cardinality 1...1,Singleton that has an attribute COUNTER_TT of i
 type.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&amp;nbsp;&lt;img alt=&quot;&quot; height=&quot;219&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/2.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We have used an action named TRIGGER to specify the action to be triggered after the specified delay 5.&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactiontrigger.
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_data TYPE wd_this-&amp;amp;gt;element_counter.
 DATA lv_step TYPE i.
 lr_node = wd_context-&amp;amp;gt;get_child_node(&#39;COUNTER&#39;).
 CALL FUNCTION &#39;GENERAL_GET_RANDOM_INT&#39;
 EXPORTING
 range = 1000
 IMPORTING
 random = lv_step.
 ls_data-counter_tt = lv_step.
 lr_node-&amp;amp;gt;set_static_attributes(ls_data).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 Function Module GENERAL_GET_RANDOM_INT has an import parameter named 
RANGE of i type and an exporting parameter named RANDOM of i type. This 
function returns the random value with 0(RANDOM)(RANGE) At runtime.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;runtime fig&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;83&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/3.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;RUNTIME CLASS: CL_WD_TIMED_TRIGGER&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we have seen,by using the wdDoModifyView( )Hook method we can 
dynamically create an UI element. The same properties, events and 
aggregations as in the View Designer are available.&amp;nbsp;Hereunder,we present
 a table showing the correspondence between the view designer name and 
the runtime name, with the proper types,in case of dynamic programming 
of a TimedTrigger UI element .&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input alt=&quot;520&quot; height=&quot;148&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/Dynamic-programming_1.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The implementation of a dynamic TimedTrigger UI element contains the following statements.&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; DATA lr_timed_trigger TYPE REF TO cl_wd_timed_trigger.
  lr_timed_trigger = cl_wd_timed_trigger=&amp;gt;
 new_timed_trigger(id =&#39;TIMED_TRIGGER&#39;delay = 5 on_action =&#39;TRIGGER&#39;).&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;ButtonChoice&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 can use this UI element to choose among the various options offered by 
the menu. Hereunder, we present a list with some of the ButtonChoice 
properties that can be bound, and the attribute type in case the 
property is bindable.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Some of the ButtonChoice UI element properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;71&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/Some-of-the-ButtonChoice-UI-element-properties.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create aWDapplication, where we use the ButtonChoice UI element to 
offer to the end user a menu list with two options: power and divide.&amp;nbsp;To
 realise these calculations, we have used the methods of the class 
CL_FOEV_BUILTINS.As we can see in Fig.this class has many calculation 
methods,from the PLUS method (that performs a simple addition) to 
functions,in order to obtain the Integer Part or Hyperbola Sinus.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Class CL_FOEV_BUILTINS&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;288&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/4.png&quot; style=&quot;border: none;&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The structure of the POWER method&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;262&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/5.png&quot; style=&quot;border: none;&quot; width=&quot;514&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 method has two importing parameters, named IM_ARG1 and IM_ARG2, and an 
exporting parameter, named EX_RESULT, of float type. The method DIVIDE 
has the same parameters.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 this scope, we create our context node named CALCULATE, with the 
context attributes ARG1 of f type, ARG2 of f type and RESULT of f type, 
required to perform the calculations and to holdthe result.The WD 
component structure and the view context structure are presented.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure and view context structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;165&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/6.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The View layout&lt;/b&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;242&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ttttttt.png&quot; type=&quot;image&quot; width=&quot;455&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the ButtonChoice UI element, we insert two options: menuactionitem1 and
 menuactionitem2.For the two created options, we set actions(divide and 
power), and we use the hotkey property to offer to the end user the 
capability to press the respective key combination to trigger the 
associated event handler method.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When
 the user interacts the first time with the ButtonChoice UI element,an 
action can be selected,and the Framework triggers the proper event 
handler method. The last selected action remains on the ButtonChoice UI 
element after the action has been executed. This behaviour is possible 
through the property repeat SelectedAction.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Some of the ButtonChoice UI element properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;225&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/8.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 Framework triggers the event handler method onactiondivide when the 
user clicks the respective choice option button or he presses the CTRL_D
 key combination. Listing shows the coding of this method.&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactiondivide.
 DATA lr_oref TYPE REF TO cx_foev_error_in_function.
 DATA ls_calculate TYPE wd_this-&amp;gt;element_calculate.
 DATA lv_arg1 LIKE ls_calculate-arg1.
 DATA lv_arg2 LIKE ls_calculate-arg2.
 DATA lv_result LIKE ls_calculate-result.
 wd_this-&amp;gt;attribute_get(IMPORTING p_arg1 = lv_arg1
 p_arg2 = lv_arg2).
 TRY.
 cl_foev_builtins=&amp;gt;divide(EXPORTING im_arg1 = lv_arg1
 im_arg2 = lv_arg2
 IMPORTING ex_result = lv_result).
 CATCH cx_foev_error_in_function INTO lr_oref.
 ENDTRY.
 wd_this-&amp;gt;attribute_set(EXPORTING p_result = lv_result).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we can see, to read the context attributes ATR1 and ATR2, we use the 
user defined method named ATTRIBUTE_GET that has two exporting 
parameters.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 pass the result of the division calculation into the context attribute 
RESULT, we have used the user defined method ATTRIBUTE_SET that has an 
importing parameter&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;User defined method required to read the context attributes&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;262&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/12.png&quot; style=&quot;border: none;&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;User defined method required to populate the RESULT attribute&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;223&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/13.png&quot; style=&quot;border: none;&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime for the Divide operation&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;124&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/14.png&quot; type=&quot;image&quot; width=&quot;475&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To rise to power a number (number1 risen to number2), the Framework triggers the event handler method onactionpower (Listing).&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionpower.
 …………..
 TRY.
 cl_foev_builtins=power(EXPORTING im_arg1 =
 lv_arg1 im_arg2 = lv_arg2   IMPORTING ex_result = lv_result).
 CATCH cx_foev_error_in_function INTO lr_oref.
 ENDTRY.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 have used the static method POWER, of the calculation class 
CL_FOEV_BUILTINS, to perform the number1 risen to number2 operation.To 
read the context attributes ATR1 and ATR2, we call the same user defined
 method ATTRIBUTE_ GET; to pass the calculation result, we call the 
method ATTRIBUTE_SET. In this example, we have caught errors that can 
occur, but we didn’t display their message to the user. The way we can 
use try. . . endtry, the way we can raise, catch and display exceptions 
will be detailed described.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;RUNTIME CLASS: CL_WD_BUTTON_CHOICE&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 present a table showing the correspondence between the view designer 
name and the runtime name, with the proper types,in case of dynamic 
programming of a ButtonChoice UI element.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;70&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/Dynamic-programming_2.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 implementation of a dynamic ButtonChoice UI element with one mean 
action item, named DIVIDE, contains the following statements:&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddomodifyview.
 DATA lr_button_choice TYPE REF TO cl_wd_button_choice.
 DATA lr_flow_data TYPE REF TO cl_wd_flow_data.
 DATA lr_container TYPE REF TO cl_wd_uielement_container.
 DATA lr_menu_action TYPE REF TO cl_wd_menu_action_item.
 IF first_time EQ abap_true.
 lr_container ?= view-&amp;gt;get_element(&#39;ROOTUIELEMENTCONTAINER&#39;).
 lr_button_choice = cl_wd_button_choice=&amp;gt;
 new_button_choice( id = &#39;BTN_CHOICE&#39;
 text = &#39;Choose&#39;
 repeat_selected_action = abap_false
 ).
 lr_flow_data = cl_wd_flow_data=&amp;gt;new_flow_data(element =
 lr_button_choice).
 lr_container-&amp;gt;add_child(lr_button_choice).
 lr_menu_action = cl_wd_menu_action_item=&amp;gt;new_menu_action_item
(id =&#39;MENUACTIONITEM1&#39;
 text = &#39;Divide&#39;
 on_action = &#39;DIVIDE&#39;
 hotkey = cl_wd_menu_action_item=&amp;gt;e_hotkey-ctrl_p
 ).
 lr_button_choice-&amp;gt;add_choice(the_choice = lr_menu_action).
 ENDIF.
 ENDMETHOD.
&lt;/pre&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;584-selection&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Selection&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 category contains UI elements that have selection options. Hereunder,we
 present some of the UI Elements included in this category.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Drop Down By Key&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 UI element provides the end user with a dropdown list from where he can
 choose only one entry. We create a WD Component named 
Y_UI_DROPDOWNBYKEY with a view named V_VIEW and a window.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 have many possibilities to populate with values the dropdown list.For 
example,we can use a Domain defined in the ABAP Dictionary, we can use 
the wdDoInit Hook method or a supply function method. For our example, 
we use Y_COUNTRY_DOMAIN, domain that holds all the names of EU member 
states.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The View layout is presented in fig&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;84&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/h.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we have mentioned above, most of the UI element properties can be 
bound. Hereunder, we present a table with some of the DropDownByKey 
properties that can be bound, and the attribute type in case the 
property is bindable.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Some of the DropDownByKey UI element properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;86&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/Some-of-the-DropDownByKey-UI-element-properties.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 property selectedKey is mandatory; this means we have to realise data 
binding at this attribute. The context structure is presented.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;89&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/nn.png&quot; type=&quot;image&quot; width=&quot;197&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 have a context node with the cardinality 1. . .1 Singleton that has two
 attributes. The KEY attribute is of Y_DEFORDOMAIN type,defined in the 
ABAP Dictionary, and the RESULT attribute is of string type. We define a
 data binding between the KEY attribute and the selectedKey property of 
the DropDownByKey.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Data binding&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;68&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/77.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
If
 the selectedKey property of the DropDownByKey UI Element is bound to 
this attribute,the values stored in the attribute KEY are displayed in 
the selection list.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 use the attribute RESULT to show, in the textView UI Element,the 
capital of the first two EU countries,from the dropdown list. After the 
user chooses a value,the Framework triggers the event handler method 
onactionselect_country.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;the event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionselect_country.
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_data TYPE wd_this-element_dropdownbykey.
 DATA lv_value TYPE string.
 lr_node = wd_context-get_child_node(&#39;DROPDOWNBYKEY&#39;).
 lr_node-get_attribute(EXPORTING name =&#39;KEY&#39;IMPORTING value = lv_value).
 CASE lv_value.
 WHEN &#39;AT&#39;.
 ls_data-result =&#39;Vienna&#39;.
 WHEN &#39;BE&#39;.
 ls_data-result =&#39;Brussels&#39;.
 WHEN OTHERS.
 ls_data-result =&#39;Unknown&#39;.
 ENDCASE.
 lr_node-set_static_attributes(ls_data).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;224&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/www.png&quot; type=&quot;image&quot; width=&quot;435&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;RUNTIME CLASS: CL_WD_DROPDOWN_BY_KEY&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 present a table showing the correspondence between the view designer 
name and the runtime name, with the proper types,in case of dynamic 
programming of a DropDownByKey UI element.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;149&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/Dynamic-programming_3.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The implementation of a dynamic DropDownByKey UI element contains the following statements.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic creation of a Drop Down By Key UI element&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; DATA lr_dropdown_by_key TYPE REF TO cl_wd_dropdown_by_key.
 DATA lv_bind_attribute TYPE string.
 lv_bind_attribute = &#39;DROPDOWNBYKEY.KEY&#39;.
 lr_dropdown_by_key =cl_wd_dropdown_by_key=
 new_dropdown_by_key(id =&#39;DDK&#39;bind_selected_key =
 lv_bind_attribute text_direction = 
cl_wd_dropdown_by_key=e_text_direction-ltr on_select = &#39;SELECT_COUNTRY&#39;).&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Drop Down By Index&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 UI element provides the end user with a dropdown list from where he can
 choose only one entry. This UI element doesn’t differ from the 
DropDownByKey when displayed on the screen, the implementation being the
 only difference. We create the same WD Component; in this case, we use a
 dropDownByIndex UI element instead of the dropDownByKey.In Fig. we show
 the context structure.In this case, we use a context node with the 
dictionary structure SHSVALSTR2, cardinality 0...n, Singleton.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;88&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ppp.png&quot; type=&quot;image&quot; width=&quot;196&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View Layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;157&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/bbbb.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Here
 under,we present a table with some of the DropDownByIndex properties 
that can be bound,and the attribute type in case the property is 
bindable.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Some of DropDownByIndex UI element properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;84&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/7-Some-of-DropDownByIndex-UI-element-properties.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we can see,the texts property is mandatory. If this property of the 
drop- DownByIndex UI Element is bound to the VALUE attribute, the values
 stored in this attribute are displayed in the selection list. Listing 
shows how we can populate the dropdown list with values via a supply 
function method.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Supply function method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD supply_dropdownbyindex.
 DATA:
 ls_country TYPE if_v_view=element_dropdownbyindex,
 lt_country LIKE TABLE OF ls_country.
 ls_country-value =&#39;Austria&#39;.
 ls_country-key =&#39;Vienna&#39;.
 APPEND ls_country TO lt_country.
 ls_country-value =&#39;Belgium&#39;.
 ls_country-key =&#39;Brussels&#39;.
 APPEND ls_country TO lt_country.
 node-bind_table(new_items = lt_country set_initial_elements = abap_true).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;104&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ccccccc.png&quot; style=&quot;border: none;&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
RUNTIME CLASS: CL_WD_DROPDOWN_BY_IDX&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 present a table showing the correspondence between the view designer 
name and the runtime name,with the proper types,in case of dynamic 
programming of a DropDownByIndex UI element.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;144&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/8-Dynamic-programming.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The implementation of a dynamic DropDownByIndex UI element&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; DATA lr_dropdown_by_index TYPE REF TO cl_wd_dropdown_by_idx.
 DATA lv_bind_attribute TYPE string.
 lv_bind_attribute =&#39;DROPDOWNBYINDEX.VALUE&#39;.
 lr_dropdown_by_index = cl_wd_dropdown_by_idx=new_dropdown_by_idx
(id = &#39;DDI&#39;bind_texts = lv_bind_attribute text_direction = cl_wd.&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Radio Button Group By Index&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 UI Element includes some RadioButtons,allowing the user to select only 
one value. Similar to the DropDown lists,we have here RadioButtons 
grouped by key and by index. Indifferent of the type,they don’t differ 
when they are displayed on the screen,but only in the implementation 
part.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create the same WD Component as for the DropDownByIndex UI element;in 
this case,we change the DropDownByIndex UI element withthe RadioButton- 
GroupByIndex.The view context has the same structure. We create a 
context node named RADIOBUTTONGROUP_I with the dictionary structure 
SHSVALSTR2, cardinality 0. . .n, Singleton.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,
 we present a table with some of the RadioButtonGroupByIndex properties 
that can be bound, and the attribute type in case the property is 
bindable.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Some of the RadioButtonGroupByIndex UI element properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;84&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/9-Some-of-the-RadioButtonGroupByIndex-UI-element-properties.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View Layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;157&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/kkkkk.png&quot; type=&quot;image&quot; width=&quot;455&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 define the same data binding between the VALUE attribute and the texts 
property of the RadioButtonGroupByIndex. If this property of the 
RadioButton- GroupByIndex UI Element is bound to the VALUE attribute, 
the values stored in this attribute are displayed in columns and rows.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 specify the number of columns in which the RadioButtonGroup elements 
are grouped, we can use the property colCount. In our case, we have set 
“2”.This property can be personalised by an administrator.Listing &amp;nbsp;shows
 how we can populate the RadioButtons with values via a supply function 
method (the same method as for the DropDownByIndex lists).&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Supply function method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD supply_radiobutton_i.
 DATA:
 ls_country TYPE wd_this-element_radiobuttongroup_i,
 lt_country LIKE TABLE OF ls_country.
 ls_country-value = &#39;Austria&#39;.
 ls_country-key = &#39;Vienna&#39;.
 APPEND ls_country TO lt_country.
 ls_country-value = &#39;Belgium&#39;.
 ls_country-key = &#39;Brussels&#39;.
 APPEND ls_country TO lt_country.
 node-bind_table( new_items = lt_country set_initial_elements = abap_true).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;110&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/vvvv.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For the RadioButtonGroupByKey UI element, we have the same concept as described for the DropDownByKey.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;RUNTIME CLASS: CL_WD_RADIOBUTTON_GROUP_BY_IDX&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,
 we present a table showing the correspondence between the view designer
 name and the runtime name, with the proper types,in case of dynamic 
programming of a RadioButtonGroupByIndex UI element.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;100&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/10-Dynamic-programming.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The implementation of a dynamic RadioButtonGroupByIndex UI element contains the following statements:&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic creation of a RadioButtonGroupByIndex UI element&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; DATA lr_radiobutton_group_by_index TYPE REF TO
 cl_wd_radiobutton_group_by_idx.
 DATA lv_bind_attribute TYPE string.
 lv_bind_attribute =&#39;RADIOBUTTONGROUP_I.VALUE&#39;.
 lr_radiobutton_group_by_index =
 cl_wd_radiobutton_group_by_idx=&amp;gt;new_radiobutton_group_by_idx(
 id = &#39;RDB_INDEX&#39;
 bind_texts = lv_bind_attribute
 col_count = 2
 on_select = &#39;SHOW’).
&lt;/pre&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;585-layout&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Layout&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This category has UI elements we use to form the layout. Hereunder,we present some of the UI Elements included in this category.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;ViewContainerUIElement&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 UI element is an area within a view that contains another view. It 
doesn’t have its own properties,but inherits properties from the 
abstract base class UIElement. We create a WD Component,a registration 
form with three views.In the view V_VIEW,we insert two 
ViewContainerUIElement’s (VCU_1 and VCU_2) required to embed the V_STEP1
 and V_STEP2 views. The context node is created in COMPONENTCONTROLLER 
because we have to share data among different view controllers: V_STEP1,
 V_STEP2, V_VIEW.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;163&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/qqqq.png&quot; type=&quot;image&quot; width=&quot;194&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;169&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/zzz.png&quot; type=&quot;image&quot; width=&quot;245&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 node INFO has the cardinality 0...1, Singleton. The attributes NAME, 
EMAIL, CITY are of STRING type, and the attribute COUNTRY is of 
Y_DEFORDOMAIN type defined in the ABAP Dictionary, domain that holds all
 the EU member states.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
At runtime, the view V_VIEW is the default view (e.g. the view that is first displayed when the window is called).&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View V_VIEW layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;228&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/xxxxxxxxx.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Because
 we want to display more views in the same time and in the same 
window,we are going to use ViewContainerUIElement. At runtime,when the 
screen is displayed for the first time, we want only the fields from 
V_VIEW view to be visible until the user presses the LinkToAction UI 
Element. This is the reason why we embed as default in VCU_1 and VCU_2 
EMPTYVIEWs.An EMPTYVIEW is a special type of view, automatically 
generated, that can be used to hide another view.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Window structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;124&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/cccc.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;153&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/0000.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we can see, only the UI Elements from the default view V_VIEW are 
displayed, because the VCU_1 and VCU_2 have EMPTYVIEWs as default.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Embedding Views in Window&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;0&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/0111111.png&quot; style=&quot;border: none;&quot; width=&quot;0&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;284&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/0111111.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 the user presses the LinkToAction UI element, we want to show in the 
VCU_1 the view V_STEP1. To be able to do this, we define an outbound 
plug in the V_VIEW view.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Definition of an outbound plug in the view V_VIEW&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&amp;nbsp;&lt;img alt=&quot;&quot; height=&quot;123&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/21.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;V_STEP1 view layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;156&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/22.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 be able to show the view V_STEP1 content when the user presses the 
LinkToAction UI Element, we have to define an inbound plug in the view 
V_STEP1.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Definition of an Inbound Plug in the view V_STEP1&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;116&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/23.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Now,we embed the view V_STEP1 in the ViewContainerUIElement VCU_1 and we create the navigation link.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Window structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;196&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/24.png&quot; style=&quot;border: none;&quot; width=&quot;190&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When
 the user presses the LinkToAction UI element, the Framework triggers 
the event handler method onactionlta1. When we create an outbound plug 
for a view,a fire method is added to its interface. A fire method of our
 outbound plug op_to_v_ step1 is called with the statement:&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
wd_this!fire_op_to_v_step1_plg( ).&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 have created a navigation link from OP_TO_V_STEP1 to IP_V_STEP1. When 
this method is fired, the view V_STEP1 is displayed. To integrate the 
fire method, we can use the Web Dynpro Code Wizard.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Calling the web Dynpro code wizard&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/8850978024001063655/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/user-interface-elements-ui-elements_4988.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/8850978024001063655'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/8850978024001063655'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/user-interface-elements-ui-elements_4988.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-273254491251399418</id><published>2012-09-22T23:02:00.007-07:00</published><updated>2012-09-22T23:02:45.239-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.blogger.com/goog_1386455908&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/a&gt;
&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;a href=&quot;http://adf.ly/CUYUQ&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;User Interface Elements (UI elements) Static and Dynamic Programming-part 2&lt;/b&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Calling the web Dynpro code wizard&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;163&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/25.png&quot; type=&quot;image&quot; width=&quot;465&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;146&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/26.png&quot; type=&quot;image&quot; width=&quot;465&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 have to display the view V_STEP2 when the user presses the LinkToAction
 UI element (ID = LTA_NEXT2). To do this, we define an outbound plug 
named OP_TO_V_STEP2 in the view V_STEP1,and we fire the generated 
method.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Outbound plug, event handler method&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;83&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/27.png&quot; type=&quot;image&quot; width=&quot;465&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;V_STEP2 view layout&lt;/b&gt;&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;134&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/28.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 this, we have to define an inbound plug named IP_V_STEP2, we embed the 
view V_STEP2 into the ViewContainerUIElement VCU_2 and we create the 
corresponding navigation link.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Window structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;246&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/29.png&quot; style=&quot;border: none;&quot; width=&quot;186&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Window structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;213&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/30.png&quot; type=&quot;image&quot; width=&quot;475&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
RUNTIME CLASS: CL_WD_VIEW_CONTAINER_UIELEMENT&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The implementation of a dynamic ViewContainerUIElement contains the following statements (Listing):&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
data lr_vcu type ref to cl_wd_view_container_uielement.&lt;br /&gt;
lr_vcu = cl_wd_view_container_uielement=&amp;gt;new_view_container_uielement (id = &#39;VCU&#39;).&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this case, after dynamically creating the View ContainerUI Element,we 
have to dynamically create the view embedding and the navigation links.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;tabStrip&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This UI element allows us to display some tabs, and the user can toggle from a tab page to another. We create a WD Component.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;165&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/31.png&quot; type=&quot;image&quot; width=&quot;242&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create a TabStrip UI element and add two Tabs. To add tabs, we 
right-click on the tabStrip name and, from the contextual menu, we 
choose Insert Tab.When the user presses the Next button, we navigate to 
the next tab and we show the data entered by the user in the 
registration form of the first tab.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;252&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/32.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,
 we present a table with some of the tabStrip UI element properties that
 can be bound,and the attribute type in case the property is bindable.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Some of TabStrip UI element properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;69&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/11-Some-of-TabStrip-UI-element-properties.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 property selectedTab of string type can be used to navigate from a tab 
to other one. This property set the name of the selected tab. We define a
 data binding between the selectedTab property and the attribute with 
the same name (string) defined in the node DYNAMIC in the view 
context.The node STUDENT has the dictionary structure 
YSTR_PERSON,cardinality 0...1,Singleton.&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;163&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/33.png&quot; type=&quot;image&quot; width=&quot;195&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using the wdDoInit Hook method, we populate the attribute SELECTEDTAB 
of the node DYNAMIC with the ID of the tab we want to be active at 
runtime–TAB_1 (Listing ).&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Listing The wddoinit Hook method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddoinit.
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_data TYPE wd_this-&amp;gt;element_dynamic.
 lr_node = wd_context-get_child_node(&#39;DYNAMIC&#39;).
 ls_data-selectedtab = &#39;TAB_1&#39;.
 lr_node-set_static_attributes(ls_data).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When
 the user presses the Next Button,the Framework triggers the event 
handler method onactionnext (Listing).We set the selectedtab property 
with the value TAB_2,by selecting in this mode the TAB_2.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Listing Event handler method&lt;/b&gt;METHOD onactionnext.&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_data TYPE wd_this-element_dynamic.
 lr_node = wd_context-get_child_node(&#39;DYNAMIC&#39;).
 ls_data-selectedtab = &#39;TAB_2&#39;.
 lr_node-set_static_attributes(ls_data).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;163&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/34.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
RUNTIME CLASS: CL_WD_TABSTRIP&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 present a table showing the correspondence between the view designer 
name and the runtime name,with the proper types,in case of dynamic 
programming of a TabStrip UI element.For the tabStrip UI element we 
have, as aggregation, the Tab element.Its runtime class is CL_WD_TAB.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;99&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/12-Dynamic-programming.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The implementation of a dynamic TabStrip UI element, with two Tabs,contains the following statements (Listing):&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming of a TabStrip UI element&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddomodifyview.
 DATAlr_pageheader TYPE REF TO cl_wd_page_header.
 DATAlr_flow_data TYPE REF TO cl_wd_flow_data.
 DATAlr_container TYPE REF TO cl_wd_uielement_container.
 DATAlr_area TYPE REF TO cl_wd_page_header_area.
 IF first_time EQ abap_true.
 lr_container ?= view-&amp;gt;get_element(&#39;ROOTUIELEMENTCONTAINER&#39;).
 lr_pageheader = cl_wd_page_header=&amp;gt;new_page_header(id = &#39;PH_PAGEHEADER&#39;
 text_direction = cl_wd_page_header=&amp;gt;e_text_direction-ltr ).
 lr_pageheader-&amp;gt;set_title(&#39;DYNAMIC PAGEHEADER&#39;).
 lr_flow_data = cl_wd_flow_data=&amp;gt;new_flow_data(element =
 lr_pageheader). 
  lr_container-&amp;gt;add_child(lr_pageheader). 
 lr_area = cl_wd_page_header_area=&amp;gt;new_page_header_area(id =&#39;PAGEHEADAREA&#39;
 design = cl_wd_page_header_area=&amp;gt;e_design-emphasized).
  DATA lr_textview TYPE REF TO cl_wd_text_view.
 lr_textview = cl_wd_text_view=&amp;gt;new_text_view(id = &#39;TXT&#39;
 text =&#39;PageHeaderArea&#39;
 ).
 lr_area-&amp;gt;set_content(the_content = lr_textview ).
 lr_pageheader-&amp;gt;add_area(the_area = lr_area ).
 ENDIF.
 ENDMETHOD.&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;PageHeader&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 UI element offers the possibility to create a header for a page.In the 
title content and the PageHeader Area, we can insert other UI elements. 
We create a WD component with the structure presented in Fig.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;194&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/35%281%29.png&quot; type=&quot;image&quot; width=&quot;250&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 use the view V_VIEW as Master View. Here, we insert a PageHeader UI 
element that contains two LinkToAction UI elements, and in the 
PageHeader Area we insert a ViewContainerUIElement. When the user 
interacts with the LinkToAction UI elements,we show in the 
ViewContainerUIElement one of the two slave views V_COUNTRYor 
V_CANDIDATE.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Application structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;180&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/36.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 the PageHeader UI element is inserted into the V_VIEW view,we can 
insert a PageHeader Title Content and one or more PageHeader Area(s).&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Inserting the title content and PageHeader area&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;60&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/37.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 a PageHeaderArea, we can insert how many other UI elements we 
want.Here, we have chosen to insert only one UI element 
(ViewContainerUIELement).As design options,it has: Standard, Emphasized 
and transparent.For our example,we have the default design: Standard. To
 see on screen the other Page Header Area designs,we can choose values 
from the list, one by one, and see the result in the view designer, or 
we can run again the application and see the different changes.In the 
system,we can find two WD components where we can see the UI elements 
and the effect of changing certain properties on these UI elements. 
These components are WDR_TEST_EVENTS and WDR_TEST_UI_ELEMENTS.&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;V_VIEW view layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;161&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/38.png&quot; type=&quot;image&quot; width=&quot;250&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Each
 view (V_CANDIDATE and V_COUNTRY) has a Table UI element where we show 
the data stored in our database table YPERSON and YEU_COUNTRIES.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;229&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/39.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
RUNTIME CLASS: CL_WD_PAGE_HEADER&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 present a table showing the correspondence between the view designer 
name and the runtime name, with the proper types,in case of dynamic 
programming of a PageHeader UI element.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;100&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/13-Dynamic-programming.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 the PageHeader UI element we have, as aggregation, the Area and the 
TitleContent elements. The Area runtime class is CL_WD_PAGE_HEADER_ 
AREA.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 implementation of a dynamic PageHeader UI element (with pageHeader 
title) and a PageHeaderArea (with a textView UI element) contains the 
following statements (Listing):&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming of a PageHeader UI element&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddomodifyview.
 DATA lr_pageheader TYPE REF TO cl_wd_page_header.
 DATA lr_flow_data TYPE REF TO cl_wd_flow_data.
 DATA lr_container TYPE REF TO cl_wd_uielement_container.
 DATA lr_area TYPE REF TO cl_wd_page_header_area.
 IF first_time EQ abap_true.
 lr_container ?= view-&amp;gt;get_element(&#39;ROOTUIELEMENTCONTAINER&#39;).
 lr_pageheader = cl_wd_page_header=&amp;gt;new_page_header(
 id = &#39;PH_PAGEHEADER&#39;
 text_direction = cl_wd_page_header=&amp;gt;e_text_direction-ltr
 ).
 lr_pageheader-&amp;gt;set_title(&#39;DYNAMIC PAGEHEADER&#39;).
 lr_flow_data = cl_wd_flow_data=&amp;gt;new_flow_data(element =
 lr_pageheader).
 lr_container-&amp;gt;add_child(lr_pageheader).
 lr_area = cl_wd_page_header_area=&amp;gt;new_page_header_area(
 id = &#39;PAGEHEADAREA&#39;
 design = cl_wd_page_header_area=&amp;gt;e_design-emphasized
 ).
 DATA lr_textview TYPE REF TO cl_wd_text_view.
 lr_textview = cl_wd_text_view=&amp;gt;new_text_view(
 id = &#39;TXT&#39;
 text = &#39;PageHeaderArea&#39;
 ).
 lr_area-&amp;gt;set_content(the_content = lr_textview).
 lr_pageheader-&amp;gt;add_area(the_area = lr_area).
 ENDIF.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;ContextualPanel&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 UI element offers navigation functions. Its navigation list can have 
many levels.We create the same example as for the PageHeader,but, in 
this case,we use the two LinkTo Action UIElements to create the content 
for a ContextualPanel UI element.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 a contextualPanel UI element, we can insert three types of elements: 
Free- ContextualArea,NavigationList and ViewSwitch. In our example,we 
have used two FreeContextualArea elements.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 a FreeContextualArea, we can insert a Content and a Header. We can set 
the header to be expandable or no. The Content is a zone where we can 
insert other UI elements we want to be displayed within the 
FreeContextualArea.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;FreeContexualArea&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;133&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/40.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;V_VIEW view Layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;282&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/41.png&quot; style=&quot;border: none;&quot; width=&quot;459&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;V_VIEW view Layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;133&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/42.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
RUNTIME CLASS: CL_WD_CONTEXTUAL_PANEL&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For the ContextualPanel UI element, we have, as aggregation, the items: Free- ContextualArea,&lt;br /&gt;
ViewSwitch and NavigationList elements.&lt;br /&gt;
The FreeContextual- Area runtime class is&lt;br /&gt;
CL_WD_FREE_CONTEXTUAL_AREA.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 implementation of a dynamic contextualPanel UI element,with a Free- 
ContextualArea element that has a Content(linkToAction UI element)and a 
Header(expandableTitle element),contains the following statements 
(Listing ):&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming of a contextualPanel UI element&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddomodifyview.
 DATA lr_flow_data TYPE REF TO cl_wd_flow_data.
 DATA lr_container TYPE REF TO cl_wd_uielement_container.
 DATA lr_contextualpanel TYPE REF TO cl_wd_contextual_panel.
 DATA lr_freecontextualarea TYPE REF TO cl_wd_free_contextual_area.
 DATA lr_linktoaction TYPE REF TO cl_wd_link_to_action.
 DATA lr_header TYPE REF TO cl_wd_expandable_title.
 IF first_time EQ abap_true.
 lr_container ?= view-&amp;gt;get_element(&#39;ROOTUIELEMENTCONTAINER&#39;).
 lr_contextualpanel = cl_wd_contextual_panel=&amp;amp;g new_contextual_panel(
 id = &#39;CP_CONTEXTUALPANEL&#39;
 ).
 lr_freecontextualarea = cl_wd_free_contextual_area=&amp;gt;new_free_contextual_ar
 ea(
 id = &#39;FREECONTEXTUALAREA_1&#39;
 ).
 lr_flow_data = cl_wd_flow_data=&amp;gt;new_flow_data(element =
 lr_contextualpanel).
 lr_container-&amp;gt;add_child(lr_contextualpanel).
 lr_linktoaction = cl_wd_link_to_action=&amp;gt;new_link_to_action(
 id = &#39;CONTENT_1&#39;
 on_action =&#39;SHOW_COUNTRIES&#39;
 text =&#39;Show EU countries&#39;
 ).
 lr_freecontextualarea-&amp;gt;set_content(the_content = lr_linktoaction).
 lr_header = cl_wd_expandable_title=&amp;gt;new_expandable_title(
 id =&#39;EXPANDABLETITLE_1&#39;
 expandable = abap_true
 expanded = abap_true
 title =&#39;COUNTRY&#39;
 ).
 lr_freecontextualarea-&amp;gt;set_header(the_header = lr_header).
 lr_contextualpanel-&amp;gt;add_item(the_item = lr_freecontextualarea).
 ENDIF.&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Tray UI Element&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 all the containers, this UI element includes a set of other UI 
Elements,but also provides additional functions. We create a WD 
Component with the structure presented.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;194&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/43.png&quot; type=&quot;image&quot; width=&quot;250&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the View Layout,we insert two Tray UI elements. The first element is 
used to show the candidate information, and the second Tray is used to 
show some details about the selected candidate. These details are: the 
country flag and the capital.In the MIMEs folder we import three 
pictures with the flags we have to display when the user chooses a 
competitor from that country.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After the Tray UI element is inserted in the View Layout, we can insert a Menu&amp;nbsp;and, in each menu, we can insert a menu option.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Tray menu&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;196&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/44.png&quot; style=&quot;border: none;&quot; width=&quot;509&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 menu options are: Menu, MenuActionItem,MenuCheckBox, MenuRadio- Button 
and MenuSeparator. In our case,we have chosen the option MenuAction- 
Item.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating a menu element&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;97&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/45.png&quot; type=&quot;image&quot; width=&quot;250&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View layout structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;196&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/46.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 first Tray has two menu options, used to show the second Tray UI 
element or to hide it. As we have mentioned above, most of the UI 
element properties can be bound. Hereunder, we show a list with some of 
the Tray UI elements properties that can be bound, and the attribute 
type in case the property is bindable.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Some of the tray UI element properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;84&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/14-Some-of-the-tray-UI-element-properties.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 want to manipulate the UI element via the data held in the context. 
Therefore, we create a context node named DYNAMIC, with three 
attributes: two attributes of WDY_BOOLEAN type 
(ENABLED_OPTION1,ENABLED_OPTION2) and one attribute named VISIBLE, of 
WDUI_VISIBILITY type.To show the concurrent information and the 
corresponding details, we have created a context node with the 
dictionary structure YVIEW_CMPETITION, a database view defined in the 
ABAP Dictionary.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure.&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;233&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/47.png&quot; type=&quot;image&quot; width=&quot;250&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The context node DETAIL is populated via the supply function method SUPPLY_COMPETITION (Listing).&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Supply function method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD supply_competition.
 DATA: lt_content TYPE TABLE OF yview_cmpetition.
 SELECT * FROM yview_cmpetition INTO TABLE lt_content.
 IF sy-subrc = 0.
 node-&amp;gt;bind_table(new_items = lt_content).
 ENDIF.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 be able to manipulate the enabled properties of the menu options 
created in the first Tray UI elements, we define the following data 
binding:&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Data binding&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;263&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/48%281%29.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 be able to manipulate the visible property of the second Tray with the 
ID “TRAY_DETAIL”,we define a data binding between these properties and 
the context attribute VISIBLE:&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;25&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/49.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
At
 initialisation, we want the second Tray to be hidden, the MENU_OPTION1 
to be enabled and the MENU_OPTION2 to be not enabled. To realise this,we
 encode the wdDoInit Hook method (Listing).&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The wddoinit Hook method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddoinit.
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_data TYPE wd_this-element_dynamic.
 lr_node = wd_context-get_child_node(&#39;DYNAMIC&#39;).
 ls_data-enabled_option1 = abap_true.
 ls_data-enabled_option2 = abap_false.
 ls_data-visible = cl_wd_tray=e_visible-none.
 lr_node-set_static_attributes( ls_data ).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When
 the user selects the first menu option “MENU_OPTION1”,the Framework 
triggers the event handler method onactionshow (Listing ).&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactionshow event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionshow.
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_data TYPE wd_this-element_dynamic.
 lr_node = wd_context-get_child_node(&#39;DYNAMIC&#39;).
 ls_data-enabled_option1 = abap_false.
 ls_data-enabled_option2 = abap_true.
 ls_data-visible = cl_wd_tray=e_visible-visible.
 lr_node-set_static_attributes(ls_data).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When
 the user selects the second menu option MENListingU_OPTION2,the 
Framework triggers the event handler method onactionhide (Listing).&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactionhide event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionhide.
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_data TYPE wd_this-element_dynamic.
 lr_node = wd_context-&amp;gt;get_child_node(&#39;DYNAMIC&#39;).
 ls_data-enabled_option1 = abap_true.
 ls_data-enabled_option2 = abap_false.
 ls_data-visible = cl_wd_tray=e_visible-none.
 lr_node-&amp;gt;set_static_attributes(ls_data).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
At runtime,we can choose to show or to hide the details about the competitor&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime.&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;270&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/50.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Message Area&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 UI element represents the placeholder of the messages; it helps us to 
specify where they appear in the view. As we have seen, the messages are
 displayed by default in the upper part of the screen. The message 
location can be moved by adding a MessageArea UI element. We need only a
 MessageArea UI element per View layout.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create an example to filter an input from the end user. In case the 
user enters a combination of small and capital letters from A to Z or 
spaces,we show a message with the text “Your input is string” If not, we
 show a message “Your input is not string”. To show these messages,we 
use a MessageArea UI element.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
There
 are small programs used to test the regexes, which offer the 
possibility to test the regexes created before using them. Such a 
program is demo_ regex_toy. By using the transaction SA38 or SE38, we 
can run this program (Fig.) By using regexes,we can filter the values 
that the user enters in a Web Dynpro screen.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Regex toy screen&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;452&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/51.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View Layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;170&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/52.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we can see, in this case we have entered a MessageArea UI element in 
the Group container.This is the place where all the messages will be 
displayed. When the user presses the button with the id “BTN”,the 
Framework triggers the event handler method onactioncheck (Listing ).&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Checking the data entered by the user methode&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we can see, in this case we have entered a MessageArea UI element in 
the Group container.This is the place where all the messages will be 
displayed. When the user presses the button with the id “BTN”,the 
Framework triggers the event handler method onactioncheck (Listing ).&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Checking the data entered by the user methode&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactioncheck.
 DATA: lv_firstname TYPE string,
 lv_pattern TYPE string.
 wd_context-&amp;gt;get_attribute(EXPORTING name =&#39;FIRSTNAME&#39;
 IMPORTING value = lv_firstname).
 v_pattern =&#39;[a-zA-Zs]*&#39;.
 CHECK lv_firstname IS NOT INITIAL.
 DATA: lr_api_controller TYPE REF TO if_wd_controller,
 lr_message_manager TYPE REF TO if_wd_message_manager.
 lr_api_controller ?= wd_this-&amp;gt;wd_get_api( ).
 lr_message_manager = lr_api_controller-&amp;gt;get_message_manager( ).
 DATA: lt_message_parameters TYPE wdr_name_value_list,
 ls_message_parameter LIKE LINE OF lt_message_parameters.
 ls_message_parameter-name = &#39;first_name&#39;.
 ls_message_parameter-value = lv_firstname.
 APPEND ls_message_parameter TO lt_message_parameters.
 F cl_abap_matcher=&amp;gt;matches(pattern = lv_pattern
 text = lv_firstname) = abap_true.
 lr_message_manager-&amp;gt;
 report_message(message_text =&#39;Your input &amp;amp;first_name is string&#39;
 message_type = 0
 params = lt_message_parameters).
 ELSE.
 lr_message_manager-&amp;gt;
 report_message(message_text =&#39;Your input &amp;amp;first_name is not string!&#39;
 message_type = 2
 params = lt_message_parameters).
 endif.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using the static method MATCHES of the CL_ABAP_MATCHER class,we check 
the value that the user enters in the inputField UI element.In case this
 value matches our condition specified in the local variable 
lv_pattern,we use the methode REPORT_MESSAGE to display a message of 
information type. Otherwise,we use the same method to display an error 
message. Because we want to show to the user whether the value he 
entered in the input field is a string or not,we use a parameter 
required to integrate,in the string that he sees on the screen,the value
 he has just entered.For this purpose, we have used for the method 
report_message a parameter named “params”.By double-clicking on name of 
the method report_message,we navigate forward and we can see all the 
parameters that this method has and the typethat the parameters should 
be. For the “parms” parameter, we need a variable owdr_name_value_list 
type that is actually a table type with a structure of line type.From 
this structure, we have used the name(the parameter name,in our case 
“first_name”)and the value (the value with what we want to replace,at 
runtime,the parameter name “lv_firstname”).In Chap. 10, we will see more
 abou the message manager and parameters, along with the modality we can
 display a message into a window, or the modality we can use the ABAP 
classesto create messages and exceptions. In Fig.the messages are 
displayed by using the MesageArea UI element.&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime with MessageArea UI element&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;101&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/53.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;64&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/t37.png&quot; style=&quot;border: none;&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
RUNTIME CLASS: CL_WD_MESSAGE_AREA&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 present a table showing the correspondence between the view designer 
name and the runtime name,with the proper types,in case of dynamic 
programming of a MessageArea UI element (Table).&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The implementation of a dynamic MessageArea UI element contains the following statements (Listing ):&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;70&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/15-Dynamic-programming.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The dynamic programming of a MessageArea UI element&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;color: #333333; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; data lr_messagearea type ref to cl_wd_message_area.
 lr_messagearea = cl_wd_message_area=&amp;gt;new_message_area(
 id =&#39;MESSAGE_AREA&#39;
 HISTORY_VISIBLE = abap_true).&lt;/pre&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;586-complex&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Complex&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 category contains complex UI elements as regards their structure and 
content.Hereunder,we present some of the UI Elements included in this 
category.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Table&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using this UI element, we can display data arranged in rows and 
columns.Table shows some of the Table properties that can be bound,and 
the attribute type in case the property is bindable.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Some of the Table UI element properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;128&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/16-Some-of-the-Table-UI-element-properties.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this exercise,we want to take data from an end user and to insert them 
into a table UI element,after the latest record. To do this,we create a 
WD component named Y_UI_TABLE that has a View named V_VIEW and a default
 window.In the context view,we need two context nodes: a context node 
required to hold the new record from the end user and a context node 
required to hold all the records.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;307&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/54.png&quot; type=&quot;image&quot; width=&quot;250&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 context node REGISTRATION has the cardinality 1. . .1, Singleton.Its 
attributes are: NAME of STRING type,DATE OF BIRTH of YDATEOFBIRTH 
type,COUNTRY of Y_DEFORDOMAIN type and NO of I type. We use the 
attributes of this context node to hold every new record.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 context node TABLE has the cardinality 0...n,Singleton, selection 
0...1, supply function SUPPLY_PERSON and initialization lead selection 
is not automatically set. In this case,we want to manually set the lead 
selection. The context node attributes have the same name and data type 
as the context node REGISTRATION.We use the attributes of this context 
node to hold all the registrations.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the next step,we have to create the view layout.To insert a Table into 
our view layout,we can use two options: we can manually insert the table
 or we can use the Web Dynpro Wizard. In the beginning, we explain the 
first option. After inserting a Table UI element into our view,we have 
to create a data binding.When a table is bound to a context node by 
using a wizard,we don’tneed to individually create each table column. We
 have only to select the context node and the Framework provides the 
available attributes.In this way,the value of the property DataSource 
(mandatory) of the Table UI element is bound to the context node TABLE.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Table UI element – Creating the binding&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;346&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/55.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 Cell Editors of the Table Column describe the UI element used to 
display or edit the column content.As we can see,our columns are created
 by using textView UI elements. Each attribute represents a column in 
our table, and for each column we can choose an UI element. After this, 
the standard property to be bound depends on the chosen UI element.For 
example, for the TextView UI element, the property is text, and for the 
DropDownByKey, the name of the property to be bound is selectedKey.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Cell Editor of Table Column – Name of Property to be bound&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;275&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/56.png&quot; style=&quot;border: none;&quot; width=&quot;520&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 view layout is presented in Fig. For each attribute for which the bind 
option is marked, the Framework generates a proper column. For example, 
for the attribute “NO”,the Framework has generated the column 
TBL_EXAMPLE_NO, for the attribute NAME, the Framework has generated the 
column TBL_EXAPLE_NAME,etc.The Table UI element offers the possibility 
to display as many rows as we need by using the property visibleRowCount
 (in our case, five). In the default mode,the property displayEmptyRows 
is set as ABAP_TRUE. In case we set this property as ABAP_FALSE, the 
rows that are empty in our table will not be on screen anymore.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 second option to insert a Table UI element into our View Layout is to 
use the Web Dynpro Wizard (Fig). In this case,the Wizard generates the 
Table UI element and we use the same procedure presented hereunder to 
create the data binding. After the user enters the new values (Name, 
Date of Birth and Country),we have to add these values at the end of the
 other records, in the table UI element. To be able to do this, we need 
an action. Fig Cell Editor of Table Column – Name of Property to be 
bounding.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 the user enters the new values (Name, Date of Birth and Country),we 
have to add these values at the end of the other records,in the table UI
 element. To be able to do this, we need an action.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;424&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/57.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Web Dynpro wizard to insert a Table UI element into the view layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;134&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/58.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 a table UI element, we can insert a Toolbar. We need a toolbar to be 
able to insert a ToolBarButton in this area. We populate the node TABLE 
with two values, via the supply function method.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 local variable lv_counter is used to create the record ID. After the 
node population, we use the SET_LEAD_SELECTION_INDEX method to set lead 
selection via index. As we can see, the index is set with the value of 
the lv_counter. In this way,it is selected the last value of the table.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Inserting a ToolBarButton&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;389&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/59.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Supply function method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;background-color: white; color: #333333; font-size: 12px; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD supply_person.
 DATA:
 ls_table TYPE wd_this-element_table,
 lt_table LIKE TABLE OF ls_table,
 lv_counter TYPE i VALUE 1.
 ls_table-no = lv_counter.
 ls_table-name = &#39;Antonia Maria Crist&#39;.
 ls_table-dateofbirth = &#39;19800305&#39;.
 ls_table-country = &#39;DE&#39;.
 lv_counter = lv_counter + 1.
 APPEND ls_table TO lt_table.
 ls_table-no = lv_counter.
 ls_table-name = &#39;Albu Alina&#39;.
 ls_table-dateofbirth = &#39;19800908&#39;.
 ls_table-country = &#39;IT&#39;.
 APPEND ls_table TO lt_table.
 node-&amp;gt;bind_table(new_items=lt_table set_initial_elements = abap_true).
 node-set_lead_selection_index(index=lv_counter).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we have mentioned above, if the “Initialization lead selection” for a 
node is “YES”, it is always selected the first element of this node. In 
this case, our context node has this property selected “NO”; we 
influence the selected element by using the set_lead_selection_index.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To influence the lead selection, we have some methods, as following&lt;/div&gt;
&lt;ul style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Set_lead_selectio&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Move_first&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Move_previous&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Move_&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 our TABLE context node, we have set the selection cardinality 0...1 
meaning that maximum one row can be selected if the node elements are 
displayed as a table.&amp;nbsp;When the user presses the “Add record” button,the 
Framework triggers the event handler method onactionadd.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;background-color: white; color: #333333; font-size: 12px; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionadd.
 DATA: lr_node TYPE REF TO if_wd_context_node,
 lr_node1 TYPE REF TO if_wd_context_node,
 lr_element TYPE REF TO if_wd_context_element,
 lv_counter TYPE i,
 lv_dateofbirth TYPE ydateofbirth,
 lv_country TYPE y_defordomain,
 lv_name TYPE string,
 ls_registration TYPE wd_this-&amp;gt;element_registration.
 lr_node = wd_context-&amp;gt;get_child_node(&#39;REGISTRATION&#39;).
 lr_node-&amp;gt;get_attribute(EXPORTING name =&#39;DATEOFBIRTH&#39;
 IMPORTING value = lv_dateofbirth).
 lr_node-&amp;gt;get_attribute(EXPORTING name =&#39;NAME&#39;
 IMPORTING value = lv_name).
 lr_node-&amp;gt;get_attribute(EXPORTING name =&#39;COUNTRY&#39;
 IMPORTING value = lv_country).
 lr_node1 = wd_context-&amp;gt;get_child_node(&#39;TABLE&#39;).
 lr_node1-&amp;gt;get_attribute(EXPORTING name =&#39;NO&#39;
 IMPORTING value = lv_counter).
 lv_counter = lv_counter + 1.
 ls_registration-no = lv_counter.
 ls_registration-dateofbirth = lv_dateofbirth.
 ls_registration-name = lv_name.
 ls_registration-country = lv_country.
 lr_node-&amp;gt;set_static_attributes(ls_registration).
 lr_element = lr_node-&amp;gt;get_lead_selection( ).
 lr_element-&amp;gt;
 get_static_attributes( IMPORTING static_attributes = ls_registration ).
 lr_node1 = wd_context-&amp;gt;get_child_node(&#39;TABLE&#39;).
 lr_node1-&amp;gt;bind_structure( EXPORTING new_item = ls_registration
 set_initial_elements = abap_false).
 lr_node1-&amp;gt;set_lead_selection_index(index = lv_counter).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 pass the value of the attribute NO of the TABLE context node in the 
local variable lv_counter. As we have mentioned above,we use this local 
variable to create the record ID.After each new record,we increase this 
value with 1.The user enters the values Name,Date of Birth and Country 
and we create his corresponding ID.The runtime structure is presented.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;235&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/60.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Additionally,we
 can add a reset Button on the table toolbar. After the user adds the 
records, he can reset the fields Name, Date of birth and Country, to be 
able to add a new record.&amp;nbsp;The “Reset” Toolbar Button,of the same 
ToolBarButton type, has associated an action named RESET. The Listing 
shows the onactionreset event handler method.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactionreset event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;background-color: white; color: #333333; font-size: 12px; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionreset.
 DATA: lr_node TYPE REF TO if_wd_context_node,
 ls_registration TYPE wd_this-element_registration.
 lr_node = wd_context-get_child_node(&#39;REGISTRATION&#39;).
 lr_node-&amp;gt;bind_structure(EXPORTING new_item = ls_registration).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;232&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/61.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
RUNTIME CLASS: CL_WD_TABLE&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 present a table showing the correspondence between the view designer 
name and the runtime name, with the proper types,in case of dynamic 
programming of a Table UI element.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;115&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/17-Dynamic-programming.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 the Table UI element,we have, as aggregation, the Table Column,Group 
Column, Header,Legend Popin, MasterColumn and Toolbar. The TableColumn 
element represents a column of a table, and has the CL_WD_TABLE_COLUMN 
runtime class. The table title is implemented by using a Caption element
 and has the CL_WD_CAPTION runtime class.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 implementation of a dynamic Table UI element with table header,design 
alternating, three visible rows and a column, that has a TextView UI 
element as cell editor,contains the following statements.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming of a Table UI element&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;background-color: white; color: #333333; font-size: 12px; margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddomodifyview.
 DATA lr_table TYPE REF TO cl_wd_table.
 DATA lr_flow_data TYPE REF TO cl_wd_flow_data.
 DATA lr_container TYPE REF TO cl_wd_uielement_container.
 DATA lr_column_name TYPE REF TO cl_wd_table_column.
 DATA lr_text_view TYPE REF TO cl_wd_text_view.
 DATA lr_table_header TYPE REF TO cl_wd_caption.
 DATA lr_column_name_header TYPE REF TO cl_wd_caption.
 IF first_time EQ abap_true.
 lr_container ?= view-&amp;gt;get_element(&#39;ROOTUIELEMENTCONTAINER&#39;).
 lr_table = cl_wd_table=&amp;gt;new_table(
 id =&#39;TBL_TABLE&#39;
 bind_data_source =&#39;TABLE&#39;
 design = cl_wd_table=&amp;gt;e_design-alternating
 visible_row_count = 3
 ).
 lr_flow_data = cl_wd_flow_data=&amp;gt;new_flow_data(element =
 lr_table ).
 lr_container-&amp;gt;add_child(lr_table).
 lr_column_name = cl_wd_table_column=&amp;gt;new_table_column(
 id = &#39;TBL_EXAMPLE_NAME&#39;
 ).
 lr_table_header ?= cl_wd_caption=&amp;gt;new_caption(text =&#39;Table UI elem
 ent - example&#39;).
 lr_table-&amp;gt;add_column(the_column = lr_column_name).
 lr_table-&amp;gt;set_header(lr_table_header).
 lr_text_view = cl_wd_text_view=&amp;gt;new_text_view(
 id =&#39;TXV_NAME&#39;
 bind_text =&#39;TABLE.NAME&#39;
 ).
 lr_column_name_header ?= cl_wd_caption=&amp;gt;new_caption(text = &#39;Nam
 e&#39;).
 lr_column_name-&amp;gt;
 set_table_cell_editor(the_table_cell_editor = lr_text_view
 ).
 lr_column_name-&amp;gt;set_header(lr_column_name_header).
 ENDIF.
 ENDMETHOD.&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/273254491251399418/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/user-interface-elements-ui-elements_22.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/273254491251399418'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/273254491251399418'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/user-interface-elements-ui-elements_22.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-7356434071892495217</id><published>2012-09-22T23:02:00.005-07:00</published><updated>2012-09-22T23:02:28.794-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://adf.ly/CUYOh&quot; target=&quot;_blank&quot;&gt;User Interface Elements (UI elements) Static and Dynamic Programming-part-3&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;RoadMap&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using this UI element, we can display the steps required to complete a 
certain task. Hereunder,we show some of the roadMap properties that can 
be bound,and the attribute type in case the property is bindable.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;85&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/18-Some-of-roadMap-UI-element-properties.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 the RoadMap example,we use the exercise from the 
ViewContainerUIElement,a little bit re-arranged. The WD component 
structure is presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;224&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/62.png&quot; type=&quot;image&quot; width=&quot;250&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this case,we replace the LinkToAction UI elements with two Buttons: 
Next and Back. These Buttons are inserted into the view V_VIEW, and the 
user can navigate from the first step to the end one, via the RoadMap. 
In this case, we used only a ViewContainerUIElement,and for each step we
 have a view. In the view V_VIEW, we insert a RoadMap UI element with 
three steps. To insert a step into a RoadMap UI Element, we right-click 
on the element and, from the contextual menu, we choose Insert Step.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;/b&gt;&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;b&gt;RoadMap steps&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;161&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/63.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;V_VIEW view layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;232&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/64.png&quot; type=&quot;image&quot; width=&quot;401&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
T0
 be able to manipulate the RoadMap UI element and the Button via the 
data held in the context, we create, in the V_VIEW, a context node named
 DYNAMIC. This node has three attributes:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;SELECTEDSTEP, of STRING type, used to dynamically set the ID of the selected step&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;ENABLED_NEXT, of WDY_BOOLEAN type, used to manipulate the enabled property of the NEXT button&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;ENABLED_BACK,of WDY_BOOLEAN type,used to manipulate the enabled property of the BACK button (Fig – right)&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 hold and show the data entered by the user, we have created, in the COM
 PONENTCONTROLLER context, a node named INFO (Fig. – left).This context 
node has the same structure as presented in the ViewContainerUIElement 
example. The attributes are: NAME, EMAIL &amp;amp; CITY (of STRING type) and
 COUNTRY (of Y_DEFORDOMAIN type). We create a context mapping among this
 context node and the context views V_STEP1, V_STEP2 and V_STEP3.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;141&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/65.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;V_STEP1 view layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;119&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/66.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;V_STEP2 view layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;135&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/67.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;V_STEP3 view layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;166&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/68.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 view “V_VIEW” is the default view – the firstly displayed one.In the 
ViewContainerUIElement,we embed all the three views V_STEP1,V_STEP2 and 
V_STEP3. The view V_STEP1 is, in this case, the default view.&amp;nbsp;To be able
 to navigate among the views, we have to create inbound and outbound 
plugs. In the view V_VIEW, we create three outbound plugs:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;OP_TO_V_STEP1 required to navigate to the view V_STEP1&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;OP_TO_V_STEP2 required to navigate to the view V_STEP2&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;OP_TO_V_STEP3 required to navigate to the view V_STEP3&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 view V_STEP1 has an inbound plug named IP_V_STEP1,the view V_STEP2 has 
an inbound plug named IP_V_STEP2 and the view V_STEP3 has an inbound 
plug named IP_V_STEP3.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Window structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;369&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/69.png&quot; type=&quot;image&quot; width=&quot;250&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In the wdDoInit Hook method (V_VIEW),we dynamically set the attributes values for SELECTEDSTEP, ENABLED_NEXT and ENABLED_BACK.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The wdDoInit Hook method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddoinit.
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_data TYPE wd_this-&amp;gt;element_dynamic.
 lr_node = wd_context-get_child_node(&#39;DYNAMIC&#39;).
 ls_data-enabled_next = abap_true.
 ls_data-enabled_back = abap_false.
 ls_data-selectedstep =&#39;STEP1&#39;.
 lr_node-&amp;gt;set_static_attributes(ls_data).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
First
 time when the screen is rendered, we want the BACK Button to be not 
enabled,the NEXT Button to be enabled, and the STEP1 to be the active 
RoadMap step.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;input height=&quot;208&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/70.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user presses the NEXT button, the Framework triggers the event handler method onactionnext.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactionnext event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionnext.
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_data TYPE wd_this-element_dynamic.
 DATA lv_selectedstep TYPE string.
 lr_node = wd_context-get_child_node(&#39;DYNAMIC&#39;).
 lr_node-get_attribute
 (EXPORTING name =&#39;SELECTED STEP&#39;IMPORTING value = lv_selectedstep ).
 ASE lv_selectedstep.
 WHEN ‘STEP1’.
 ls_data-selectedstep = ‘STEP2’.
 ls_data-enabled_next = abap_true.
 ls_data-enabled_back = abap_true.
 wd_this-fire_op_to_v_step2_plg( ).
 WHEN ‘STEP2’.
 ls_data-selectedstep = ‘STEP3’.
 ls_data-enabled_next = abap_false.
 ls_data-enabled_back = abap_true.
 wd_this-fire_op_to_v_step3_plg( ).
 WHEN OTHERS.
 ls_data-enabled_next = abap_false.
 ls_data-enabled_back = abap_true.
 ENDCASE.
 lr_node-set_static_attributes(ls_data).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we can see, we make active the STEP2: ls_data-selectedstep = ‘STEP2’,we
 fire the method that helps us to navigate to the nextview V_STEP2&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
wd_thisfire_op_to_v_step2_plg( )&lt;br /&gt;
and we enable both buttons&lt;br /&gt;
ls_data-enabled_next = abap_true.&lt;br /&gt;
ls_data-enabled_back = abap_true.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;201&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/80.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When
 the user presses again the NEXT button,we deactivate the NEXT button 
ls_data-enabled_next = abap_false we make active STEP3 
ls_data-selectedstep = ‘STEP3’and fire the method that helps us to 
navigate to the view V_STEP3 wd_this!fire_op_to_v_step3_plg( ),&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;205&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/81.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user presses the BACK button, the Framework triggers the event handler method onactionback.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactionback event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionback.
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_data TYPE wd_this-element_dynamic.
 DATA lv_selectedstep TYPE string.
 lr_node = wd_context-get_child_node(‘DYNAMIC’).
 lr_node-get_attribute
( EXPORTING name =‘SELECTEDSTEP’IMPORTING value = lv_selectedstep).
 CASE lv_selectedstep.
 WHEN ‘STEP3’.
 ls_data-selectedstep = ‘STEP2’.
 ls_data-enabled_next = abap_true.
 ls_data-enabled_back = abap_true.
 wd_this-fire_op_to_v_step2_plg( ).
 WHEN ‘STEP2’.
 ls_data-selectedstep = ‘STEP1’.
 ls_data-enabled_next = abap_true.
 ls_data-enabled_back = abap_false.
 wd_this-&amp;gt;fire_op_to_v_step1_plg( ).
 WHEN OTHERS.
 ls_data-enabled_next = abap_true.
 ls_data-enabled_back = abap_false.
 NDCASE.
 r_node-set_static_attributes(ls_data ).
  ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As we can see(Fig.)when the user presses the BACK button,we navigate back to the view V_STEP2&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
wd_this!fire_op_to_v_step2_plg( ).&lt;br /&gt;
we activate both buttons ls_data-enabled_next = abap_true.&lt;br /&gt;
ls_data-enabled_back = abap_true.&lt;br /&gt;
we make active the step STEP2 ls_data-selectedstep = ‘STEP2’.&lt;br /&gt;
wd_this!fire_op_to_v_step2_plg( ).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;203&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/82.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user presses again the BACK Button (Fig.),we navigate back to the view V_STEP1&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
wd_this!fire_op_to_v_step1_plg( ).&lt;br /&gt;
we deactivate the BACK button ls_data-enabled_back = abap_false.&lt;br /&gt;
and make active the step STEP1 ls_data-selectedstep = ‘STEP1’.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;204&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/83.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
RUNTIME CLASS: CL_WD_ROAD_MAP&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 present a table showing the correspondence between the view designer 
name and the runtime name, with the proper types,in case of dynamic 
programming of a RoadMap UI element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;129&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/19-Dynamic-programming.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 the RoadMap UI element,we have, as aggregation, the Step: Road Map Step
 or MultipleRoadMapStep.The RoadMapStep element represents a step in a 
Road- Map,and has the CL_WD_ROAD_MAP_STEP runtime class.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The implementation of a dynamic RoadMap UI element with two Steps contains the following statements:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming of a RoadMap UI element&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddomodifyview.
 DATA lr_container TYPE REF TO cl_wd_uielement_container.
 DATA lr_roadmap TYPE REF TO cl_wd_road_map.
 DATA lr_step1 TYPE REF TO cl_wd_road_map_step.
 DATA lr_step2 TYPE REF TO cl_wd_road_map_step.
 DATA lr_flow_data TYPE REF TO cl_wd_flow_data.
 IF first_time EQ abap_true.
 lr_container ?= view-&amp;gt;get_element(&#39;ROOTUIELEMENTCONTAINER&#39;).
 lr_roadmap = cl_wd_road_map=&amp;gt;new_road_map(
 id = &#39;RM_ROADMAP&#39;
 bind_selected_step =&#39;DYNAMIC.SELECTEDSTEP&#39;
 start_point_design = cl_wd_road_map=&amp;gt;e_start_point_design-selected
 ).
 lr_flow_data = cl_wd_flow_data=&amp;gt;new_flow_data(element =
 lr_roadmap).
 lr_container-&amp;gt;add_child(lr_roadmap).
lr_step1 = cl_wd_road_map_step=&amp;gt;new_road_map_step(
 id = &#39;STEP1&#39;
 description =&#39;STEP 1&#39;
 name =&#39;1&#39;
 ).
 lr_roadmap-&amp;gt;add_step(the_step = lr_step1).
 lr_step2 = cl_wd_road_map_step=&amp;gt;new_road_map_st
 id = &#39;STEP2&#39;
 description =&#39;STEP 2&#39;
 name =&#39;2&#39;
 ).
 lr_roadmap-&amp;gt;add_step(he_step = lr_step2).
 ENDIF.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;PhaseIndicator&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Similar
 to the Road Map UI element, we can display then the steps in a 
wizard,by using the PhaseIndicator. Hereunder,we show some of the 
PhaseIndicator properties that can be bound, and the attribute type in 
case the property is bindable.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Some of the PhaseIndicator UI element properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;84&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/20-Some-of-the-PhaseIndicator-UI-element-properties.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
A
 Phase is a step into a PhaseIndicator that has bindable properties 
as,for example,enable and status. Table presents some of these 
properties and how we can use the status property for a dynamic 
manipulation.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Some of the phase properties and the dynamic manipulation of the status&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;99&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/21-Some-of-the-phase-properties-and-the-dynamic-manipulation-of-the-status.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create the same example as for the RoadMap, but,in this case,we use a 
PhaseIndicator UI element with three phases.The WD component structure 
is presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;280&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/86.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this case,we have renamed the views V_STEP1, V_STEP2 and V_STEP3 as 
V_PHASE1,V_PHASE2 and V_PHASE3. The content of these views is the 
same.We can rename a view by right-clicking on the view name and, from 
the contextual menu,we choose rename. To insert a phase into a 
PhaseIndicator UI Element, we right-clickon the element and,from the 
contextual menu, we choose Insert Phase.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Inserting Phase into a PhaseIndicator&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;232&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/87.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 the first Phase,we have set the status property: completed. For the 
other two Phases(Phase2 and Phase3),we have dynamically set the status 
property,by using the two attributes named STATUS2 and STATUS3 of 
WDUI_PHASE_STATUS type.To manipulate the enabled property of the NEXT 
button, we use the same attribute ENABLED_NEXT of WDY_BOOLEAN type, and 
to manipulate the selected phase, we use the attribute SELECTEDPHASE of 
string type (Fig right).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 node INFO is defined in the COMPONENTCONTROLLER and has the same 
structure as showed in the previous example. We create context mapping 
among this context node and the context views V_PHASE1,V_PHASE2 and 
V_PHASE3.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;141&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/88.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The V_VIEW layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;243&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/89.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 view has two outbound plugs defined: OP_TO_V_PHASE2 and 
OP_TO_V_PHASE3.The view V_PHASE1 has no inbound plug, the view V_PHASE2 
has an inbound plug named IP_V_PHASE2 and the view PHASE_3 has an 
inbound plug named IP_V_PHASE3. The window structure is presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Window structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;363&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/90.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 view V_PHASE1 is shown in the ViewControllerUIElement first time when 
the screen is rendered, this view being defined as default view.We have 
to dynamically set the attributes values for 
SELECTEDPHASE,STATS2,STATUS3 and ENABLED_NEXT. To do this, we use the 
wdDoInit Hook method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The wdDoInit Hook method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddoinit.
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_data TYPE if_v_view=element_dynamic.
 lr_node = wd_context-get_child_node(&#39;DYNAMIC&#39;).
 ls_data-enabled_next = abap_true.
 ls_data-status2 = CL_WD_PHASE=E_STATUS-WARNING.
 ls_data-status3 = CL_WD_PHASE=E_STATUS-WARNING.
 ls_data-selectedphase = &#39;PHASE1&#39;.
 lr_node-set_static_attributes(ls_data).
ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we can see,we selected the first phase: ls_data-selectedphase = 
‘PHASE1’and we set the Phase2 and Phase3 with the Warning status 
ls_data-status2 = cl_wd_phase) e_status-warning.&lt;br /&gt;
ls_data-status3 = cl_wd_phase) e_status-warning.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;181&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/91.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user presses the button, the Framework triggers the event handler method onactionnext.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactionnext event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionnext.
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_data TYPE if_v_view=element_dynamic.
 DATA lv_phase TYPE string.
 lr_node = wd_context-&amp;gt;get_child_node(&#39;DYNAMIC&#39;).
 lr_node-get_attribute
(EXPORTING name =&#39;SELECTEDPHASE&#39;IMPORTING value = lv_phase).
 CASE lv_phase.
 WHEN &#39;PHASE1&#39;.
 ls_data-selected phase =&#39;PHASE2&#39;.
 ls_data-enabled_next = abap_true.
 ls_data-status2 = cl_wd_phase=e_status-completed.
 ls_data-status3 = cl_wd_phase=e_status-warning.
 wd_this-fire_op_to_v_phase2_plg( ).
 WHEN &#39;PHASE2&#39;.
 ls_data-selectedphase = &#39;PHASE3&#39;.
 ls_data-enabled_next = abap_false.
 ls_data-status2 = cl_wd_phase=e_status-completed.
 ls_data-status3 = cl_wd_phase=e_status-completed.
 wd_this-fire_op_to_v_phase3_plg( ).
 WHEN OTHERS.
 ls_data-enabled_next = abap_false.
 ENDCASE.
 lr_node-set_static_attributes(ls_data).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we can see, we make active the Phase2 ls_data-selectedphase ¼ ‘PHASE2’ 
we set the Phase2 with completed status and Phase3 with warning status 
ls_data-status2 cl_wd_phase )&lt;br /&gt;
e_status-completed.ls_data-status3 = cl_wd_phase)e_status-warning.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For the next press of the NEXT button,we set the Phase2 and Phase3 with completed status&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
ls_data-status2 cl_wd_phase)e_status-completed.&lt;br /&gt;
ls_data-status3 cl_wd_phase)e_status-completed.we make active the last Phase, ls_data-selectedphase = ‘PHASE3’.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;208&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/92.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
RUNTIME CLASS: CL_WD_PHASE_INDICATOR&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 present a table showing the correspondence between the view designer 
name and the runtime name, with the proper types,in case of dynamic 
programming of a PhaseIndicator UI element&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;97&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/22-Dynamic-programming.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For the PhaseIndicator UI element,we have,as aggregation, the Phase element. It has the CL_WD_PHASE runtime class.&lt;br /&gt;
The implementation of a dynamic PhaseIndicator UI element with two Phases contains the following statements:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming of a PhaseIndicator UI element&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddomodifyview.
 DATA lr_container TYPE REF TO cl_wd_uielement_container.
 DATA lr_flow_data TYPE REF TO cl_wd_flow_data.
 DATA lr_phaseindicator TYPE REF TO cl_wd_phase_indicator.
 DATA lr_phase1 TYPE REF TO cl_wd_phase.
 DATA lr_phase2 TYPE REF TO cl_wd_phase.
 IF first_time EQ abap_true.
 lr_container ?= view-&amp;gt;get_element(&#39;ROOTUIELEMENTCONTAINER&#39;).
 lr_phaseindicator = cl_wd_phase_indicator=&amp;gt;new_phase_indicator(
 id = &#39;PI_PHASEINDICATOR&#39;
 bind_selected_phase =&#39;DYNAMIC.SELECTEDPHASE&#39;
 irst_visible_phase =&#39;PHASE1&#39;
 background_design = cl_wd_phase_indicator=&amp;gt;
 e_background_designtransparent
 ).
 lr_flow_data = cl_wd_flow_data=&amp;gt;new_flow_data(element =
 lr_phaseindicator).
 lr_container-&amp;gt;add_child(lr_phaseindicator).
 lr_phase1 = cl_wd_phase=&amp;gt;new_phase(
 id =&#39;PHASE1&#39;
 description =&#39;PHASE 1&#39;
 status = cl_wd_phase=&amp;gt;e_status-completed
 ).
 lr_phaseindicator-&amp;gt;add_phase(the_phase = lr_phase1).
 lr_phase2 = cl_wd_phase=&amp;gt;new_phase(
 ld =&#39;PHASE2&#39;
 description =&#39;PHASE 2&#39;
 bind_status =&#39;DYNAMIC.STATUS2&#39;
 ).
 lr_phaseindicator-&amp;gt;add_phase(the_phase = lr_phase2).
 ENDIF.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Tree - Sequential Implementation&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
With this UI element,we can visualise the hierarchy defined in the context. For this UI element,we can use:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;A sequential implementation with a non-recursive node in case the number of levels can be specified at design time&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;A recursive implementation with a recursive node in case the number of levels is not known at design time&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;210&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/93.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this case(sequential implementation,we don’t need a recursive node. A 
context node TREE is created in the context node of the view controller.
 It has the cardinality 1...1 and is Singleton.Under this context 
node,we create another context node TREE_NODE with two attributes. Under
 this context node,we create another context node TREE_LEAF with an 
attribute.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;237&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/94.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 attributes STUDENTNAME, VALUE and STUDENTINFO are of STRING type.The 
context node TREE_LEAF is not Singleton,because we need to create an 
instance of this node for each element of the TREE_NODE context node.In 
the STUDENTNAME attribute, we hold the name of each student; for each 
student we have proper information held in the attribute STUDENTINFO.&amp;nbsp;In
 a Tree UI element, we can insert Node Types of type TreeItemType and 
TreeNodeType,to specify which subnodes and which context attributes are 
going to be displayed.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Inserting Node Type&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;106&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/95.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;92&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/96.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Binding of the Context to the Tree elements&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;285&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/97.png&quot; type=&quot;image&quot; width=&quot;521&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The context node TREE_NODE is populated via the supply function method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;TREE_NODE context node&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD supply_tree_node.
 DATA:
 ls_studentTYPE if_v_view
 =element_tree_node,lt_student LIKE TABLE OF ls_student.
 ls_student-studentname = &#39;Ionescu Ana Maria&#39;.
 ls_student-value = &#39;A&#39;.
 APPEND ls_student TO lt_student.
 ls_student-studentname = &#39;Marinescu Loredana&#39;.
 ls_student-value = &#39;B&#39;.
 APPEND ls_student TO lt_student.
 ls_student-studentname = &#39;Marton Luminita&#39;.
 ls_student-value = &#39;C&#39;.
 APPEND ls_student TO lt_student.
 node-bind_table(lt_student ).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The values for the child node TREE_LEAF are set in the same way via a supply function method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Populating the attributes of the TREE_LEAF context node&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD supply_tree_leaf.
 DATA:
 ls_studentTYPE if_v_view=&amp;gt;
 element_tree_leaf,lt_student LIKE TABLE OF ls_student.
 DATA: lv_value TYPE string.
 parent_element-&amp;gt;get_attribute
 (EXPORTING name = &#39;VALUE&#39;IMPORTING value = lv_value ).
 CASE lv_value.
 WHEN &#39;A&#39;.
 ls_student-student info =&#39;Article - YES&#39;.
 APPEND ls_student TO lt_student.
 ls_student-studentinfo = &#39;Exam - 5&#39;.
 APPEND ls_student TO lt_student.
 ls_student-studentinfo = &#39;Academic year -II&#39;.
 APPEND ls_student TO lt_student.
 WHEN &#39;B&#39;.
 ls_student-studentinfo =&#39;Article - NO&#39;.
 APPEND ls_student TO lt_student.
 ls_student-studentinfo =&#39;Academic year -I&#39;.
 APPEND ls_student TO lt_student.
 WHEN OTHERS.
 ls_student-studentinfo =&#39;Article - YES&#39;.
 APPEND ls_student TO lt_student.
 ls_student-studentinfo =&#39;Exam - 3&#39;.
 APPEND ls_student TO lt_student.
 ls_student-studentinfo =&#39;Academic year -IV&#39;.
 APPEND ls_student TO lt_student.
 ENDCASE.
 node-bind_table(lt_student).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;211&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/101.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
RUNTIME CLASS: CL_WD_TREE&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 present a table showing the correspondence between the view designer 
name and the runtime name,with the proper types,in case of dynamic 
programming of a Tree UI element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;99&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/23-Dynamic-programming.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 the Tree UI element, we have, as aggregation, the Node Types: 
TreeItem-Type and TreeNodeType. The TreeItemType element has the 
CL_WD_TREE_ ITEM_TYPE runtime class and the TreeNodeType element has the
 CL_WD_TREE_NODE_TYPE runtime class.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 implementation of a dynamic Tree UI element with two node types (Tree- 
NodeType and TreeItemType)contains the following statements:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddomodifyview.
 DATA lr_container TYPE REF TO cl_wd_uielement_container.
 DATA lr_flow_data TYPE REF TO cl_wd_flow_data.
 DATA lr_tree TYPE REF TO cl_wd_tree.
 DATA lr_treenode TYPE REF TO cl_wd_tree_node_type.
 DATA lr_treeitem TYPE REF TO cl_wd_tree_item_type.
 IF first_time EQ abap_true.
 lr_container ?= view-&amp;gt;get_element(&#39;ROOTUIELEMENTCONTAINER&#39;).
 lr_tree = cl_wd_tree=&amp;gt;new_tree(
 id = &#39;TRE_SEQUENTIAL&#39;
 bind_data_source = &#39;TREE&#39;
 title = &#39;Student info&#39;
 default_node_icon_source = &#39;~Icon/CheckedOk&#39;
 ).
 lr_flow_data = cl_wd_flow_data=&amp;gt;new_flow_data(element =
 lr_tree).
 lr_container-&amp;gt;add_child(lr_tree).
 lr_treenode = cl_wd_tree_node_type=&amp;gt;new_tree_node_type(
 id =&#39;TREE_NT&#39;
 bind_data_source =&#39;TREE.TREE_NODE&#39;
 bind_text =&#39;TREE.TREE_NODE.STUDENTNAME&#39;
 ).
 lr_treeitem = cl_wd_tree_item_type=&amp;gt;new_tree_item_type(
 id =&#39;TREE_IT&#39;
 bind_data_source =&#39;TREE.TREE_NODE.TREE_LEAF&#39;
 bind_text =&#39;TREE.TREE_NODE.TREE_LEAF.STUDENTINFO&#39;
 ).
 lr_tree-&amp;gt;add_node_type(index = 1
 the_node_type = lr_treenode).
 lr_tree-&amp;gt;add_node_type(index = 2
 the_node_type = lr_treeitem).
 ENDIF.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;DateNavigator&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 UI element offers the possibilities to display and navigate in a 
calendar and to enter dates, by choosing a year, a month,a day or a 
range of dates,from the showed calendar.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 present a table with some of the DataNavigator properties that can be 
bound, and the attribute type in case the property is bindable.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Some of the DataNavigator UI element properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;100&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/24-Some-of-the-DataNavigator-UI-element-properties.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create a WD Component named Y_UI_DATENAVIGATOR. In the context view,we 
create three attributes: MONTH, WEEK and DAY of STRING type,and two 
context nodes:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;LEGEND,Cardinality 0. . .n,&amp;nbsp;supply function named SUPPLY_LEGEND,attributes:&lt;br /&gt;CATEGORY of WDY_MD_DATE_MARKING_CATEGORY type and TEXT of STRING type&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;MARKING,Cardinality
 0...n,supply function named SUPPLY_MARKING, attributes: CATEGORY of 
WDY_MD_DATE_MARKING_CATEGORY type and DATE of D type.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the view layout,we insert a DateNavigator UI element with a 
DateNavigator- Legend and DateNavigatorMarking. By using the 
DateNavigatorLegend element,we can add a legend for the DateNavigator, 
and with the DateNavigator- Marking element,we can highlight entries of a
 specific category within the Date- Navigator UI element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context view and DateNavigatorLegend, DateNavigatorMarking properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;246&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/102.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The most important properties of the DateNavigatorLegend element are:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;“Category”,which
 allows us to create the legend categories (in format one,two,three and 
four).It shall be bound to a context attribute that stores these 
categories.&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;“Text”, which stores the texts, describing each category.&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;“DataSource”,which
 shall be bound to a context node,which stores the categories and the 
texts of the legend entries. The most important properties of the 
DateNavigatorMarking element are:&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;“Category”,which shall be bound to a context attribute that stores the category of the highlighted data.&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;“DataSource”,which shall be bound to a context node which stores the categories,data and tooltip of the highlighted data.&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;“Tooltip”
 is not necessarily bindable. In our case,we have not created an 
attribute for the tooltip,because we don’t want to display a quick info 
text when the user passes the mouse pointer over the highlighted data of
 the Date- Navigator UI element.&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;“Data” shall be bound to a context attribute that stores the date of the highlighted data.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;300&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/103.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The DateNavigator UI element has many properties and events. In our case,we have changed the properties:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In this way,we have chosen Sunday as the first day of the week in our calendar.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;50&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/105.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In this way,we show 3 months in our calendar.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;33&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/106.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We have chosen from the list the range option,because we want to offer the possibility to select the range of dates.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;31&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/107.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We have set the starting date of our calendar.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 be able to show,in the TextView UI elements,the week,the day or the 
month that the end-user selects in our calendar,we have used the 
events:onDaySelect,on Month Select and on Week Select.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Events of the DataNavigator UI element&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;99&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/108.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
First of all,we have to populate our nodes with values. The Listing shows the SUPPLY_LEGEND supply function method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The SUPPLY_LEGEND supply function method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD supply_legend.
 DATA: 
 ls_legend TYPE wd_this-element_legend,lt_legend LIKE TABLE OF ls_legend.
 ls_legend-category = cl_wd_date_nav_legend=e_category-one.
 ls_legend-text = &#39;Doors open day&#39;.
 APPEND ls_legend TO lt_legend.
 ls_legend-category = cl_wd_date_nav_legend=&amp;gt;e_category-two.
 ls_legend-text = &#39;Operating teams trip&#39;.
 APPEND ls_legend TO lt_legend.
 ls_legend-category = cl_wd_date_nav_legend=&amp;gt;e_category-three.
 ls_legend-text = &#39;Happy hour&#39;.
 INSERT ls_legend INTO TABLE lt_legend.
 node-bind_table( lt_legend ).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create three legend categories(one, two and three),with the 
texts:“Doors open day” for the first category, “Operating teams trip”for
 the second category and “Happy hour” for the third category.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The Listing shows the SUPPLY_MARKING supply function method required to populate with values the MARKING node.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The SUPPLY_MARKING supply function method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD supply_legend.
 DATA:
 ls_legend TYPE wd_this-element_legend,lt_legend LIKE TABLE OF ls_legend.
 ls_legend-category = cl_wd_date_nav_legend=e_category-one.
 ls_legend-text = &#39;Doors open day&#39;.
 APPEND ls_legend TO lt_legend.
 ls_legend-category = cl_wd_date_nav_legend=e_category-two.
 ls_legend-text = &#39;Operating teams trip&#39;.
 APPEND ls_legend TO lt_legend.
 ls_legend-category = cl_wd_date_nav_legend=e_category-three.
 ls_legend-text = &#39;Happy hour&#39;.
 INSERT ls_legend INTO TABLE lt_legend.
 node-bind_table( lt_legend ).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this way we mark (highlight),for the first category,the day 
11.08.2009,for the second category,the day 21.08.2009,and for the third 
category,the day 24.08.2009. When the user selects a day in our 
calendar,the Framework triggers the event handler method 
onactionon_day_select.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactionon_day_select event handler method&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;191&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/109%281%29.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 import parameter, for our event handler method, we have the parameter 
named DAY of D type that holds the selected day. We pass this value in 
our DAY attribute created in the context view.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user selects a Week in our calendar, the Framework triggers the event handler method onactionon_week_select.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactionon_week_select event handler method&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;191&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/109.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 import parameter,for our event handler method,we have the parameters: 
WEEK of I type that holds the selected week and YEAR of I type that 
holds the corresponding year of the selected week. We pass these values 
in our WEEK attribute created in the context view.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When
 the user selects a Month in our calendar,the Framework triggers the 
event handler method onactionon_month_select.&amp;nbsp;The 
onactionon_month_select event handler method.&amp;nbsp;As import parameters,for 
our event handler method,we have: MONTH of I type that holds the 
selected month and YEAR of I type that holds the corresponding of the 
selected month. We pass these values in our MONTH attribute created in 
context view.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;233&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/111%281%29.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
RUNTIME CLASS: CL_WD_DATE_NAVIGATOR&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 present a table showing the correspondence between the view designer 
name and the runtime name, with the proper types,in case of dynamic 
programming of a DateNavigation UI element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;176&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/25-Dynamic-programming.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 implementation of a dynamic DateNavigator UI element with elements: 
DateNavigatorLegent and DateNavigatorMarking, contains the following 
statements:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming of a DataNavigator UI element&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddomodifyview.
 DATA lr_date_navigator TYPE REF TO cl_wd_date_navigator.
 DATA lr_flow_data TYPE REF TO cl_wd_flow_data.
 DATA lr_container TYPE REF TO cl_wd_uielement_container.
 DATA lr_datenav_legend TYPE REF TO cl_wd_date_nav_legend.
 DATA lr_datenav_marking TYPE REF TO cl_wd_date_nav_marking.
 IF first_time EQ abap_true.
 lr_container ?= view-&amp;gt;get_element(&#39;ROOTUIELEMENTCONTAINER&#39;).
 lr_date_navigator = cl_wd_date_navigator=&amp;gt;new_date_navigator(
 id =&#39;DATENAVIGATOR&#39;
 first_day_of_week = cl_wd_date_navigator=&amp;gt;e_first_day_of_week-sunday
 months_per_column = 1
 months_per_row = 3
 selection_mode = cl_wd_date_navigator=&amp;gt;e_selection_mode-range
 starts_with =&#39;20090801&#39;
 on_day_select =&#39;ON_DAY_SELECT&#39;
 on_month_select =&#39;ON_MONTH_SELECT&#39;
 on_week_select =&#39;ON_WEEK_SELECT&#39;
 ).
 lr_flow_data = cl_wd_flow_data=&amp;gt;new_flow_data(element =
 lr_date_navigator).
 lr_container-&amp;gt;add_child(lr_date_navigator).
 lr_datenav_legend = cl_wd_date_nav_legend=&amp;gt;new_date_nav_legend(
 id =&#39;DATENAVIGATORLEGEND&#39;
 bind_category =&#39;LEGEND.CATEGORY&#39;
 bind_data_source =&#39;LEGEND&#39;
 bind_text =&#39;LEGEND.TEXT&#39;
 ).
 lr_date_navigator-&amp;gt;set_legend(the_legend = lr_datenav_legend).
 lr_datenav_marking = cl_wd_date_nav_marking=&amp;gt;new_date_nav_marking(
 id = &#39;DATENAVIGATORMARKING&#39;
 bind_category = MARKING.CATEGORY&#39;
 bind_data_source =&#39;MARKING&#39;
 bind_date =&#39;MARKING.DATE&#39;
 ).
 lr_date_navigator-&amp;gt;set_marking(the_marking=lr_datenav_marking) 
 ENDIF.
 ENDMETHOD.
&lt;/pre&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;587-integration&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Integration&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 category contains complex UI elements as regards their structure and 
content.Hereunder,we present some of the UI Elements included in this 
category.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Table&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using this UI element, we can display data arranged in rows and 
columns.Table shows some of the Table properties that can be bound,and 
the attribute type in case the property is bindable.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Some of the Table UI element properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;100&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/16-Some-of-the-Table-UI-element-properties.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this exercise,we want to take data from an end user and to insert them 
into a table UI element,after the latest record. To do this,we create a 
WD component named Y_UI_TABLE that has a View named V_VIEW and a default
 window.In the context view,we need two context nodes: a context node 
required to hold the new record from the end user and a context node 
required to hold all the records.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;241&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/54.png&quot; style=&quot;border: none;&quot; width=&quot;196&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 context node REGISTRATION has the cardinality 1. . .1, Singleton.Its 
attributes are: NAME of STRING type,DATE OF BIRTH of YDATEOFBIRTH 
type,COUNTRY of Y_DEFORDOMAIN type and NO of I type. We use the 
attributes of this context node to hold every new record.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 context node TABLE has the cardinality 0...n,Singleton, selection 
0...1, supply function SUPPLY_PERSON and initialization lead selection 
is not automatically set. In this case,we want to manually set the lead 
selection. The context node attributes have the same name and data type 
as the context node REGISTRATION.We use the attributes of this context 
node to hold all the registrations.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the next step,we have to create the view layout.To insert a Table into 
our view layout,we can use two options: we can manually insert the table
 or we can use the Web Dynpro Wizard. In the beginning, we explain the 
first option. After inserting a Table UI element into our view,we have 
to create a data binding.When a table is bound to a context node by 
using a wizard,we don’tneed to individually create each table column. We
 have only to select the context node and the Framework provides the 
available attributes.In this way,the value of the property DataSource 
(mandatory) of the Table UI element is bound to the context node TABLE.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Table UI element – Creating the binding&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;358&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/55.png&quot; style=&quot;border: none;&quot; width=&quot;518&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 Cell Editors of the Table Column describe the UI element used to 
display or edit the column content.As we can see,our columns are created
 by using textView UI elements. Each attribute represents a column in 
our table, and for each column we can choose an UI element. After this, 
the standard property to be bound depends on the chosen UI element.For 
example, for the TextView UI element, the property is text, and for the 
DropDownByKey, the name of the property to be bound is selectedKey.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Cell Editor of Table Column – Name of Property to be bound&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;229&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/56.png&quot; style=&quot;border: none;&quot; width=&quot;433&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 view layout is presented in Fig. For each attribute for which the bind 
option is marked, the Framework generates a proper column. For example, 
for the attribute “NO”,the Framework has generated the column 
TBL_EXAMPLE_NO, for the attribute NAME, the Framework has generated the 
column TBL_EXAPLE_NAME,etc.The Table UI element offers the possibility 
to display as many rows as we need by using the property visibleRowCount
 (in our case, five). In the default mode,the property displayEmptyRows 
is set as ABAP_TRUE. In case we set this property as ABAP_FALSE, the 
rows that are empty in our table will not be on screen anymore.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 second option to insert a Table UI element into our View Layout is to 
use the Web Dynpro Wizard (Fig). In this case,the Wizard generates the 
Table UI element and we use the same procedure presented hereunder to 
create the data binding. After the user enters the new values (Name, 
Date of Birth and Country),we have to add these values at the end of the
 other records, in the table UI element. To be able to do this, we need 
an action. Fig Cell Editor of Table Column – Name of Property to be 
bounding.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 the user enters the new values (Name, Date of Birth and Country),we 
have to add these values at the end of the other records,in the table UI
 element. To be able to do this, we need an action.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;430&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/57.png&quot; style=&quot;border: none;&quot; width=&quot;507&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Web Dynpro wizard to insert a Table UI element into the view layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;121&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/58.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 a table UI element, we can insert a Toolbar. We need a toolbar to be 
able to insert a ToolBarButton in this area. We populate the node TABLE 
with two values, via the supply function method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 local variable lv_counter is used to create the record ID. After the 
node population, we use the SET_LEAD_SELECTION_INDEX method to set lead 
selection via index. As we can see, the index is set with the value of 
the lv_counter. In this way,it is selected the last value of the table.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Inserting a ToolBarButton&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;445&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/59.png&quot; style=&quot;border: none;&quot; width=&quot;515&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Supply function method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD supply_person.
 DATA:
 ls_table TYPE wd_this-element_table,
 lt_table LIKE TABLE OF ls_table,
 lv_counter TYPE i VALUE 1.
 ls_table-no = lv_counter.
 ls_table-name = &#39;Antonia Maria Crist&#39;.
 ls_table-dateofbirth = &#39;19800305&#39;.
 ls_table-country = &#39;DE&#39;.
 lv_counter = lv_counter + 1.
 APPEND ls_table TO lt_table.
 ls_table-no = lv_counter.
 ls_table-name = &#39;Albu Alina&#39;.
 ls_table-dateofbirth = &#39;19800908&#39;.
 ls_table-country = &#39;IT&#39;.
 APPEND ls_table TO lt_table.
 node-&amp;gt;bind_table(new_items=lt_table set_initial_elements = abap_true).
 node-set_lead_selection_index(index=lv_counter).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we have mentioned above, if the “Initialization lead selection” for a 
node is “YES”, it is always selected the first element of this node. In 
this case, our context node has this property selected “NO”; we 
influence the selected element by using the set_lead_selection_index.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To influence the lead selection, we have some methods, as following&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Set_lead_selectio&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Move_first&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Move_previous&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Move_&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 our TABLE context node, we have set the selection cardinality 0...1 
meaning that maximum one row can be selected if the node elements are 
displayed as a table.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user presses the “Add record” button,the Framework triggers the event handler method onactionadd.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionadd.
 DATA: lr_node TYPE REF TO if_wd_context_node,
 lr_node1 TYPE REF TO if_wd_context_node,
 lr_element TYPE REF TO if_wd_context_element,
 lv_counter TYPE i,
 lv_dateofbirth TYPE ydateofbirth,
 lv_country TYPE y_defordomain,
 lv_name TYPE string,
 ls_registration TYPE wd_this-&amp;gt;element_registration.
 lr_node = wd_context-&amp;gt;get_child_node(&#39;REGISTRATION&#39;).
 lr_node-&amp;gt;get_attribute(EXPORTING name =&#39;DATEOFBIRTH&#39;
 IMPORTING value = lv_dateofbirth).
 lr_node-&amp;gt;get_attribute(EXPORTING name =&#39;NAME&#39;
 IMPORTING value = lv_name).
 lr_node-&amp;gt;get_attribute(EXPORTING name =&#39;COUNTRY&#39;
 IMPORTING value = lv_country).
 lr_node1 = wd_context-&amp;gt;get_child_node(&#39;TABLE&#39;).
 lr_node1-&amp;gt;get_attribute(EXPORTING name =&#39;NO&#39;
 IMPORTING value = lv_counter).
 lv_counter = lv_counter + 1.
 ls_registration-no = lv_counter.
 ls_registration-dateofbirth = lv_dateofbirth.
 ls_registration-name = lv_name.
 ls_registration-country = lv_country.
 lr_node-&amp;gt;set_static_attributes(ls_registration).
 lr_element = lr_node-&amp;gt;get_lead_selection( ).
 lr_element-&amp;gt;
 get_static_attributes( IMPORTING static_attributes = ls_registration ).
 lr_node1 = wd_context-&amp;gt;get_child_node(&#39;TABLE&#39;).
 lr_node1-&amp;gt;bind_structure( EXPORTING new_item = ls_registration
 set_initial_elements = abap_false).
 lr_node1-&amp;gt;set_lead_selection_index(index = lv_counter).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 pass the value of the attribute NO of the TABLE context node in the 
local variable lv_counter. As we have mentioned above,we use this local 
variable to create the record ID.After each new record,we increase this 
value with 1.The user enters the values Name,Date of Birth and Country 
and we create his corresponding ID.The runtime structure is presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;264&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/60.png&quot; style=&quot;border: none;&quot; width=&quot;505&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Additionally,we
 can add a reset Button on the table toolbar. After the user adds the 
records, he can reset the fields Name, Date of birth and Country, to be 
able to add a new record.&amp;nbsp;The “Reset” Toolbar Button,of the same 
ToolBarButton type, has associated an action named RESET. The Listing 
shows the onactionreset event handler method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactionreset event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionreset.
 DATA: lr_node TYPE REF TO if_wd_context_node,
 ls_registration TYPE wd_this-element_registration.
 lr_node = wd_context-get_child_node(&#39;REGISTRATION&#39;).
 lr_node-&amp;gt;bind_structure(EXPORTING new_item = ls_registration).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;261&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/61.png&quot; style=&quot;border: none;&quot; width=&quot;507&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
RUNTIME CLASS: CL_WD_TABLE&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 present a table showing the correspondence between the view designer 
name and the runtime name, with the proper types,in case of dynamic 
programming of a Table UI element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;115&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/17-Dynamic-programming.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 the Table UI element,we have, as aggregation, the Table Column,Group 
Column, Header,Legend Popin, MasterColumn and Toolbar. The TableColumn 
element represents a column of a table, and has the CL_WD_TABLE_COLUMN 
runtime class. The table title is implemented by using a Caption element
 and has the CL_WD_CAPTION runtime class.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 implementation of a dynamic Table UI element with table header,design 
alternating, three visible rows and a column, that has a TextView UI 
element as cell editor,contains the following statements.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming of a Table UI element&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddomodifyview.
 DATA lr_table TYPE REF TO cl_wd_table.
 DATA lr_flow_data TYPE REF TO cl_wd_flow_data.
 DATA lr_container TYPE REF TO cl_wd_uielement_container.
 DATA lr_column_name TYPE REF TO cl_wd_table_column.
 DATA lr_text_view TYPE REF TO cl_wd_text_view.
 DATA lr_table_header TYPE REF TO cl_wd_caption.
 DATA lr_column_name_header TYPE REF TO cl_wd_caption.
 IF first_time EQ abap_true.
 lr_container ?= view-&amp;gt;get_element(&#39;ROOTUIELEMENTCONTAINER&#39;).
 lr_table = cl_wd_table=&amp;gt;new_table(
 id =&#39;TBL_TABLE&#39;
 bind_data_source =&#39;TABLE&#39;
 design = cl_wd_table=&amp;gt;e_design-alternating
 visible_row_count = 3
 ).
 lr_flow_data = cl_wd_flow_data=&amp;gt;new_flow_data(element =
 lr_table ).
 lr_container-&amp;gt;add_child(lr_table).
 lr_column_name = cl_wd_table_column=&amp;gt;new_table_column(
 id = &#39;TBL_EXAMPLE_NAME&#39;
 ).
 lr_table_header ?= cl_wd_caption=&amp;gt;new_caption(text =&#39;Table UI elem
 ent - example&#39;).
 lr_table-&amp;gt;add_column(the_column = lr_column_name).
 lr_table-&amp;gt;set_header(lr_table_header).
 lr_text_view = cl_wd_text_view=&amp;gt;new_text_view(
 id =&#39;TXV_NAME&#39;
 bind_text =&#39;TABLE.NAME&#39;
 ).
 lr_column_name_header ?= cl_wd_caption=&amp;gt;new_caption(text = &#39;Nam
 e&#39;).
 lr_column_name-&amp;gt;
 set_table_cell_editor(the_table_cell_editor = lr_text_view
 ).
 lr_column_name-&amp;gt;set_header(lr_column_name_header).
 ENDIF.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;RoadMap&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using this UI element, we can display the steps required to complete a 
certain task. Hereunder,we show some of the roadMap properties that can 
be bound,and the attribute type in case the property is bindable.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Some of the Table UI element properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;85&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/18-Some-of-roadMap-UI-element-properties.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 the RoadMap example,we use the exercise from the 
ViewContainerUIElement,a little bit re-arranged. The WD component 
structure is presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;174&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/62.png&quot; style=&quot;border: none;&quot; width=&quot;194&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this case,we replace the LinkToAction UI elements with two Buttons: 
Next and Back. These Buttons are inserted into the view V_VIEW, and the 
user can navigate from the first step to the end one, via the RoadMap. 
In this case, we used only a View ContainerUIElement,and for each step 
we have a view. In the view V_VIEW, we insert a RoadMap UI element with 
three steps. To insert a step into a RoadMap UI Element, we right-click 
on the element and, from the contextual menu, we choose Insert Step.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;RoadMap steps&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;166&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/63.png&quot; style=&quot;border: none;&quot; width=&quot;515&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;V_VIEW view layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;232&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/64.png&quot; style=&quot;border: none;&quot; width=&quot;401&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
T0
 be able to manipulate the RoadMap UI element and the Button via the 
data held in the context, we create, in the V_VIEW, a context node named
 DYNAMIC. This node has three attributes:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;SELECTEDSTEP, of STRING type, used to dynamically set the ID of the selected step&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;ENABLED_NEXT, of WDY_BOOLEAN type, used to manipulate the enabled property of the NEXT button&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;ENABLED_BACK,of WDY_BOOLEAN type,used to manipulate the enabled property of the BACK button (Fig – right)&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 hold and show the data entered by the user, we have created, in the COM
 PONENTCONTROLLER context, a node named INFO (Fig. – left).This context 
node has the same structure as presented in the ViewContainerUIElement 
example. The attributes are: NAME, EMAIL &amp;amp; CITY (of STRING type) and
 COUNTRY (of Y_DEFORDOMAIN type). We create a context mapping among this
 context node and the context views V_STEP1, V_STEP2 and V_STEP3.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;119&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/65.png&quot; style=&quot;border: none;&quot; width=&quot;338&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;V_STEP1 view layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;92&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/66.png&quot; style=&quot;border: none;&quot; width=&quot;310&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;V_STEP2 view layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;109&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/67.png&quot; style=&quot;border: none;&quot; width=&quot;322&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;V_STEP3 view layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;157&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/68.png&quot; style=&quot;border: none;&quot; width=&quot;378&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 view “V_VIEW” is the default view – the firstly displayed one.In the 
ViewContainerUIElement,we embed all the three views V_STEP1,V_STEP2 and 
V_STEP3. The view V_STEP1 is, in this case, the default view.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 be able to navigate among the views, we have to create inbound and 
outbound plugs. In the view V_VIEW, we create three outbound plugs:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;OP_TO_V_STEP1 required to navigate to the view V_STEP1&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;OP_TO_V_STEP2 required to navigate to the view V_STEP2&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;OP_TO_V_STEP3 required to navigate to the view V_STEP3&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 view V_STEP1 has an inbound plug named IP_V_STEP1,the view V_STEP2 has 
an inbound plug named IP_V_STEP2 and the view V_STEP3 has an inbound 
plug named IP_V_STEP3.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Window structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;294&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/69.png&quot; style=&quot;border: none;&quot; width=&quot;199&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In the wdDoInit Hook method (V_VIEW),we dynamically set the attributes values for SELECTEDSTEP, ENABLED_NEXT and ENABLED_BACK.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The wdDoInit Hook method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddoinit.
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_data TYPE wd_this-&amp;gt;element_dynamic.
 lr_node = wd_context-get_child_node(&#39;DYNAMIC&#39;).
 ls_data-enabled_next = abap_true.
 ls_data-enabled_back = abap_false.
 ls_data-selectedstep =&#39;STEP1&#39;.
 lr_node-&amp;gt;set_static_attributes(ls_data).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
First
 time when the screen is rendered, we want the BACK Button to be not 
enabled,the NEXT Button to be enabled, and the STEP1 to be the active 
RoadMap step.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;img alt=&quot;&quot; height=&quot;192&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/70.png&quot; style=&quot;border: none;&quot; width=&quot;277&quot; /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user presses the NEXT button, the Framework triggers the event handler method onactionnext.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactionnext event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionnext.
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_data TYPE wd_this-element_dynamic.
 DATA lv_selectedstep TYPE string.
 lr_node = wd_context-get_child_node(&#39;DYNAMIC&#39;).
 lr_node-get_attribute(EXPORTING name =
&#39;SELECTED STEP&#39;IMPORTING value = lv_selectedstep ).
 ASE lv_selectedstep.
 WHEN ‘STEP1’.
 ls_data-selectedstep = ‘STEP2’.
 ls_data-enabled_next = abap_true.
 ls_data-enabled_back = abap_true.
 wd_this-fire_op_to_v_step2_plg( ).
 WHEN ‘STEP2’.
 ls_data-selectedstep = ‘STEP3’.
 ls_data-enabled_next = abap_false.
 ls_data-enabled_back = abap_true.
 wd_this-fire_op_to_v_step3_plg( ).
 WHEN OTHERS.
 ls_data-enabled_next = abap_false.
 ls_data-enabled_back = abap_true.
 ENDCASE.
 lr_node-set_static_attributes(ls_data).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we can see, we make active the STEP2: ls_data-selectedstep = ‘STEP2’,we
 fire the method that helps us to navigate to the nextview V_STEP2&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
wd_thisfire_op_to_v_step2_plg( )&lt;br /&gt;
and we enable both buttons&lt;br /&gt;
ls_data-enabled_next = abap_true.&lt;br /&gt;
ls_data-enabled_back = abap_true.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;189&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/80.png&quot; style=&quot;border: none;&quot; width=&quot;282&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When
 the user presses again the NEXT button,we deactivate the NEXT button 
ls_data-enabled_next = abap_false we make active STEP3 
ls_data-selectedstep = ‘STEP3’and fire the method that helps us to 
navigate to the view V_STEP3 wd_this!fire_op_to_v_step3_plg( ),&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;205&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/81.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user presses the BACK button, the Framework triggers the event handler method onactionback.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactionback event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionback.
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_data TYPE wd_this-element_dynamic.
 DATA lv_selectedstep TYPE string.
 lr_node = wd_context-get_child_node(‘DYNAMIC’).
 lr_node-get_attribute( EXPORTING name =
‘SELECTEDSTEP’IMPORTING value = lv_selectedstep).
 CASE lv_selectedstep.
 WHEN ‘STEP3’.
 ls_data-selectedstep = ‘STEP2’.
 ls_data-enabled_next = abap_true.
 ls_data-enabled_back = abap_true.
 wd_this-fire_op_to_v_step2_plg( ).
 WHEN ‘STEP2’.
 ls_data-selectedstep = ‘STEP1’.
 ls_data-enabled_next = abap_true.
 ls_data-enabled_back = abap_false.
 wd_this-&amp;gt;fire_op_to_v_step1_plg( ).
 WHEN OTHERS.
 ls_data-enabled_next = abap_true.
 ls_data-enabled_back = abap_false.
 NDCASE.
 r_node-set_static_attributes(ls_data ).
  ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As we can see(Fig.)when the user presses the BACK button,we navigate back to the view V_STEP2&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
wd_this!fire_op_to_v_step2_plg( ).&lt;br /&gt;
we activate both buttons ls_data-enabled_next = abap_true.&lt;br /&gt;
ls_data-enabled_back = abap_true.&lt;br /&gt;
we make active the step STEP2 ls_data-selectedstep = ‘STEP2’.&lt;br /&gt;
wd_this!fire_op_to_v_step2_plg( ).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;203&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/82.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user presses again the BACK Button (Fig.),we navigate back to the view V_STEP1&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
wd_this!fire_op_to_v_step1_plg( ).&lt;br /&gt;
we deactivate the BACK button ls_data-enabled_back = abap_false.&lt;br /&gt;
and make active the step STEP1 ls_data-selectedstep = ‘STEP1’.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;204&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/83.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
RUNTIME CLASS: CL_WD_ROAD_MAP&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 present a table showing the correspondence between the view designer 
name and the runtime name, with the proper types,in case of dynamic 
programming of a RoadMap UI element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;129&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/19-Dynamic-programming.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 the RoadMap UI element,we have, as aggregation, the Step: Road Map Step
 or MultipleRoadMapStep.The RoadMapStep element represents a step in a 
Road- Map,and has the CL_WD_ROAD_MAP_STEP runtime class.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The implementation of a dynamic RoadMap UI element with two Steps contains the following statements:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming of a RoadMap UI element&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddomodifyview.
 DATA lr_container TYPE REF TO cl_wd_uielement_container.
 DATA lr_roadmap TYPE REF TO cl_wd_road_map.
 DATA lr_step1 TYPE REF TO cl_wd_road_map_step.
 DATA lr_step2 TYPE REF TO cl_wd_road_map_step.
 DATA lr_flow_data TYPE REF TO cl_wd_flow_data.
 IF first_time EQ abap_true.
 lr_container ?= view-&amp;gt;get_element(&#39;ROOTUIELEMENTCONTAINER&#39;).
 lr_roadmap = cl_wd_road_map=&amp;gt;new_road_map(
 id = &#39;RM_ROADMAP&#39;
 bind_selected_step =&#39;DYNAMIC.SELECTEDSTEP&#39;
 start_point_design = cl_wd_road_map=&amp;gt;e_start_point_design-selected
 ).
 lr_flow_data = cl_wd_flow_data=&amp;gt;new_flow_data(element =
 lr_roadmap).
 lr_container-&amp;gt;add_child(lr_roadmap).
 lr_step1 = cl_wd_road_map_step=&amp;gt;new_road_map_step(
 id = &#39;STEP1&#39;
 description =&#39;STEP 1&#39;
 name =&#39;1&#39;
 ).
 lr_roadmap-&amp;gt;add_step(the_step = lr_step1).
 lr_step2 = cl_wd_road_map_step=&amp;gt;new_road_map_st
 id = &#39;STEP2&#39;
 description =&#39;STEP 2&#39;
 name =&#39;2&#39;
 ).
 lr_roadmap-&amp;gt;add_step(he_step = lr_step2).
 ENDIF.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;PhaseIndicator&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Similar
 to the Road Map UI element, we can display then the steps in a 
wizard,by using the PhaseIndicator. Hereunder,we show some of the 
PhaseIndicator properties that can be bound, and the attribute type in 
case the property is bindable.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Some of the PhaseIndicator UI element properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;108&quot; src=&quot;http://www.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/20-Some-of-the-PhaseIndicator-UI-element-properties.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;&lt;span style=&quot;background-image: url(http://e-university.wisdomjobs.com/images/r-arrow.jpg); background-position: 0% 50%; background-repeat: no-repeat no-repeat; color: #fa8528; float: right; font-size: 14px; line-height: 25px; list-style: none; text-indent: 10px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
A
 Phase is a step into a PhaseIndicator that has bindable properties 
as,for example,enable and status. Table presents some of these 
properties and how we can use the status property for a dynamic 
manipulation.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Some of the phase properties and the dynamic manipulation of the status&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;99&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/21-Some-of-the-phase-properties-and-the-dynamic-manipulation-of-the-status.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create the same example as for the RoadMap, but,in this case,we use a 
PhaseIndicator UI element with three phases.The WD component structure 
is presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;186&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/86.png&quot; style=&quot;border: none;&quot; width=&quot;199&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this case,we have renamed the views V_STEP1, V_STEP2 and V_STEP3 as 
V_PHASE1,V_PHASE2 and V_PHASE3. The content of these views is the 
same.We can rename a view by right-clicking on the view name and, from 
the contextual menu,we choose rename. To insert a phase into a 
PhaseIndicator UI Element, we right-clickon the element and,from the 
contextual menu, we choose Insert Phase.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Inserting Phase into a PhaseIndicator&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;239&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/87.png&quot; style=&quot;border: none;&quot; width=&quot;514&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 the first Phase,we have set the status property: completed. For the 
other two Phases(Phase2 and Phase3),we have dynamically set the status 
property,by using the two attributes named STATUS2 and STATUS3 of 
WDUI_PHASE_STATUS type.To manipulate the enabled property of the NEXT 
button, we use the same attribute ENABLED_NEXT of WDY_BOOLEAN type, and 
to manipulate the selected phase, we use the attribute SELECTEDPHASE of 
string type (Fig right).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 node INFO is defined in the COMPONENTCONTROLLER and has the same 
structure as showed in the previous example. We create context mapping 
among this context node and the context views V_PHASE1,V_PHASE2 and 
V_PHASE3.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;141&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/88.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The V_VIEW layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;194&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/89.png&quot; style=&quot;border: none;&quot; width=&quot;360&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 view has two outbound plugs defined: OP_TO_V_PHASE2 and 
OP_TO_V_PHASE3.The view V_PHASE1 has no inbound plug, the view V_PHASE2 
has an inbound plug named IP_V_PHASE2 and the view PHASE_3 has an 
inbound plug named IP_V_PHASE3. The window structure is presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Window structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;338&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/90.png&quot; style=&quot;border: none;&quot; width=&quot;279&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 view V_PHASE1 is shown in the ViewControllerUIElement first time when 
the screen is rendered, this view being defined as default view.We have 
to dynamically set the attributes values for 
SELECTEDPHASE,STATS2,STATUS3 and ENABLED_NEXT. To do this, we use the 
wdDoInit Hook method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The wdDoInit Hook method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddoinit.
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_data TYPE if_v_view=element_dynamic.
 lr_node = wd_context-get_child_node(&#39;DYNAMIC&#39;).
 ls_data-enabled_next = abap_true.
 ls_data-status2 = CL_WD_PHASE=E_STATUS-WARNING.
 ls_data-status3 = CL_WD_PHASE=E_STATUS-WARNING.
 ls_data-selectedphase = &#39;PHASE1&#39;.
 lr_node-set_static_attributes(ls_data).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we can see,we selected the first phase: ls_data-selectedphase = 
‘PHASE1’and we set the Phase2 and Phase3 with the Warning status 
ls_data-status2 = cl_wd_phase) e_status-warning.&amp;nbsp;ls_data-status3 = 
cl_wd_phase) e_status-warning.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;158&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/91.png&quot; style=&quot;border: none;&quot; width=&quot;349&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user presses the button, the Framework triggers the event handler method onactionnext (Listing).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactionnext event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionnext.
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_data TYPE if_v_view=element_dynamic.
 DATA lv_phase TYPE string.
 lr_node = wd_context-&amp;gt;get_child_node(&#39;DYNAMIC&#39;).
 lr_node-get_attribute
(EXPORTING name =&#39;SELECTEDPHASE&#39;IMPORTING value = lv_phase).
 CASE lv_phase.
 WHEN &#39;PHASE1&#39;.
 ls_data-selected phase =&#39;PHASE2&#39;.
 ls_data-enabled_next = abap_true.
 ls_data-status2 = cl_wd_phase=e_status-completed.
 ls_data-status3 = cl_wd_phase=e_status-warning.
 wd_this-fire_op_to_v_phase2_plg( ).
 WHEN &#39;PHASE2&#39;.
 ls_data-selectedphase = &#39;PHASE3&#39;.
 ls_data-enabled_next = abap_false.
 ls_data-status2 = cl_wd_phase=e_status-completed.
 ls_data-status3 = cl_wd_phase=e_status-completed.
 wd_this-fire_op_to_v_phase3_plg( ).
 WHEN OTHERS.
 ls_data-enabled_next = abap_false.
 ENDCASE.
 lr_node-set_static_attributes(ls_data).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we can see, we make active the Phase2 ls_data-selectedphase ¼ ‘PHASE2’ 
we set the Phase2 with completed status and Phase3 with warning status 
ls_data-status2 cl_wd_phase )&lt;br /&gt;
e_status-completed.ls_data-status3 = cl_wd_phase)e_status-warning.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For the next press of the NEXT button,we set the Phase2 and Phase3 with completed status&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
ls_data-status2 cl_wd_phase)e_status-completed.&lt;br /&gt;
ls_data-status3 cl_wd_phase)e_status-completed.we make active the last Phase, ls_data-selectedphase = ‘PHASE3’.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;208&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/92.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
RUNTIME CLASS: CL_WD_PHASE_INDICATOR&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 present a table showing the correspondence between the view designer 
name and the runtime name, with the proper types,in case of dynamic 
programming of a PhaseIndicator UI element&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;97&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/22-Dynamic-programming.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For the PhaseIndicator UI element,we have,as aggregation, the Phase element. It has the CL_WD_PHASE runtime class.&lt;br /&gt;
The implementation of a dynamic PhaseIndicator UI element with two Phases contains the following statements (Listing ):&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming of a PhaseIndicator UI element&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddomodifyview.
 DATA lr_container TYPE REF TO cl_wd_uielement_container.
 DATA lr_flow_data TYPE REF TO cl_wd_flow_data.
 DATA lr_phaseindicator TYPE REF TO cl_wd_phase_indicator.
 DATA lr_phase1 TYPE REF TO cl_wd_phase.
 DATA lr_phase2 TYPE REF TO cl_wd_phase.
 IF first_time EQ abap_true.
 lr_container ?= view-&amp;gt;get_element(&#39;ROOTUIELEMENTCONTAINER&#39;).
 lr_phaseindicator = cl_wd_phase_indicator=&amp;gt;new_phase_indicator(
 id = &#39;PI_PHASEINDICATOR&#39;
 bind_selected_phase =&#39;DYNAMIC.SELECTEDPHASE&#39;
 irst_visible_phase =&#39;PHASE1&#39;
 background_design = cl_wd_phase_indicator=&amp;gt;e_background_designtransparent
 ).
 lr_flow_data = cl_wd_flow_data=&amp;gt;new_flow_data(element =
 lr_phaseindicator).
 lr_container-&amp;gt;add_child(lr_phaseindicator).
 lr_phase1 = cl_wd_phase=&amp;gt;new_phase(
 id =&#39;PHASE1&#39;
 description =&#39;PHASE 1&#39;
 status = cl_wd_phase=&amp;gt;e_status-completed
 ).
 lr_phaseindicator-&amp;gt;add_phase(the_phase = lr_phase1).
 lr_phase2 = cl_wd_phase=&amp;gt;new_phase(
 ld =&#39;PHASE2&#39;
 description =&#39;PHASE 2&#39;
 bind_status =&#39;DYNAMIC.STATUS2&#39;
 ).
 lr_phaseindicator-&amp;gt;add_phase(the_phase = lr_phase2).
 ENDIF.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Tree - Sequential Implementation&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
With this UI element,we can visualise the hierarchy defined in the context. For this UI element,we can use:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;A sequential implementation with a non-recursive node in case the number of levels can be specified at design time&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;A recursive implementation with a recursive node in case the number of levels is not known at design time&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;143&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/93.png&quot; style=&quot;border: none;&quot; width=&quot;204&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this case(sequential implementation,we don’t need a recursive node. A 
context node TREE is created in the context node of the view controller.
 It has the cardinality 1...1 and is Singleton.Under this context 
node,we create another context node TREE_NODE with two attributes. Under
 this context node,we create another context node TREE_LEAF with an 
attribute (Fig.)&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;263&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/94.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 attributes STUDENTNAME, VALUE and STUDENTINFO are of STRING type.The 
context node TREE_LEAF is not Singleton,because we need to create an 
instance of this node for each element of the TREE_NODE context node.In 
the STUDENTNAME attribute, we hold the name of each student; for each 
student we have proper information held in the attribute STUDENTINFO.&amp;nbsp;In
 a Tree UI element, we can insert Node Types of type TreeItemType and 
TreeNodeType,to specify which subnodes and which context attributes are 
going to be displayed.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Inserting Node Type&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;106&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/95.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;92&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/96.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Binding of the Context to the Tree elements&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;285&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/97.png&quot; style=&quot;border: none;&quot; width=&quot;521&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The context node TREE_NODE is populated via the supply function method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;TREE_NODE context node&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD supply_tree_node.
 DATA:
 ls_studentTYPE 
if_v_view=element_tree_node,lt_student LIKE TABLE OF ls_student.
 ls_student-studentname = &#39;Ionescu Ana Maria&#39;.
 ls_student-value = &#39;A&#39;.
 APPEND ls_student TO lt_student.
 ls_student-studentname = &#39;Marinescu Loredana&#39;.
 ls_student-value = &#39;B&#39;.
 APPEND ls_student TO lt_student.
 ls_student-studentname = &#39;Marton Luminita&#39;.
 ls_student-value = &#39;C&#39;.
 APPEND ls_student TO lt_student.
 node-bind_table(lt_student ).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The values for the child node TREE_LEAF are set in the same way via a supply function method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Populating the attributes of the TREE_LEAF context node&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD supply_tree_leaf.
 DATA:
 ls_studentTYPE if_v_view=&amp;gt;
 element_tree_leaf,lt_student LIKE TABLE OF ls_student.
 DATA: lv_value TYPE string.
 parent_element-&amp;gt;get_attribute
(EXPORTING name = &#39;VALUE&#39;IMPORTING value = lv_value ).
 CASE lv_value.
 WHEN &#39;A&#39;.
 ls_student-student info =&#39;Article - YES&#39;.
 APPEND ls_student TO lt_student.
 ls_student-studentinfo = &#39;Exam - 5&#39;.
 APPEND ls_student TO lt_student.
 ls_student-studentinfo = &#39;Academic year -II&#39;.
 APPEND ls_student TO lt_student.
 WHEN &#39;B&#39;.
 ls_student-studentinfo =&#39;Article - NO&#39;.
 APPEND ls_student TO lt_student.
 ls_student-studentinfo =&#39;Academic year -I&#39;.
 APPEND ls_student TO lt_student.
 WHEN OTHERS.
 ls_student-studentinfo =&#39;Article - YES&#39;.
 APPEND ls_student TO lt_student.
 ls_student-studentinfo =&#39;Exam - 3&#39;.
 APPEND ls_student TO lt_student.
 ls_student-studentinfo =&#39;Academic year -IV&#39;.
 APPEND ls_student TO lt_student.
 ENDCASE.
 node-bind_table(lt_student).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;248&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/101.png&quot; style=&quot;border: none;&quot; width=&quot;470&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
RUNTIME CLASS: CL_WD_TREE&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 present a table showing the correspondence between the view designer 
name and the runtime name,with the proper types,in case of dynamic 
programming of a Tree UI element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;99&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/23-Dynamic-programming.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 the Tree UI element, we have, as aggregation, the Node Types: 
TreeItem-Type and TreeNodeType. The TreeItemType element has the 
CL_WD_TREE_ ITEM_TYPE runtime class and the TreeNodeType element has the
 CL_WD_TREE_NODE_TYPE runtime class.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 implementation of a dynamic Tree UI element with two node types (Tree- 
NodeType and TreeItemType)contains the following statements:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddomodifyview.
 DATA lr_container TYPE REF TO cl_wd_uielement_container.
 DATA lr_flow_data TYPE REF TO cl_wd_flow_data.
 DATA lr_tree TYPE REF TO cl_wd_tree.
 DATA lr_treenode TYPE REF TO cl_wd_tree_node_type.
 DATA lr_treeitem TYPE REF TO cl_wd_tree_item_type.
 IF first_time EQ abap_true.
 lr_container ?= view-&amp;gt;get_element(&#39;ROOTUIELEMENTCONTAINER&#39;).
 lr_tree = cl_wd_tree=&amp;gt;new_tree(
 id = &#39;TRE_SEQUENTIAL&#39;
 bind_data_source = &#39;TREE&#39;
 title = &#39;Student info&#39;
 default_node_icon_source = &#39;~Icon/CheckedOk&#39;
 ).
 lr_flow_data = cl_wd_flow_data=&amp;gt;new_flow_data(element =
 lr_tree).
 lr_container-&amp;gt;add_child(lr_tree).
 lr_treenode = cl_wd_tree_node_type=&amp;gt;new_tree_node_type(
 id =&#39;TREE_NT&#39;
 bind_data_source =&#39;TREE.TREE_NODE&#39;
 bind_text =&#39;TREE.TREE_NODE.STUDENTNAME&#39;
 ).
 lr_treeitem = cl_wd_tree_item_type=&amp;gt;new_tree_item_type(
 id =&#39;TREE_IT&#39;
 bind_data_source =&#39;TREE.TREE_NODE.TREE_LEAF&#39;
 bind_text =&#39;TREE.TREE_NODE.TREE_LEAF.STUDENTINFO&#39;
 ).
 lr_tree-&amp;gt;add_node_type(index = 1
 the_node_type = lr_treenode).
 lr_tree-&amp;gt;add_node_type(index = 2
 the_node_type = lr_treeitem).
 ENDIF.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;DateNavigator&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 UI element offers the possibilities to display and navigate in a 
calendar and to enter dates, by choosing a year, a month,a day or a 
range of dates,from the showed calendar.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 present a table with some of the DataNavigator properties that can be 
bound, and the attribute type in case the property is bindable.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Some of the DataNavigator UI element properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;100&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/24-Some-of-the-DataNavigator-UI-element-properties.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create a WD Component named Y_UI_DATENAVIGATOR. In the context view,we 
create three attributes: MONTH, WEEK and DAY of STRING type,and two 
context nodes:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;LEGEND,Cardinality 0. . .n,&lt;br /&gt;supply function named SUPPLY_LEGEND,attributes:&lt;br /&gt;CATEGORY of WDY_MD_DATE_MARKING_CATEGORY type and TEXT of STRING type&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;MARKING,Cardinality
 0...n,supply function named SUPPLY_MARKING, attributes: CATEGORY of 
WDY_MD_DATE_MARKING_CATEGORY type and DATE of D type.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the view layout,we insert a DateNavigator UI element with a 
DateNavigator- Legend and DateNavigatorMarking. By using the 
DateNavigatorLegend element,we can add a legend for the DateNavigator, 
and with the DateNavigator- Marking element,we can highlight entries of a
 specific category within the Date- Navigator UI element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context view and DateNavigatorLegend, DateNavigatorMarking properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;248&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/102.png&quot; style=&quot;border: none;&quot; width=&quot;403&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The most important properties of the DateNavigatorLegend element are:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;“Category”,which
 allows us to create the legend categories (in format one,two,three and 
four).It shall be bound to a context attribute that stores these 
categories.&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;“Text”, which stores the texts, describing each category.&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;“DataSource”,which
 shall be bound to a context node,which stores the categories and the 
texts of the legend entries. The most important properties of the 
DateNavigatorMarking element are:&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;“Category”,which shall be bound to a context attribute that stores the category of the highlighted data.&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;“DataSource”,which shall be bound to a context node which stores the categories,data and tooltip of the highlighted data.&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;“Tooltip”
 is not necessarily bindable. In our case,we have not created an 
attribute for the tooltip,because we don’t want to display a quick info 
text when the user passes the mouse pointer over the highlighted data of
 the Date- Navigator UI element.&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;“Data” shall be bound to a context attribute that stores the date of the highlighted data.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;386&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/103.png&quot; style=&quot;border: none;&quot; width=&quot;514&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The DateNavigator UI element has many properties and events. In our case,we have changed the properties:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;20&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/104.png&quot; style=&quot;border: none;&quot; width=&quot;209&quot; /&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In this way,we have chosen Sunday as the first day of the week in our calendar.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;35&quot; longdesc=&quot;http://e-university.wisdomjobs.com/sap-abap-web-dynpro/chapter-89-274/undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/105.png&quot; style=&quot;border: none;&quot; width=&quot;209&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In this way,we show 3 months in our calendar.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;33&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/106.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We have chosen from the list the range option,because we want to offer the possibility to select the range of dates.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;31&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/107.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 have set the starting date of our calendar.&amp;nbsp;To be able to show,in the 
TextView UI elements,the week,the day or the month that the end-user 
selects in our calendar,we have used the events:onDaySelect,on Month 
Select and on Week Select.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Events of the DataNavigator UI element&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;99&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/108.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
First of all,we have to populate our nodes with values. The Listing shows the SUPPLY_LEGEND supply function method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The SUPPLY_LEGEND supply function method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD supply_legend.
 DATA: ls_legend TYPE wd_this-element_legend,lt_legend LIKE TABLE OF ls_legend.
 ls_legend-category = cl_wd_date_nav_legend=e_category-one.
 ls_legend-text = &#39;Doors open day&#39;.
 APPEND ls_legend TO lt_legend.
 ls_legend-category = cl_wd_date_nav_legend=&amp;gt;e_category-two.
 ls_legend-text = &#39;Operating teams trip&#39;.
 APPEND ls_legend TO lt_legend.
 ls_legend-category = cl_wd_date_nav_legend=&amp;gt;e_category-three.
 ls_legend-text = &#39;Happy hour&#39;.
 INSERT ls_legend INTO TABLE lt_legend.
 node-bind_table( lt_legend ).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create three legend categories(one, two and three),with the 
texts:“Doors open day” for the first category, “Operating teams trip”for
 the second category and “Happy hour” for the third category.&amp;nbsp;The 
Listing shows the SUPPLY_MARKING supply function method required to 
populate with values the MARKING node.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The SUPPLY_MARKING supply function method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD supply_legend.
 DATA: ls_legend TYPE wd_this-element_legend,lt_legend LIKE TABLE OF ls_legend.
 ls_legend-category = cl_wd_date_nav_legend=e_category-one.
 ls_legend-text = &#39;Doors open day&#39;.
 APPEND ls_legend TO lt_legend.
 ls_legend-category = cl_wd_date_nav_legend=e_category-two.
 ls_legend-text = &#39;Operating teams trip&#39;.
 APPEND ls_legend TO lt_legend.
 ls_legend-category = cl_wd_date_nav_legend=e_category-three.
 ls_legend-text = &#39;Happy hour&#39;.
 INSERT ls_legend INTO TABLE lt_legend.
 node-bind_table( lt_legend ).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this way we mark (highlight),for the first category,the day 
11.08.2009,for the second category,the day 21.08.2009,and for the third 
category,the day 24.08.2009. When the user selects a day in our 
calendar,the Framework triggers the event handler method 
onactionon_day_select.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactionon_day_select event handler method&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;191&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/109%281%29.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 import parameter, for our event handler method, we have the parameter 
named DAY of D type that holds the selected day. We pass this value in 
our DAY attribute created in the context view.&amp;nbsp;When the user selects a 
Week in our calendar, the Framework triggers the event handler method 
onactionon_week_select.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactionon_week_select event handler method&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;191&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/109.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 import parameter,for our event handler method,we have the parameters: 
WEEK of I type that holds the selected week and YEAR of I type that 
holds the corresponding year of the selected week. We pass these values 
in our WEEK attribute created in the context view.&amp;nbsp;When the user selects
 a Month in our calendar,the Framework triggers the event handler method
 onactionon_month_select.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 onactionon_month_select event handler method,&amp;nbsp;As import parameters,for 
our event handler method,we have: MONTH of I type that holds the 
selected month and YEAR of I type that holds the corresponding of the 
selected month. We pass these values in our MONTH attribute created in 
context view.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;233&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/111%281%29.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Programming&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
RUNTIME CLASS: CL_WD_DATE_NAVIGATOR&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Hereunder,we
 present a table showing the correspondence between the view designer 
name and the runtime name, with the proper types,in case of dynamic 
programming of a DateNavigation UI element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;176&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%209/25-Dynamic-programming.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 implementation of a dynamic DateNavigator UI element with elements: 
DateNavigatorLegent and DateNavigatorMarking, contains the following 
statements:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Dynamic programming of a DataNavigator UI element&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddomodifyview.
 DATA lr_date_navigator TYPE REF TO cl_wd_date_navigator.
 DATA lr_flow_data TYPE REF TO cl_wd_flow_data.
 DATA lr_container TYPE REF TO cl_wd_uielement_container.
 DATA lr_datenav_legend TYPE REF TO cl_wd_date_nav_legend.
 DATA lr_datenav_marking TYPE REF TO cl_wd_date_nav_marking.
 IF first_time EQ abap_true.
 lr_container ?= view-&amp;gt;get_element(&#39;ROOTUIELEMENTCONTAINER&#39;).
 lr_date_navigator = cl_wd_date_navigator=&amp;gt;new_date_navigator(
 id =&#39;DATENAVIGATOR&#39;
 first_day_of_week = cl_wd_date_navigator=&amp;gt;e_first_day_of_week-sunday
 months_per_column = 1
 months_per_row = 3
 selection_mode = cl_wd_date_navigator=&amp;gt;e_selection_mode-range
 starts_with =&#39;20090801&#39;
 on_day_select =&#39;ON_DAY_SELECT&#39;
 on_month_select =&#39;ON_MONTH_SELECT&#39;
 on_week_select =&#39;ON_WEEK_SELECT&#39;
 ).
 lr_flow_data = cl_wd_flow_data=&amp;gt;new_flow_data(element =
 lr_date_navigator).
 lr_container-&amp;gt;add_child(lr_date_navigator).
 lr_datenav_legend = cl_wd_date_nav_legend=&amp;gt;new_date_nav_legend(
 id =&#39;DATENAVIGATORLEGEND&#39;
 bind_category =&#39;LEGEND.CATEGORY&#39;
 bind_data_source =&#39;LEGEND&#39;
 bind_text =&#39;LEGEND.TEXT&#39;
 ).
 lr_date_navigator-&amp;gt;set_legend(the_legend = lr_datenav_legend).
 lr_datenav_marking = cl_wd_date_nav_marking=&amp;gt;new_date_nav_marking(
 id = &#39;DATENAVIGATORMARKING&#39;
 bind_category = MARKING.CATEGORY&#39;
 bind_data_source =&#39;MARKING&#39;
 bind_date =&#39;MARKING.DATE&#39;
 ).
 lr_date_navigator-&amp;gt;set_marking(the_marking=lr_datenav_marking) 
 ENDIF.
 ENDMETHOD.
&lt;/pre&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/7356434071892495217/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/user-interface-elements-ui-elements.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/7356434071892495217'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/7356434071892495217'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/user-interface-elements-ui-elements.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-6435417317107832276</id><published>2012-09-22T23:02:00.003-07:00</published><updated>2012-09-22T23:02:10.740-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.blogger.com/goog_1003593321&quot;&gt;&lt;br /&gt;&lt;/a&gt;
&lt;br /&gt;
&lt;h1 style=&quot;background-color: white; background-image: none; background-position: 0% 0%; background-repeat: no-repeat no-repeat; border: none; color: #0099ff; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; height: 40px; line-height: 24px; margin: 0px; padding: 0px; text-align: justify;&quot;&gt;
&lt;a href=&quot;http://adf.ly/CUYJf&quot; target=&quot;_blank&quot;&gt;Messages, Exceptions and Web Dynpro ABAP&lt;/a&gt;&lt;/h1&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
This
 chapter shows how to work with exceptions and messages within the Web 
Dynpro ABAP applications. For each of the two variants (messages and 
exceptions),we present two possible implementation scenarios. Therefore,
 we start with the modality to create the texts of messages and 
exceptions,and we conclude with the modality of using them for the 
created applications.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
A
 good user interface catches exceptions, describes the errors that occur
 and displays messages that contain information for the application end 
user.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
As
 we have already seen,Web Dynpro offers the interface, through the 
IF_WD_MESSAGE_MANAGER, as a manager for messages.This interface has many
 methods we can choose to create messages.For example:&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; margin: 10px 0px 0px; padding: 0px 0px 0px 25px; text-align: justify;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;REPORT_T100_MESSAGE–reports a message by using a T100 input&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;REPORT_ERROR_MESSAGE–reports a Web Dynpro message with optional parameters&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;REPORT_ATTRIBUTE_T100_MESSAGE–reports a Web Dynpro exception for a Context Attribute&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;REPORT_ATTRIBUTE_ERROR_MESSAGE – reports a Web Dynpro exception for a Context Attribute&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;REPORT_SUCCESS–reports a success message&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;REPORT_WARNING–reports a warning message&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;REPORT_EXCEPTION–reports a Web Dynpro exception&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;u1&gt;The
 methods with REPORT_ATTRIBUTE_XXX or REPORT_ELEMENT_ XXX can be used to
 connect the message with the UI element that has generated that 
message.&lt;/u1&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
Until
 now,we have created only simple messages that contained text introduced
 in coding.This art of programming isn’t recommended for many 
reasons,e.g.the message text inserted in coding cannot be translated 
without re-coding.In this chapter,we will create messages by using 
assistance class,T100 table,exception class and message class.&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;508-message-handling&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Message Handling&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The messages that we display in Web Dynpro applications can be created in many ways.For example,we can create messages:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;As dynamic texts stored in the text pool of the assistance class&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;As texts from database table T100&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Itis not recommendable to enter specific language text in coding.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Dynamic Texts Stored in the Text Pool of the Assistance Class&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
One of the most &amp;nbsp;important functions of the ssistance &amp;nbsp;classes is the management of the dynamic texts.&lt;br /&gt;
In
 the Web Dynpro ABAP&#39;the CL_WD_COMPONENT_ASSISTANCE class provides 
central functions through which a WD component can access text symbols 
of the assistance class.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We create a WD component,a registration form for a user.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;189&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/0vcv.jpg&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 user has to fill a registration form with two mandatory fields:name and
 date of birth.If the user fills the form with the requested data,we 
show an information message to inform him that the data are saved.If the
 user doesn’t fill a mandatory field,we show an error message.The layout
 and the context node are presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 be able to work with dynamic texts stored in the text pool of the 
assistance class,we have to firstly create an &amp;nbsp;assistance class. We can 
use class builder,&lt;b&gt;&amp;nbsp;Transaction SE24&lt;/b&gt;,to &amp;nbsp;create a usual ABAP 
class.An Assistance class is ausual ABAP class that inherits from the 
super-class CL_WD_COMPONENT_ASSISTANCE.&amp;nbsp;This super-class provides to our
 YCL_ASSISTANCECLASS class two additional methods.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The Layout and the context node&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;160&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/141.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creation of an assistance class&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;190&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/142.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To maintain text symbols in the assistance class,we choose from the Assistance Class Maintenance menu&lt;b&gt;&amp;nbsp;Goto-&amp;gt;Text Elements&amp;nbsp;&lt;/b&gt;.Each new text symbol has an identification symbol(a three-digit ID)and a corresponding text.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Text symbols&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;176&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/143.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 be able to have access to the text symbols of the assistance class by 
using the instance attribute WD_ASSIST,we have to assign the assistance 
class to our component.For each Web Dynpro component,we can create only a
 uniquely assigned assistance class.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Assistance class assigned to a WD component&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;111&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/144.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user presses the REGISTRATION button,the Framework triggers the event handler method onactionregistration.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Coding of event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionregistration.
 DATA: text_success TYPE string,
 text_error TYPE string.
 text_error = wd_assist-&amp;gt;if_wd_component_assistance~get_text( key =
 &#39;001&#39;).
 text_success = wd_assist-&amp;gt;if_wd_component_assistance~get_text( key =
 &#39;002&#39;).
 DATA: lr_node TYPE REF TO if_wd_context_node,
 lv_name TYPE string,
 lv_dateofbirth TYPE ydateofbirth.
 lr_node = wd_context-&amp;gt;get_child_node(&#39;PERSON&#39;).
 lr_node-&amp;gt;get_attribute(EXPORTING name =&#39;NAME&#39;
 IMPORTING value = lv_name).
 lr_node-&amp;gt;get_attribute(EXPORTING name =&#39;DATEOFBIRTH&#39;
 IMPORTING value = lv_dateofbirth).
 DATA lr_api_controller TYPE REF TO if_wd_controller.
 DATA lr_message_manager TYPE REF TO if_wd_message_manager.
 lr_api_controller ?= wd_this-&amp;gt;wd_get_api( ).
 lr_message_manager = lr_api_controller-&amp;gt;get_message_manager( ).
 IF lv_name IS INITIAL OR lv_dateofbirth IS INITIAL.
 lr_message_manager-&amp;gt;report_error_message(message_text = text_error).
 ELSE.
 lr_message_manager-&amp;gt;report_success(message_text =text_success).
 ENDIF.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 have access to the text symbols of the assistance class,we have to 
create a local variable of STRING type(text_success TYPE string).At 
runtime,when the method if_wd_component_assistance get_text is 
called,the ID is passed to the KEY parameter,and the corresponding text 
symbol is stored into the local variable of STRING type. 
DATA:text_success&amp;nbsp;&lt;b&gt;TYPE&amp;nbsp;&lt;/b&gt;string. text_success = 
wd_assist-&amp;gt;if_wd_component_assistance get_text(key =‘002&#39;).To access 
the text from an assistance class,we can use the Web Dynpro Code Wizard.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Web Dynpro code wizard&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;139&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/145.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
If
 the attributes name or dateofbirth are empty,we show an error message 
by using the report_error_message method.If not,we show an information 
message by using the report_success method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Application result&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;176&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/146.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Text from Database Table T100&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We can create messages by using message maintenance –transaction SE91.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Message class YCL_T100_MESSAGE&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;142&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/147.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 Messages created here are stored in the database table T100.This table 
has the following columns: message number MSGNR, short text 
TEXT,language key SPRSL and message classARBGB.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The structure of the T100 table&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;151&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/148.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 can search in this table to find all the messages with number 
000,language English and all the texts that begin with the word 
“The”.After this search,we find also our message,too.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Searching for a message in T100 table&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;118&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/149.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We create the same WD component, but in this case we use messages with text from the database table T100.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When
 the user presses the REGISTRATION button,the Framework triggers the 
event handler method onactionregistration. If the attributes NAME or 
DATEFOFBIRTH are empty,we show an error message by using the 
report_t100_message method.Msgty represents the message type 
E–error,msgid represents the name of the message class and msgno 
represents the message ID(a three-digit number).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Coding of event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionregistration.
 DATA: lr_node TYPE REF TO if_wd_context_node,
 lv_name TYPE string,
 lv_dateofbirth TYPE ydateofbirth.
 lr_node = wd_context-&amp;gt;get_child_node(&#39;PERSON&#39;).
 lr_node-&amp;gt;get_attribute(EXPORTING name =&#39;NAME&#39;
 IMPORTING value = lv_name).
 lr_node-&amp;gt;get_attribute(EXPORTING name =&#39;DATEOFBIRTH&#39;
 IMPORTING value = lv_dateofbirth).
 DATA lr_api_controller TYPE REF TO if_wd_controller.
 DATA lr_message_manager TYPE REF TO if_wd_message_manager.
 lr_api_controller ?= wd_this-&amp;gt;wd_get_api( ).
 lr_message_manager = lr_api_controller-&amp;gt;get_message_manager( ).
 IF lv_name IS INITIAL OR lv_dateofbirth IS INITIAL.
 lr_message_manager-&amp;gt;report_t100_message(
 msgid =&#39;YCL_T100_MESSAGE&#39;
 msgno =&#39;000&#39;
 msgty =&#39;E&#39;).
 ELSE.
 lr_message_manager-&amp;gt;report_t100_message(
 msgid =&#39;YCL_T100_MESSAGE&#39;
 msgno =&#39;001&#39;
 msgty =&#39;I&#39;).
 ENDIF.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
If
 the attributes name or dateofbirth are not empty,we show an information
 message type I.At runtime,the User Interface is the same as for the 
latest example.The only difference is the way we have created these 
messages.&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;712-exception-handling&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Exception Handling&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Exceptions
 can be raised by the ABAP runtime environment,or explicitly in coding. 
Exception situations have many causes(e.g. cardinality violation for a 
context node).The exceptions are treatable or untreatable;all the 
unhandled exceptions cause a runtime error,a so-called short dump.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&amp;nbsp;We can find all the short dumps from the system with&amp;nbsp;&lt;b&gt;transaction ST22,ABAP&lt;/b&gt;run
 time error.&amp;nbsp;We can find the runtime error from today and yesterday by 
using the two buttons“Today” and “Yesterday”,or we can search for a 
specific runtime error by using our selected parameters.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;ABAP runtime error&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;241&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/150.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Web
 Dynpro ABAP offers support to work with the exception classes through 
the methods of the Message Manager.Each exception has an explanatory 
text assigned to it that describes the exception.It can be an Online 
Text Repository OTR or a text from a message class.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 can create our own exception classes as global classes by using Class 
Builder or the local classes in our programms. Class-based exception 
handling is based on the exception classes; we have a notation 
specification for an exception class: its name has to begin with cx,zcx 
or ycx.&amp;nbsp;As basic exception classes,we have CX_STATIC_CHECK,CX_DYNAMIC_ 
CHECK and CX_NO_CHECK.This classes are derived from the superclass 
CX_ROOT.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Exception Class with OTR Text&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We create a WD component with the structure presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;206&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/151.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using the view V_VIEW,we implement a search mask.The user enters the 
concurrent ID and receives more information about him.All the data about
 candidates are stored inthe database table YPERSON we have created in 
the ABAP Dictionary.When we don’t find in the database a concurrent with
 the searched ID,we raise an exception and we show a proper message.The 
view layout is presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;84&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/152.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;251&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/153.png&quot; type=&quot;image&quot; width=&quot;250&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 have defined a node Search(Singleton,Cardinality 1...1)that holds the 
child node PERSON and the attribute ID_PERSON. The attribute ID_PERSON 
has the type yperson-id_person,Input help mode Automatic.For this table 
field,we have assigned in the ABAP Dictionary the search help 
YSH_ID_PERSON.We use this attribute to hold the concurrent ID entered by
 the user in the search mask.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&amp;nbsp;The
 child node PERSON (Singleton,Cardinality 0...1)has the dictionary 
structure YPERSON,and as attributes we have quickly almost the entire 
table fields(without id_person).We use this context node to hold all the
 concurrent data with the searched ID.To show the result information,we 
have created a data binding between this node and the Table UI Element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 user enters an ID and presses the button SEARCH.If the concurrent with 
this ID exists in the database table YPERSON,we show in the UI Element 
table the proper information,otherwise we raise an exception and the 
corresponding error message is shown.Before working with exception 
messages,we have to create an exception class.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating an exception class&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;339&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/154.png&quot; type=&quot;image&quot; width=&quot;350&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 can be seen,we create an exception class without message class.In this 
case,the OTR is used as a central storage area for the exception 
texts.In the Text tab,we create an exception text The candidate with 
ID:&amp;amp;id_candidate&amp;amp; doesn’t exist,with the ID:YCX_NO_CANDIDATE.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Defining exception texts&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;149&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/155.png&quot; type=&quot;image&quot; width=&quot;440&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Each
 exception text we create in the Texts tab consists of an ID and a 
corresponding text.The placeholder &amp;amp;id_candidate&amp;amp;is replaced at 
runtime by the content of the attribute with the same name defined in 
the Attributes tab.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Defining attributes&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;154&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/156.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user presses the SEARCH button,the Framework triggers the event handler method onactionsearch.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Coding of event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionsearch .
 DATA obj TYPE REF TO ycx_exception_otr_txt.
 DATA: lt_candidate TYPE TABLE OF yperson,
 lr_node TYPE REF TO if_wd_context_node,
 ls_data TYPE if_v_view=&amp;gt;element_search,
 lv_id_person TYPE yperson-id_person.
 lr_node = wd_context-&amp;gt;get_child_node(&#39;SEARCH&#39;).
 lr_node-&amp;gt;get_attribute(EXPORTING name =&#39;ID_PERSON&#39;
 IMPORTING value = lv_id_person).
 TRY.
 SELECT * FROM yperson INTO TABLE lt_candidate
 WHERE id_person = lv_id_person.
 IF sy-subrc = 0.
 DATA lr_subnode TYPE REF TO if_wd_context_node.
 lr_subnode = lr_node-&amp;gt;get_child_node(&#39;PERSON&#39;).
 lr_subnode-&amp;gt;bind_table( new_items = lt_candidate).
 ELSE.
 RAISE EXCEPTION TYPE ycx_exception_otr_txt
 EXPORTING
 textid = ycx_exception_otr_txt=&amp;gt;ycx_no_candidate
 id_candidate = lv_id_person.
 ENDIF.
 CATCH ycx_exception_otr_txt INTO obj.
 DATA lr_api_controller TYPE REF TO if_wd_controller.
 DATA lr_message_manager TYPE REF TO if_wd_message_manager.
 lr_api_controller ?= wd_this-&amp;gt;wd_get_api( ).
 lr_message_manager = lr_api_controller-&amp;gt;get_message_manager( ).
 lr_message_manager-&amp;gt;report_exception(message_object = obj).
 ENDTRY.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 defining the data,we pass the value of the attribute id_person in the 
local variable lv_id_person.By using the TRY ENDTRY control structure,we
 handle a possible exception that can occur.We use open SQL to select 
all the data from the database table YPERSON into the internal table 
lt_candidate,where the field id_person is the same with our searched ID.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
If
 we find this record in our database table,we populate the child node 
PERSON,because no exception occurs in the TRY block andthe system 
continues the processing after ENDTRY. Otherwise,a class-based exception
 occurs in the TRY block and the system searches for an exception 
handler.With RAISE EXCEPTION,we can raise an exception explicitly from 
our WD method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
RAISE EXCEPTION TYPE ycx_exception_otr_txt&lt;br /&gt;
EXPORTING textid = ycx_exception_otr_txt=&amp;gt;ycx_no_candidate id_candidate = lv_id_person.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 exception is caught in the CATCH block of the same TRY control 
structure:CATCH ycx_exception_otr_txt INTO obj.Because the additional 
INTO is specified,a reference to the exception object is stored in 
obj,where obj is the object reference variable.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After this,we use the method REPORT_EXCEPTION of the&lt;br /&gt;
IF_WD_MESSAGE_MANAGER interface to report a WD exception.&lt;br /&gt;
We
 present the execution result.The first picture represents the runtime 
where the exception occurs in the TRY-ENDTRY control structure,and the 
second picture represents the case when no exception occurs.In the 
second scenario,we can show,in the same time,the result of the Search 
help created in the ABAP Dictionary and attached to the id_person field 
of our database table YPERSON.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Application result&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;357&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/157.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Exception Class with Text from a Message Class&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create the same WD component, but in this case we use an exception 
class with text from a message class. In this case,the interface 
IF_T100_MESSAGE is automatically included in the class definition. 
Figure shows the creation of an exception class by using Message Class.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating an exception class&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;314&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/158.png&quot; type=&quot;image&quot; width=&quot;350&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Message class&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;179&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/159.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In the “Properties”tab of the exception class,we have to enter the name of the message class we use.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Message class assignment&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;293&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/160.png&quot; type=&quot;image&quot; width=&quot;440&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Class attributes&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;209&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/161.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Each
 exception ID can be mapped to a message class and message ID.To do 
this,we have to use the Button Message Text.&amp;nbsp;We assign the exception 
class attribute ID_CANDIDATE to the message class YCL_T100_MSG,message 
number 000.The placeholder and is replaced at runtime by the content of 
the ID_CANDIDATE attribute.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 activation,we can use this exception class in our WD 
component.Exception texts based on message classes are basically used in
 the same way as the exception texts thatuse OTR texts.&amp;nbsp;When the user 
presses the SEARCH button,the Framework triggers the event handler 
method onactionsearch that has the same structureas the Listing.The only
 modification we have to do is to change the name of the exception class
 raised when an exception occurs.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Assigning attributes of an exception class to a message&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;296&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/162.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Listing Exception handling&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; DATA obj TYPE REF TO ycx_exception_t100_txt.
 ………….
 RAISE EXCEPTION TYPE ycx_exception_t100_txt EXPORTING
 textid = ycx_exception_t100_txt=&amp;gt;ycx_no_candidate
 id_candidate = lv_id_person.
 ……….
 CATCH ycx_exception_t100_txt INTO obj.
 ………&lt;/pre&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/6435417317107832276/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/messages-exceptions-and-web-dynpro-abap.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/6435417317107832276'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/6435417317107832276'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/messages-exceptions-and-web-dynpro-abap.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-9080937952279210348</id><published>2012-09-22T23:02:00.001-07:00</published><updated>2012-09-22T23:02:00.566-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;h1 style=&quot;color: cyan;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://adf.ly/CUYFH&quot; target=&quot;_blank&quot;&gt;Writing Multilanguage Applications  &lt;/a&gt;&lt;/span&gt;&lt;/h1&gt;
This chapter mainly focuses on the creation of Multilanguage applications.So,&lt;br /&gt;
the applications we realize are going to be easilyinternationalized 
without being necessary to recode them,butonlyto translate some 
centralized strings.For this,we haveto respect some rules,as follows: 
using the tools offered by the ABAP Workbench,establishing an initial 
language for our project,and avoiding to enter language specific texts 
in the codification of the business logic.&lt;br /&gt;
Internationalization(I18N)is a need for the global business 
software.In this chapter,we will see some of the tools offered by the 
ABAP Workbench to create Multilanguage User Interface and the tools we 
can use to make Multilanguage records in the database.&lt;br /&gt;
When the user logs onto the SAP System,he should enter a log-on 
language.If he doesn’t enter a language,then it is used the default 
log-on language from the user account.&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;
&lt;b&gt;Transaction SU01&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;Log-on language&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;200&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/200.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
This is the language in which the Web Dynpro application(and all 
others development objects)is originally written and the language that 
the System uses after logging-on.&lt;br /&gt;
A list with all the languages installed in the system we can find by using the transaction SMLT–Language Management.&lt;br /&gt;
&lt;b&gt;Transaction language management&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;143&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/201.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;br /&gt;
In our case,we can use English,German or Russian as original log-on 
language,and we can translate our application from the original language
 into another one.&lt;br /&gt;
&lt;img alt=&quot;&quot; height=&quot;128&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/202tt.png&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
ABAP Workbench offers many tools that simplify the process of 
creating internationalized applications.So,we create WD applications 
that support multiple languages without re-designing or modifying.&lt;br /&gt;
As mentioned above,an internationalized application doesn’t contain 
languagespecific text elements in the source text.As language-specific 
texts,we can mention:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Texts used,for example,to label UI elements or required for the dynamic programming,etc.&lt;/li&gt;
&lt;li&gt;Texts defined when creating development objects in the ABAP Dictionary&lt;/li&gt;
&lt;li&gt;Messages&lt;/li&gt;
&lt;/ul&gt;
&lt;span class=&quot;topichd&quot;&gt; Creating Multilanguage User Interfaces &lt;/span&gt;
                  &lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
We create a simple WD 
component,where we use some of the above-mentioned tools to offer 
support for English and German without making any code changes.All we 
have to do is to translate certain centralised strings and,after 
changing the log-on language(in our case,from“en”to“de”),the data will 
be automatically shown in the respective language.The WD component 
structure is presented.&lt;br /&gt;
&lt;b&gt; WD component structure&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;146&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/1f.png&quot; type=&quot;image&quot; width=&quot;250&quot; /&gt;&lt;br /&gt;
In the context view,we create a context node named PERSON, 
Cardinality 1...1,Singleton,dictionary structure YPERSON and a context 
attribute named TEXT_I18N of STRING type.The context view and the view 
layout are presented.&lt;br /&gt;
&lt;b&gt;Context node and view layout&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;190&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/2f.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;br /&gt;
We didnt insert any static strings for the“text”property of the UI 
elements Label and Button,or for the Caption view element.The strings 
shown as labels for the InputField UI elements represent the texts from 
the label field of the elementary data elements created in the ABAP 
Dictionary.For example,the label with the ID “FIRSTNAME_LBL” represents 
the label for the InputField bound to the attribute FIRSTNAME.The data 
element for this attribute is YPERSON-FIRSTNAME.If we look in our table 
definition,we can see that the elementary data type is YFIRSTNAME.. it 
can be seenthat“text”property of the label FIRSTNAME_LBL doesn’t contain
 anystatic values.To establish this string, we use the text with 
thelength Medium,defined in the YFIRSTNAME data element,i.e.“First 
Name”.&lt;br /&gt;
&lt;b&gt;Text property and elementary data elements&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;177&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/3f.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;br /&gt;
&lt;b&gt;&lt;i&gt;Internationalization of Data Elements Defined in ABAP Dictionary&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
To internationalized data element defined in ABAP Dictionary, we have
 to translate the corresponding texts.The way we can perform this 
translations.&lt;br /&gt;
&lt;b&gt;Translating the texts from a data element&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;176&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/4ff.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;br /&gt;
After this,a pop-up window asks the language in which we want to 
translate the texts.We choose German and we enter the texts to be 
translated,for the strings.We repeat the same steps,until all the 
strings for the corresponding elementary data elements are translated.&lt;br /&gt;
&lt;b&gt;Translating the strings&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;389&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/5ff.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
&lt;b&gt;&lt;i&gt;Internationalization of Domains Defined in ABAP Dictionary&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
Similarly,we translate the texts stored in our Domain Y_COUNTRY_DOMAIN.&lt;br /&gt;
&lt;b&gt;English–German translation for a domain&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;233&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/6ff.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;br /&gt;
&lt;b&gt;Translating the domain fixed values&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;286&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/7ff.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
&lt;b&gt;&lt;i&gt;Internationalization of Text from OTR&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
In our example,we have to enter a value in the text property of the 
UI element Button.To do this,we choose the OTR text that exists in 
the&amp;nbsp;SOTR_VOCABULARY_BASIC package.&lt;br /&gt;
&lt;b&gt;The OTR text from the SOTR_VOCABULARY_BASIC package&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;293&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/0ff.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
To create our own OTR text,we can use the menu &lt;b&gt;Goto  Online Text Repository Browser &lt;/b&gt;or the transaction &lt;b&gt;SOTR_EDIT &lt;/b&gt;Editor for &lt;b&gt;OTR &lt;/b&gt;texts. Figure shows how we can create an OTR text by using the Online Text Repository Browser.&lt;br /&gt;
&lt;b&gt;Creating OTR texts&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;318&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/0fff.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
The basic vocabulary stored in the SOTR_VOCABULARY_BASIC package can 
be used for all the packages,but the created OTR textsare stored only 
once per each package.&lt;br /&gt;
&lt;b&gt;Our own-defined OTR text&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;193&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/01fff.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
&amp;nbsp;To translate an OTR text,we can use the transaction SE63 
Translation: Original Screen.After translating it,we can use our own 
defined OTR text in the same way as the OTR texts defined by SAP in the 
SOTR_VOCABULARY_BASIC package.Then,we have to create a Multilanguage 
text for the text property of the Caption element.&lt;br /&gt;
&lt;b&gt;&lt;i&gt;Internationalization of Text from Assistance Class&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
In the previous chapter,we have seen how we can use an Assistant 
Class to work with messages. In this case,we use the texts stored in the
 text pool of the assistance class to make Multilanguage our text 
required by the Caption view element.&amp;nbsp;We create an assistance class 
named YCL_I18N.We define here the text to be made Multilanguage.&lt;br /&gt;
&lt;b&gt;Texts from assistance class&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;135&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/02ff.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
In the field mLen,we have to specify the maximum length of the text 
string of a text symbol.As we have already seen,this value should be 
greater than or equal to the defined length(dLen).It is better to use a 
higher value,because,at design time,we don’t knowfor how many languages 
we offer support.In English,forexample,the length is 36,but when we 
translate this string in another language,it might be greater.In this 
case,we could not be able to enter the entire translation text.This 
length is saved in the text pool.&amp;nbsp;To translate this text from English 
into German,we use the menu &lt;b&gt;Goto-&amp;gt;Translation&lt;/b&gt;.&lt;br /&gt;
&lt;b&gt;Translating texts from the assistance class&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;149&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/02fff.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;br /&gt;
After this,we realise a data binding between the attribute TEXT_I18N 
and the property text of the Caption element.We dynamically access the 
string we have just defined and translated.&lt;br /&gt;
&lt;b&gt;wdDoInit( )Hook method&lt;/b&gt;&lt;br /&gt;
&lt;pre&gt; METHOD wddoinit.
 DATA:lv_text TYPE string.
 lv_text = wd_assist-&amp;gt;if_wd_component_assistance~get_text(&#39;001&#39;).
 wd_context-&amp;gt;set_attribute(name =&#39;TEXT_I18N&#39;
 value=lv_text).
 ENDMETHOD&lt;/pre&gt;
As we have mentioned above,to be able to have access to the text 
symbols of the assistance class by using the instance attribute 
WD_ASSIST,we have to assign the assistance class to our component.After 
this,we run our application.&lt;br /&gt;
&lt;b&gt;Runtime. Default language: English&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;336&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/02ffff.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;br /&gt;
&lt;b&gt;&lt;i&gt;Internationalization of Messages &lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
We create a Message class named YCL_I18N_MSG,where we define a 
message with the ID“000”and the short text “First Name is nrequired!”We 
want to show this message when the user presses the Update button.&lt;br /&gt;
&lt;b&gt;Runtime – German&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;331&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/03f.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;br /&gt;
To translate this message,we choose from &lt;b&gt;MENU Goto --&amp;gt;translation&lt;/b&gt;.&lt;br /&gt;
&lt;b&gt;Translating a short text in the message class&lt;/b&gt;&lt;br /&gt;
&lt;img alt=&quot;&quot; height=&quot;138&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/03ff.png&quot; width=&quot;400&quot; /&gt;&lt;br /&gt;
When the user presses the Upload button,the Framework triggers the 
even handler method onactionsave. We run our application in the original
 language English and in German.&lt;br /&gt;
&lt;b&gt;The onactionsave event handler method&lt;/b&gt;&lt;br /&gt;
&lt;pre&gt; METHOD onactionsave.
 DATA: lr_api_controller TYPE REF TO if_wd_controller,
 lr_message_manager TYPE REF TO if_wd_message_manager.
 lr_api_controller?=wd_this-&amp;gt;wd_get_api( ).
 lr_message_manager=lr_api_controller-&amp;gt;get_message_manager( ).
 lr_message_manager-report_t100_message(msgid =&#39;YCL_I18N_MSG&#39;
 msgno=&#39;000&#39;msgty =&#39;E&#39;.
 ENDMETHOD.&lt;/pre&gt;
&lt;b&gt;Multilanguage messages&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;203&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/03fff.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;br /&gt;
&lt;img alt=&quot;&quot; height=&quot;113&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/0tt.png&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span class=&quot;topichd&quot;&gt;  Multilanguage Records in the Database &lt;/span&gt;
                  In this case,we make 
Multilanguage the records we store in a database table.We create a very 
simple example to show how we can store data in a database table,not 
only in the log-on language,and then we create the User Interface in Web
 Dynpro to see how we can process these data.&lt;br /&gt;
We copy the table YEU_COUNTRIES and rename it YEU_I18N. Our target is
 to be able to store the political system for each EU Country not only 
in English,but in German,too.&lt;br /&gt;
&lt;b&gt;&lt;i&gt;Study an Example Created in the System&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
Before creating our own example,we shall briefly explain the table 
structure we are going to build.In this respect,we study a simple 
example presented in the system,starting with the search of a text 
table.A text table usually has the suffix T and contains an explanatory 
text in several languages,for each key.&amp;nbsp;With the transaction&lt;b&gt; SE11 &lt;/b&gt;,we display all the tables that end in “_T”.&lt;br /&gt;
&lt;b&gt;Searching to find a text table&lt;/b&gt;&lt;br /&gt;
&lt;img alt=&quot;&quot; height=&quot;249&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/0123.png&quot; width=&quot;400&quot; /&gt;&lt;br /&gt;
From the list that appears,we choose to see the structure of the text
 table for Text Table for Release/Lock object Handling.&amp;nbsp;As we can see,we
 have a Field named SPRAS of SPRAS type that represents the Language Key
 and two fields BEZ(description)and KURZBEZ(short description) that 
contain an explanatory text in several languages,for each FSOBJANL 
key.In this case,we have support for German and English, so we have the 
translation in two languages(E – English,D –German) for each key. Let’s 
look at the foreign key relationship:As we can see, this table is a text
 table for the table /BEV3/CHCTFSOS The structure of this table is 
presented.&amp;nbsp;The table /BEV3/CHCFSOS_T is a text table for 
/BEV3/CHCTFSOS.If we study both tables,we see that the text table 
additionally contains a language key.&lt;br /&gt;
&lt;b&gt;Text table structure&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;450&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/04fff%282%29.png&quot; type=&quot;image&quot; width=&quot;585&quot; /&gt;&lt;br /&gt;
&lt;b&gt;The content of a text table&lt;/b&gt;&lt;br /&gt;
&lt;img alt=&quot;&quot; height=&quot;129&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/04ffff.png&quot; width=&quot;400&quot; /&gt;&lt;br /&gt;
&lt;b&gt;Foreign key relationship&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;250&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/04fffff.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
&lt;b&gt;Table /BEV3/CHCFSOS&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;150&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/04ffffff.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
field and two extra Fields that contain an explanatory text in 
English and in German,for each key entry of /BEV3/CHCTFSOS.Let’s look at
 the structure of the table /BEV3/CHCFSOBJS.&lt;br /&gt;
&lt;b&gt;Structure of the table /BEV3/CHCFSOBJS&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;278&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/04fffffff.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
For our purpose,in this case it is interesting the Field FSOBJANL.As 
we can see,this field has an foreign key defined to /BEV3/CHCTFSOS.&lt;br /&gt;
&lt;b&gt;&lt;i&gt;Creating Table Structures and Internationalization of the Records&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
For our example,we create the same structure as the one presented 
above,but with only one explanatory text for the political system per 
each EU Country. The table YEU_I18N has the structure presented.&lt;br /&gt;
&lt;b&gt;YEU_I18N table&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;209&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/05f.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
The Field POLITICALSYSTEM has defined an foreign key to the table YKEY that holds only the ID of the politicalsystem.&lt;br /&gt;
&lt;b&gt;Key table&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;144&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/05ff.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
&lt;b&gt;Text table&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;167&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/05fff.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
To link the politicalsystem key with the descriptions included in the
 text table, we have to link the table YKEY_T with the tableYKEY by 
using a foreign key.&lt;br /&gt;
&lt;b&gt;Foreign key&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;259&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/05ffff.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
Now,we have to maintain the data that refer to an object and are technically distributed between the tables YKEY and YKEY_T.&lt;br /&gt;
&lt;b&gt;Maintaining data in the tables YKEY and YKEY_T&lt;/b&gt;&lt;br /&gt;
&lt;img alt=&quot;&quot; height=&quot;265&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/05fffff.png&quot; width=&quot;400&quot; /&gt;&lt;br /&gt;
To realize this,we create a Maintenance View.Call transaction 
SE11,enter the name of the new maintenance view in the field VIEW and 
press CREATE.At the next popup window choose the kind of view we want to
 create.In our case “Maintenance View”. Enter the tablenames as shown 
below and pres button“Relationships”.In our case we can accept the 
suggestion. The View Fields are presented.&amp;nbsp;After this,we choose from the
 menu&lt;b&gt; Utilities --&amp;gt;  Table Maintenance Generator &lt;/b&gt;,to generate table maintenance.&lt;br /&gt;
&lt;b&gt;Maintenance view&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;186&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%2011/2-Multilanguage-Records-in-the-Database.png&quot; type=&quot;image&quot; width=&quot;584&quot; /&gt;&lt;br /&gt;
&lt;b&gt;View fields&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;168&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%2011/30-Maintenance-view.png&quot; type=&quot;image&quot; width=&quot;583&quot; /&gt;&lt;br /&gt;
&lt;b&gt;Generating maintenance view&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;400&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%2011/32-Generating-maintenance-view.png&quot; type=&quot;image&quot; width=&quot;566&quot; /&gt;&lt;br /&gt;
We go back to the Maintenance View and we choose from the menu &lt;b&gt;Utilities --&amp;gt; Contents&lt;/b&gt;.&lt;br /&gt;
&lt;b&gt;Insert content&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;322&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%2011/33-Insert-content.png&quot; type=&quot;image&quot; width=&quot;580&quot; /&gt;&lt;br /&gt;
&lt;b&gt;New entries&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;184&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/06fffff.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;br /&gt;
We insert three political systems and then we translate them in 
German.To do this,we select the entry we want to translate and we choose
 from the menu&lt;b&gt; Goto --&amp;gt; Translation&lt;/b&gt;.&lt;br /&gt;
&lt;b&gt;Translating records&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;290&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/143%281%29.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;br /&gt;
&lt;b&gt;&lt;i&gt;Using the Internationalized Records in WebDynpro&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
Through a Web Dynpro application,we create a mini-administration User
 Interface for our table YEU_I18N.The view layout and the context node 
are presented.&lt;b&gt;&lt;i&gt;&lt;br /&gt;
&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;View layout and context node&lt;/b&gt;&lt;br /&gt;
&lt;img alt=&quot;&quot; height=&quot;182&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/07f.png&quot; width=&quot;400&quot; /&gt;&lt;br /&gt;
The context node has the dictionary structure YEU_I18N.&amp;nbsp;The runtime result is presented.&lt;br /&gt;
&lt;b&gt;Internationalization – database records&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;364&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/07ff.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;br /&gt;
To select the values from the database according to the log-on 
language,we create a database view in the ABAP Dictionary and perform a 
selection,where spras sy-langu: SELECT * FROM y_i18nv INTO TABLE 
lt_i18nv WHERE spras = sy-langu.&lt;br /&gt;
We create a context node named I18NSELECT that has,as dictionary 
structure the view “Y_I18NV”that we have created in the ABAP Dictionary.&lt;br /&gt;
&lt;b&gt;Database view and context node&lt;/b&gt;&lt;br /&gt;
&lt;input height=&quot;202&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/07fff.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;br /&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;br /&gt;
&lt;img alt=&quot;&quot; height=&quot;294&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/07ffff.png&quot; width=&quot;400&quot; /&gt;&lt;br /&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/9080937952279210348/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/writing-multilanguage-applications-this.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/9080937952279210348'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/9080937952279210348'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/writing-multilanguage-applications-this.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-8770938528774420453</id><published>2012-09-22T23:00:00.003-07:00</published><updated>2012-09-22T23:00:27.796-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h1 style=&quot;background-color: white; background-image: none; background-position: 0% 0%; background-repeat: no-repeat no-repeat; border: none; color: #0099ff; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; height: 40px; line-height: 24px; margin: 0px; padding: 0px; text-align: justify;&quot;&gt;
&lt;a href=&quot;http://adf.ly/CUYCP&quot; target=&quot;_blank&quot;&gt;WebDynproModel&lt;/a&gt;&lt;/h1&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
This
 chapter presents the role of a model in a multicomponentWeb Dynpro 
application, showing not only themodality to use such a model, but also 
to create it. We are going to focus on three types of models: Assistance
 class, BAPI and Web Service.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
So
 far,we have created only small applications used to access the data 
contained in a table,through the SQL statements introduced in the 
methods defined in the views. This art of programming is not in 
concordance with the MVC design pattern.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
According
 to the Model View Controller MVC paradigm,the application data and 
their user interface are separated. The Model represents the business 
logic, the View represents the user interface and the controller has 
certain responsibilities, as the communication between the model and the
 view,or data processing at runtime.&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
In
 this way,it is possible to change the user interface without changing 
the business logic,or it is possible to change the business logic 
without having to change the user interface.In the same time,we can 
reuse the same business logic for more user interfaces.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
In the Web Dynpro ABAP, the model can be implemented by the:&lt;/div&gt;
&lt;ul style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; margin: 10px 0px 0px; padding: 0px 0px 0px 25px; text-align: justify;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Assistance class&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;BAPI&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;WebService&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Faceless Component,etc.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
A
 Web Service can be compared with a “black box” that offers certain 
functionalities.These functionalities can be integrated in a client 
application (in our case,Web dynpro ABAP)that consumes the respective 
web service. In this respect,a Web Servicemay require certain inputs 
fromthe client application and delivers it the proper answer.Usually, 
Web Services are used to communicate between different platforms.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
As
 mentioned before,an assistance class is a normal ABAP class that 
inherits from the CL_WD_COMPONENT_ASSISTANCE.Each Web Dynpro component 
can have a uniquely assigned assistance class that offers certain 
benefits,as follows:&lt;/div&gt;
&lt;ul style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; margin: 10px 0px 0px; padding: 0px 0px 0px 25px; text-align: justify;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;It works with text symbols&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;It’s more advantageous to call its methods than to call the methods defined in a Web Dynpro controller.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
The
 Business Application Program Interfaces (BAPI)are specific methods for 
business object types that offer the possibility to access external data
 and processes.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
The
 Faceless Component is a Web Dynpro Component that doesn’t have any View
 or Window;in conclusion, it’s a Component that doesn’t have any User 
Interface,but it encapsulates functionality and can be used to build a 
Model.&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;524-assistance-class-as-a-model-for-a-multicomponent-application&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Assistance Class as a Model for a Multicomponent Application&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Essentially,each
 ABAP class can be used as a model. The particularity of an assistance 
classes is that we can assign it to a Web Dynpro component and it is 
automatically instantiated when the proper component is called.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We create an assistance class named YCL_AC_MODEL.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Assistance class&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;164&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/08f.png&quot; type=&quot;image&quot; width=&quot;460&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this assistance class,we create three methods 
named&amp;nbsp;SEARCH_CANDIDAT,SELECT_CANDIDATE and INSERT_CANDIDATE. Here, we 
store the coding required within the WD components to look for a 
candidate,to select all the candidates and to insert information about a
 candidate into or from the database table YPERSON.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Methods for the assistance class&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;181&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%20112/2-Methods-for-the-assistance-class.png&quot; type=&quot;image&quot; width=&quot;578&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Before
 implementing our methods,we created the lowest level of coding that 
abstracts the data access.In this case,we choose to implement the 
simplest data access method by using the classical ABAP tools,respective
 through the Function Modules,but we can also use other tools,e.g.the 
Persistent Object Classes,required to benefit of the object oriented 
programming(OOP).In case we want to use Persistent Objects to access the
 data from the database table in the Object Oriented mode,we can use for
 our Web Dynpro project the same structure (by taking the Assistance 
class as a model). But,in this case,we have to replace the Function 
Modules with Persistent Classes.table&amp;nbsp;One of the created Function 
Modules will be used later,as the end point for a BAPI.It will be also 
used to create a Web Service.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
A
 Function Module (FM)is a procedure with public interface, which can be 
created within a Function Group. To create a Function Group, we select&lt;b&gt;&amp;nbsp;Create--&amp;gt; Function Group&amp;nbsp;&lt;/b&gt;from the context menu of our package name. We create a Function Group named YFG_DBACCESS.Here,we implement three FMs,named.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
YFM_SEARCH_ CANDIDATE,&lt;br /&gt;
YFM_SELECT_CANDIDATE and YFM_ INSERT_CANDIDATE.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Listing shows the implementation of YFM_SEARCH_CANDIDATE.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 exception class YCX_EXCEPTION_T100_TXT was defined hereinbefore,when we
 have seen how we can work with the exception classes in WD.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Shows the implementation of YFM_SEARCH_CANDIDATE&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; FUNCTION YFM_SEARCH_CANDIDATE .
 *&quot;--------------------------------------------------------------------
 *&quot;*&quot;Local Interface:
 *&quot; IMPORTING
 *&quot; VALUE(ID_CANDIDATE)TYPE YPERSON-ID_PERSON
 *&quot; EXPORTING
 *&quot; VALUE(ITAB)TYPE YTABLE_TYPE
 *&quot; RAISING
 *&quot; YCX_EXCEPTION_T100_TXT
 *&quot;----------------------------------------------------------------------
 TRY.
 SELECT *
 FROM yperson
 INTO TABLE itab WHERE id_person = id_candidate.
 IF sy-subrc &amp;lt;&amp;gt; 0.
 RAISE EXCEPTION TYPE ycx_exception_t100_txt
 EXPORTING
 textid = ycx_exception_t100_txt=&amp;gt;ycx_no_candidate
 id_candidate = id_candidate.
 ENDIF.
 ENDTRY.
 ENDFUNCTION.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Listing Implementation of YFM_SELECT_CANDIDATE&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; FUNCTION YFM_SELECT_CANDIDATE.
 *&quot;------------------------------------------------
 *&quot;*&quot;Local Interface:
 *&quot; EXPORTING
 *&quot; VALUE(ITAB) TYPE YTABLE_TYPE
 *&quot; RAISING
 *&quot; YCX_EXCEPTION_T100_TXT
 *&quot;-------------------------------------------------
 TRY.
 SELECT *
 FROM yperson
 INTO TABLE itab.
 IF sy-subrc &amp;lt;&amp;gt; 0.
 RAISE EXCEPTION TYPE ycx_exception_t100_txt
 EXPORTING
 textid = ycx_exception_t100_txt=&amp;gt;ycx_select_no_posible.
 ENDIF.
 ENDTRY.
 ENDFUNCTION.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 FM selects the information about all the candidates. In this case,we 
create a new message ID–001“Data cannot be selected!”and a new exception
 ID YCX_ SELECT_NO_POSSIBLE with the text from the message class – 
message ID 001&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Listing shows the implementation of YFM_INSERT_CANDIDATE&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; FUNCTION YFM_INSERT_CANDIDATE .
 *&quot;------------------------------------------
 *&quot;*&quot;Local Interface:
 *&quot; IMPORTING
 *&quot; VALUE(ID_CANDIDATE)TYPE YPERSON-ID_PERSON
 *&quot; VALUE(FIRSTNAME)TYPE YPERSON-FIRSTNAME
 *&quot; VALUE(LASTNAME)TYPE YPERSON-LASTNAME
 *&quot; VALUE(AGE) TYPE YPERSON-AGE
 *&quot; VALUE(TELEPHONE)TYPE YPERSON-TELEPHONE
 *&quot; VALUE(ID_COUNTRY)TYPE YPERSON-ID_COUNTRY
 *&quot; RAISING
 *&quot; YCX_EXCEPTION_T100_TXT
 *&quot;------------------------------------------
 DATA wa_person TYPE yperson.
 wa_person-mandt = sy-mandt.
 wa_person-id_person =id_candidate.
 wa_person-firstname =firstname.
 wa_person-lastname =lastname.
 wa_person-age = age.
 wa_person-telephone =telephone.
 wa_person-id_country =id_country.
 TRY.
 INSERT into yperson values wa_person.
 IF sy-subrc &amp;lt;&amp;gt; 0.
 RAISE EXCEPTION TYPE ycx_exception_t100_txt
 EXPORTING textid = ycx_exception_t100_txt=&amp;gt;ycx_insert_no_possible.
 ENDIF.
 ENDTRY.
 ENDFUNCTION.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 FM inserts in the database table YPERSON the information about a 
candidate.In this case,we create a new message ID–002 “Candidate insert 
cannot be done!”and a new exception ID YCX_INSERT_NO_POSSIBLE with the 
text from the message class – message ID 002.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
A
 FM can be tested by using the Test/Execute Button .In this way,we can 
check if our created FM works correctly.Then,we implement our first 
method from the assistance class.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Implementation of the SEARCH_CANDIDATE method&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;247&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%20112/3-Implementation-of-the-SEARCH_CANDIDATE-method.png&quot; type=&quot;image&quot; width=&quot;582&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Pattern&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;312&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%20112/4-Pattern.png&quot; type=&quot;image&quot; width=&quot;579&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Implementation of the SELECT_CANDIDATE method&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;227&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%20112/5-Implementation-of-the-SELECT_CANDIDATE-method.png&quot; type=&quot;image&quot; width=&quot;580&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&amp;nbsp;Implementation of the INSERT_CANDIDATE method&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;365&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%20112/6-Implementation-of-the-INSERT_CANDIDATE-method.png&quot; type=&quot;image&quot; width=&quot;580&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The Class Builder provides a test environment for classes.We can test our class by using the same test/execute Button.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Testing the assistance class&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;195&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/09fffff.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this way,we have autonomous units that can be independently tested 
before we integrate them into bigger applications. If we look backwards 
to the example that refers to the Exception class with OTR text,we can 
see that the entire coding was integrated in a method of the view 
controller.So,we didn’t separate the application layer from the business
 layer and from the presentation layer.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create the presentation layer through a WD application. We create a 
main component named Y_MAIN,in which we will use three secondary 
elements:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Y_SEARCH,Y_SELECT and Y_INSERT.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component’s structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;265&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/00f.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
All
 the components defined the same assistance class,the YCL_AC_MODEL.Any 
changes made to the model class in the Framework are available for any 
other component that has this model class defined as assistance class.In
 this way,we can share data among components.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we have mentioned above,each ABAP class can be used as a model 
class,but the services offered by the Web Dynpro Framework in this 
respect are available only for an assistance class that inherits the 
abstract class&amp;nbsp;CL_WD_COMPONENT_ASSISTANCE.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 Y_MAIN component represented the start point of this application;it is 
the only component that has a Web Dynpro application defined.We assign 
our assistance class YCL_AC_MODEL for our components.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Assistance class assigned to our components&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;270&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/010101.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The V_MAIN layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;110&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/00fff%281%29.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By using the ViewContainerUIElement,we show one of the views:&lt;br /&gt;
V_SELECT,V_INSERT or V_SEARCH.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 be able to navigate among the three used Views,we have to define three 
outbound plugs.Figure shows the defined outbound plugs and the window 
structure.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Outbound plugs&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;189&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/00ffff.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Before being able to create the instance of the used components,e have to create usages at the V_MAIN View level.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user presses the linkToAction UI element–Insert–the Framework triggers the event handler method onactioninsert.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactioninsert .
 DATA: lr_cmp_usage TYPE REF TO if_wd_component_usage.
 lr_cmp_usage = wd_this-&amp;gt;wd_cpuse_insert( ).
 IF lr_cmp_usage-&amp;gt;has_active_component( ) IS INITIAL.
 lr_cmp_usage-&amp;gt;create_component(assistance_class = me-&amp;gt;wd_assist).
 ENDIF.
 Wd_this-fire_op_to_v_insert_plg( ).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As we can see,through the statement&lt;br /&gt;
&lt;b&gt;lr_cmp_usage--&amp;gt; create_component (assistance_class = me &amp;gt;wd_assist),&lt;/b&gt;&amp;nbsp;the
 existing instance for the assistance class that belongs to the main 
component is assigned to the used component instance.In this way,we 
ensure that both components access the same instance of the assistance 
class.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 event handler methods onactionselect and onactionsearch have the same 
structure,excepting the outbound plug NAME that is fired when the user 
presses the respective linkToAction UI elements.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Listing Event handler methods&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionsearch .
 ….…….
 wd_this-&amp;gt;fire_op_to_v_search_plg( ).
 ENDMETHOD.
 METHOD onactionselect.
 ……………
 wd_this-&amp;gt;fire_op_to_v_select_plg( ).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this way,we create the instance of the used component and we specify 
the reference to the active instance of the assistance class.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The V_SELECT view layout and the context structure are presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View layout and context&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;207&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/a1.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Here,we
 show all the records from our YPERSON database table. The node 
“CANDIDATE” has the dictionary structure YPERSON, cardinality 1...n, 
Singleton,supply function SUPPLY_CANDIDATE.&amp;nbsp;Listing Supply function 
method&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
METHOD supply_candidate.&lt;br /&gt;
wd_this-&amp;gt;populate_node( ).&lt;br /&gt;
ENDMETHOD&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we can see,we call the user defined method POPULATE_NODE to populate 
the context node with values. We have chosen to create this method in 
order to populate with data the context node and to update its contained
 data every time the user presses the Refresh button.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When
 the component Y_SELECT is called,the assistance class is automatically 
instantiated. Then,this instance is available through the attribute 
WD_ASSIST:&lt;br /&gt;
lt_person = wd_assist!select_candidate( ).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The POPULATE_NODE method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD populate_node.
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA ls_data TYPE wd_this-&amp;gt;element_candidate.
 DATA lr_oref TYPE REF TO ycx_exception_t100_txt.
 DATA lt_person TYPE STANDARD TABLE OF yperson.
 lr_node = wd_context-&amp;gt;get_child_node(&#39;CANDIDATE&#39;).
 TRY.
 lt_person = wd_assist-&amp;gt;select_candidate( ).
 lr_node-&amp;gt;bind_table(new_items = lt_person).
 CATCH ycx_exception_t100_txt INTO lr_oref.
 DATA lr_api_controller TYPE REF TO if_wd_controller.
 DATA lr_message_manager TYPE REF TO if_wd_message_manager.
 lr_api_controller ?= wd_this-&amp;gt;wd_get_api( ).
 lr_message_manager = lr_api_controller-&amp;gt;get_message_manager( ).
 lr_message_manager-&amp;gt;report_exception(message_object =lr_oref).
 ENDTRY.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this way,we call the method select_candidate from the assistance class 
and we pass the result in the lt_person internal table.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user presses the Refresh button, the Framework triggers the event handler method onactionrefresh.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Listing The ONACTIONREFRESH event handler method&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionrefresh.
 wd_this-&amp;gt;populate_node( ).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View layout and the view context&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;178&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/a12.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 CANDIDATE node has the dictionary structure YPERSON, cardinality 
1...1,Singleton.By using this component,we insert records in our 
database table YPERSON.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user presses the Save Button,the Framework triggers the event handler method onactionsave.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactionsave event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionsave.
 DATA lr_oref TYPE REF TO ycx_exception_t100_txt.
 DATA lr_node TYPE REF TO if_wd_context_node.
 DATA lr_element TYPE REF TO if_wd_context_element.
 DATA ls_data TYPE wd_this-&amp;gt;element_candidate.
 DATA: lv_firstname LIKE ls_data-firstname,
 lv_lastname LIKE ls_data-lastname,
 lv_age LIKE ls_data-age,
 lv_telephone LIKE ls_data-telephone,
 lv_id_country LIKE ls_data-id_country.
 lr_node = wd_context-&amp;gt;get_child_node(&#39;CANDIDATE&#39;).
 lr_element = lr_node-&amp;gt;get_element( ).
 lr_element-&amp;gt;get_static_attributes(
 IMPORTING static_attributes = ls_data).
 lv_firstname =ls_data-firstname.
 lv_lastname =ls_data-lastname.
 lv_age = ls_data-age.
 lv_telephone = ls_data-telephone.
 lv_id_country = ls_data-id_country.
 TRY.
 wd_assist-&amp;gt;insert_candidate(firstname = lv_firstname
 lastname = lv_lastname age = lv_age telephone = lv_telephone
 id_country = lv_id_country ).
 DATA: lv_success_text TYPE string.
 lv_success_text = wd_assist-&amp;gt;if_wd_component_assistance~get_text(&#39;M01&#39;).
 wd_this-&amp;gt;atr_mm-&amp;gt;report_success(message_text = lv_success_text).
 CATCH ycx_exception_t100_txt INTO lr_oref.
 wd_this-&amp;gt;atr_mm-&amp;gt;report_exception(message_object = lr_oref) .
 ENDTRY.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 have to firstly verify if the end user has inserted values in all the 
mandatory fields.To perform this check,we use the wdDoBeforeReaction 
Hook method that has the structure presented inthe“view controller 
methods”chapter.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
If
 the user has inserted values in all the fields,we call the method 
insert_candidate from the model class and we pass the inserted values in
 the method parameters.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
wd_assist!insert_candidate(firstname
 = lv_firstname lastname = lv_lastname age = lv_age telephone = 
lv_telephone id_country = lv_id_country).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 case the data were successfully saved,we informthe end user about 
this,through a message defined in our assistance class with the 
identification symbol - M01.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;61&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/a123.png&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When an exception occurs,we show to the end user this message through the report_exception method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
“Atr_mm” represents an attribute created in the attribute tag of the current view.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 is declared of ref to if_wd_message_manager type.By using the wdDoInit 
Hook method,we pass in the atr_mm attribute the reference to the Message
 Manager:method,we pass in the atr_mm attribute the reference to the 
Message Manager:&lt;br /&gt;
DATA lr_api_controller TYPE REF TO if_wd_controller.lr_api_controller ?= wd_this--&amp;gt;;wd_get_api( ).&lt;br /&gt;
wd_this!atr_mm = lr_api_controller--&amp;gt;get_message_ manager( ).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View layout and context structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;211&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/a1234%281%29.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 context structure is the same as for the context realized to exemplify 
the exception class with OTR text.&amp;nbsp;When the user presses the Search 
Button,the Framework triggers the onactionsearch event handler method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionsearch.
 DATA lr_oref TYPE REF TO ycx_exception_t100_txt.
 DATA: lt_candidate TYPE STANDARD TABLE OF yperson,lr_node TYPE REF
 TO if_wd_context_node,lv_id_candidate TYPE yperson-id_person.
 lr_node = wd_context-&amp;gt;get_child_node(&#39;SEARCH&#39;).
 lr_node-&amp;gt;get_attribute(EXPORTING name =&#39;ID_PERSON&#39;IMPORTING value = 
 lv_id_candidate).
 TRY.
 lt_candidate =
 wd_assist-&amp;gt;search_candidate(id_candidate = lv_id_candidate).
 DATA lr_subnode TYPE REF TO if_wd_context_node.
 lr_subnode = lr_node-&amp;gt;get_child_node(&#39;PERSON&#39;).
 lr_subnode-&amp;gt;bind_table(new_items = lt_candidate).
 CATCH ycx_exception_t100_txt INTO lr_oref.
 wd_this-&amp;gt;atr_mm-&amp;gt;report_exception(message_object = lr_oref ).
 ENDTRY.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When
 the component Y_SEARCH is called,the assistance class is automatically 
instantiated.Then,this instance is available through the attribute 
WD_ASSIST:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
lt_candidate
 = wd_assist!search_candidate(id_candidate = lv_id_candidate).&amp;nbsp;In this 
way,we call the method search_candidate from the assistance class and we
 pass the result in the lt_candidate internal table. When an exception 
occurs, we show the message to the end user,through the report_exception
 method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;run time&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;359&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/0af.png&quot; type=&quot;image&quot; width=&quot;450&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;195&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/00af.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&amp;nbsp;We
 can extend our application by adding the possibility to change a 
candidate record.For the database table YPERSON, we have defined in the 
ABAP Dictionary a Lock Object. We can use it to synchronize the access 
to the same data in our database table YPERSON with more that one WD 
application.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Locking objects&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;208&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/00aff.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 set a lock and to release a lock, we can define,in our assistance 
class,two additional methods that use the generated Function Modules 
&amp;nbsp;ENQUEUE_YPERSON and DEQUEUE_YPERSON.&amp;nbsp;After this,we call our defined 
methods from our WD methods every time we want to lock one or more data 
records or to release the locked data records.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 case we need to perform a search in a database table to find all the 
records that contain a certain searched pattern, we can use the ABAP 
classes&amp;nbsp;CL_ABAP_ REGEX and CL_ABAP_MATCHER.&amp;nbsp;In our case,we search the 
database table YPERSON, column “firstname”,to find all the records that 
contain the string we are looking for.This value will be found in the 
local variable lv_firstname.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Search with CL_ABAP_MATCHER&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; TYPES: BEGIN OF st_person,
 mandt TYPE yperson-mandt,
 id_person TYPE yperson-id_person,
 firstname TYPE yperson-firstname,
 lastname TYPE yperson-lastname,
 telephone TYPE yperson-telephone,
 age TYPE yperson-age,
 id_country TYPE yperson-id_country,
 END OF st_person.
 DATA: it_person TYPE TABLE OF st_person,
 lv_firstname TYPE yperson-firstname.
 FIELD-SYMBOLS &amp;lt;fs_person&amp;gt; LIKE LINE OF it_person.
 SELECT * FROM yperson INTO TABLE it_person.
 LOOP AT it_person ASSIGNING &amp;lt;fs_person&amp;gt;.
 IF cl_abap_matcher=&amp;gt;contains(pattern = lv_firstname text =
 &amp;lt;fs_person&amp;gt;-firstname)= abap_true.
 INSERT &amp;lt;fs_person&amp;gt;INTO TABLE itab.
 ENDIF.
 ENDLOOP.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As can be seen,we used the static method CONTAINS of the class&lt;br /&gt;
CL_ABAP_MATCHER,where “pattern” represents the searched pattern and “text” represents the text we search to find this pattern.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The result will be “abap_true” if the search was successfully finalized:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
cl_abap_matcher &amp;nbsp;=&amp;gt; contains &amp;nbsp;(pattern = lv_firstnametext = &amp;lt; fs_person &amp;gt; firstname )= abap_true.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 each successful search,we insert the respective records in the internal
 table itab.Then,we populate with these values the node bound at the 
table where the results are displayed.&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;529-bapi-as-a-model&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;BAPI as a Model&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;BAPI as a Model&lt;/b&gt;&lt;br /&gt;
BAPI
 are standard SAP interfaces, defined as methods for the business object
 types that can be used in the business data exchange among the SAP 
components, and among the SAP and the non SAP components. In our 
example, we use the YFM_SEARCH_CANDIDATE Function Module to create a 
simple BAPI example that we use as a model in a WD component. To be able
 to do this, we should firstly make some changes at the Function Module 
level.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating a BAPI&lt;/b&gt;&lt;br /&gt;
We
 create a new Function Group, where we copy the YFM_SEARCH_CANDIDATE and
 rename it YBAPI_YCANDIDATE_SEARCH. For a BAPI, we have a name 
convention BAPI_&amp;lt;name_object_type&amp;gt;_&amp;lt;method_name&amp;gt;. In case of
 asearch( ) BAPI, which reads the details for the object type 
YCANDIDATE, the name of the associated Function Module is 
YBAPI_YCANDIDATE_SEARCH. In the Attributes tab of the Function Module, 
we have to activate the option Remote-Enabled Module.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;The&amp;nbsp;&lt;/b&gt;&lt;b&gt;remoteenabled module&amp;nbsp;&lt;/b&gt;&lt;b&gt;option – RFC&lt;/b&gt;&lt;b&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After this, we create a structure in the ABAP Dictionary with the same components as our YPERSON table.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Structure YBAPI_YPERSON&lt;/b&gt;&lt;br /&gt;
We
 use this structure to define our parameters id_candidate type YBAPI_ 
YPERSON-ID_PERSON and itab LIKE YBAPI_YPERSON. Now, we have to make 
another change, because we cannot use exceptions anymore.&lt;br /&gt;
RAISE EXCEPTION TYPE ycx_exception_t100_txt EXPORTING&lt;br /&gt;
textid = ycx_exception_t100_txt=&amp;gt;ycx_no_candidate&lt;br /&gt;
id_candidate = id_candidate.&lt;br /&gt;
In
 order to return a message in case no records exist in the database 
table YPERSON with the specified ID, we use an export Return parameter 
for returning the exception messages to the calling application. With 
this Return parameter, based on the reference structure BAPIRET2, we are
 able to record and classify all the possible errors that may occur. The
 structure BAPIRET2 has the structure presented.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;The BAPIRET2 structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We can fill this structure via the Function Module BALW_BAPIRETURN_GET2 .&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; CALL FUNCTION &#39;BALW_BAPIRETURN_GET2&#39;
  EXPORTING
  type =
  cl =
  number =
  * PAR1 = &#39; &#39;
  * PAR2 = &#39; &#39;
  * PAR3 = &#39; &#39;
  * PAR4 = &#39; &#39;
  * LOG_NO = &#39; &#39;
  * LOG_MSG_NO = &#39; &#39;
  * PARAMETER = &#39; &#39;
  * ROW = 0
  * FIELD = &#39; &#39;
  * IMPORTING
  * RETURN&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Pattern for BALV_BAPIRETURN_ GET2&lt;/b&gt;&lt;br /&gt;
The Listing shows the Function Module structure. Function module&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;FUNCTION ybapi_ycandidate_search .
  *&quot;----------------------------------------------------------------------
  *&quot;*&quot;Global Interface:
  *&quot; IMPORTING
  *&quot; VALUE(ID_CANDIDATE) TYPE YBAPI_YPERSON-ID_PERSON
  *&quot; TABLES
  *&quot; ITAB STRUCTURE YBAPI_YPERSON OPTIONAL
  *&quot; RETURN STRUCTURE BAPIRET2 OPTIONAL
  *&quot;----------------------------------------------------------------------
  DATA msg_id_candidate LIKE sy-msgv1.
  CLEAR msg_id_candidate.
  REFRESH: return, itab.
  SELECT *
  FROM yperson
  INTO TABLE itab
  WHERE id_person = id_candidate.
  IF sy-subrc &amp;lt;&amp;gt; 0.
  msg_id_candidate = id_candidate.
  CALL FUNCTION &#39;BALW_BAPIRETURN_GET2&#39;
  EXPORTING
  type = &#39;E&#39;
  cl = &#39;YCL_T100_MSG&#39;
  number = &#39;000&#39;
  par1 = msg_id_candidate
  IMPORTING
  return = return.
  APPEND return.
  ELSE.
  APPEND return.
  ENDIF.
  ENDFUNCTION.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we can see, instead of raising an exception in case we don’t find any 
records with the specified ID, we use the BALW_BAPIRETURN_GET2 Function 
Module to fill the structure BAPIRET2. We have used the defined 
YCL_T00_MSG message class number 000, and we have replaced the parameter
 placeholder with the value inserted by the user as a candidate ID. 
After saving and activating, we can release our Function Module: 
Function Module ! Release ! Release. As result of our RELEASE action, 
we’ll get a message of YBAPI_YCANDIDATE_SEARCH type. By using the SWO1 
(Business Object Builder) transaction, we create an object named 
YCANDIDATE.&lt;br /&gt;
&lt;input height=&quot;179&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%20112/20-Creating-the-object-candidate.png&quot; type=&quot;image&quot; width=&quot;578&quot; /&gt;&lt;br /&gt;
&lt;b&gt;Creating the object candidate&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We add a Method named SEARCH: Utilities ! API Methods ! Add Method.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Creating the API method&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 have to release our object. We choose from the menu Edit ! Change 
Release Status ! Object Type ! To model. We make the same steps for To 
implement and To release, and the same steps for Object Type Component. 
After releasing the object, we can test it.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Testing the BAPI&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Using
 the Created BAPI as a Model We create a WD component named Y_BAPI, 
where we use the created BAPI as a model to obtain the data required 
from the database table YPERSON.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;br /&gt;
&lt;b&gt;WD component structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 right-clicking on the WD component name, we choose from the contextual 
menu Create ! Service call. The Web Dynpro Wizard is open, creating an 
appropriate context structure and generating a method that contains the 
required coding for the service call.&lt;br /&gt;
The Wizard steps are:&lt;br /&gt;
l Start&lt;br /&gt;
l Select controller – we use the existing controller&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Selecting the controller&lt;/b&gt;&lt;br /&gt;
l Select Service Type – we select the Function Module.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Selecting the service type&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
l
 Select Service – we specify only the name of the YBAPI_YCANDIDATE_ 
SEARCH Function Module; the Destination box remains unfilled (blank). In
 this way, the Function Module will be locally called&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;br /&gt;
&lt;b&gt;Selecting the service&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
l
 Adapt Context – here, we can choose which object type we want to use to
 represent the service function parameters in the WD controller: as a 
parameter, as a controller attribute or as a context node or context 
attribute.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;br /&gt;
&lt;b&gt;Adapting the context&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
l Specify Method Name – we have to specify the name of the generated method that shall execute the service.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Specifying the method name&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
l Generate Controller&lt;br /&gt;
After
 the last step, we press the COMPLETED button and the wizard ends. I 
generates the COMPONENTCONTROLLER context and the proper method EXECUTE_
 YBAPI_YCANDIDATE_SEARC that shall execute the service&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;input height=&quot;295&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%20112/29-The-generated-context-and-method.png&quot; type=&quot;image&quot; width=&quot;595&quot; /&gt;&lt;/b&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;The generated context and method&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 node IMPORTING contains the ID_CANDIDATE attribute in which is stored 
the value of the ID we are looking for. The node CHANGING contains the 
two nodes ITAB and RETURN. The node ITAB holds the information about the
 candidate with the searched ID. The node RETURN has the structure 
BAPIRET2; we need to use its message attribute to display the return 
messages on the screen for the end user. The View layout has the 
structure presented.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;View layout and view context&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user presses the button to look for a candidate, the Framework triggers the event handler method onactionsearch.&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;METHOD onactionsearch.
  wd_comp_controller-&amp;gt;execute_ybapi_ycandidate_searc( ).
  DATA: lr_bapi_node TYPE REF TO if_wd_context_node,
  lr_changing TYPE REF TO if_wd_context_node,
  lr_return TYPE REF TO if_wd_context_node.
  DATA lv_bapi_message TYPE bapi_msg.
  lr_bapi_node = wd_context-&amp;gt;get_child_node( `YBAPI_YCANDIDATE_SEA` ).
  lr_changing = lr_bapi_node-&amp;gt;get_child_node( `CHANGING` ).
  lr_return = lr_changing-&amp;gt;get_child_node( `RETURN` ).
  lr_return-&amp;gt;get_attribute( EXPORTING name = &#39;MESSAGE&#39;
  IMPORTING value = lv_bapi_message ).
  IF lv_bapi_message IS NOT INITIAL.
  DATA:lr_api_controller TYPE REF TO if_wd_controller,
  lr_message_manager TYPE REF TO if_wd_message_manager.
  lr_api_controller ?= wd_this-&amp;gt;wd_get_api( ).
  lr_message_manager = lr_api_controller-&amp;gt;get_message_manager( ).
  lr_message_manager-&amp;gt;report_error_message(
  message_text = lv_bapi_message ).
  ENDIF.
  ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 mode of calling the BAPI is encapsulated in the method generated by the
 wizard in COMPONENTCONTROLLER. All we have to do is to call this 
method: wd_comp_controller!execute_ybapi_ycandidate_searc( ). When the 
searched ID doesn’t exist in the database table YPERSON, we show the 
proper error message stored in the attribute message of the RETURN node.
 Figure shows the runtime result.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;br /&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;776-web-service&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Web Service&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 Application Server ABAP can be a Web Service provider and a Web Service
 required. The basic architecture of the Web Service Framework of AS 
ABAP.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Basic web service framework architecture&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;205&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/06C.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 Web Service provider creates the WS and its definition. After this,it 
can publish the WSDL document to a Universal Description Discovery and 
Integration (UDDI) service directory, or it can create a direct exchange
 of WSDL document with the WS client.The Web Service Description 
Language(WSDL)is a special form of XML that contains all the information
 required by a client to connect with the Web Service provider and all 
the required information to programmatically work with the respective 
service (e.g.number of parameters passed to the service,structure of the
 returned result,type of the used parameters).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 can store the released Web Services in an UDDI registry. There are many
 organizations that offer web services we can use for free.Such free Web
 Services we can find. The web address of the public UDDI service 
directory for SAP we can find.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
With
 the ABAP Workbench,we have many options to create a Web Service 
(inside-out type).We can use, for example, a BAPI, a Function Module,a 
Function Group or an Interface message.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 our case,we want to provide the same search option for our YPERSON 
database table.A Function Module implementation will be used as a Web 
Service endpoint.After Function Module implementation,we create the Web 
Service definition with only a few mouse clicks,we test it and we 
consume it in the Web Dynpro ABAP,as a model for our WD component.In our
 case,we don’t focus on the WS security,but we only create a small 
example required to exemplify how we can consume a Web Service in the 
Web Dynpro ABAP.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;74&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/06CC.png&quot; style=&quot;border: none;&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Creating the Web Service&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&amp;nbsp;First,we
 copy the Function Module used to search for a candidate and we slightly
 modify it(Listing ).To be possible to further transform it into a 
RFC-enabled Module,in the Attributes tab of the Function Module,we have 
to activate the option Remote-Enabled Module.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we have mentioned before, no exception classes can be used in the 
RFCenabled FunctionModule.This is the reason why,for the purpose of this
 example, we have chosen to create a non class exception:NO_ID.To manage
 the exceptions that may occur,we can use the BAPIRET2 structure similar
 to the latter example.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Listing Implementation of YFM_SEARCH_PERSON&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; FUNCTION YFM_SEARCH_PERSON.
 *&quot;------------------------------------------------------------------
 *&quot;*&quot;Local Interface:
 *&quot; IMPORTING
 *&quot; VALUE(ID_CANDIDATE)TYPE YPERSON-ID_PERSON
 *&quot; EXPORTING
 *&quot; VALUE(FIRSTNAME)TYPE YPERSON-FIRSTNAME
 *&quot; VALUE(LASTNAME)TYPE YPERSON-LASTNAME
 *&quot; VALUE(TELEPHONE)TYPE YPERSON-TELEPHONE
 *&quot; VALUE(AGE)TYPE YPERSON-AGE
 *&quot; VALUE(ID_COUNTRY)TYPE YPERSON-ID_COUNTRY
 *&quot; EXCEPTIONS
 *&quot; NO_ID
 *&quot;----------------------------------------------------------------------
 DATA wa_person TYPE yperson.
 SELECT SINGLE firstname lastname telephone age id_country
 INTO CORRESPONDING FIELDS OF wa_person
 FROM yperson
 WHERE id_person EQ id_candidate.
 if sy-subrc &amp;lt;&amp;gt; 0.
 raise no_id.
 endif.
 firstname = wa_person-firstname.
 lastname = wa_person-lastname.
 telephone = wa_person-telephone.
 age = wa_person-age.
 id_country = wa_person-id_country.
 ENDFUNCTION.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Then,we transform our RFC into a Web Service.We have many possibilities to do this,as follows:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Right click on the&lt;b&gt;&amp;nbsp;FM&amp;nbsp;&lt;/b&gt;name and,from the contextual menu,we choose&amp;nbsp;&lt;b&gt;Create --&amp;gt; Web Service.&lt;/b&gt;&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;From Function Builder&amp;nbsp;&lt;b&gt;(Transaction SE37)&lt;/b&gt;, we choose from the menu&lt;b&gt;&amp;nbsp;Utilities --&amp;gt; More Utilities --&amp;gt; Create Web Services&lt;/b&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The Wizard steps are:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Object Type&lt;/b&gt;&amp;nbsp;– we can choose the object type; in our case,the Web Service is a service provider.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Object type wizard step&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;121&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/000a.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;Service Provider -&amp;nbsp;&lt;/b&gt;we create a service provider for an existing ABAP Object (Inside Out).&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Service provider wizard step&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;90&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/000aa.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;Object type -&amp;nbsp;&lt;/b&gt;here,we enter a name and a short description for our Web Service,and we can choose the type of the Endpoint use.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Object type wizard step&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;102&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/000aaa.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;Choose Endpoint -&amp;nbsp;&lt;/b&gt;here,we can enter the name of the Function Module that we want to use as endpoint for our Web Service.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Choosing the endpoint wizard step&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;43&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/000aaaa.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;Configure Service -&amp;nbsp;&lt;/b&gt;here,we
 choose an Authorization profile.As we have mentioned above,for the 
purpose of this example we choose the profile PRF_DT_IF_SEC_NO.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Configuring the service wizard step&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;41&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/000aaaaa.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Enter Package/Request -&amp;nbsp;&lt;/b&gt;here, we have to enter the name of the package Y_WEBDYNPRO and the Transport Request.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Complete&lt;/b&gt;it’s
 the last step in the wizard,where we are informed that the Web Service 
with the desired name will be generated after pressing the “Complete” 
button.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The generated service definition&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;230&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/0v.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Web Service Configuration&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To perform the necessary configuration tasks,we use the SOA Manager,accessible through the&amp;nbsp;&lt;b&gt;SOAMANAGER&lt;/b&gt;&amp;nbsp;transaction.By
 using “Single Service Administration”,we can search for our created WS 
and configure it(Fig).We can find this option in the tab: “Application 
and Scenario Communication”.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Searching for our web service&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;207&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/0vv.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 pressing the“Apply Selection” button,we can see the Details of our 
Service Definition.Using the“Configurations”tab,we can create a Service 
and a Service- Endpoint for our Service Definition&lt;b&gt;&amp;nbsp;YWEB_SERVICE&lt;/b&gt;.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Details of service definition configurations&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;267&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/0vvv.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Each
 Service Definition may have more than one Service and,for each Service,
 we can create more than one Endpoint.Each Service-Endpoint can 
configure a service in a different way.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Testing the Web Service&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After configuring our endpoint, we save it and go into the “Overview”tab.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Details of service definition overview&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;167&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/0w.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
From
 here,we choose the link “Open WSDL document for selected binding”and we
 copy the URL address from the window that appears. By selecting the 
link “Open Web Service navigator for selected binding”,the Web Service 
test page opens and we can test our new created Web Service after 
pressing the “Test” button.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Web service navigator&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;153&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/0ww.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 case an error occurs,we have to configure the J2EE server access 
information (the host name and a port number),because the Web Service 
test page (Web Service Navigator) runs on Java stack. To do this,we can 
use the same SOAMANAGER transaction --&amp;gt; the tab&lt;b&gt;Technical Configuration --&amp;gt; the option System Global&lt;/b&gt;&amp;nbsp;Settings.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Testing our web service request/response&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;217&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/0www.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Consuming the Web Service in Web Dynpro&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 be able to consume the created Web Service into the Web Dynpro 
application, we have to firstly create a Proxy.To create it, we can use 
the same Wizard as for the Web Service creation.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In this case, the Wizard steps are:&lt;br /&gt;
&lt;b&gt;Object type&lt;/b&gt;&amp;nbsp;Service Consumer.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Wizard object type step&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;130&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch12_44%281%29.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Select Source&lt;/b&gt;&amp;nbsp;offers the possibility to select the source of the WSDL document.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Wizard selected source step&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;130&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch12_44.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Select Source&lt;/b&gt;&amp;nbsp;here,we enter our Web Service’s URL.We can use copy and paste to take this URL from the SOAMANAGER transaction.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Wizard selected source step&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;122&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch12_46%281%29.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Enter Package/Request&lt;/b&gt;&amp;nbsp;we
 have to enter the package name, the prefix and the Workbench 
Request.Because,in the same time with the generation of the proxy 
class,there are also generated other development objects (e.g.Dictionary
 objects,classes and interfaces),it is recommended to generate these 
objects in a separate package (in our case, the Y_PROXY package).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Wizard enter package/request step&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;109&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/rrvv.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Complete&lt;/b&gt;&amp;nbsp;after the last step,theWizard generates the consumer proxy.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The consumer proxy&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;224&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch12_47.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Generated development objects&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;270&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch12_48.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Before pressing the RUN button to test our Consumer Proxy, we have to create a logical port by using the&lt;b&gt;&amp;nbsp;SOAMANAGER&lt;/b&gt;&amp;nbsp;transaction or the old&amp;nbsp;&lt;b&gt;LPCONFIG&lt;/b&gt;&amp;nbsp;transaction.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In the&lt;b&gt;&amp;nbsp;SOAMANAGER&lt;/b&gt;&amp;nbsp;transaction,in
 the same window where we searched for the Web Service,we can search now
 for a consumer proxy with the external name: “yweb_service”.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Searching for a consumer proxy&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;249&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch12_50.png&quot; type=&quot;image&quot; width=&quot;504&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 pressing the “Apply Selection” button, we open the field where we can 
create the Proxy Definition.Into the “Configurations” tab,we can create 
the Logical Port.In the next step,we have to create the Web Dynpro 
component to use the created Client Proxy.We create a Web Dynpro 
component named Y_WS_CONSUMER with a view named V_VIEW and a default 
window.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using the Service Call(similar to the “BAPI” example),we can integrate 
our Client Proxy into our WD application. In this case,we have to use 
the “Web Service Proxy” option as service type.Then,we have to enter the
 proxy class name,the public method and the logical port.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Because
 in the latter example we showed how to use this Wizard, now we are 
going to show,through this example,how to use the proxy without the 
Wizard’s help.In case we have more complex structures, it happens that 
Wizard generates only one attribute instead of a node with attributes.In
 this case,we have to make manually the adequate modifications.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 V_VIEW view context and the layout are presented.&amp;nbsp;The ID_PERSON 
attribute is of the YPERSON-ID_PERSON type and shall be used to maintain
 the ID of the searched competitor. The Person child node has the 
YPERSON dictionary structure,so here we are going to find the data about
 the searched competitor: his first name,last name,telephone,age and his
 country id.In the View Layout,we have inserted the UI elements: Group, 
InputField,Label and Table.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View context und view layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;215&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch12_51.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user presses the Search button,the Framework triggers the event handler method onactionsearch.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactionsearch event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD onactionsearch .
 DATA: lr_node TYPE REF TO if_wd_context_node,
 lr_subnode TYPE REF TO if_wd_context_node,
 ls_subnode TYPE wd_this-&amp;gt;element_person,
 lv_id_person TYPE yperson-id_person.
 DATA: obj1 TYPE REF TO ysco_yweb_service,
 obj2 TYPE REF TO cx_ai_system_fault,
 ls_input TYPE ysyfm_search_person,
 ls_output TYPE ysyfm_search_personresponse.
 lr_node = wd_context-&amp;gt;get_child_node(&#39;SEARCH_PERSON&#39;).
 lr_subnode = lr_node-&amp;gt;get_child_node(&#39;PERSON&#39;).
 lr_node-&amp;gt;get_attribute( EXPORTING name = &#39;ID_PERSON&#39;
 IMPORTING value = lv_id_person).
 TRY.
 CREATE OBJECT obj1.
 CATCH cx_ai_system_fault INTO obj2.
 ENDTRY.
 ls_input-id_candidate = lv_id_person.
 TRY.
 CALL METHOD obj1-&amp;gt;yfm_search_person
 EXPORTING
 input = ls_input
 IMPORTING
 output = ls_output.
 CATCH cx_ai_system_fault INTO obj2.
 CATCH cx_ai_application_fault .
 ENDTRY.
 IF ls_output IS INITIAL.
 DATA lr_api_controller TYPE REF TO if_wd_controller.
 DATA lr_message_manager TYPE REF TO if_wd_message_manager.
 lr_api_controller ?= wd_this-&amp;gt;wd_get_api( ).
 lr_message_manager = lr_api_controller-&amp;gt;get_message_manager( ).
 lr_message_manager-&amp;gt;report_exception(message_object = obj2).
 ELSE.
 ls_subnode-firstname = ls_output-firstname.
 ls_subnode-lastname = ls_output-lastname.
 ls_subnode-telephone = ls_output-telephone.
 ls_subnode-age = ls_output-age.
 ls_subnode-id_country = ls_output-id_country.
 lr_subnode-&amp;gt;set_static_attributes(ls_subnode).
 ENDIF.
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When we use proxy objects in methods or programs we can use drag and drop to ease the code generation.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Drag and drop for code generation&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;198&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch12_52.png&quot; type=&quot;image&quot; width=&quot;512&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we can see,we have declared a reference variable for proxy (obj1 TYPE 
REF TO ysco_yweb_service) and two local structures to set the input 
parameter (ls_input TYPE ysyfm_search_person) and to get the response 
(ls_output TYPE ysyfm_search_personresponse).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After creating the proxy,we call it and pass the response values in the corresponding child node “PERSON”.At runtime,we have.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;142&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch12_53.png&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/8770938528774420453/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/webdynpromodel-this-chapter-presents.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/8770938528774420453'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/8770938528774420453'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/webdynpromodel-this-chapter-presents.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-4449314446220049266</id><published>2012-09-22T23:00:00.001-07:00</published><updated>2012-09-22T23:00:11.546-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h1 style=&quot;background-color: white; background-image: none; background-position: 0% 0%; background-repeat: no-repeat no-repeat; border: none; color: #0099ff; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; height: 40px; line-height: 24px; margin: 0px; padding: 0px; text-align: justify;&quot;&gt;
&lt;a href=&quot;http://adf.ly/CUY1a&quot; target=&quot;_blank&quot;&gt;ALV and Select Options&lt;/a&gt;&lt;/h1&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
The
 following section details and describes the modality to use the 
standard components ALV and SO as assistance,in creating our own Web 
Dynpro applications.We start from a simple example,where ALV is used to 
display the data in a table,and we end by using both components for 
advanced search and display the searched data, disposing of the extra 
functionalities offered by ALV (e.g. exporting data in Excel).&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
SAP
 List Viewer(ALV) is a tool we c.an use to display data in a 
two-dimensional table,in a hierarchical-sequential list or in a tree 
structure.It allows us to use it in a large range of applications,from 
the classical Dynpros to the Web Dynpro.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
In our examples,we use inWeb Dynpro the ALV component SALV_WD_TABLE to display data in a two-dimensional table.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
Through
 “Select Options”,we can benefit of complex searching possibilities.For 
example,we use the WDR_SELECT_OPTIONS component to create a selection 
option screen that offers,&lt;br /&gt;
in the same time, four standard buttons:Cancel,Reset, Done and Check.&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;557-sap-list-viewer&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;SAP List Viewer&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In this subchapter,through some examples, we will meet the SALV_WD_TABLE standard component and its advantages.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Simple ALV Example&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create a WD component that displays all the information about 
candidates by using the SALV_WD_TABLE,ALV component. To be able to use 
this component, we have to firstly define a usage. Figure shows the WD 
component structure and the usage definition&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;168&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_1.jpg&quot; type=&quot;image&quot; width=&quot;515&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the COMPONENTCONTROLLER,we create a node PERSON with thedictionary 
structure YPERSON,&amp;nbsp;Singleton, Cardinality 0...n and supply function 
SUPPLY_PERSON.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context node and supply function&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;170&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_2.jpg&quot; type=&quot;image&quot; width=&quot;512&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;72&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_3.jpg&quot; type=&quot;image&quot; width=&quot;517&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this case,we have chosen to use a ViewContainerUIElement to embed the 
Table view of the SALV_WD_TABLE component,but we can embed a view or an 
interface view directly in a Window if we don’t need additional UI 
elements.The table view is the central view of an ALV component and 
represents the container in which the ALV output is displayed.Figure 
shows the Window structure and the selected Interface View.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Window structure and interface views of the ALV&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;140&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_4.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&amp;nbsp;To be able to create a reverse mapping, we firstly create an interface controller usage.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Interface controller usage&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;194&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_5.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Then,we need to provide the DATA context node with the values from the PERSON context node.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context mapping&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;170&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_6.jpg&quot; type=&quot;image&quot; width=&quot;454&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
DATA context node must contain the structure and data of the ALV output.The runtime result is presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime result&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;224&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_7.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As we have mentioned above,the ALV component offers new capabilities,as follows:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Exporting the data displayed into Microsoft Excel,by using the Export button&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Printing a version in PDF format,by using the Print Version button&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Simple data filter, by using the Filter option&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Complex settings, by using the Settings option&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 settings option offers the capability to hide some columns, to create 
complex searches and complex filters,to change the display mode and to 
create a print version. We can save the changes we made and assign them 
to the current user as an initial view.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Settings option&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;236&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_8.jpg&quot; type=&quot;image&quot; width=&quot;449&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;ALV settings&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;174&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_9.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;ALV Configuration Model&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 configure an ALV output,we can use: table settings, column 
settings,field settings,standard function settings or 
application-specific function settings.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By using the&amp;nbsp;&lt;b&gt;transaction SE24&lt;/b&gt;,&lt;br /&gt;
we
 can see the structure of the CL_SALV_WD_CONFIG_TABLE. Here,&amp;nbsp;we find the
 interfaces and their methods to be used to manipulate the ALV output.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;CL_SALV_WD_CONFIG_TABLE&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;295&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_10.jpg&quot; type=&quot;image&quot; width=&quot;514&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Manipulating the ALV Output:Deleting Rows, Hiding Columns,Table Designing,Sorting&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 want to manipulate the ALV output to show only five rows, to use the 
Table Design Alternating to sort table ascending by the id_country field
 and to hide the first two columns, Client and ID.&amp;nbsp;We use the below 
example, where we make some changes. We define a usage at the V_VIEW 
level.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Defining the usage at the View level&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;216&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_11.jpg&quot; type=&quot;image&quot; width=&quot;517&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The wdDoInit Hook method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  METHOD wddoinit .
  DATA: lr_cmp_usage TYPE REF TO if_wd_component_usage,
  lr_salv_wd_table TYPE REF TO iwci_salv_wd_table,
  lr_table TYPE REF TO cl_salv_wd_config_table,
  lr_field TYPE REF TO cl_salv_wd_field.
  lr_cmp_usage = wd_this-&amp;gt;wd_cpuse_alv_usage( ).
  IF lr_cmp_usage-&amp;gt;has_active_component( ) IS INITIAL.
  lr_cmp_usage-&amp;gt;create_component( ).
  ENDIF.
  lr_salv_wd_table = wd_this-&amp;gt;wd_cpifc_alv_usage( ).
  lr_table = lr_salv_wd_table-&amp;gt;get_model( ).
  lr_table-&amp;gt;if_salv_wd_column_settings~delete_column(&#39;MANDT&#39; ).
  lr_table-&amp;gt;if_salv_wd_column_settings~delete_column(&#39;ID_PERSON&#39;).
  lr_table-&amp;gt;if_salv_wd_table_settings~set_design(cl_wd_table=&amp;gt;e_designalternating
  ).
  lr_table-&amp;gt;if_salv_wd_table_settings~set_visible_row_count(5 ).
  lr_field =
  lr_table-&amp;gt;if_salv_wd_field_settings~get_field(&#39;ID_COUNTRY&#39;).
  lr_field-&amp;gt;if_salv_wd_sort~create_sort_rule( ).
  ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we can see,we have used the method GET_MODEL from the interface 
IWCI_SALV_WD_TABLE.This method has no importing parameters and returns a
 complete Configuration Model&amp;nbsp;(CL_SALV_WD_CONFIG_TABLE).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 ALV component is partly based on the Table UI element.To set the Table 
design and the number of visible rows,we use the methods set_design 
and,respectively,&amp;nbsp;set_visible_row_count from the interface 
IF_SALV_WD_TABLE_SETTINGS.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
If
 we look at the dynamic programming of a Table UI element,&amp;nbsp;we can see 
that the property for the Table design alternating is cl_wd_table) 
e_designalternating, and the property VISIBLE_ROW_COUNT is an integer 
number(in our case, 5).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 delete the two columns, we use the method delete_column from 
IF_SALV_WD_COLUMN_SETTINGS interface, and to create asort rule we use 
the method&amp;nbsp;create_sort_rule from the IF_SALV_WD_INTERFACE interface.&lt;br /&gt;
The default sorting rule is:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
sort_order = if_salv_wd_c_sort =&amp;gt; sort_order_asscending&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;192&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_12.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Changing the Cell Editor&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 we know,the content of a cell to be displayed is specified by the table
 cell editor of the column. In the default mode,the table cells are 
created by using the TextView UI element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 change the cell editor for the EU Countries column.In this case,we use a
 linkToURL UI element that opens the web page where we can find all the 
information about the EU countries.&amp;nbsp;To do this,we need to add some 
coding at the below example.We need to dynamically create a linkToURL UI
 element. The Listing shows the additional coding in the wdDoInit Hook 
method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Changing the cell edito&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  DATA:lr_column TYPE REF TO cl_salv_wd_column,
  lr_link_to_url TYPE REF TO cl_salv_wd_uie_link_to_url.
  lr_column = lr_table-&amp;gt;if_salv_wd_column_settings~get_column(
  &#39;ID_COUNTRY&#39;).
  CREATE OBJECT lr_link_to_url.
  lr_link_to_url-&amp;gt;set_text_fieldname(&#39;ID_COUNTRY&#39;).
  lr_link_to_url-&amp;gt;set_reference(
  lr_column-&amp;gt;set_cell_editor(lr_link_to_url).&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;348&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_13.jpg&quot; type=&quot;image&quot; width=&quot;513&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Adding a Header for the ALV Table&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 an ALV table,we can add a header,too.To do this,we have to use the 
method &amp;nbsp;CREATE_HEADER of the IF_SALV_WD_TABLE_SETTINGS&amp;nbsp;interface.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Header for ALV tabl&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  DATA:lr_settings_alv_table TYPE REF TO if_salv_wd_table_settings.
  DATA: lr_alv_header TYPE REF TO cl_salv_wd_header.
  lr_settings_alv_table ?= lr_table.
  lr_alv_header = lr_settings_alv_table-&amp;gt;get_header( ).
  lr_alv_header-&amp;gt;set_text(&#39;ALV Header&#39;).&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Header for ALV table&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;201&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_14.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Setting the Top of List and the End of List for the ALV Output&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 an ALV output,we can create a top of list (header text) and an end of 
list (footer text).As we have seen, the ALV component we have used 
provides two context nodes,named TOP_OF_LIST and END_OF_LIST.These 
context nodes hold the data for header and footer. Each context node 
contains an attribute named&amp;nbsp;CONTENT of CL_SALV_FORM_ELEMENT type.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To be able to access these context nodes from our view V_VIEW, we have to create a context mapping.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context mapping&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;216&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_15.jpg&quot; type=&quot;image&quot; width=&quot;516&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Then,we have to define the basic layout and to create the elements. In our case,we have chosen to use the Row type layout,&lt;br /&gt;
class CL_SALV_FORM_LAYOUT_ FLOW.&amp;nbsp;We create a text element for the header and a text element for the footer.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Header and footer for an ALV table&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  DATA lr_node_top_of_list TYPE REF TO if_wd_context_node.
  DATA lr_node_end_of_list TYPE REF TO if_wd_context_node.
  DATA lr_flow_top TYPE REF TO cl_salv_form_layout_flow.
  DATA lr_flow_end TYPE REF TO cl_salv_form_layout_flow.
  DATA lr_text_top TYPE REF TO cl_salv_form_text.
  DATA lr_text_end TYPE REF TO cl_salv_form_text.
  CREATE OBJECT lr_flow_top.
  lr_text_top = lr_flow_top-&amp;gt;create_text(
  position = 1
  text = &#39;Header Text&#39;
  tooltip = &#39;Top of list&#39;
  ).
  CREATE OBJECT lr_flow_end.
  lr_text_end = lr_flow_end-&amp;gt;create_text(
  position = 1
  text = &#39;Footer Text&#39;
  tooltip = &#39;End of list&#39;
  ).
  lr_node_top_of_list = wd_context-&amp;gt;get_child_node( &#39;TOP_OF_LIST&#39;).
  lr_node_top_of_list-&amp;gt;set_attribute(value = lr_flow_top
  name = &#39;CONTENT&#39;).
  lr_node_end_of_list = wd_context-&amp;gt;get_child_node( &#39;END_OF_LIST &#39;).
  lr_node_end_of_list-&amp;gt;set_attribute(value = lr_flow_end
  name = &#39;CONTENT&#39;).
  lr_table-&amp;gt;
  if_salv_wd_table_settings~set_top_of_list_visible(value = abap_true).
  lr_table-&amp;gt;
  if_salv_wd_table_settings~set_end_of_list_visible value = abap_true).&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;211&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_16.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Adding a Self-Defined UI Element to the ALV Toolbar&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
On the ALV toolbar,we can add our own UI elements. We add a linkToAction UI element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Adding a linkToAction UI element to the ALV toolbar&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  DATA lr_linktoaction TYPE REF TO cl_salv_wd_fe_link_to_action.
   CREATE OBJECT lr_linktoaction.
   lr_linktoaction-&amp;gt;set_text(&#39;Our self-defined linkToAction&#39;).
   DATA linktoaction TYPE REF TO cl_salv_wd_function.
   linktoaction = lr_table-&amp;gt;
  if_salv_wd_function_settings~create_function(id =&#39;LTA&#39;).
  linktoaction-&amp;gt;set_editor(lr_linktoaction).&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;197&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_17.jpg&quot; type=&quot;image&quot; width=&quot;513&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To transform our linkToAction into another UI element,we have to change the editor type from the linkToAction&lt;b&gt;&amp;nbsp;(CL_SALV_WD_FE_LINK_TO_ACTION)&lt;/b&gt;&amp;nbsp;into another allowed type.For example,to have a button editor,we have to changee only the class name: CL_SALV_FE_&lt;b&gt;BUTTON&lt;/b&gt;.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When
 the user presses this link,we have to trigger an event handler 
method.As we can see,we have not defined an action for this link. To 
know the UI element that was pressed,we use the ON_FUNCTION event.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We create an event handler method named LINKTOACTION_ACTION and we choose the event ON_FUNCTION.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Event handler method for our self-defined linkToAction&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;281&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_18.jpg&quot; type=&quot;image&quot; width=&quot;516&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
If our link with the ID = “LTA” is pressed,a statement block is executed.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Event handler method&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;262&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_19.jpg&quot; type=&quot;image&quot; width=&quot;521&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;558-select-options&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Select Options&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create a WD component that offers complex possibilities to search for a
 candidate.To be able to use these complex search possibilities,we have 
used the WDR_SELECT_OPTIONS component.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Figure shows the WD component structure and the usage definition.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The WD component structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;175&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_20.jpg&quot; type=&quot;image&quot; width=&quot;515&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create,in Context view,the node PERSON with the same&amp;nbsp;structure 
(Cardinality 0...n, dictionary structure YPERSON, Singleton, &amp;nbsp;without 
supply function).&lt;br /&gt;
In View Layout,we have to insert a View 
Container UIElement required to integrate the interface view 
WND_SELECTION_SCREEN of the Select Option component.Besides this UI 
element, we need a Button and a Table UI element.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context view and view layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;155&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_21.jpg&quot; style=&quot;border: none;&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;How to define the usage&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;219&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_22.jpg&quot; type=&quot;image&quot; width=&quot;517&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 create two attributes: M_HANDLER type ref to IF_WD_SELECT_ OPTIONS and 
M_WD_SELECT_OPTIONS type ref to IWCI_WDR_SELECT_ OPTIONS.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Attributes&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;157&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_23.jpg&quot; type=&quot;image&quot; width=&quot;521&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 use the wdDoInit Hook method to instantiate the used component 
WDR_SELECT_OPTIONS,&amp;nbsp;in order to dynamically create a range table and to 
add a selection screen Field.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The wdDoInit Hook method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt; METHOD wddoinit .
 DATA:
 rt_range_table TYPE REF TO data,
 lv_tooltip TYPE string VALUE&#39;Search for id&#39;,
 lv_abap_bool TYPE boolean VALUE abap_true,
 lr_componentcontroller TYPE REF TO ig_componentcontroller,
 lr_cmp_usage TYPE REF TO if_wd_component_usage.
 lr_cmp_usage = wd_this-&amp;gt;wd_cpuse_select_options( ).
 IF lr_cmp_usage-&amp;gt;has_active_component( ) IS INITIAL.
 lr_cmp_usage-&amp;gt;create_component( ).
 ENDIF.
 wd_this-&amp;gt;m_wd_select_options =
 wd_this-&amp;gt;wd_cpifc_select_options( ).
 wd_this-&amp;gt;m_handler =
 wd_this-&amp;gt;m_wd_select_options-&amp;gt;init_selection_screen( ).
 rt_range_table =
 wd_this-&amp;gt;m_handler-&amp;gt;create_range_table(
 i_typename = &#39;YIDI&#39;).
 wd_this-&amp;gt;m_handler-&amp;gt;add_selection_field(
 i_id = &#39;ID_PERSON&#39;
 i_obligatory = lv_abap_bool
 it_result = rt_range_table
 i_tooltip = lv_tooltip
 i_value_help_type = if_wd_value_help_handler=&amp;gt;co_prefix_searchhelp
 i_value_help_id =&#39;YSH_ID_PERSON&#39;
  ).
 ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using the method INIT_SELECTION_SCREEN of the IWCI_WDR_SELECT_OPTIONS 
interface,we initialize the selection screen.After this,&amp;nbsp;we use the 
method CREATE_RANGE_TABLE of the IF_WD_SELECT_OPTIONS&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
interface
 to dynamically create a Range Table.&amp;nbsp;This method has three 
importing&amp;nbsp;parameters: I_TYPENAME type STRING,I_LENGTH type 
I,I_DECIMALS&amp;nbsp;type I and a returning parameter RT_RANGE_TABLE type ref to
 data.The I_TYPENAME is not optional;we use it to specify the data 
element for the LOW and HIGH component. The ID_PERSON has the data type 
YIDI.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Database table YPERSON&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;246&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_24.jpg&quot; type=&quot;image&quot; width=&quot;519&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
A
 Range Table has four components: SIGN,OPTION,LOW and SCREEN. It can be 
also created in the ABAP Dictionary,as special type of table types.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 method ADD_SELECTION_FIELD of the IF_WD_SELECT_OPTIONS&amp;nbsp;interface adds 
an additional Field to the Selection Screen. This method has many 
parameters, but only one is mandatory – I_ID.We have used the:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;i_id&lt;/b&gt;&amp;nbsp;parameter,of STRING type,to define the ID of the Selection Field&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;i_obligatory&lt;/b&gt;&amp;nbsp;parameter,of ABAP_BOOL type,to set the mandatory field&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;it_result&lt;/b&gt;&amp;nbsp;parameter,type ref to data, for reference to the Range table&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;i_tooltip&lt;/b&gt;,of STRING type, to create a quick info in a tooltip form&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;i_value_help_type&lt;/b&gt;, of type:IF_WD_VALUE_HELP_HANDLER)CO_PREFIX_NONE&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;to specify the type of the search help that we want to use&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;i_value_help_id&lt;/b&gt;&amp;nbsp;of
 WDY_VALUE_HELP_ID type,to specify the name of the search help that we 
use, or the name of the OVS (Object Value Selector) field ID_PERSON has 
associated the search helpwith the name YSH_ID_PERSON&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user presses the Search button,the Framework triggers the event handler method onactionsearch.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactionsearch event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  METHOD onactionsearch .
  DATA: l_node TYPE REF TO if_wd_context_node.
  DATA: rt_range_table TYPE REF TO data.
  DATA: it_yperson TYPE TABLE OF yperson.
  FIELD-SYMBOLS: &amp;lt;fs_id_person&amp;gt; TYPE ANY TABLE.
  rt_range_table = wd_this-&amp;gt;m_handler-&amp;gt;get_range_table_of_sel_field
  i_id = &#39;ID_PERSON&#39; ).
  ASSIGN rt_range_table-&amp;gt;* TO &amp;lt;fs_id_person&amp;gt;.
  CLEAR it_yperson.
  REFRESH it_yperson.
  SELECT * INTO CORRESPONDING FIELDS OF TABLE it_yperson
  FROM yperson
  WHERE id_person IN &amp;lt;fs_id_person&amp;gt;.
  l_node = wd_context-&amp;gt;get_child_node(name =`PERSON`).
  l_node-&amp;gt;bind_elements(it_yperson).
  ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 method GET_RANGE_TABLE_OF_SEL_FIELD of the IF_WD_ SELECT_OPTIONS 
interface has an importing parameter I_ID,&amp;nbsp;of STRING type,and returns 
the range table for the Selection Field – rt_range_table generic type 
data.&amp;nbsp;We define a field symbol typified as ANY TABLE and we generically 
dereference the data reference variable typed with data into our field 
symbol,through the dereferencing operator“-&amp;gt;*”.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 this, we select all the records that correspond to our search and pass 
these values in the corresponding attributes of the context node 
PERSON.&amp;nbsp;We have to embed the interface view WND_SELECTION_SCREEN into 
the ViewContainerUIElement.Now we are ready to run our application.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Embedding the view interface WND_SELECTION_SCREEN&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;158&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_25.jpg&quot; type=&quot;image&quot; width=&quot;515&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;193&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_26.jpg&quot; type=&quot;image&quot; width=&quot;513&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In default mode,Select Option is the interval between two values,but we can also use other Select options.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Selecting options&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;205&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_27.jpg&quot; type=&quot;image&quot; width=&quot;415&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As we have seen,the component WND_SELECTION_SCREEN offers four buttons to provide four functions:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Cancel&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Check&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Reset&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Execute&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We can hide one of these buttons by using the method SET_GLOBAL_OPTIONS of the IF_WD_SELECT_OPTIONS interface.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This method has four mandatory parameters of ABAP_BOOL type.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The SET_GLOBAL_OPTIONS parameters&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;169&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_28.jpg&quot; type=&quot;image&quot; width=&quot;514&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 want to extend our example,by hiding the buttons CANCEL, RESET,COPY and
 using the CHECK button to trigger the event handler method on_check.In 
this case,we don’t use our Search button.We implement the code in the 
on_check event handler method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
First, we must use,in the wdDoInit Hook method,the SET_GLOBAL_OPTIONS.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The wdDoInit Hook method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  METHOD wddoinit .
  ……………….
  wd_this-&amp;gt;m_handler =
  wd_this-&amp;gt;m_wd_select_options-&amp;gt;init_selection_screen( ).
  wd_this-&amp;gt;m_handler-&amp;gt;set_global_options(
  i_display_btn_cancel = abap_false
  i_display_btn_check = abap_true
  i_display_btn_reset = abap_false
  i_display_btn_execute = abap_false).
  ……………………
  ENDMETHOD&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 this,we create an event handler method named on_check and we register 
to the ON_CHECK event in the WDR_SELECT_OPTION&amp;nbsp;component.This event is 
triggered when the user clicks the CHECK button.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Registering to the ON_CHECK event&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 copy the entire coding from the onactionsearch event handler method in 
the on_check event handler method, and then we can run our application.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;202&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_30.jpg&quot; type=&quot;image&quot; width=&quot;514&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 create more than one selection screens Field,we have to create,into the
 wdDoInit Hook Method,as many range tables as many screen Fields we 
need,and then we have to extend the event handler method to be able to 
select the desired data.&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;559-alv-and-select-options&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;ALV and Select Options&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In this case,we use both components: WDR_SELECT_OPTIONS for Select option and SALV_WD_TABLE for ALV .&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Used components&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;217&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_31.jpg&quot; type=&quot;image&quot; width=&quot;516&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We copy the preceding WD component and rename it:Y_ALV_AND_SO.&lt;br /&gt;
Here we made only some changes:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Create the context node in the COMPONENTCONTROLLER&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Delete the Table UI element and insert a new View Container UI Element required to embed the Table interface view&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Define the required usages;&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Define the required context mappings;&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Check if the instance of the used component ALV_USAGE is made. If it doesn’t exist,we have to create one&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;View Layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;93&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_32.jpg&quot; type=&quot;image&quot; width=&quot;527&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Window structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;162&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_33.jpg&quot; type=&quot;image&quot; width=&quot;247&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;ALV and SO&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;252&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch13_34.jpg&quot; type=&quot;image&quot; width=&quot;449&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/4449314446220049266/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/alv-and-select-options-following.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/4449314446220049266'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/4449314446220049266'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/alv-and-select-options-following.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-1841051789555282160</id><published>2012-09-22T22:59:00.006-07:00</published><updated>2012-09-22T22:59:57.465-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h1 style=&quot;background-color: white; background-image: none; background-position: 0% 0%; background-repeat: no-repeat no-repeat; border: none; color: #0099ff; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; height: 40px; line-height: 24px; margin: 0px; padding: 0px; text-align: justify;&quot;&gt;
&lt;a href=&quot;http://adf.ly/CUXxz&quot; target=&quot;_blank&quot;&gt;Integrating a Web Dynpro Application into the SAP NetWeaver Portal&lt;/a&gt;&lt;/h1&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
The
 present chapter is mainly dedicated to the presentation of the modality
 to integrate the Web Dynpro applications in the portal,by using the SAP
 NetWeaver Portal.In the same time, we show how we can communicate 
between two applications by using the portal eventing (event sender and 
event receiver).&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
SAP
 NetWeaver Portal offers many possibilities to create its content,from 
Wizards and templates,to applications developed in Web Dynpro ABAP or 
Web Dynpro Java. Our scope is to integrate into the portal a created Web
 Dynpro ABAP application named y_ui_contextualpanel. After this, we 
create a Web Dynpro component that can send a portal event,a Web Dynpro 
component that can react to a portal event and,finally, we integrate the
 created applications in the Portal.&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
To access the portal,we have to navigate to the portal home page, and to use its initial screen to login.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
After
 a successful log-in (with a portal user that has the proper 
authorizations), we have to connect to the back-end ABAP system, because
 our Web Dynpro applications are developed in the ABAP system. For the 
first example, we create an iView required to integrate our application,
 we create a portal Role and we assign it to the user that needs to 
access the Web Dynpro application. In order to process the portal 
events,after we develop the Web Dynpro components and integrate the 
applications into the two iViews, we create a portal Page, we assign the
 iViews to our page, the page to a role and the role to the user.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
In
 order to communicate between two applications, even if these 
applications don’t use the same technologies or run on different 
systems,we can use the Portal Eventing (event sender and event 
receiver), with one condition: the applications to be integrated in two 
portal iViews.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
To
 realize the actual applications,we used a portal user that owns all the
 required authorizations,including the authorization to create roles and
 to assign by the created roles.In practice, such authorizations 
combined for one single user are used only for the testing systems;in 
the real systems,&lt;br /&gt;
the attributions of the administrators(e.g. user
 administrator,content administrator, system administrator) are very 
well defined (separated).In the same time,a user that doesn’t own 
administrative roles can access only those functionalities that have 
been assigned to him by the administrator.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;70&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch-14tt%281%29.jpg&quot; style=&quot;border: none;&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;759-creating-a-folder&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Creating a Folder&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 begin our exercise with the creation of a folder to be used to hold all
 the subsequently created portal objects. Into the Portal Catalogue,we 
create a folder named Book.To perform this operation,we have to open the
 contextual menu (by right-clicking on the folder where we want to 
create our folder)and to choose&amp;nbsp;&lt;b&gt;&amp;nbsp;New --&amp;gt; Folder&lt;/b&gt;.A wizard is open and we can create it.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating a new folder&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;317&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_1.jpg&quot; type=&quot;image&quot; width=&quot;361&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As we can see,we have to enter some information, as follows:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;Folder Name&lt;/b&gt;&amp;nbsp;– the name of the new created folder&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;Folder ID&lt;/b&gt;&amp;nbsp;– unique identifier for the new created folder&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;Master Language&lt;/b&gt;&amp;nbsp;– the original language for all the portal objects sub sequently created in this folder&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;Description&lt;/b&gt;&amp;nbsp;– brief description of the newly created folder&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 saving the information,the Framework generates the created book folder 
into the Portal Catalogue.In order to set other properties for it,we can
 use the available wizard.We have to mention that the book folder 
inherits the permissions from its parent folder.&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;760-connecting-to-the-back-end-abap-system&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Connecting to the Back-End ABAP System&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In the next step,we connect to the back-end ABAP system. To do this,we create a new System:&lt;b&gt;&amp;nbsp;System Administration --&amp;gt; System Configuration --&amp;gt; System Landscape&lt;/b&gt;&amp;nbsp;that
 opens the System Landscape Editor. Here, we navigate to our book folder
 and open the contextual menu,by right-clicking. By using&lt;b&gt;&amp;nbsp;New --&amp;gt; System (from template)&lt;/b&gt;, a Wizard is open and offers the possibility to define a new system through some easy steps.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating a new system&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;241&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_2.jpg&quot; type=&quot;image&quot; width=&quot;509&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In the first wizard step,we have to choose a template.&lt;br /&gt;
In the next step, we have to enter general properties, as follows: System Name, System ID, Master Language, Description.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Template selection&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;329&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_3.jpg&quot; type=&quot;image&quot; width=&quot;471&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;General properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;428&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_4.jpg&quot; type=&quot;image&quot; width=&quot;468&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 this,we can open the object editor and configure our system.We start 
with the Property Category named Web Application Server(Web AS).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Web application server property category&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;251&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_5.jpg&quot; type=&quot;image&quot; width=&quot;465&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For the next configuration,we navigate to the Connector Property Category required to realize the configuration:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;394&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_6.jpg&quot; type=&quot;image&quot; width=&quot;514&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the next configuration,we go to User Management Property Category 
required to set the mode the users log-on to our ABAP backend system&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;User management property category&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;292&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_7.jpg&quot; type=&quot;image&quot; width=&quot;510&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As
 Logon Methods,we have used the SAPLOGONTICKET. Each system must have at
 least one system alias, a name defined by the system 
administrator,required to refer the specified system.By using the System
 Aliases tool,we set an alias name for our ABAP backend system.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating an alias name for our ABAP system&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;242&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_8_.jpg&quot; type=&quot;image&quot; width=&quot;575&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Now,we are able to test our system configuration by using the Connection test tool.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Testing the connection to the ABAP system&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;286&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_9.jpg&quot; type=&quot;image&quot; width=&quot;575&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In case a system configuration for the ABAP back-end already exists,we don’t need to create another one.&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;761-creating-an-iview&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Creating an iView&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
An
 iView (integrated View) represents the smallest element we can create 
into the SAP NetWeaver Portal.In our case,we use an iView to integrate 
our Web Dynpro application.To create a new iView into our book folder,we
 have to navigate to the&amp;nbsp;&lt;b&gt;Content Administration --&amp;gt; Portal Content&lt;/b&gt;&amp;nbsp;and,by right-clicking on the folder name, we open the contextual menu (Fig).&lt;b&gt;The Portal Content Studio&lt;/b&gt;&amp;nbsp;represents the central environment we can use to create the portal content.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating an iView into our book folder&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;187&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_10.jpg&quot; type=&quot;image&quot; width=&quot;565&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Through a Wizard,we have the possibility to create a new iView, by using:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;iView template;&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Portal content;&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;Web Dynpro Java application.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We choose the first option – iView template, because our scope is to integrate the Web Dynpro ABAP application into the portal&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the next Wizard step,we can choose a template from the available 
template list.Here, we find many templates,e.g.URL iView (used to 
integrate a Website into the portal),SAP Transaction (iView used to show
 a SAP transaction into the portal), SAP Web Dynpro iView (required to 
integrate a Web Dynpro ABAP or Java&amp;nbsp;application)&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Selecting a template from the existing template list&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;442&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_11.jpg&quot; type=&quot;image&quot; width=&quot;471&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In the next step,we have the possibility to provide the iView&amp;nbsp;&lt;b&gt;General Properties&lt;/b&gt;,as follows:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;iView Name&lt;/b&gt;&amp;nbsp;– the iView name displayed in Portal Catalogue, etc.;&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;iView ID&lt;/b&gt;&amp;nbsp;– unique identifier for the created iView;&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;Master Language&lt;/b&gt;&amp;nbsp;– the original language the properties are generated in;&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;&lt;b&gt;Description&lt;/b&gt;&amp;nbsp;– optional description.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;iView general properties&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;367&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_12.jpg&quot; type=&quot;image&quot; width=&quot;406&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the next Wizard step, we can choose between the integration of a Web 
Dynpro ABAP application or a Web Dynpro Java application.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Web Dynpro for ABAP iView&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;106&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_14.jpg&quot; type=&quot;image&quot; width=&quot;511&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the last step,we enter the parameters of our Web Dynpro ABAP 
application. When we press the Finish button,the Framework starts to 
process the provided information and generates the proper iView. We can 
test our Web Dynpro application by choosing Preview from the contextual 
menu.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Web Dynpro parameters&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;354&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_16%281%29.jpg&quot; type=&quot;image&quot; width=&quot;509&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Testing the iView&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;160&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_15.jpg&quot; type=&quot;image&quot; width=&quot;513&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;800-creating-a-role-and-role-assignment&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Creating a Role and Role Assignment&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using a role,we can specify which services can be accessed by a user or
 a group of users,and we can define which content can be seen in the 
portal by the respective user or user group.In this example, we create a
 portal role. In the next chapter,we’ll see how we can create a role in 
the ABAP back-end system to grant delete capability for the database 
table YPERSON through a Web Dynpro application.&amp;nbsp;In the book folder, we 
create the role by using the contextual menu&amp;nbsp;&lt;b&gt;New --&amp;gt; Role&lt;/b&gt;.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating a role&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;274&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_17.jpg&quot; type=&quot;image&quot; width=&quot;502&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As a result,the Wizard generates a newly created role:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;83&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_18.jpg&quot; type=&quot;image&quot; width=&quot;250&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By using the Delta Link concept, we can assign the iView to our new role.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Assigning iView to role, by using the Delta Link concept&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;259&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_19.jpg&quot; type=&quot;image&quot; width=&quot;565&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As a result, we can see the created assignment:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;55&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_20.jpg&quot; type=&quot;image&quot; width=&quot;274&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Then,we assign the created portal role to our test user Gellert.In order to realize this assignation,&amp;nbsp;we access&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;User Administration --&amp;gt; Identity Management&lt;/b&gt;&amp;nbsp;and search for our test user.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Searching for a user&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;152&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_21.jpg&quot; type=&quot;image&quot; width=&quot;505&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 select the user and, as a result, in the lower part of the screen we 
can see the details of the selected user.By using the Modify button, we 
can add the newly created role to the respective user.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Assigning a portal role to the Gellert user&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;407&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_22.jpg&quot; type=&quot;image&quot; width=&quot;575&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By using the Add button,we attach the role(after selection)to the list of roles assigned to this user.&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;801-running-the-application-into-the-portal&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Running the Application into the Portal&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 order to see the top-level navigation and the page defined in the 
assigned role,we save our changes,we logoff and then we login 
again.After logging-in,we can see it the upper part of the screen,on the
 main navigation bar,the new item named CONTEXTUALMENU UI element, 
corresponding to our newly attached role.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Web Dynpro running application into the portal&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;124&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_23.jpg&quot; type=&quot;image&quot; width=&quot;510&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;802-triggering-a-portal-event&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Triggering a Portal Event&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Web
 Dynpro through the Portal – Manager offers some methods to be used to 
trigger events and to react to portal events. To do this,&amp;nbsp;we can use the
 methods of the IF_WD_PORTAL_INTEGRATION&amp;nbsp;interface,as follows:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;FIRE – Trigger portal event;&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;SUBSCRIBE_EVENT – Register portal event;&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;UNSUBSCRIBE_EVENT – Delete portal event registration.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 the scope of this example,we re-create our firstly created component; 
but,in this case, we enter the name in the Web Dynpro component that 
triggers the portal event and we display the greeting in the second Web 
Dynpro component that reacts to the portal event.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 Portal Eventing concept is appropriate for communication between 
applications created by using different technologies.But, through this 
example, we will create the application that triggers the portal 
eventing and the application that react to the portal event by using the
 same technology,&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Web
 Dynpro ABAP.Our purpose is to present the both cases and, depending on 
the requirements, to choose one of the variants (trigger or receiver)in 
combination with an application developed into another technology(Web 
Dynpro Java, Visual Composer, etc.).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Processing portal events&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;223&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_24.jpg&quot; type=&quot;image&quot; width=&quot;510&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 start with the creation of the Web Dynpro component able to trigger a 
portal event by using the FIRE method. The structure of this component 
and the view layout are presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Web Dynpro component structure and view layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;128&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_25.jpg&quot; type=&quot;image&quot; width=&quot;517&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the context view,we have created an attribute named “NAME”, of STRING 
type.When the user presses the “Event trigger” button, we use the FIRE 
method to trigger a portal event that will be subsequently passed by the
 portal to the second iView that has been registered for this 
event,respective to the second Web Dynpro ABAP application. In this 
way,the events can be transported between the iViews (Web Dynpro 
applications or applications that use other technologies).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Listing
 shows the coding of the onactionevent_trigger event handler method.&amp;nbsp;As 
we can see,after passing the value of the context attribute into the 
local variable LV_NAME,we use the FIRE method of the 
IF_WD_PORTAL_INTEGRATI&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;onactionevent_trigger event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  METHOD onactionevent_trigger .
  DATA lv_name TYPE string.
  wd_context-&amp;gt;get_attribute(EXPORTING
  name = `NAME`
  IMPORTING
  value = lv_name).
  DATA: lr_api_component TYPE REF TO if_wd_component,
  lr_portal_manager TYPE REF TO if_wd_portal_integration.
  lr_api_component = wd_comp_controller-&amp;gt;wd_get_api( ).
  lr_portal_manager = lr_api_component-&amp;gt;get_portal_manager( ).
  lr_portal_manager-&amp;gt;fire(portal_event_namespace = &#39;sap.example
  portal_event_name = &#39;person_name&#39;
  portal_event_parameter = lv_name).
  ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
interface to fire the portal event with the name “person_name”. This method has three importing parameters of STRING type:&lt;/div&gt;
&lt;ul style=&quot;margin: 10px 0px 0px; padding: 0px 0px 0px 25px;&quot;&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;PORTAL_EVENT_NAMESPACE – namespace in which the event is stored;&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;PORTAL_EVENT_NAME – name of the event;&lt;/li&gt;
&lt;li style=&quot;list-style: square; margin: 3px 0px 0px; padding: 0px 10px 0px 0px;&quot;&gt;PORTAL_EVENT_PARAMETER – parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
These
 values have to match with the event receiver application. Web Dynpro 
Wizard offers the required support to work with portal events.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Web Dynpro Wizard and portal manager&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;71&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_26.jpg&quot; type=&quot;image&quot; width=&quot;375&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;803-reacting-to-a-portal-event&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Reacting to a Portal Event&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Now,
 we are creating the Web Dynpro application able to react to the event 
triggered in the first iView in the portal.The structure of this 
component,the view layout and the context view are presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Web Dynpro component structure,view layout and context view&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;135&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_27.jpg&quot; type=&quot;image&quot; width=&quot;511&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the context view,we need only the attribute “NAME”, where we pass the 
parameter value concatenate with a WELCOME string.&amp;nbsp;To be capable to 
register our Web Dynpro application for a portal event,&amp;nbsp;we have to use 
the SUBSCRIBE_EVENT&amp;nbsp;method of the same IF_WD_PORTAL_INTEGRATION 
interface.&amp;nbsp;This method shall be used into the wdDoInit Hook Method.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The wdDoInit Hook method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  METHOD wddoinit .
  DATA lr_api_component TYPE REF TO if_wd_component.
  DATA lr_portal_manager TYPE REF TO if_wd_portal_integration.
  lr_api_component = wd_comp_controller-&amp;gt;wd_get_api( ).
  lr_portal_manager = lr_api_component-&amp;gt;get_portal_manager( ).
  DATA lr_api_controller TYPE REF TO if_wd_view_controller.
  lr_api_controller ?= wd_this-&amp;gt;wd_get_api( ).
  lr_portal_manager-&amp;gt;subscribe_event(
  portal_event_namespace = &#39;sap.example&#39;
  portal_event_name = &#39;person_name&#39;
  view = lr_api_controller
  action = ‘EVENT_RECEIVER’
  ).
  ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 SUBSCRIBE_EVENT method has three parameters of STRING type and one 
parameter type ref to IF_WD_VIEW_CONTROLLER. As we can see, this method 
needs to specify not only the namespace,the name of the event and the 
view, but also the name of the action to be called when the event 
occurs.&amp;nbsp;We have created an action named “EVENT_RECEIVER”. The event 
handler method is presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactionevent_receiver event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  METHOD onactionevent_receiver .
  DATA lv_event_name TYPE string.
  DATA lv_event_parameter TYPE string.
  lv_event_name = wdevent-&amp;gt;get_string(name = &#39;PORTAL_EVENT_NAME&#39;).
  IF lv_event_name = &#39;person_name&#39;.
  lv_event_parameter = wdevent-
  &amp;gt;get_string(name = &#39;PORTAL_EVENT_PARAMETER&#39;).
  CONCATENATE &#39;WELCOME&#39; lv_event_parameter INTO lv_event_parameter
  SEPARATED BY space.
  wd_context-&amp;gt;set_attribute(name = &#39;NAME&#39;
  value = lv_event_parameter).
  ENDIF.
  ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using the method GET_STRING (parameter: PORTAL_EVENT_NAME),&amp;nbsp;we pass the
 value of the portal event name into the local variable 
lv_event_name.Then,&amp;nbsp;in case this local variable has the value 
“person_name”(our defined even tname),we have to obtain the value of the
 parameter.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using the method GET_STRING (parameter: PORTAL_EVENT_PARAMETER),&amp;nbsp;we can
 pass the parameter of the portal event to the action parameter WDEVENT 
and to our local variable lv_event_parameter&amp;nbsp;In the last step, we create
 the greeting and we pass this value in the context attribute.&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;804-creating-a-page&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Creating a Page&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this case,we need the two iViews to appear in the same screen.This is 
the reason why we use a Page.Into a portal Page,we can insert iViews or 
other portal Pages and we can set a proper layout.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To create a Page into our book folder, we right-click on the folder name and, from the contextual menu, we choose&lt;b&gt;&amp;nbsp;New --&amp;gt; Page&lt;/b&gt;.
 A Wizard guides us through the required steps to create our first 
portal Page.In the first step,we have to enter the Page properties .&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Page properties Wizard step&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;255&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_28.jpg&quot; type=&quot;image&quot; width=&quot;256&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the next step,we have to choose the page template on which to ground 
the new portal page (here we have chosen “Default Page Template”)and in 
the last step, before OVERVIEW and SAVE,we choose the layout to be 
assigned to the page.This layout shows how the content will be arranged.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Page layouts Wizard step&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;183&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_29.jpg&quot; type=&quot;image&quot; width=&quot;511&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 our book folder,we create two iViews required to integrate our two 
created Web Dynpro applications.The structure of the book folder.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Book folder structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;span style=&quot;background-color: white; font-size: 12px; line-height: 18px;&quot;&gt;After
 creating iViews Page, all we have to do is to assign the two iViews: 
Event sender and Event receiver to our portal Page named “Portal 
event”.To perform this operation,we use the delta link concept firstly 
applied when we have assigned the iView to the Role. Now we are able to 
see the Page Content.&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Page content&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;206&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_31.jpg&quot; type=&quot;image&quot; width=&quot;499&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;805-running-the-application-that-processes-portal-events&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Running the Application that Processes Portal Events&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
All
 we have to do is to assign the portal Page to our role (through the 
delta link concept) and to perform a logoff and a new login into the 
portal.Figure shows the runtime result.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;152&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_32.jpg&quot; type=&quot;image&quot; width=&quot;510&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 case we want to differently arrange the display of the two iViews into 
the Page,we can use the Page Layout.We can also change the layouts by 
dragging &amp;amp;dropping and rearrange the iViews that define the content.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Page Layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;290&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch14_33.jpg&quot; type=&quot;image&quot; width=&quot;503&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/1841051789555282160/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/integrating-web-dynpro-application-into.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/1841051789555282160'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/1841051789555282160'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/integrating-web-dynpro-application-into.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-8365619315072802611</id><published>2012-09-22T22:59:00.003-07:00</published><updated>2012-09-22T22:59:40.280-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h1 style=&quot;background-color: white; background-image: none; background-position: 0% 0%; background-repeat: no-repeat no-repeat; border: none; color: #0099ff; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; height: 40px; line-height: 24px; margin: 0px; padding: 0px; text-align: justify;&quot;&gt;
&lt;a href=&quot;http://adf.ly/CUXur&quot; target=&quot;_blank&quot;&gt;Web Dynpro and Authorization&lt;/a&gt;&lt;/h1&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
Based
 on the RBAC (Role Based Access Control) pattern,we are going to present
 the SAP R/3 role based authorization mode. According to it, a user can 
dispose of a number of roles,which grants to him/her the authorization 
to access certain resources from the system. In this respect,we will 
create the development objects required to grant to the user the 
possibility to access the records from a database, and we will use,in 
Web Dynpro ABAP, the declaration AUTHORITYCHECK to verify the current 
user’s authorization.&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
For
 standalone Web Dynpro applications, being not integrated in the 
portal,the security shall be programmed into the application. For the 
applications that run into the Portal,we can use the Portal security to 
authenticate and authorize the access to the application.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
The
 way we can do this depends on specific situations.For example,we can 
define in the portal the authorization for the content we offer to the 
user,but we cannot define the authorization for the backend application 
itself.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
This kind of authorization shall be done in back-end, through development objects&lt;br /&gt;
as
 authorization fields,authorization object,etc.To check which functions 
can be executed by the user or which objects can be accessed by him,in 
backend,through a Web Dynpro application, we can use statements as 
AUTHORITY-CHECK.These statements are implemented at the program level in
 our application or into the model used for our application.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
Now,we
 create a very simple example to show how we can use an Authorization 
Object into a Web Dynpro component to check the authorization of the 
current user and to grant access to the Open SQL delete action for our 
database table YPERSON.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
We
 use a user administrator and a profile administrator to create the 
object class,the authorization object and the role,and to assign the 
created role to our test user Gellert.By using our test user, we create 
the Web Dynpro component and we check his right to perform the desired 
delete action.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;b&gt;The relationship user – roles – permissions, for our example&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;input height=&quot;350&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_1.jpg&quot; type=&quot;image&quot; width=&quot;510&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
An
 Authorization Object is used to check a user authorization for special 
activities.Usually,the authorizations are combined into authorization 
profiles,and these profiles are assigned with a role.Then, a role 
(single or composite) can be assigned to users, and all the 
authorization changes affect all the users that have assigned the 
respective role.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
The
 scope of the present chapter is to offer to the reader a general idea 
about the authorization concept SAP R/3 and about the modality of using 
this concept to create secure Web Dynpro applications.This is the reason
 why we chose an example where we could create all the required 
development elements, even if in practice this requirement appears only 
occasionally&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
SAP
 offers a large range of authorization objects and templates that we can
 use and customize according to our requirements.In most cases,to grant 
access to the tables, we use authorization groups(extended authorization
 for particular objects)and authorization objects, as: 
S_TABU_DIS,S_TABU_LINE.&lt;br /&gt;
We have already used an authorization 
group in Chap.11, where we have created table maintenance. In that 
example, we chose from the authorization group list “&amp;amp;NC&amp;amp;”(no 
security) and we saw that the authorization object has been predefined 
as S_TABU_DIS.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
We can assign an authorization object,through the menu&amp;nbsp;&lt;b&gt;Utilities --&amp;gt; Assign Authorization&lt;/b&gt;&amp;nbsp;Group,to a view and to a transparent table created in the ABAP Dictionary.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
Because
 in our case we offer the capability to delete certain records from the 
YPERSON table by only one user, the usage of the authorization group has
 no meaning. Another reason for using the authorization groups in the 
example was to put forward the basic elements, without entering in the 
private objects field and,in the same time, to present the authorization
 field ACTVT we shall meet often during.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
working with Web Dynpro applications,when we check the authorization for different activities,with tables.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
&lt;img alt=&quot;&quot; height=&quot;68&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_15t.jpg&quot; style=&quot;border: none;&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;806-role-based-access-control-pattern-rbac&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Role Based Access Control Pattern - RBAC&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 Pattern that stays at the basis of the presented concept is the Role 
Based Access Control pattern,an access control model currently used to 
develop secure systems.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 pattern was firstly formalised by Ferraiolo and Kuhn, in 1992 (the 15th
 National Computer Security Conference,1992, Baltimore MD, pages 
554–563), in a form that allows the users to access the resources by 
using roles and permissions, and where the roles can inherit permissions
 from other roles.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Various
 forms of Role Based Access Control have been created and implemented in
 a variety of commercial systems. Hereunder,we present a extended form 
of the RBAC pattern.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Pattern Name&lt;/b&gt;: Role based access control.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context&lt;/b&gt;:Any environment where we need to control the access to resources based on the user’s roles.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Problem&lt;/b&gt;:
 How we can assign rights to users in concordance with their roles,so 
that each user to have only the authorization required to carry out his 
responsibilities?&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Solution&lt;/b&gt;: It is presented a classmodel for the Role Based Access Control&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The role based access control pattern Schumacher et al.(2006)&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;219&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_2.jpg&quot; type=&quot;image&quot; width=&quot;508&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 will explain this concept as regards to the Application Server ABAP. 
The Class User represents the user that attempts to access the protected
 object (transactions, programs, services),and the Role class represents
 the user roles.A role can be a single role or a composite role. The 
composite role can contain only single roles, and the single role can 
contain,for example,the logon menu for the user and authorization 
objects.SAP offers a large number of single roles to be used, but we can
 also create our own ones. Class Right describes the access type(delete,
 write, etc.).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Each
 user can be member of a group or more.Through the Session class,it is 
implemented the principle of “least privilege”, according to which a 
user gets,through every session, only the privileges required to perform
 his responsibilities.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 our example presented in Fig.the profile administrator creates a single
 role ZTEST_ROLE,assigns to it the authorization object 
ZTEST_AUTH,maintains the fields and generates the authorization profile.
 Our test user, Gellert, tries to perform a delete operation in the 
YPERSON database,but he doesn’t have assigned the ZTEST_ROLE yet.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
That’s
 why he doesn’t have the authorization to perform this operation.Only 
after the user administrator assigns him the role, he can perform the 
delete operation for the database records found in the range 004–100. 
So,we have the separation between the role administrator and the right 
administrator. Besides this basic division, there are other different 
scenarios that can be used.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Applications&lt;/b&gt;: J2EE, SAP NetWeaver, Oracle, etc.&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;807-authorization-object-class&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Authorization Object Class&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
One
 or more Authorization Objects shall be assigned to a Class. To create a
 new class,we can use,from the screen “Maintain Authorization Objects”&lt;b&gt;(transaction SU21)&lt;/b&gt;,the CREATE button.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating an object class&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;329&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_3.jpg&quot; type=&quot;image&quot; width=&quot;510&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;808-authorization-object&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Authorization Object&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 creating the class, we can create an Authorization Object directly in 
the created class or we can firstly create an Authorization Object and 
then assigning the Object to the created class.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating an authorization object&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;319&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_4.jpg&quot; type=&quot;image&quot; width=&quot;511&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Assigning an Authorization Object to a class&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;422&quot; longdesc=&quot;undefined&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_5.jpg&quot; type=&quot;image&quot; width=&quot;506&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;809-authorization-fields&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Authorization Fields&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
An
 Authorization Object can contain maximum ten authorization fields.These
 fields can be chosen from the list of the existent 
ones(activities,actions, etc.) or we can create our own authorization 
fields.The structure of the Authorization Object named ZTEST_AUTH.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Defining the authorization field&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;439&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_6.jpg&quot; type=&quot;image&quot; width=&quot;508&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 have chosen to add a field named ACTVT, because we need to check an 
activity.The possible activities that can be protected are stored in the
 table TACT that has a 1:CN key relation with the table TACTZ and a txt 
relationship with the table TACTT.In the table TACTT,there are stored 
the activities descriptions,and in the table TACTZ there are stored the 
valid activities for each authorization object.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;TACT and some of its related tables&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;180&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_7.jpg&quot; type=&quot;image&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Table TACT&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;151&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_8.jpg&quot; type=&quot;image&quot; width=&quot;510&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Actions from the TACT table&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;256&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_9.jpg&quot; type=&quot;image&quot; width=&quot;512&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
From the “Create authorization Object” screen,we can use the button “Field Maintenance” or we can use the&lt;b&gt;&amp;nbsp;SU20 transaction&lt;/b&gt;&amp;nbsp;to navigate to the list of the authorization fields.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;List of authorization fields&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;201&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_10.jpg&quot; type=&quot;image&quot; width=&quot;506&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Authorization field&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;256&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_11.jpg&quot; type=&quot;image&quot; width=&quot;408&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Then,we
 save the new created Field and go back to our Authorization Object. 
Here,we insert the ZAF_PERSON and,by using the “Permitted activities” 
from the end of the screen, we select the Delete activity from the 
activity list.In case we want to re-use this authorization object in the
 future,we can tick more activities, and we use for our request only the
 delete activity&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Defining the activities&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;416&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_12.jpg&quot; type=&quot;image&quot; width=&quot;484&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;810-creating-a-single-role-and-changing-its-authorization-data&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Creating a Single Role and Changing its Authorization Data&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After creating the Authorization Object, we create a new single role by using the transaction PFCG.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Creating a new role&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;145&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_13.jpg&quot; type=&quot;image&quot; width=&quot;509&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After
 this,we change the authorization data for the new created role.To 
realize it, we use the “Authorizations” tab,the “Maintain Authorization 
Data and Generate Profiles” area,and the “Change Authorization Data” 
button. By using the “Menu” tab,we can define fragments from the user 
menu that can be seen in SAP Easy Access. Because our authorization 
doesn’t require new transactions or other objects, we don’t use this 
tab. By using the “User” tab, we can assign users to the role. We will 
not use this option,but we will add later the new created role to our 
test user.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Changing authorization data for a role&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;345&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_14.jpg&quot; type=&quot;image&quot; width=&quot;514&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this case, we don’t want to use a Template to generate an authorization
 profile.This is the reason why we choose, from the pup-up window,the 
button “Do not select templates”.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Choosing the template window&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;280&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_15.jpg&quot; type=&quot;image&quot; width=&quot;503&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 the scope of our example,we manually select our authorization object.We
 use the “Manually” Button and enter the name of the Authorization 
Object we have just created.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Manual selection of the authorization&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;216&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_16.jpg&quot; type=&quot;image&quot; width=&quot;513&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
After this,we choose the activity found in our list –“DELETE”&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Choosing the DELETE activity&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;159&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_17.jpg&quot; type=&quot;image&quot; width=&quot;509&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Then,we choose the range of IDs where the specified DELETE action is enabled to be performed.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Full authorization for IDs&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;172&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_18.jpg&quot; type=&quot;image&quot; width=&quot;510&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 generate the authorization profile by using the Generate button .As a 
result, we can see our profile that offers the authorization to delete 
data from the database table YPERSON – records from 004 to 100.Creating&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Generating the profile&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;156&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_19.jpg&quot; type=&quot;image&quot; width=&quot;511&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;811-creating-the-web-dynpro-component&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Creating the Web Dynpro Component&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Then, we create a WD component named Y_AUTHORIZATION.The component structure is presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;WD component structure&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;161&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_20.jpg&quot; type=&quot;image&quot; width=&quot;250&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
By
 using this WD component, we can search for a record in the database 
table YPERSON and we can delete a record in case the authorization 
enabled us to perform the desired activity.&amp;nbsp;The view layout and view 
context structure are presented.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Checking the Authorization of the Current User&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
When the user presses the Delete button, the Framework triggers the event handler method onactiondelete.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Context structure and view layout&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;315&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_21.jpg&quot; type=&quot;image&quot; width=&quot;509&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The onactiondelete event handler method&lt;/b&gt;&lt;/div&gt;
&lt;pre style=&quot;margin-left: 10px; padding: 0px 0px 0px 10px;&quot;&gt;  METHOD onactiondelete.
  DATA: lt_candidate TYPE TABLE OF yperson,
  lr_node TYPE REF TO if_wd_context_node,
  lv_id_person TYPE yidi.
  DATA lr_api_controller TYPE REF TO if_wd_controller.
  DATA lr_message_manager TYPE REF TO if_wd_message_manager.
  lr_api_controller ?= wd_this-&amp;gt;wd_get_api( ).
  lr_message_manager = lr_api_controller-&amp;gt;get_message_manager( ).
  lr_node = wd_context-&amp;gt;get_child_node(&#39;DELETE&#39;).
  lr_node-&amp;gt;get_attribute(EXPORTING name = &#39;ID_PERSON&#39;
  IMPORTING value = lv_id_person).
  AUTHORITY-CHECK OBJECT &#39;ZTEST_AUTH&#39;
  ID&#39;ACTVT&#39; FIELD &#39;06&#39;
  ID&#39;ZAF_PERSON&#39; FIELD lv_id_person.
  IF sy-subrc EQ 0.
  DELETE FROM yperson WHERE id_person = lv_id_person.
  IF sy-subrc EQ 0.
  lr_message_manager-&amp;gt;report_t100_message(
  msgid = &#39;YCL_T100_MSG&#39;
  msgno = &#39;004&#39;
  msgty = &#39;S&#39;).
  ENDIF.
  ELSE.
  lr_message_manager-&amp;gt;report_t100_message(
  msgid =&#39;YCL_T100_MSG&#39;
  msgno =&#39;003&#39;
  msgty =&#39;E&#39;
  ).
  ENDIF.
  ENDMETHOD.&lt;/pre&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
As we can see,we have implemented an authorization check before performing the delete action.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
AUTHORITY-CHECK OBJECT ’ZTEST_AUTH’&lt;br /&gt;
ID ‘ACTVT’ FIELD ‘06’&lt;br /&gt;
ID ‘ZAF_PERSON’ FIELD lv_id_person.&amp;nbsp;In this way, we check the authorization of the current user.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 can have minimum one and maximum ten authorization fields with 
specified IDs. In this case,we have the ACTVT and our own created 
authorization field ZAF_PERSON. For each authorization field, we can 
specify a value to be checked or we can use the additional DUMMY to 
avoid checking the respective field.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
The
 check is successful only if all the conditions are fulfilled: the field
 ACTVT (Activity) with the permissible value 06 (Delete) AND the field 
“ZAF_PERSON” whose permissible value is one of the IDs from 004 to 
100.If the check is successful,the sy-subrc = 0;otherwise, it is set to a
 value not equal with 0:&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
4 – Authorization check not successful.&lt;br /&gt;
12 – No authorization was found for the authorization object.&lt;br /&gt;
24 – Incorrect authorization fields or an incorrect number of authorization fields was found.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 the Message Class YCL_T100_MSG, we have defined two messages with the 
IDs 003 and 004,required to show the success message,or the error 
message in case the action is not allowed.&amp;nbsp;We have created a role 
ZTEST_ROLE, but we haven’t assigned it to our user.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
This
 is the reason why, at runtime, we are not allowed to delete the record 
with the ID “004”. Figure shows the User Interface at runtime.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Runtime&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;223&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_22.jpg&quot; type=&quot;image&quot; width=&quot;505&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 case we don’t have a certain authorization, as developer for fulfilling
 the required tasks,we can use the transaction SU53 to find what 
authorization is missing and to inform the administrator about it.After 
receiving an exception message caused by a failed authorization,we have 
to use the specified transaction and to make a screenshot for the 
administrator.For example,if we try to use the transaction SE11 and we 
don’t have the proper authorization, in the&lt;b&gt;&amp;nbsp;transaction SU53&lt;/b&gt;&amp;nbsp;we will see the object class, the authorization object and the authorization&amp;nbsp;field we need.The&amp;nbsp;&lt;b&gt;transaction ST01&lt;/b&gt;&amp;nbsp;offers the possibility to create a system trace to find the missing authorization objects.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The missing authorization check&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;67&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_23.jpg&quot; type=&quot;image&quot; width=&quot;509&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;&lt;i&gt;Assigning the User-Role and Running the Application&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 be able to perform the delete action, we have to assign the created 
role to the user that needs to perform this action (In our case, the 
test user Gellert). By using the&lt;b&gt;transaction SU01,&lt;/b&gt;&amp;nbsp;we have the 
possibility to change user master records (e.g.&amp;nbsp;change,lock or 
unlock,change this password),to delete user master records or to create a
 new user (directly or by copying an existing one).&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;User maintenance&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;149&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_24.jpg&quot; type=&quot;image&quot; width=&quot;300&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In the tab “Roles”, we can assign our created role ZTEST_ROLE to the test user.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Assigning the role “ZTEST_ROLE” to our test user&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;181&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_25.jpg&quot; type=&quot;image&quot; width=&quot;507&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
We
 run again our Web Dynpro application.The authorization rights become 
effective and our test user can perform the delete action for the 
records 004–100 from the database table YPERSON.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;The user is allowed to delete data&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;192&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_26.jpg&quot; type=&quot;image&quot; width=&quot;509&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 case we are trying to delete a record not included in the range 
004–100,we get the same “Not Authorized” message.In this case, the 
authorization check is performed and the system compares the values 
entered by the administrator in the authorization profile with the 
values required by the program.As a result,the check is not successful 
and he is not allowed to perform this task.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;b&gt;Deleting a record not included in the range 004–100&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;157&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP/ch15_27.jpg&quot; type=&quot;image&quot; width=&quot;509&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
Other authorization objects, which we often check,are:&lt;br /&gt;
S_TCODE – to check the authorization to run a transaction&lt;br /&gt;
S_PROGRAM – to check the authorization to run a program&lt;br /&gt;
S_RFC – to check the authorization to run a RFC&lt;br /&gt;
S_TABU_DIS – for table maintenance&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/8365619315072802611/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/web-dynpro-and-authorization-based-on.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/8365619315072802611'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/8365619315072802611'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/web-dynpro-and-authorization-based-on.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-2435036128172328785</id><published>2012-09-22T22:59:00.001-07:00</published><updated>2012-09-22T22:59:27.066-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;div class=&quot;topc1&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;h1 style=&quot;background-image: none; background-position: 0% 0%; background-repeat: no-repeat no-repeat; border: none; color: #0099ff; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; height: 40px; line-height: 24px; margin: 0px; padding: 0px;&quot;&gt;
&lt;a href=&quot;http://adf.ly/CUXrm&quot; target=&quot;_blank&quot;&gt;Web Dynpro Mind Map&lt;/a&gt;&lt;/h1&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
The
 main focus of this chapter is the presentation of the Mind Map created 
on the basis of the elements described in this book. It can be of a real
 help in summarizing the knowledge,facilitating the learning of the Web 
Dynpro.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
Tony
 Buzan is considered the parent of Mind Map. A Mind Map is a diagram 
used to structure ideas that assist people in many activity fields.&lt;/div&gt;
&lt;div style=&quot;background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin: 10px; padding: 0px; text-align: justify;&quot;&gt;
The
 Mind Maps are mostly used to take notes during meetings or at school,as
 a good method to summarize the knowledge or to prepare a presentation. 
More details about the advantages of using Mind Map to learn Web Dynpro 
can be found in the article: “The Advantages of using Mind Map for 
learning Web Dynpro” (Cristea et al).&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;812-creating-a-mind-map&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Creating a Mind Map&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 create a Mind Map, we start from a central point, in our case the Web 
Dynpro ABAP.This is the main subject of the Mind Map, and all the 
subtopics connected through lines with this one represent the key-words 
or, respectively,the main ideas.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
In
 this case, we have created a Mind Map based on the subjects presented 
in this book.from the UI elements to the Hook Methods and component 
re-use, this wellstructured Mind Map helps us to learn faster the Web 
Dynpro ABAP and,in the same time,to imprint in mind the main elements 
required to learn this technology. In Fig is presented the Mind Map 
created to facilitate the learning of Web Dynpro ABAP.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 each topic or subtopic,we can attach one or more files containing 
details regarding the respective subject,examples, images,links,etc.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
For
 example,if we look at the UI elements, we can easily see that the UI 
elements to be used with Web Dynpro are divided in certain categories.In
 this book, we present the following categories: Layout, Action, 
Selection, Complex, Graphic and Integration. Each of these categories 
has some corresponding UI elements.In our case,we introduced only those 
IU elements we used in this book, but,as mentioned above, they could 
very easily be extended.&lt;/div&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
To
 create Mind Maps, we find a large range of software on the market. 
iMindMap is considered the World’s Official Mind Mapping software 
endorsed by Tony Buzan. To create this Mind Map,we used Mindjet 
MindManager that can be downloaded (and tested, as a trial version 
gratuity).&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;topichd&quot; style=&quot;background-color: white; border-bottom-color: rgb(138, 186, 30); border-bottom-style: dotted; border-bottom-width: 1px; color: #fd9645; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; id=&quot;813-web-dynpro-abap-mind-map&quot; style=&quot;border: none; color: #ff6600;&quot;&gt;&lt;/a&gt;Web Dynpro ABAP Mind Map&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot; style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; text-align: justify;&quot;&gt;
&lt;div style=&quot;color: black; font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px; margin: 10px; padding: 0px;&quot;&gt;
&lt;input height=&quot;425&quot; src=&quot;http://e-university.wisdomjobs.com/userfiles/image/SAP-ABAP%20Web%20Dynpro/Chapter%2016/16_1-Web-Dynpro-ABAP-mind-map.png&quot; type=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;center style=&quot;background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;&quot;&gt;
&lt;ins style=&quot;border: none; display: inline-table; height: 60px; margin: 0px; padding: 0px; position: relative; visibility: visible; width: 468px;&quot;&gt;&lt;/ins&gt;&lt;/center&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/2435036128172328785/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/web-dynpro-mind-map-main-focus-of-this.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/2435036128172328785'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/2435036128172328785'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/web-dynpro-mind-map-main-focus-of-this.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-8635410176829162835</id><published>2012-09-22T22:54:00.004-07:00</published><updated>2012-09-22T22:54:24.883-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://adf.ly/CUWNh&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;color: #274e13; font-size: large;&quot;&gt;&lt;u&gt;ABAP BASICS &amp;nbsp;PART-1&lt;/u&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;span style=&quot;color: #274e13; font-size: large;&quot;&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoHeading9&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoHeading9&quot;&gt;
Some Facts about SAP&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
After
 the Internet, SAP R/3 is one of the hottest topics in the computer 
industry and the company that developed it.&amp;nbsp; It is targeted to most 
industries, manufacturing, retail, oil &amp;amp; gas, pharmaceutical, 
banking, insurance, telecommunication, Transport, chemical and so on.&amp;nbsp; 
All major hardware Vendors were fully engaged to partner with SAP: 
AT&amp;amp;T, BULL, Compaq, IBM, Sun have supported and certified R/3 
platform.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
SAP
 has list of major consultants all over the world like Anderson 
Consulting, Price Waterhouse – Cooper &amp;amp; Lybrand, Ernst &amp;amp; Young, 
KPMG and many more.&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
The
 company behind R/3 is SAP AG, founded by four former IBM employees in 
1972.&amp;nbsp; The company’s headquarters are in Walldorf, a small German town.&amp;nbsp;
 The company name, SAP stands for SYSTEMS, APPLICATIONS and PRODUCTS in 
data processing.&amp;nbsp; In 1992 R/3 was introduced and in 1995 SAP AG was 
ranked fifth among independent software vendors.&amp;nbsp; One of the reasons for
 SAP’s success is that since it is a standard package, it can be 
configured in multiple areas and adapted to specific need of a company.&amp;nbsp;
 Today, more than 21,600 customers in over 120 countries run more than 
69,700 installations of SAP® software. With subsidiaries in more than 50
 countries, the company is listed on several exchanges, including the&amp;nbsp;&lt;st1:place w:st=&quot;on&quot;&gt;Frankfurt&lt;/st1:place&gt;&amp;nbsp;stock exchange and NYSE under the symbol “SAP”.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
SAP
 has two main products in the business software market, Mainframe system
 R/2 and Client-server R/3.&amp;nbsp; Both are targeted to business application 
solutions.&amp;nbsp; Here R indicates REAL TIME.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
R/2
 is SAP AG mainframe software that runs on IBM, Siemens and other 
compatible equipment.&amp;nbsp; This type of solution cannot be open, but with 
ALE technology, R/2 can be linked with R/3 system and share data.&amp;nbsp; This 
system is mainly targeted at enterprises with data-intensive and 
centralized industries.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
R/3
 is the product that has really placed SAP AG as the leader in the 
country.&amp;nbsp; This complex Client/server system is core of our course.&amp;nbsp; The 
global acceptance of R/3 is not only because it caters all complex needs
 of business but also this international acceptance is because of R/3’s 
international applicability.&amp;nbsp; For SAP this does not mean having software
 available in different languages, but also covering currency, taxes, 
Legal practice concerning HR, Import/export regulations.&amp;nbsp; SAP also 
values its customers and it is shown by the comprehensive set of quality
 services put by SAP to help customers during the process of 
implementing and supporting the R/3 systems.&amp;nbsp; These services include 
product information; training, installation and upgrade service like:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;st1:city w:st=&quot;on&quot;&gt;&lt;st1:place w:st=&quot;on&quot;&gt;&lt;b&gt;OSS&lt;/b&gt;&lt;/st1:place&gt;&lt;/st1:city&gt;&lt;b&gt;:&amp;nbsp;&lt;/b&gt;Online Service System is one of the primary sources of service and support provided by SAP.&amp;nbsp; With&amp;nbsp;&lt;st1:city w:st=&quot;on&quot;&gt;OSS&lt;/st1:city&gt;,
 customers can search the SAP information database and find solutions 
for errors and problems with R/3 systems.&amp;nbsp; You can also submit your 
problems to SAP.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;b&gt;Consulting Service:&amp;nbsp;&lt;/b&gt;with remote consulting service customer receives immediate and updated technical support and answers to their questions.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;b&gt;Maintenance service:&amp;nbsp;&lt;/b&gt;This is the basic and most common type of support for customers in technical support and answers to their questions.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;b&gt;Information Service:&lt;/b&gt;&amp;nbsp;These
 are the various information sources for receiving detailed information 
about the R/3 system, marketing brochures, system documentation, 
training information and many more things.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;b&gt;Preventive services:&amp;nbsp;&lt;/b&gt;The
 primary one is the Early Watch Service, which ensures successful and 
efficient installation of the R/3 system in all phases.&amp;nbsp; This service 
makes regular/performance checks and analyzes the system to identify 
potential problems, help system managers and SAP administrators to tune 
the system.&amp;nbsp; Soon after the Early Watch session, SAP sends the customer a
 report with the result of the analysis and recommendations for avoiding
 potential problems such as database becoming full.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
So
 overall SAP R/3 is an open client/server software system, designed to 
manage business information needs of an entire enterprise.&amp;nbsp; The whole 
dataflow of SAP R/3 works in an integrated way, which means the data 
needs to be entered just once and the system automatically updates other
 logically related data.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;&lt;/span&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoHeading9&quot;&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314382&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209825&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;WORKING WITH R/3 system&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
The
 SAP R/3 presentation interface behaves very similarly to any other 
typical window application and is also known as SAPGUI.&amp;nbsp; The first 
screen that you come across in R/3 system is SAP logon screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314383&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209826&quot;&gt;SAP R/3 logon Screen&lt;/a&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
This
 is the first screen that appears when you use SAP logon utility.&amp;nbsp; It 
has four fields: the client, the user, the password and the language.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDwJzuPaqNjUojcLhUXA6zTiw3rQBRNSThUN8EPYuqdSteI2yg90VAWEf4q0QMN2oVuy_oTqtiYtUl3tFzOBKU8NXlrtmiEGZuEyPFHp0Y0cRsXDiIbpj3iz5_5PFaXDFmLYbmi8GddGtR/s1600/image001.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;460&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDwJzuPaqNjUojcLhUXA6zTiw3rQBRNSThUN8EPYuqdSteI2yg90VAWEf4q0QMN2oVuy_oTqtiYtUl3tFzOBKU8NXlrtmiEGZuEyPFHp0Y0cRsXDiIbpj3iz5_5PFaXDFmLYbmi8GddGtR/s640/image001.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Client:&amp;nbsp;&lt;/b&gt;Here
 you enter the client number.&amp;nbsp; The client is group of users who has 
similar rights. It can be group of users in a business entity or a whole
 business entity or a whole company.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;User:&amp;nbsp;&lt;/b&gt;The
 name of the SAP user identification.&amp;nbsp; Users of the SAP system are 
client-specific, which means that user belonging to one client is valid 
to only the particular client.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Password:&amp;nbsp;&lt;/b&gt;It is the password that has been assigned by the system administrator.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Language:&amp;nbsp;&lt;/b&gt;SAP
 R/3 system supports multinational language on the same system at the 
same time, which is very useful for multinational companies with 
different branches in several countries and possibly using different 
languages.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
After entering all the fields press ENTER key and system will take you to MAIN MENU screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12pt;&quot;&gt;User
 might get different screens when he logs on, depending upon default 
settings of the user master record i.e., if user is DEVELOPER then the 
screen which he often works on is editor screen and he can go directly 
to this screen, if system administrator sets this screen for the user.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;&lt;i&gt;Main features of any R/3 window are as follows:&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;R/3
 standard window elements behave exactly the same, as any other standard
 window application would, like minimizing a screen, setting the active 
window etc.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;From
 TOP to BOTTOM, R/3 window can contain typical elements such as check 
boxes, push buttons, input fields and following elements:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Menu bar&amp;nbsp;&lt;/b&gt;is
 the first element of the every R/3 window.&amp;nbsp; It contains the menu item 
corresponding to the particular R/3 application.&amp;nbsp; The two menu options 
SYSTEM and HELP are always present in every R/3 window.&amp;nbsp; SYSTEM menu 
option contains all utilities and functions, and is available to user at
 all the times.&amp;nbsp; The HELP menu contains all the available options for 
the different types and methods of obtaining online help in the system.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Standard tool bar&lt;/b&gt;.&amp;nbsp; The second R/3 window element&amp;nbsp;&lt;b&gt;is present in every R/3 window&lt;/b&gt;.&amp;nbsp;
 It is nothing but a collection of icons, which perform common functions
 like saving the object, exit etc.&amp;nbsp; The various icons on std. Tool bar 
are as follows (from left to right):&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Application tool bar:&amp;nbsp;&lt;/b&gt;The next part of the screen contains icons most commonly used in that particular task or transaction.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Status bar&amp;nbsp;&lt;/b&gt;is
 the bottom line of the screen and usually shows errors or information 
messages to the user.&amp;nbsp; It also includes other information such as system
 id, session number, client, server name and the response time.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;In between application tool bar and status bar you have working area, which is&amp;nbsp;&lt;/b&gt;different for different screens.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314384&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209827&quot;&gt;Logging Off&lt;/a&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
User can log off the R/3 system from any screen.&amp;nbsp; There are three ways of logging off the R/3 system, which are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;From the Menu bar choose SYSTEM&amp;nbsp;&lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt;&amp;nbsp;LOG
 OFF.&amp;nbsp; In this case, you get the log off dialog box, which informs the 
user that any data not saved will be lost if continuing with the log off
 procedure.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Use/NEX transaction code in the command field.&amp;nbsp; This is dangerous, since it does not ask if you want to save the data.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Clicking on the EXIT button on the R/3 initial screen.&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209828&quot;&gt;&amp;nbsp;&lt;/a&gt;&lt;/h4&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314385&quot;&gt;Using Transaction Code&lt;/a&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12pt;&quot;&gt;The
 R/3 system provides an alternative and efficient way of selecting menu 
options for moving around the tasks and functions of the SAP system by 
using transaction code directly in the command field.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
When
 moving with transaction, you can go to any part of the system by merely
 typing a transaction code in the command field, provided you have 
authorization for that.&amp;nbsp; That transaction code is the four-character 
code associated with any task.&amp;nbsp; By typing the transaction code and 
pressing ENTER key, the system takes you directly to the initial screen 
for transaction.&amp;nbsp; Whenever any transaction code is entered in the 
command field, it gets stored in the buffer memory.&amp;nbsp; If you click on 
drop down arrow, system displays list of transaction code already 
entered and you can select from this list or enter new one.&amp;nbsp; There are 
almost twelve thousand and ninety four transactions in SAP.&amp;nbsp; For every 
task, transaction code is associated and it can be found by&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;SYSTEM&amp;nbsp;&lt;/b&gt;&lt;b&gt;&lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt;&amp;nbsp;STATUS&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
Status window is popped up which contains the transaction code in the trans field.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Through&amp;nbsp;&lt;b&gt;DYNAMIC MENU.&amp;nbsp;&amp;nbsp;&lt;/b&gt;It
 gives the list of tasks.&amp;nbsp; If you click on the top line of the 
application areas and pressing the search and search next button will 
give you the transaction code.&amp;nbsp;&lt;b&gt;/N will take you to initial screen of R/3&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjm6IZJN58jErCWSIu4w8sAUGJC_N5lXizL8bkt45hycbKQlr-mDUAPlWoY95QKuYSr3AibO60HmEhE8MGdAOuUD6AEGWcWecxjWg_DvsBOxyB4AsmSXRg4B_MlTUfRItlDllo08mP05_Hi/s1600/image003.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;460&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjm6IZJN58jErCWSIu4w8sAUGJC_N5lXizL8bkt45hycbKQlr-mDUAPlWoY95QKuYSr3AibO60HmEhE8MGdAOuUD6AEGWcWecxjWg_DvsBOxyB4AsmSXRg4B_MlTUfRItlDllo08mP05_Hi/s640/image003.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Important transaction codes, which you will be using often, are:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Editors&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;ul style=&quot;margin-top: 0in;&quot; type=&quot;disc&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;SE37&amp;nbsp;&amp;nbsp; Function Builder&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;SE38&amp;nbsp;&amp;nbsp; ABAP/4 Editor&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;SE41&amp;nbsp;&amp;nbsp; Menu Painter&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;SE51&amp;nbsp;&amp;nbsp; Screen Painter&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;SE71&amp;nbsp;&amp;nbsp; Form Painter&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Dictionary&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;ul style=&quot;margin-top: 0in;&quot; type=&quot;disc&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;SE11 &amp;nbsp; Initial ABAP/4 dictionary maintain screen.&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Browsers&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;SE80&amp;nbsp;&amp;nbsp;&amp;nbsp; Object browser.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;ul style=&quot;margin-top: 0in;&quot; type=&quot;disc&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;SE16 &amp;nbsp; Data browser.&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Testing Tools&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;ul style=&quot;margin-top: 0in;&quot; type=&quot;disc&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;SE30&amp;nbsp;&amp;nbsp; Runtime Analysis&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;ST05&amp;nbsp;&amp;nbsp;&amp;nbsp; SQL Trace&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314386&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209829&quot;&gt;Getting help in the R/3 system&lt;/a&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12pt;&quot;&gt;R/3
 includes many possibilities to get online help for almost every element
 of the system, users can get help for entire application, for specific 
function, for definitions of various terms used in SAP, i.e., Glossary, 
messages, screens, fields etc.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
You obtain HELP by using any of the following options:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Help function&amp;nbsp;&lt;/b&gt;from the R/3 window, which is compulsory menu item of every R/3 window.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;? Icon&amp;nbsp;&lt;/b&gt;of standard tool bar.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;F1 function key.&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12pt;&quot;&gt;The
 SAP system provides help on most fields that appear on the R/3 system.&amp;nbsp;
 To get help on particular field, position the cursor over it and press 
help button or F1 function key.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Another
 way in which R/3 system provides help is when system displays error 
messages in the status bar.&amp;nbsp; Double clicking on the status bar shows 
additional information about the message.&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314387&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209830&quot;&gt;Working with R/3 user sessions&lt;/a&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12pt;&quot;&gt;A
 very important feature provided by SAP.&amp;nbsp; In R/3 system you can work 
with more than one task at any given point of time, by means of opening 
sessions.&amp;nbsp; You can call sessions as independent R/3 window where you can
 perform other tasks.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
By default, a user can open&amp;nbsp;&lt;b&gt;NINE&lt;/b&gt;&amp;nbsp;sessions
 simultaneously and can work or move around with all sessions at the 
same time.&amp;nbsp; Sessions can be closed at any time, without having to log 
off the system.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
User can create new sessions from anywhere as CREATE SESSION comes under SYSTEM menu which is available in every R/3 window.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h2&gt;
SYSTEM&amp;nbsp;&lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt;&amp;nbsp;CREATE SESSION&amp;nbsp;&lt;span style=&quot;font-weight: normal;&quot;&gt;Or&amp;nbsp;&lt;/span&gt;/O in command field&lt;/h2&gt;
&lt;h2&gt;
&lt;span style=&quot;font-weight: normal;&quot;&gt;This will open a new session or window and will place it in front of all other windows.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
To move among sessions&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-align: justify; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Just mouse click on any part of the R/3 window to make that session active.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-align: justify; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Combination of ALT + TAB key.&lt;/div&gt;
&lt;div class=&quot;MsoHeading9&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoHeading9&quot;&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314388&quot;&gt;R/3 Architecture&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12pt;&quot;&gt;The overall R/3 system includes the following components:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;br /&gt;
&lt;table align=&quot;left&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td height=&quot;7&quot; width=&quot;47&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEimmD9Lhg3edcrzOZTuON69Vqqt0IhS9PgCu5Cr_-j2ipCqxwlNuWUzyUDcnZBIIzHhVO6D4xGGF6xbPssjzPtmuzmI1i-Tza5NHVqzO4wYsvZng-cBna8eGLRZTq0q5OM1i3djrmqmkkqA/s1600/image005.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;312&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEimmD9Lhg3edcrzOZTuON69Vqqt0IhS9PgCu5Cr_-j2ipCqxwlNuWUzyUDcnZBIIzHhVO6D4xGGF6xbPssjzPtmuzmI1i-Tza5NHVqzO4wYsvZng-cBna8eGLRZTq0q5OM1i3djrmqmkkqA/s640/image005.gif&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
The&amp;nbsp;&lt;b&gt;UPPER&lt;/b&gt;&amp;nbsp;layer,
 the functional layer contains the different business application.&amp;nbsp; The 
integration of all application depends upon basis system. Applications 
are developed in ABAP/4 Lang. (Advanced Business Application – the 4&lt;sup&gt;th&lt;/sup&gt;&amp;nbsp;generation language)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
The
 R/3 basis software is the set of programs and tools, which interfaces 
with the operating, system, the underlying database, protocols and the 
presentation interface.&amp;nbsp; This layer enables all the application to work 
exactly the same way no matter what operating system or database, the 
system is installed on.&amp;nbsp; It is an independent layer and ensures the 
integration of all modules.&amp;nbsp; Besides all these specific jobs, BASIS 
system also contains following components and thus provides more 
additional features.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-align: justify; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;ABAP/4
 development workbench, which in turn includes many features like 
repository, data dictionary, workbench organizer, which will be 
discussed in later part of the topics.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-align: justify; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;ABAP/4 language, system administrative tools, all these components are used to control, tune the R/3 system.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-align: justify; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Spool system manages the formatting of data for printing and passing it to the host spool system.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-align: justify; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Mail system you can send and receive mail from the outside world (Internet).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-align: justify; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Communication
 interface to external system from R/3 system: Manages communication at 
the OS level (TCP/IP), at the database level &amp;amp; between applications 
too. (RFC, EDI, and ALE)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-align: justify; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Database
 interface – This component supports different Relational databases from
 different vendors.&amp;nbsp; The main task of database interface is to convert 
the SQL request from the SAP development environment to the database’s 
own SQL environment.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-align: justify; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Background processing with this facility you can submit your program for background execution.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
BASIS system contains the layered components that facilitate the development of client/server architecture.&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209832&quot;&gt;&amp;nbsp;&lt;/a&gt;&lt;/h4&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314389&quot;&gt;Client / Server architecture&lt;/a&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
Client/Server
 architecture is mainly a software concept that includes a set of 
service providers and service requesters.&amp;nbsp; The set of computers acts as 
service providers and is called as server.&amp;nbsp; The sets of software 
component, which act as service requester, are called as client.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
In
 the client/server architecture, the database acts like a library clerk 
retrieving books from the shelf.&amp;nbsp; The user programs have to request 
database for the data instead of searching for the data themselves.&amp;nbsp; 
This way there is no risk of the users putting the data out of order.&amp;nbsp; 
If the desired data is in use, the database makes the user wait until it
 is free.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
The
 major advantage of the client/server architecture is that the server is
 available for a number of clients and there is distribution of work 
between the clients and the server.&amp;nbsp; The user directs the request to the
 client; the client in turn understands the user’s request and redirects
 the request to the server.&amp;nbsp; The server retrieves the data, gives it to 
client.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
You
 can have client and server on the same machine or on different 
machines.&amp;nbsp; Each client has a corresponding process inside the server.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
One
 of the most used client/server configurations with the R/3 system is 
the 3 tiered architecture, which separates a system’s computer into 3 
functional groups:&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209833&quot;&gt;&amp;nbsp;&lt;/a&gt;&lt;/h4&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314390&quot;&gt;Three tier architecture of R/3&lt;/a&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
Database Server&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
Application Server&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
Presentation Server&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
(Unlike normal Client/server architecture where you have only two layers i.e., client and server.)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
Communication
 among the 3 tiers is accomplished by standard protocol services like 
TCP/IP or CPIC (Common Programming Interface Communication).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJAvUxBOBKW-OfDdV58u9GD84Yr0jkr8uUsusFA6g94zkKf3z4xq8o1nhq9PVHWeefTLIuR6_JhCONi5WEQwKFVV_41sWEAIOfA1OIqZKnzEE6oacp2yP1gnCrqhyxto3Si4HftZq10kRO/s1600/image006.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;216&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJAvUxBOBKW-OfDdV58u9GD84Yr0jkr8uUsusFA6g94zkKf3z4xq8o1nhq9PVHWeefTLIuR6_JhCONi5WEQwKFVV_41sWEAIOfA1OIqZKnzEE6oacp2yP1gnCrqhyxto3Si4HftZq10kRO/s640/image006.gif&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;table align=&quot;left&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td height=&quot;7&quot; width=&quot;1&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
In
 above case database server stores the data centrally.&amp;nbsp; Basically 
contains database engine and associated processes.&amp;nbsp; The database layers 
contain the database system used by all servers.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
Application server contains software components to run the program.&amp;nbsp; It contains a SAP kernel, which can run ABAP/4 program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
The
 presentation server is your client through which you send your request 
to application server.&amp;nbsp; It is also called as SAP graphical user 
interfaces known as SAPGUI and is available in windows 3.1, Windows NT, 
Windows 95, and Macintosh.&amp;nbsp; They all look similar whatever underlying 
system they are running on.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
The
 SAPGUI includes all graphical capabilities of window interface with 
menu bars, tool bars, focus property, and the entire mouse clicking 
operations.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
The
 R/3 system is open system in the sense that it can run on any operating
 system or any database and any communication technology.&amp;nbsp; It means 
that:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-align: justify; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;R/3 system can run on any operating system platform such as UNIX, NT, 95, AS/400.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-align: justify; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;It supports various RDBMS such as SQL server, Oracle, Informix, DB2.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-align: justify; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Standard GUIs supported by R/3 are Windows 95, NT, Windows 3.1, and Macintosh.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-align: justify; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;SAP can use standard communication protocols TCP/IP, CPIC, OSF/DCE/DME for network.&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoHeading9&quot;&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314391&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;ABAP/4 Development Workbench&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
The
 development environment of SAP R/3 system is fully integrated set of 
various development tools, data dictionary, and programming language.&amp;nbsp; 
Full integration of all components means that changes in any part have a
 direct and immediate effect on all application using those components.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
The screen of ABAP/4 development workbench looks like&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj248rswa7_O6OWA-RJX_JR6Aduss_XF6ywjJyV8Hg7cxinB0GMNTlxJpVTXWTTtpxi2PvUIykytJMhvP62_9FgF-H6ryfk8e9h5FIvsJSuVfYoU_QKUJPXfUlPfmcAcrHgPphyphenhyphen3ZLZXUtF/s1600/image007.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;460&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj248rswa7_O6OWA-RJX_JR6Aduss_XF6ywjJyV8Hg7cxinB0GMNTlxJpVTXWTTtpxi2PvUIykytJMhvP62_9FgF-H6ryfk8e9h5FIvsJSuVfYoU_QKUJPXfUlPfmcAcrHgPphyphenhyphen3ZLZXUtF/s640/image007.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Tools of ABAP/4 workbench&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText3&quot;&gt;
For programming:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;ABAP/4
 dictionary Defining, maintaining and storing the data dictionary of the
 SAP R/3 system stores all the dictionary objects including tables 
relationship and Help information. Transaction code for this is SE11.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;ABAP/4
 editor Creating and maintaining the ABAP/4 program, editing function 
modules, logical database, and screens. Transaction code is SE38.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Function library Defining and maintaining the ABAP/4 function modules.&amp;nbsp; Transaction code is SE37.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Screen painter Designing and maintaining the screens in transaction.&amp;nbsp; Transaction Code is SE51.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Menu painter Designing and maintaining the means for graphical user interface.&amp;nbsp; Transaction code SE41.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText3&quot;&gt;
For Navigating:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Object browser Managing and organizing the development object in a hierarchical form.&amp;nbsp; Transaction code is SE80.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;ABAP/4
 repository information Navigating and searching for the dictionary 
Objects, development objects and relationship objects. Transaction code 
SE84.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Data browser Navigating in the data tables of the database.&amp;nbsp; Transaction code is SE 16.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText3&quot;&gt;
For Debugging:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;SOL trace tracking the database calls from the system transaction and programs.&amp;nbsp; Transaction code is ST05.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Debugger Stopping the program and analyzing the results of the execution of every program statement.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Runtime Analysis Analyzing the performance the system calls Transaction code is SE30&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText3&quot; style=&quot;line-height: 18pt;&quot;&gt;
For Organizing:&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Workbench
 organizer controlling and keeping track of development work and team 
related development projects and managing versions of development 
objects. Transaction code is SE09.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Transport system performing and managing the transport of development object across different system. Transaction code is SE01&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 16pt;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;&lt;/span&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoHeading9&quot;&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314392&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209835&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;Data Dictionary&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
The
 ABAP/4dictionary is central workbench repository utility providing the 
data definition and the information relationship that are later used in 
all the business application within R/3&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
The
 ABAP/4 dictionary can be seen as a logical representation or a superior
 layer over the physical underlying database. This database must support
 the relational data model. This model is strictly followed by data 
dictionary.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314393&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209836&quot;&gt;About Data Dictionary&lt;/a&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
A Data dictionary in computing terms is the&amp;nbsp;&lt;b&gt;source of information in which system data is defined&lt;/b&gt;. The data dictionary is the&amp;nbsp;&lt;b&gt;centralized and structured source of information for business applications.&amp;nbsp;&lt;/b&gt;You can say that it is core of a well-structured development environment.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
The elements that make up a dictionary are known as metadata.&amp;nbsp;&lt;b&gt;Metadata is the term for the data whose function is to describe other data.&amp;nbsp;&lt;/b&gt;Data
 in dictionary is not the actual data like emp. name or emp. address but
 rather a type of data whose function is to define the properties of the
 data such as type, length, and relationship.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314394&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209837&quot;&gt;Advantages&lt;/a&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
Advantage
 of using data dictionary is avoiding inconsistencies when defining data
 type that will later be used in different applications. This avoids 
redundancies.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
When
 a type is defined in the dictionary, it is available to any program in 
the application. A change in the definition of a type of data in the 
dictionary automatically affects any other data or program, which has 
this data.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
Again,
 data dictionary is a fast and efficient way to answer questions such as
 which entries exist in a table of the database, what the structure of 
table is.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
&lt;b&gt;Activation of dictionary objects&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
For
 a dictionary object to be effective at runtime, that is, for a 
dictionary object to be available for use within a program, transaction,
 and so on, it must be in active status.&amp;nbsp; For objects to become active, 
R/3 includes the ACTIVATION function.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
When
 a table or aggregated object is activated, it is placed at the disposal
 of the system as a runtime object in a way that makes it available 
quickly for the application program to access relevant information of 
new activated objects.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
When
 a dictionary object is modified, that means that the object previously 
existed and activated.&amp;nbsp; You need to reactivate the object after 
modification.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
When
 mass activation is performed massively, it might take a quite a long 
time. Then it should be in the background system.&amp;nbsp; This type of 
activation is known as background activation.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The
 ABAP/4 Data dictionary is the central component of ABAP/4 repository.&amp;nbsp; A
 Data dictionary is centralized and structured source of information for
 business application.&amp;nbsp; The ABAP/4 dictionary is the core of the R/3 
development system.&amp;nbsp; It is the source of every definition, within R/3, 
from the very basic domain to the company data model.&amp;nbsp; It is totally 
integrated with other tools of the development environment like screen 
painter, menu painter, and editor.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
Some of the main available functions in the ABAP/4 dictionary are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Add, delete, modify, and manage the definition of the dictionary data.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Preserve the data integrity.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Be
 the central source of information e.g. from the dictionary you get the 
information about the defined relationship between two tables or even 
the directory tells whether table is active or empty.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;It also permits documentation of system data.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In
 the R/3 system instead of working with original objects, you work with 
internal representation of objects.&amp;nbsp; With this type of operation the 
system performance is enhanced and has the advantage that the 
development tools, screen interpreters always access current data.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
When
 any of the data dictionary objects are used in other parts of the 
development workbench for example, in program, programmer only has to 
enter a table name or field name.&amp;nbsp; The system automatically knows all 
the properties and information of the field.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
To call ABAP/4 dictionary, from the main menu,&amp;nbsp;&lt;b&gt;Tools&amp;nbsp;&lt;/b&gt;&lt;b&gt;&lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt;&amp;nbsp;ABAP/4 workbench&amp;nbsp;&lt;/b&gt;&lt;b&gt;&lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt;&amp;nbsp;data dictionary or enter transaction SE11.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiIjDBhkP1dSNDKkaov832Y6jRZYqVytXbPSVBIJyf8W4zLAxO8GDH8uE8M2oa8KAZ7OpM2sU5Mk9-uFZwWGGxR6NWKT9j820pAxu82Of6fB6DiQ_5xAxKo3Jcq5yT4i75LV8zTeFhbM-RB/s1600/image009.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;460&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiIjDBhkP1dSNDKkaov832Y6jRZYqVytXbPSVBIJyf8W4zLAxO8GDH8uE8M2oa8KAZ7OpM2sU5Mk9-uFZwWGGxR6NWKT9j820pAxu82Of6fB6DiQ_5xAxKo3Jcq5yT4i75LV8zTeFhbM-RB/s640/image009.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Data dictionary objects:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Table:&lt;/b&gt;&amp;nbsp;is
 a 2D data matrix containing rows and columns.&amp;nbsp; Rows contain data while 
column indicates fields.&amp;nbsp; Table can contain 0 or multiple rows.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Structure&lt;/b&gt;:
 is a skeletal view of a table.&amp;nbsp; It contains the definition of columns 
and don’t have any contents. Structure is generally a template based on 
which a table is created. The basic difference between structure and 
table is that the structure does not exist at the underlying database 
system level.&amp;nbsp; Structure exists as definition in the dictionary.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Views:&amp;nbsp;&lt;/b&gt;A
 view is an imaginary table.&amp;nbsp; It contains data, which is really stored 
in other tables.&amp;nbsp; The contents for the view are dynamically generated 
when called from program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Data element:&lt;/b&gt;&amp;nbsp;
 is definition of the properties and type for a table field.&amp;nbsp; It is an 
intermediate object between the object type domain and the table field.&amp;nbsp;
 A field in R/3 system is always associated with a data element, which 
at the same time is related to domain.&lt;b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Domain:&lt;/b&gt;&amp;nbsp;is
 formal definition of the data type from a technical point of view. It 
sets the attributes such as data type, length, possible value range and 
so on.&lt;b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Lock objects:&amp;nbsp;&lt;/b&gt;These
 types of objects are used for locking the access to database records in
 table.&amp;nbsp; This mechanism is used to enforce data integrity that is two 
users cannot update the same data at the same time.&amp;nbsp; With lock objects 
you can lock table-field or whole table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Search Help Objects:&amp;nbsp;&lt;/b&gt;, which gives list of possible values for either primary keys or non-primary keys.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209838&quot;&gt;&amp;nbsp;&lt;/a&gt;&lt;/h4&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314395&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;Tables in ABAP/4 dictionary&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Tables
 are the basic objects in R/3 application. There are almost 8000 tables 
in R/3 system.&amp;nbsp; Following types of tables are available&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;ul style=&quot;margin-top: 0in;&quot; type=&quot;disc&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;Transparent tables&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;Pool tables&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;Cluster tables&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
From
 user point of view, all tables are used to store data whatever be the 
type of table.&amp;nbsp; There is no difference in the behavior or operation of 
these tables.&amp;nbsp; All of them can be managed by using standard OPEN SQL.&amp;nbsp; 
However from an administrator point of view transparent table do exists 
with the same structure both in the dictionary as well as in the 
database, exactly with the same data and fields.&amp;nbsp; While other two are 
not transparent in the sense that they are not manageable directly using
 database system tools.&amp;nbsp; You can access these tables in R/3 environment 
from the ABAP/4 dictionary.&amp;nbsp; You cannot use native SQL on these tables.&amp;nbsp;
 Pool or cluster tables are logical tables, which are arranged as 
records of transparent table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
A
 table is made up of rows and columns.&amp;nbsp; When the table is created, its 
columns are named; data type is supplied for each column.&amp;nbsp; There can be 
only one data value in each column of each row in a table.&amp;nbsp; Record or as
 it is called in different RDBMS is nothing but group of fields. While a
 column is a field of a table, a table is an indexed file.&amp;nbsp; The main 
index is called as primary key, which can be a single field or 
combination of keys or fields.&amp;nbsp; A primary key can be defined as a field,
 which indefinites a single unique record of the table.&amp;nbsp; A table cannot 
have record with duplicate primary key.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In
 any RDBMS, tables are related to each other.&amp;nbsp; But to relate table to 
each other it is necessary that one of the tables contain some 
information of other table.&amp;nbsp; Mostly tables are related to each other 
through primary keys.&amp;nbsp; The primary key of one table, if it exists in 
other table then it is called foreign key. This type of database 
management system means that there is some redundancy of data. But using
 normalization procedures available can minimize it.&amp;nbsp; One of the most 
important functions of foreign key is to ensure data integrity.&amp;nbsp; For 
example say you have EMP table, which has fields: emp. no., emp.name, 
dept.code, salary and you have DEPT tables, which has dept.code and 
dept.desc.&amp;nbsp; Then in DEPT table dept.code is primary key while dept.code 
in EMP table is foreign key.&amp;nbsp; If you enter dept.code for particular 
employee in EMP table the dept.code should exist in DEPT table.&amp;nbsp; System 
will check the value for dept.code in DEPT table, and if does not exist 
then will flash error.&amp;nbsp; In this case DEPT is called check table while 
EMP is foreign key table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314396&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209839&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;Creation of table&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;h5&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/h5&gt;
&lt;h5&gt;
Steps to create a table&lt;/h5&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Create domain&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Create data element&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Create actual table&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209840&quot;&gt;&amp;nbsp;&lt;/a&gt;&lt;/h4&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314397&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;Creating Domain&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
Domain
 as already explained defines the technical properties of a field such 
as type and value range.&amp;nbsp; A domain can be created from initial screen of
 data dictionary by clicking on create and clicking domain Radiobutton. 
Parameters to be passed are:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Data type: Where you need to enter the data type available in SAP.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Field length:&amp;nbsp; Field length is the number of valid position.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Value
 table: Name of a table to be entered.&amp;nbsp; The fields referring to this 
domain may only assume values contained in the value table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Once the domain is created, save and activate it, so that it can be used for further objects (basic rule of dictionary).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209841&quot;&gt;&amp;nbsp;&lt;/a&gt;&lt;/h4&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314398&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;Creating Data Element&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
The
 second step of table creation is to create data element.&amp;nbsp; It assigns a 
certain meaning to the table field, which are defined using that data 
element. A Data element always needs to be defined over a domain and 
field is always defined over a data element.&amp;nbsp; This allows all fields 
with same technical properties to use the same data element.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Parameters to be passed when creating a data element:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Short text:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Mandatory field.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 1in; text-indent: -1in;&quot;&gt;
Domain:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A mandatory field.&amp;nbsp; If the domain does not exist, SAP can take you directly to domain definition screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Text element:&amp;nbsp; You can enter description is short or long text for the field.&amp;nbsp; This text is used when&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
entering data for these fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Save and activate.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Creation of actual table&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
Parameters to be passed for creation of table:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Short description:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Mandatory field.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Delivery class:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; As per User Requirement&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Table fields:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Specify whether primary key.&amp;nbsp; In this case it is mandatory to enter data element.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Data class:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Establishes the physical area of the database.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Size category:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Allows you to specify estimated space requirement for the table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Further
 down under buffering square box, the system allows specifying whether 
table is going to be buffered.&amp;nbsp; When a table is buffered, it is loaded 
into the table buffer from the application server memory and it will 
remain there until you switch off or reboot system.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
If
 the table is to be buffered, you need to specify the type of 
buffering.&amp;nbsp; Full is for entire table while partial is for only those 
records which are being accessed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Once the table is created, it has to be generated or activated to be able to access by other objects like programs.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 16pt;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;&lt;/span&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoHeading9&quot;&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314399&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209842&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;General Introduction to ABAP/4&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
SAP
 originally developed the programming language ABAP/4 (Advanced Business
 Application Programming) for internal use to provide best working 
conditions for developers.&amp;nbsp; SAP constantly improves the language to 
adapt to the increasing requirements of the business applications.&amp;nbsp; At 
present, ABAP/4 is the only tool for developing applications at SAP.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
SAP
 customers use ABAP/4 for their own developments.&amp;nbsp; The ABAP/4 
Development Workbench contains all tools you need to create and maintain
 ABAP/4 programs.&amp;nbsp; ABAP/4 programs are not complied but generated.&amp;nbsp; 
During generation, the system creates a so-called runtime object from 
the source code and the program attributes.&amp;nbsp; When you start the program,
 the system executes the runtime object.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
ABAP/4,
 a fourth generation language, contains all usual control structures and
 modularizing concepts for structured programming.&amp;nbsp; The three parts of 
the ABAP/4 language are:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Structure and execution of ABAP/4 programs&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Basic language elements&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Programming reports&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Programming dialogs&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;&lt;i&gt;Structure and execution of ABAP/4 programs&lt;/i&gt;&lt;/b&gt;&amp;nbsp;are
 essentially different from entirely sequential programming languages 
such as FORTRAN, PASCAL, or C.&amp;nbsp; ABAP/4 instead shares certain 
similarities with modular, event-orient programming languages such as 
Visual Basic or JAVA.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The two most important statements concerning structure and execution are:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
An ABAP/4 program has a modular structure.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
For execution, you need a special runtime environment.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
This
 means, that ABAP/4 source texts always consist of a collection of 
program modules (one single module in the easiest case) or the 
sequential set of statements. The individual program modules consist of 
sequential elements. The set of statements of a program module is also 
called processing block.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The
 runtime environment is responsible for calling the individual program 
modules one after the other.&amp;nbsp; The runtime environment is the&amp;nbsp;&lt;b&gt;&lt;i&gt;ABAP/4 processor,&lt;/i&gt;&lt;/b&gt;&amp;nbsp;which can communicate with&amp;nbsp;&lt;b&gt;&lt;i&gt;the list processor or the dialog processor&lt;/i&gt;&lt;/b&gt;, depending on the program type.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Program
 flow within the individual processing blocks is sequential, as you know
 it from other sequential programming languages (for example, FORTRAN, 
PASCAL and C).&amp;nbsp; Within the processing blocks, you can use the general 
control statements for the program flow, such as IF, DOES, WHILE, ABAP/4
 does not contain GOTO elements.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
We
 mainly use programs that consist of a single processing block only and,
 therefore, behave most likely like programs of other sequential 
programming languages.&amp;nbsp; For programming applications, the entirely 
sequential concept is not sufficient.&amp;nbsp; SAP distinguishes between two 
general types of application programs:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Reports:&amp;nbsp;&lt;/b&gt;You
 use reports to read databases and represent the results in lists.&amp;nbsp; 
Reports are collections of processing blocks that the system calls 
depending on events.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Dialog programs:&amp;nbsp;&lt;/b&gt;You
 can dialog programs to execute transactions, which usually read and 
change databases.&amp;nbsp; Dialog programs are collections of processing blocks 
(so-called module pools) that are called by a screen flow logic.&amp;nbsp; The 
third part of the User’s Guide describes dialog programming in detail.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText3&quot;&gt;
Reports can call dialog programs and vice versa.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In its easiest version, an ABAP/4 program contains one single sequential piece of coding and, thus, one single processing block.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314400&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209843&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;Characteristics of the ABAP/4 programming languages&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Declarative elements for declaring data of different type and structures.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Operational elements for manipulating data.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Control elements to control processing flow.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;ABAP/4
 is multi-lingual.&amp;nbsp; Text elements such as titles, headings, and text 
body are stored separately, independent of the program codes.&amp;nbsp; Thus, you
 can change, translate, and maintain text elements without having no 
adapt the coding.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;ABAP/4
 supports business-related data types and operations. You can execute 
calculations using special data and time fields.&amp;nbsp; The system 
automatically executes all necessary type conversions.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;ABAP/4 provides a number of functions for processing character strings.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;ABAP/4
 allows you to define and call subroutines.&amp;nbsp; You can even call 
subroutines of other programs.&amp;nbsp; There are different ways of how to pass 
parameters to and from the Subroutines.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;ABAP/4
 contains a special type of subroutine, called function module.&amp;nbsp; 
Function modules are stored and maintained in a central library.&amp;nbsp; They 
have clearly defined data interfaces to the calling program.&amp;nbsp; You can 
test function modules in a stand-alone mode independent of the calling 
program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;ABAP/4
 contains an SQL subset called OPEN SQL.&amp;nbsp; OPEN SQL allows you to read 
and change database tables independent of the underlying database 
system.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;ABAP/4
 allows you to define and process internal tables that exist only for 
the execution period of the program. Internal tables efficiently support
 the usage of database tables and allow you to implement complex data 
structures in a program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;ABAP/4 allows you to store data not only in databases but also as sequential files on application and presentation servers.&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209844&quot;&gt;&amp;nbsp;&lt;/a&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314401&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;REPORTS&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Reports are ABAP/4 programs.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;You
 use reports to evaluation data from database tables.&amp;nbsp; The results of 
such an evaluation can be displayed on the screen or printed form.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Reports are stand-alone programs.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;The user can execute reports directly via the program name, for example, by choosing System ® Utilities ® Reporting.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;A
 report program contains a collection of processing blocks for different
 events that are always triggered externally.&amp;nbsp; In a report, you can 
react on events by programming the corresponding processing blocks or 
ignore the events by not writing the corresponding processing blocks.&amp;nbsp; A
 report itself never creates events.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Reports can use logical databases or select statements defined by developer.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;For each application, SAP supplies logical databases.&amp;nbsp; Or you can easily create logical database yourself.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Event control of a report corresponds to a certain scheme:&lt;/div&gt;
&lt;div class=&quot;MsoBodyTextIndent&quot;&gt;
When
 a report is executed, the ABAP/4 processor creates together with the 
logical database used (if any) a sequence of certain events for which 
you can program processing blocks. The chronology of the events is (more
 or less)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt;&quot;&gt;
Steps involved in creating a Report:&lt;/div&gt;
&lt;ol start=&quot;1&quot; style=&quot;margin-top: 0in;&quot; type=&quot;1&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; text-align: justify;&quot;&gt;&lt;b&gt;Processing the selection screen&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; margin-left: 0.5in;&quot;&gt;
After
 starting a report, the selection screen allows the user to enter limits
 or control values for further report processing. The report can contain
 several processing blocks for events during selection screen 
processing, for example, for checking the input values.&lt;/div&gt;
&lt;ol start=&quot;2&quot; style=&quot;margin-top: 0in;&quot; type=&quot;1&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; text-align: justify;&quot;&gt;&lt;st1:city w:st=&quot;on&quot;&gt;&lt;st1:place w:st=&quot;on&quot;&gt;&lt;b&gt;Reading&lt;/b&gt;&lt;/st1:place&gt;&lt;/st1:city&gt;&lt;b&gt;&amp;nbsp;the database&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; margin-left: 0.5in;&quot;&gt;
After
 selection screen processing come the events for reading the database. 
Either the report reads data from relational databases it using the 
corresponding ABAP/4 statements (open SQL) or leaves this task to a 
logical database. In the latter case, the logical database creates a 
sequence of events to allow the report to copy the data.&lt;/div&gt;
&lt;ol start=&quot;3&quot; style=&quot;margin-top: 0in;&quot; type=&quot;1&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; text-align: justify;&quot;&gt;&lt;b&gt;Evaluating data and creating lists&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; margin-left: 0.5in;&quot;&gt;
During
 or after reading the database the report creates the output list. 
During list creation, several events allow you to layout the output list
 (for example, layout the page header).&lt;/div&gt;
&lt;ol start=&quot;4&quot; style=&quot;margin-top: 0in;&quot; type=&quot;1&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; text-align: justify;&quot;&gt;&lt;b&gt;Outputting a list&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 18pt; margin-left: 0.5in;&quot;&gt;
The
 last part of the processing sequence controlled by the ABAP/4 processor
 is the list output on the screen or printer. When displaying the list 
on the screen, user can trigger other reports, that are interactive and 
are event driven. For example, by clicking the mouse. By programming 
processing blocks for these events, you change a normal report to a 
so-called&amp;nbsp;&lt;b&gt;Interactive report&lt;/b&gt;. If a report does not contain event 
keywords, the entire coding of the report belongs to a single processing
 block, which is called by a standard event. This standard event is 
triggered directly after processing the selection screen.&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209845&quot;&gt;&amp;nbsp;&lt;/a&gt;&lt;/h4&gt;
&lt;h4&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/h4&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314402&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;DIALOG PROGRAMS&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;You
 use dialog programs to execute transactions.&amp;nbsp; The users of dialog 
programs in dialog sessions read and change database tables.&amp;nbsp; Apart from
 the actual data processing (Open SQL), update and enqueue concepts are 
of great importance when programming dialogs.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Dialog programs are not stand- alone&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;To
 execute dialog programs, they must be linked to at least one screen 
that itself is linked to a transaction code. The transaction code 
determines the initial screen with which the dialog session starts.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Dialog programs are controlled by screen flow logic&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;The
 actual ABAP/4 dialog program is a so-called module pool. A module pool 
contains a collection of dialog modules that are called by the screen 
flow logic.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;To
 each module pool, at least one, but usually several screens are 
allocated. Each screen has flow logic. The flow logic consists of PBO 
(process Before output) and PAI (process After Input) blocks. This flow 
logic does not use the ABAP/4 programming language and the ABAP/4 Editor
 tool, but a special statement set and the Screen Painter tool, which 
you also use to layout screens.&amp;nbsp; The flow logic mainly contains the 
chronologically ordered calls of the modules in the corresponding module
 pool.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;i&gt;The collection of PBO flow logic, screen, and PAI flow logic is called Dynamic program (Dynpro)&lt;/i&gt;&lt;/b&gt;.&amp;nbsp;
 A module pool must have at least one dynpro. Each screen of a dialog 
session thus is the visible part of a dynpro, to which also the flow 
logic belongs. The processing logic of a dialog session is stored in the
 corresponding module pool in the form of ABAP/4 modules.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;The
 ABAP/4 modules in the module pool are separated into PBO and PAI 
modules. The PBO or PAI blocks of the flow logic of each dynpro of a 
module pool can call each PBO or PAI module of this module pool.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;You
 can use ABAP/4 statements in the processing logic of the module pool to
 control the chronology of the different dynpros.&amp;nbsp; After starting a 
dialog session via the transaction code, which is firmly connected to a 
dynpro of the module pool, the screen flow logic passes user entries to 
the processing logic in the ABAP/4 module pool.&amp;nbsp; The processing logic 
processes the user entries (database accesses) and, if required, defines
 the appropriate subsequent screens.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 16pt;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;&lt;/span&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoHeading9&quot;&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314403&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209846&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;Data Types and Data Objects&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
Data
 types and data objects are essential components of the ABAP/4 type 
concepts.&amp;nbsp; Both can be declared and maintained by user.&amp;nbsp; Unlike other 
programming languages in ABAP/4 you can create DATA TYPES independently.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314404&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209847&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;Data Types&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Are pure descriptions&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;No memory is associated with data types.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Describes the technical properties of data objects.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
Structure and definition classify data types.&amp;nbsp; Can be of:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
1. Elementary or structured&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
2. Predefined or user defined&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;h6 align=&quot;left&quot;&gt;
&lt;b&gt;Predefined&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/h6&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;User-defined&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
ELEMENTARY&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
C, D, F, I, N, P, T, X&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoHeader&quot; style=&quot;line-height: 16pt;&quot;&gt;
Based upon elementary Data types.&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
You can use directly&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
E.g.,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
TYPES: number types I. Can’t allocate memory to types.&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
STRUCTURED&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoHeader&quot; style=&quot;line-height: 16pt;&quot;&gt;
Predefined types are TABLES&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
User defined structured types are Field String and internal tables.&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 14pt;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;&lt;/span&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314405&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209848&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;Data Objects&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Data objects are units created during runtime.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Data object cannot exist without data type.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Occupies memory space.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314406&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209849&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;Kinds of Data Objects&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;1.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTERNAL DATA OBJECTS&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Literal&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
A literal has a fixed value.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
Ex WRITE:&amp;nbsp; “WORK HARD”&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Variables&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
DATA statement is used to create variables&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
Ex DATA: NUM TYPE I&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
NUM
 is a variable declared by DATA statement.&amp;nbsp; Any variable, which you use 
in program, need to be declared before you use it and can be done by 
DATA statement.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
Here variable is declared by referring to existing data type.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
Variable can also be declared by referring existing data object.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
Ex. We have already declared NUM by DATA statement.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
DATA: PRICE LIKE NUM.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
Here
 variable is declared by using LIKE parameter, which tells system that 
price has all the attributes of data object NUM i.e., PRICE is also of 
type I.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
The
 main difference between TYPE and LIKE parameter when defining or 
declaring the object is that TYPE is used to refer existing DATA TYPE 
(elementary or structured or user defined) while LIKE is used to declare
 data objects with reference to existing DATA OBJECTS.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Constant&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyTextIndent&quot;&gt;
Constant
 is a data object, which contains fixed value through out the program.&amp;nbsp; 
Constant can be declared in program by using CONSTANT statement.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
Ex. CONSTANT: INT TYPE I VALUE 15.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
In program value of INT cannot be changed.&amp;nbsp; If you give a statement like INT = 20.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
In this case system will give error.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;2.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EXTERNAL DATA OBJECTS&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt; margin-left: 0.5in;&quot;&gt;
Are defined in tables i.e., in ABAP/4 dictionary.&amp;nbsp; You can access this data from table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in;&quot;&gt;
TABLES: SFLIGHT&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in;&quot;&gt;
DATA: SEATS LIKE SFLIGHT-SEATSMAX.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;3.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYSTEM-DEFINED DATA OBJECTS&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h5&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SPACE &amp;amp; SYSTEM VARIABLES like sy-uname, sy-datum, &amp;amp; sy-repid.&lt;/h5&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;4.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SPECIAL DATA OBJECTS&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PARAMETERS: are variable, which can accept value from user.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SELECTIONS CRITERIA: are special internal tables to accept value range from user.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Need for Data types:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Consider the following example.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
DATA:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fname(20),&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mname(20),&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-indent: 0.5in;&quot;&gt;
lname(20),&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; add1(20),&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-indent: 0.5in;&quot;&gt;
add2(20),&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; add3(20).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
If
 you have DATA statement like above, and if you need to change the 
length of all the fields say from 20 to 25, then you need to change all 
the fields i.e., going through each and every statement.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
But consider the following case where TYPES has been used.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
TYPES:str(20)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
DATA:fname type str,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Mname type str,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Lname type str,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Add1 type str,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Add2 type str,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Add3 type str.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In
 this case if you need to change the length of all fields from 20 to 
25.&amp;nbsp; Then just change the length of STR and change will be reflected for
 all the fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
If
 you define all the types in TYPE-POOL i.e., global definition of all 
the types, you can use these types anywhere and in any program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314407&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209850&quot;&gt;Parameters&lt;/a&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Parameter
 statement is used to accept input from user.&amp;nbsp; PARAMETER statement is 
used when you want user to enter data and depending upon what he enters 
you need to take action.&amp;nbsp; The parameter statement declares the variable 
and also allows system to accept data into that variable.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Parameters: num type I.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Here
 parameter statement declares the variable and creates the selection 
screen on which user enters the data i.e., in this case num is declared 
of type I and user can enter any number.&amp;nbsp; Entered value is stored in the
 same variable and can be used in program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Data: m type I&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Parameters: num type I&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
M = num – 5&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Write: / ‘The number is’, m.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
You can define default values with parameter statement for example&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Parameter: num type I default 12.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In
 this case when selection screen is displayed the default value is 
displayed.&amp;nbsp; User can either use same value or overwrite the value.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Parameter of type character and length = 1, can be displayed as Checkbox and Radiobutton.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Parameter:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; C1 as Checkbox,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; C2 as Checkbox.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Parameter:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; R1 Radiobutton group g1,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; R2 Radiobutton group g1.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
When
 parameter is defined as Radiobutton, it needs to be attached to one 
group.&amp;nbsp; Only one Radiobutton of one group can be clicked.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Every
 parameter can be associated with language dependent text that is 
displayed on the selection screen. This can be done with the help of 
text elements.&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 16pt;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;&lt;/span&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoHeading9&quot;&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314408&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209851&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;WRITE Statement&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The basic APAB/4 statement for outputting data on the screen is WRITE.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
WRITE &amp;lt;field&amp;gt; &amp;lt;option&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
This statement outputs the field &amp;lt;f&amp;gt; to the current list in its standard output format.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
By default, the list is displayed on the screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The field &amp;lt;field&amp;gt;can be any variable or table field or just literal.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
PROGRAM ZDEMO&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
WRITE: /‘HELLO’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
When
 you start this program, the system leaves the current screen i.e., your
 editor screen and branches to the output screen, which is also called 
as list screen:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The
 list screen has the same name as the title of the program specified in 
the program attributes.&amp;nbsp; First line on the screen contains the list 
header.&amp;nbsp; By default, the list header is the same as the title of the 
program.&amp;nbsp; The current page number (1) appears on the right.&amp;nbsp; The list 
header is followed by one line and then the output is displayed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Write : ‘HELLO’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Write : ‘WORK HARD’&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
On
 the screen, the output is normally left justified.&amp;nbsp; But in above case, 
because we have used two WRITE statements, the output fields are 
displayed one after the other, each separated by one column (i.e., one 
blank).&amp;nbsp; If there is not enough space for an output field on the current
 line, a new line is started.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Almost
 all system-defined fields are right justified except FLOAT, INTEGER, 
and PACKED i.e., number field.&amp;nbsp; The numeric data types F, P, and I are 
right justified and padded with blanks on the left.&amp;nbsp; If there is 
sufficient space, thousands of separators are also output.&amp;nbsp; If a type P 
field contains decimal places, the default output length is increased by
 one.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
With
 the data type D, the internal format of a date differs from its output 
format.&amp;nbsp; When you use the WRITE statement for outputting data, the 
system automatically outputs dates of type D in the format specified in 
the user’s master record (e.g. DD/MM/YYYY or MM/DD/YYYY).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314409&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209853&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;Formatting output&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
You
 can position the output of a WRITE statement on the screen by making a 
format specification before the field name as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Syntax:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
WRITE AT [/][&amp;lt;pos&amp;gt;][(&amp;lt;len&amp;gt;)] &amp;lt;f&amp;gt;,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Where&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;ul style=&quot;margin-top: 0in;&quot; type=&quot;disc&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;‘the slash’/‘ denotes a new line,&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;&amp;lt;pos&amp;gt; is a number or variable denoting the position on the screen,&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;&amp;lt;len&amp;gt; is a number or variable long denoting the output length.&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
For variables you need to mention the AT, for direct values it is not necessary.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
DATA:&amp;nbsp; LEN TYPE I VALUE 10,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; POS TYPE I VALUE 11,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TEXT (10) VALUE ‘1234567890’&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
WRITE AT POS (LEN) TEXT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
This produces the following output on the screen;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The text – 1234567890 – appears in the text.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
If
 the output length &amp;lt;len&amp;gt; is too short, fewer characters are 
displayed.&amp;nbsp; Numeric fields are truncated on the left and prefixed with 
an asterisk (*). All other fields are truncated on the right, but no 
indication is given that the field is shorter.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
DATA: NUMBER TYPE I VALUE 1234567890,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TEXT (10) VALUE ‘abcdefghij’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
WRITE: (5) NUMBER, /(5) TEXT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
This produces the following output:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
7890&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
abcde&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In the default setting, you cannot create empty lines with the WRITE statement.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
WRITE: ‘One’,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /‘ ’,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; / ‘Two’&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The output looks as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
One&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Two&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The system suppresses lines that contain nothing but empty spaces.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
You can use various formatting options with the WRITE statement.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
WRITE………… &amp;lt;field&amp;gt; &amp;lt;option&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314410&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209854&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;Formatting options for all data types&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 218pt;&quot; valign=&quot;top&quot; width=&quot;291&quot;&gt;&lt;h5&gt;
&lt;b&gt;&lt;i&gt;Option&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/b&gt;&lt;/h5&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 218pt;&quot; valign=&quot;top&quot; width=&quot;291&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;b&gt;&lt;i&gt;Purpose&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 218pt;&quot; valign=&quot;top&quot; width=&quot;291&quot;&gt;&lt;h5&gt;
LEFT-JUSTIFIED&lt;/h5&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 218pt;&quot; valign=&quot;top&quot; width=&quot;291&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
Output is left justified.&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 218pt;&quot; valign=&quot;top&quot; width=&quot;291&quot;&gt;&lt;h5&gt;
CENTERED&lt;/h5&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 218pt;&quot; valign=&quot;top&quot; width=&quot;291&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
Output is centered.&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 218pt;&quot; valign=&quot;top&quot; width=&quot;291&quot;&gt;&lt;h5&gt;
RIGHT-JUSTIFIED&lt;/h5&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 218pt;&quot; valign=&quot;top&quot; width=&quot;291&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
Output is right justified.&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 218pt;&quot; valign=&quot;top&quot; width=&quot;291&quot;&gt;&lt;h5&gt;
NO-GAP&lt;/h5&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 218pt;&quot; valign=&quot;top&quot; width=&quot;291&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
The blank after the field &amp;lt;f&amp;gt; is omitted.&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 218pt;&quot; valign=&quot;top&quot; width=&quot;291&quot;&gt;&lt;h5&gt;
NO-ZERO&lt;/h5&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 218pt;&quot; valign=&quot;top&quot; width=&quot;291&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
If
 a field contains only zeros, these are replaced by blanks.&amp;nbsp; For type C 
and N fields, leading zeros are replaced automatically.&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314411&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209855&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;Formatting options for numeric fields&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 221.4pt;&quot; valign=&quot;top&quot; width=&quot;295&quot;&gt;&lt;h5&gt;
&lt;b&gt;Option&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/h5&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 214.6pt;&quot; valign=&quot;top&quot; width=&quot;286&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&lt;b&gt;Purpose&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 221.4pt;&quot; valign=&quot;top&quot; width=&quot;295&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
NO-SIGN&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 214.6pt;&quot; valign=&quot;top&quot; width=&quot;286&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
The leading sign is not output.&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 221.4pt;&quot; valign=&quot;top&quot; width=&quot;295&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
DECIMALS &amp;lt;d&amp;gt;&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 214.6pt;&quot; valign=&quot;top&quot; width=&quot;286&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&amp;lt;d&amp;gt; defines the number of digits after the decimal point.&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 221.4pt;&quot; valign=&quot;top&quot; width=&quot;295&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
EXPONENT &amp;lt;e&amp;gt;&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 214.6pt;&quot; valign=&quot;top&quot; width=&quot;286&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
In type F fields, the exponent is defined in &amp;lt;e&amp;gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 221.4pt;&quot; valign=&quot;top&quot; width=&quot;295&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
ROUND &amp;lt;r&amp;gt;&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 214.6pt;&quot; valign=&quot;top&quot; width=&quot;286&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
Type P fields are multiplied by 10**(-r) and then rounded&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 221.4pt;&quot; valign=&quot;top&quot; width=&quot;295&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
CURRENCY &amp;lt;c&amp;gt;&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 214.6pt;&quot; valign=&quot;top&quot; width=&quot;286&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
Format according to currency &amp;lt;c&amp;gt; in table TCURX.&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 221.4pt;&quot; valign=&quot;top&quot; width=&quot;295&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
UNIT &amp;lt;u&amp;gt;&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;padding: 0in 5.4pt; width: 214.6pt;&quot; valign=&quot;top&quot; width=&quot;286&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
The number of decimal places is fixed according to the unit&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;
&amp;lt;u&amp;gt; specified in table T006 for type P fields.&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Horizontal lines&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
You can generate horizontal lines on the output screen by using the following syntax:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
ULINE&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Will draw a horizontal line.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
ULINE (10)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Will start drawing horizontal line from 10&lt;sup&gt;th&lt;/sup&gt;&amp;nbsp;column position.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
WRITE at 10(40) SY-ULINE&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
This statement draws a horizontal line from 10&lt;sup&gt;th&lt;/sup&gt;&amp;nbsp;position.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Vertical lines&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
You generate vertical lines one the output screen by using the following syntax:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
WRITE [AT [/] [&amp;lt;pos&amp;gt;]] SY-VLINE.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Blank lines&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
You can generate blank lines on the screen by using the following syntax :&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
SKIP [&amp;lt;number&amp;gt;]&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Starting
 on the current line, this statement generates &amp;lt;number&amp;gt; blank 
lines on the output screen.&amp;nbsp; If no value is specified for 
&amp;lt;number&amp;gt;, one blank line is output.&amp;nbsp; In the standard setting, you 
cannot create empty lines with the WRITE statement alone.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
To position the output on a specific line on the screen use:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
SKIP TO LINE &amp;lt;number&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
This statement allows you to move the output position upwards or downwards.&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 16pt;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;&lt;/span&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoHeading9&quot;&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314412&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209856&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;Branches&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
Like other higher programming languages, ABAP/4 provides standard keywords to control the flow of a program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Usually
 ABAP/4 programs get executed statement by statement.&amp;nbsp; Many times you 
need to skip few statements depending upon certain conditions i.e., you 
change the flow of program.&amp;nbsp; This can be done by:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;branching (IF, CASE)&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;looping (DO, WHILE)&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
However, unlike other language where you have only internal control,&amp;nbsp;&lt;b&gt;ABAP/4 has internal control and external control of the program flow.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;The&amp;nbsp;&lt;b&gt;internal control&lt;/b&gt;&amp;nbsp;is steered by standard keywords as mentioned above.&amp;nbsp; You define this in your program code.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;The&amp;nbsp;&lt;b&gt;external control&amp;nbsp;&lt;/b&gt;is
 stored by events.&amp;nbsp; Events are generated either from other ABAP/4 
programs or from interactive user input (like, for example, using the 
mouse to click on the screen).&amp;nbsp; The system does not necessarily process 
the statements in the same sequence as they are listed in an ABAP/4 
program. This makes ABAP/4 an event-driven programming language.&amp;nbsp; The 
external control plays an important role mainly for report programs.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314413&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209857&quot;&gt;Branching with IF statement&lt;/a&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The IF statement allows you to&amp;nbsp;&lt;b&gt;divert the program flow to a particular statement&amp;nbsp;&lt;/b&gt;block,
 depending on a condition.&amp;nbsp; This statement block consists of all the 
commands which occur between an IF statement and the next ELSEIF, ELSE, 
or ENDIF statement.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
IF&amp;lt;condition1&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;statement block&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
ELSE&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;statement block&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
ENDIF&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
If
 the first condition is true, the system executes all the statements up 
to the end of the first statement block and then continues processing 
after the ENDIF statement.&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
To introduce 
alternative conditions, you can use ELSEIF statements.&amp;nbsp; If the first 
condition is false, the system processes the following ELSEIF statement 
in the same way as the IF statement.&amp;nbsp; ELSE begins a statement block 
which is processed if none of the IF and ELSEIF conditions is true.&amp;nbsp; The
 end of the last statement block must always be concluded with ENDIF.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
IF &amp;lt;condition1&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;statement block&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
ELSEIF &amp;lt;condition2&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;statement block&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
ELSEIF &amp;lt;condition3&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;statement block&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
ELSE.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;statement block&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
ENDIF.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
ABAP/4
 allows unlimited nesting of IF – ENDIF statement blocks, but they must 
terminate within the same processing block.&amp;nbsp; In other words, an IF – 
ENDIF block cannot contain an event keyword.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314414&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209858&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;Branching with CASE statement&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
To
 execute different statement blocks depending on the contents of 
particular data fields, you can either use IF statement or the CASE 
statement as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
CASE &amp;lt;f&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp; WHEN &amp;lt;f1&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;statement block&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp; WHEN &amp;lt;f2&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;statement block&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp; WHEN &amp;lt;f3&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;statement block&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp; WHEN OTHERS.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;statement block&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;ENDCASE.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The
 system executes the statement block after the WHEN statement if the 
contents of &amp;lt;f&amp;gt; equals the contents of &amp;lt;fi&amp;gt;, and continues 
processing after the ENDCASE statement.&amp;nbsp; The statement block after the 
optional WHEN OTHERS statement is executed if the contents of &amp;lt;f&amp;gt; 
do not equal any of the &amp;lt;fi&amp;gt; contents.&amp;nbsp; The last statement block 
must be concluded with ENDCASE.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The
 conditional branching using CASE is a shorter and simpler form of 
similar processing with IF.&amp;nbsp; When you have many conditions IF becomes 
more complicated in such cases CASE is used.&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 16pt;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;&lt;/span&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoHeading9&quot;&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314415&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209859&quot;&gt;&lt;span style=&quot;font-size: 14pt;&quot;&gt;LOOPING&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 14pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314416&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70153935&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209860&quot;&gt;Looping with DO statement&lt;/a&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
If you want to write your name say for 10 times, you need to write WRITE statement for 10 times.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
When
 you want to process a statement more than once, you can write this 
statement within a loop with the DO statement as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
DO 5 times.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp; Write : / name.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
ENDDO.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The system continues processing the statement block for 5 times introduced by DO and concluded by ENDDO.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The
 system field SY-INDEX contains the number of times the loop has been 
processed so in this case when the loop is over value of sy-index will 
be 5.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In
 this case you know that, you want to perform WRITE statement for 5 
times.&amp;nbsp; But that is not the case always.&amp;nbsp; Many times you need to 
terminate the loop depending upon certain conditions. This can be done, 
by using&amp;nbsp;&lt;b&gt;EXIT&amp;nbsp;&lt;/b&gt;or&lt;b&gt;&amp;nbsp;STOP&amp;nbsp;&lt;/b&gt;statement.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The
 important point to remember when you don’t you use TIMES option, is to 
avoid endless loops when working with the DO statement.&amp;nbsp; If you do not 
use the TIMES option, include at least one EXIT, STOP statement so that 
the system can leave the loop.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
EXIT and STOP takes you out of that loop.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314417&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;Looping with WHILE Statement&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
If
 you want to process a statement block more than once as long as a 
condition is true, you can program a loop with the WHILE statement as 
follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
DATA: M TYPE I VALUE 0.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
WHILE M &amp;lt; 10.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp; WRITE: / M.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp; M = M + 1.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
ENDWHILE.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The
 system continues processing the statement block introduced by WHILE and
 concluded by ENDWHILE statements as long as M is less than 10 or until 
the system finds an EXIT, STOP.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The system field&amp;nbsp;&lt;b&gt;SY-INDEX&amp;nbsp;&lt;/b&gt;contains the number of times the loop has been processed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
You can nest WHILE loops any number of times and also combine them with other loops.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Difference between DO loop and WHILE&lt;/b&gt;&amp;nbsp;is
 that in WHILE, condition is checked first and if condition is true then
 loop is executed while in DO loop, the loop gets executed first if you 
don’t have TIMES option and then the condition is checked (if you have 
any).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
You can have nested DO and WHILE or DO and IF or IF and IF or any possible situation.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;String Operations&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
ABAP/4 provides several keywords for processing data objects of type C, also known as character strings.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Shift command&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
To
 shift the contents of a field, by one position or one character you can
 use the SHIFT statement.&amp;nbsp; Using SHIFT allows you to shift field 
contents, byte-by-byte or character-by- character.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
With the SHIFT statement, you can execute the following:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
String = ‘HELLO’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
String 1 = ‘ALL OF YOU’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
String 2 = ‘WORK HARD’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Shift string&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Shift string1 by 2 places.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Shift string2 right.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Shift string1 by 2 places circular.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The output will be&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
ELLO – By default if nothing is specified then string is shifted by one position.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
L OF YOU – Here the string is shifted by 2 places.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
_WORK HARD – In this case the string is shifted to right by one place (with leading blanks)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
K HARDWOR – In this case the string is shifted to the left so that 3 characters on the left appear on the right.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Replace command&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
You use the REPLACE statement.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
REPLACE&amp;lt;strl&amp;gt;WITH&amp;lt;str2&amp;gt;INTO&amp;lt;c&amp;gt;[LENGTH&amp;lt;1&amp;gt;].&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
ABAP/4
 searches the field &amp;lt;c&amp;gt; for the first occurrence of the first, 
&amp;lt;1&amp;gt; positions of the pattern &amp;lt;str1&amp;gt;.&amp;nbsp; If no length is 
specified, it searches for the pattern &amp;lt;str1&amp;gt; in its full length.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Then,
 the statement replaces the first occurrence of the pattern &amp;lt;str1&amp;gt;
 in field &amp;lt;c&amp;gt;with the string &amp;lt;str2&amp;gt;. If a length &amp;lt;l&amp;gt; 
was specified, only the relevant part of the pattern is replaced.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
REPLACE STR1 WITH STR2 INTO STRING.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Here whole string is searched for string1 and is replaces with str2.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
REPLACE ‘&amp;amp;’ WITH ‘M’&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Here the system searches string for &amp;amp; and replaces it with ‘M’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314418&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69209861&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;TRANSLATE command&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
TRANSLATE&amp;lt;c&amp;gt; TO UPPER CASE.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
TRANSLATE&amp;lt;c&amp;gt; TO LOWER CASE.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
These statements convert all lower case letters in the field &amp;lt;c&amp;gt; to upper case or vice versa.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
You
 can use TRANSLATE to substitute the characters in a string like 
replace.&amp;nbsp; But the main difference between Translate and Replace is that 
Replace statement replaces only one occurrence of particular character 
while Translate replaces all the occurrences of the character.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
When using substitution rules, use the following syntax:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
TRANSLATE &amp;lt;c&amp;gt; USING &amp;lt;r&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;STRLEN command&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
To
 determine the length of a character string up to the last character 
other than SPACE, use the built-in function STRLEN as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
N = STRLEN ( STR ).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Here N is defined in DATA statement as type i.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
STRLEN processes any operand &amp;lt;c&amp;gt; as a character data type, regardless of its real type. No conversions are performed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;CONDENSE command&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
To delete superfluous blanks in character fields, use the CONDENSE statement:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
CONDENSE &amp;lt;c&amp;gt; [NO-GAPS].&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
This
 statement removes any leading blanks in the field &amp;lt;c&amp;gt; and 
replaces other sequences of blanks by exactly one blank.&amp;nbsp; The result is a
 left-justified sequence of words, each separated by one blank.&amp;nbsp; If the 
addition NO-GAPS is specified, all blanks are removed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;CONCATENATE command&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;h5&gt;
To concatenate separate character strings into one, use the CONCATENATE statement:&lt;/h5&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
CONCATENATE &amp;lt;c1&amp;gt; …&amp;lt;cn&amp;gt; INTO &amp;lt;c&amp;gt; [SEPARATED BY &amp;lt;s&amp;gt;].&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
This statement concatenates the character fields &amp;lt;c1&amp;gt; to &amp;lt;cn&amp;gt; and assigns the result to &amp;lt;c&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Trailing blanks are ignored during this operation.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
CONCATENATE STR ‘:’ STR2 INTO STRING.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Here str, str2 and ‘:’ is concatenated and result is stored in string.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;st1:city w:st=&quot;on&quot;&gt;&lt;st1:place w:st=&quot;on&quot;&gt;&lt;b&gt;SPLIT&lt;/b&gt;&lt;/st1:place&gt;&lt;/st1:city&gt;&lt;b&gt;&amp;nbsp;command&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
To split a character string into two or more smaller strings, use the SPLIT statement:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;st1:city w:st=&quot;on&quot;&gt;SPLIT&lt;/st1:city&gt;&amp;nbsp;&amp;lt;c&amp;gt; AT &amp;lt;&lt;st1:place w:st=&quot;on&quot;&gt;del&lt;/st1:place&gt;&amp;gt; INTO &amp;lt;cl&amp;gt;….&amp;lt;cn&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
This statement searches the character field &amp;lt;c&amp;gt; for delimiter strings &amp;lt;&lt;st1:place w:st=&quot;on&quot;&gt;del&lt;/st1:place&gt;&amp;gt; and the parts before and after the delimiters are placed in the target fields &amp;lt;c1&amp;gt;….&amp;lt;cn&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
To
 place all fragments in different target fields, you must specify enough
 target fields.&amp;nbsp; Otherwise, the last target field is filled with the 
rest of the field &amp;lt;c&amp;gt; and still contains delimiters.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;st1:city w:st=&quot;on&quot;&gt;SPLIT&lt;/st1:city&gt;&amp;nbsp;STRING AT ‘,’ INTO P1 P2 P3 P4.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Here the string is split at ‘,’ and is put into strings p1, p2, p3, p4.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;In ABAP/4, you can specify offset values for elementary data objects in all statements, which process these data objects.&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
To do so, specify the name of a data object in a statement as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;lt;f&amp;gt;[+&amp;lt;o&amp;gt;][(&amp;lt;l&amp;gt;)]&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The
 operation of the statement is performed for the part of the field 
&amp;lt;f&amp;gt; that begins at position &amp;lt;o&amp;gt;+1 and has a length of 
&amp;lt;l&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
If the length &amp;lt;l&amp;gt; is not specified, the field is processed for all positions between &amp;lt;o&amp;gt; and the end of the field.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
String = string1+3(4).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Assuming that string1 = ‘abcdefgjk’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Here string will contain ‘defg’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;OPEN SQL&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In
 the R/3 System, long-life data is stored in relational database 
tables.&amp;nbsp; Structured Query Language (SQL) was created for accessing 
relational Database.&amp;nbsp; SQL has two statement types: Data Definition 
Language (DDL) statements and Data Manipulation Language (DML) 
statements.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
TO
 include SQL statements in an ABAP/4 program, use Native SQL. To avoid 
incompatibilities between different database tables and also to make 
ABAP/4 program independent of the database system in use, SAP has 
created a set of separate SQL statements called Open SQL.&amp;nbsp; Open SQL 
contains a subset of standard SQL statements as well as some 
enhancements, which are specific to SAP.&amp;nbsp; Using Open SQL enables you to 
access any database tables available to the SAP system regardless of the
 manufacturer be it Oracle, Informix etc.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The difference between Open SQL and Native SQL is as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
A
 database interface translates SAP’s Open SQL statements into SQL 
commands specific to the database in use.&amp;nbsp; Native SQL statements access 
the database directly.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Open SQL keywords&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Keywords Used for&lt;/div&gt;
&lt;ul style=&quot;margin-top: 0in;&quot; type=&quot;disc&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;SELECT: Reading Data from Database Tables&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;INSERT: Adding Lines to Database Tables&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;UPDATE: Changing Lines in Database Tables&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;MODIFY: Adding or Changing Lines&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;DELETE: Deleting Lines from Database Tables&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
When using Open SQL statements in an ABAP/4 program, you must ensure the following:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
1) The database system being addressed must be supported by SAP.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
2) The database tables being addressed must be defined in the ABAP/4 Dictionary.&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Select statement&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
The following system fields play an important role in Open SQL operations:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;SY-SUBRC&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
As
 with other ABAP/4 statements, the return code value in the system field
 SY-SUBRC indicates after each Open SQL operation whether or not the 
operation was successful.&amp;nbsp; If an operation is successful, SY-SUBRC = 0. 
If an operation is unsuccessful – SY-SUBRC &amp;lt;&amp;gt; 0&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;SY-DBCNT&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The
 value in the SY-DBCNT field indicates how many lines were affected by 
the operation or how many lines have already been processed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
To read data from a database table, use the SELECT command.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
SELECT&amp;lt;what&amp;gt; FROM &amp;lt;table name&amp;gt; [INTO &amp;lt;variable, another table&amp;gt;] [WHERE &amp;lt;condition&amp;gt;].&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
This statement has several basic clauses.&amp;nbsp; Each clause is described in the following table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
SELECT&amp;lt;what&amp;gt; FROM &amp;lt;table name&amp;gt; INTO &amp;lt;variables or another table&amp;gt; WHERE &amp;lt;condition&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The SELECT clause defines whether the result of the selection is a single line or a whole table, or few columns.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
FROM &amp;lt;table name&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The FROM clause specifies the database table or view &amp;lt;source&amp;gt; from which the data is to be selected.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
INTO &amp;lt;variable, another table&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The
 INTO clause determines the target area &amp;lt;target&amp;gt; into which the 
selected data is to be read.&amp;nbsp; It can also be placed before the FROM 
clause.&amp;nbsp; If you do not specify an INTO clause, the system uses the table
 work area.&amp;nbsp;&amp;nbsp;&lt;b&gt;The table work area is a header line, which is automatically created by the TABLES statement.&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
WHERE &amp;lt;condition&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The
 WHERE clause specifies which lines are to be read by specifying 
conditions for the selection.&amp;nbsp; Choosing the Lines to be Read.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
For Selecting All data from table:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
i.e., read all columns and all the rows from database table&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
SELECT * FROM &amp;lt;table&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
(Here you are not specifying WHERE condition)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Selecting All Data from a Single Line&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
To read all columns of a single line from a database table, use the SELECT statement as follows :&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
SELECT SINGLE * FROM &amp;lt;table&amp;gt; …… WHERE &amp;lt;condition&amp;gt; ……&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The
 result of this statement is a single line. To make sure you retrieve 
desired unique single record, you must link all the fields which form 
the primary key of the database table by AND in the WHERE condition.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Prerequisite for SELECT SINGLE&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
1.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Use all primary keys in WHERE condition.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
2.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Always check for SY-SUBRC.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
3.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Clear work-area for table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Aggregate Expressions&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
By using aggregate expressions, you can extract characteristic data from a column &amp;lt;a&amp;gt; of the database table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
.MAX: returns the maximum value of the column&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
.MIN: returns the minimum value of the column&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
.AVG: returns the average value of the column&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
.SUM: returns the sum value of the column&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
.COUNT: counts values or lines as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
-COUNT( * ) returns the total number of lines in the selection.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
You
 must include spaces between the parentheses and the arguments. The 
arithmetic operators AVG and SUM can only work with numeric fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Sometimes you retrieve few columns form database table i.e. you have list in the SELECT Clause and INTO Clause.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
If
 there is a list in the SELECT clause, you must use the INTO clause with
 the SELECT statement. You can use either a work area &amp;lt;wa&amp;gt; or an 
internal table &amp;lt;itab&amp;gt; or list of variables as an argument,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
TABLES: SFLIGHT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
DATA : CARRIDI LIKE SFLIGHT -CARRID,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-indent: 0.5in;&quot;&gt;
&amp;nbsp; CONNID LIKE SFLIGHT –CONNID.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
SELECT CARRID CONNID FROM SFLIGHT INTO (CARRID1, CONNID1). WRITE: / CARRIDl,CONNID1.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
ENDSELECT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Many times you retrieve related data from two or more tables. In such cases you use nested selects&amp;nbsp;&lt;b&gt;by linking tables with common primary keys&lt;/b&gt;. But as far as possible avoid using nested selects as time required to access nested table is very high.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
TABLES: SFLIGHT, SBOOK.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
SELECT * FROM SFLIGHT WHERE CARRID = &#39;LH&#39;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
SELECT * FROM SBOOK WHERE CARRID = SFLIGHT -CARRID AND&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 2in; text-indent: 0.5in;&quot;&gt;
CONNID = SFLIGHT -CONNIID.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
WRITE: / SFLSIGHT-CARRID,SFLIGHT-CONNID,SBOOK-BOOKID,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; ENDSELECT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
ENDSELECT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Some performance hints for Open SQL statements&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Keep the selected dataset small&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
Keep
 the number of selected data as small as possible to avoid unnecessary 
network transports.&amp;nbsp; Use the respective Open SQL statements always with 
the WHERE clause.&amp;nbsp; Avoid complex WHERE clauses. The system must split up
 those into single statements for the database system.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
Do not use the logical NOT in WHERE clauses but inverted operators instead.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in;&quot;&gt;
The logical NOT is supported by the database indexes.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Keep the transferred data small&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Transfer
 only those columns of a database table that you really need.&amp;nbsp; Avoid 
SELECT* if you do not want to read all columns of a database.&amp;nbsp; Use a 
list in the SELECT clause instead.&amp;nbsp; Use aggregate expressions in the 
SELECT clause to perform calculations instead transporting great amounts
 of data and calculating thereafter.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Keep the number of database accesses small&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Use
 operations on packages of data instead of operations on single data if 
you want to analyze selected data more than once.&amp;nbsp; To do so, transfer 
the data in a single operation between tables and internal tables.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Avoid nested SELECT loops. Instead, work with internal tables and SELECT statements using the FOR ALL ENTRIES addition.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
I&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314419&quot;&gt;nsert statement&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
INSERT statement inserts a single record into the database table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Tables: sflight.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Sflight-carrid = ‘LH’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Sflight-connid = ‘234’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Insert sflight.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Table
 sflight is inserted with the record.&amp;nbsp; The SY_SUBRC is returned for this
 statement.&amp;nbsp; If the entry already exists then the SY_SUBRC is set to 
non-zero value and you can do processing for existing record by giving 
some error message.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314420&quot;&gt;Update statement&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
To update database table UPDATE statement is used.&amp;nbsp; This allows you to change either a single record or several records.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
You
 can use UPDATE when you know which record you want to change.&amp;nbsp; But if 
you do not know whether the primary key of the line you want to insert 
already exists or not, you can use the MODIFY statement. The MODIFY 
statement changes existing lines and inserts lines which do not exist.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Sflight-carrid = ‘MN’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Sflight-connid = ‘454’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
UPDATE SFLIGHT where CARRID = ‘LH’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Or&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
TABLES SFLIGHT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
UPDATE SFLIGHT SET PRICE = 1100&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WHERE CARRID = ‘LH’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Here price of sflight will get updated with new price 1100.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;span style=&quot;line-height: 16pt;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;line-height: 16pt;&quot;&gt;D&lt;/span&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314421&quot; style=&quot;line-height: 16pt;&quot;&gt;elete statement&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
To delete records from a database table, you use the DELETE statement.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
DELETE FROM SFLIGHT WHERE CARRID = ‘LH’ AND CONNID = ‘454’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Will delete the single record where conditions are met from SFLIGHT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
You
 can delete the multiple records from database table by putting all the 
records, which you want to delete in internal table.&amp;nbsp; For example&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
DELETE SFLIGHT FROM TABLE ITAB.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In this case whatever you have in internal table will be deleted from SFLIHT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Note: append internal table with all the entries, which you want to delete.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;EXERCISES&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;SIMPLE WRITE STATEMENTS&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write a program, which generates the model list as shown&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Use these system fields in your program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SY-DATUM, SY-UZEIT, SY-UNAME&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Maintain the list headings&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 12/12/97&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FIRST PROGRAM&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ______________________________________________________&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; This list is generated&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; on: 12/12/1997&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at: 13:40:35&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; by: ABAP 1&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ______________________________________________________&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Create a list as shown&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ---------------------------------------------------------------------------------------------------&lt;/div&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; text-align: center;&quot;&gt;
XYZ Co. Pvt. Ltd.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Date: Today’s date&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Page No. 1&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ---------------------------------------------------------------------------------------------------&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Program name: ZDEMO&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;SYMBOLS, ICONS AND FORMATTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write a program to show the following using system variables&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (hint: use include &amp;lt;symbol&amp;gt; and include &amp;lt;icon&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Symbols:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Icons:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Telephone&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Checked; okay,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Fax machine&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Delete,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Hand pointing left,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Print&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Hand pointing right,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Caution,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Eg : Write sym_phone as symbol, ‘telephone’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write a program to show a string with different background colours.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; eg.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; write ‘HEADER’ color col_heading.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (col_heading is abap/4 name for grayish blue colour.&amp;nbsp; Other colours are&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; col_key for bluish green, col_normal for bright gray, col_background for&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gray, col_positive for green, col_negative for red, col_group for violet and&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; col_total for yellow)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Use Format intensified – format intensified off.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Format color &amp;lt;color_name&amp;gt; - format color off.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Format inverse – Format inverse off&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Show current time and today’s date.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Show a value ‘123456’ as 12:34:56 using ‘using edit mask’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Take a number as ‘0000011’.&amp;nbsp; Suppress all leading zeros.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Suppress a sign before a number.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;GENERAL PROBLEMS&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Create an adding machine for numbers.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The two values to be added must be entered on the selection screen as&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; parameters. Output the result.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Create the dividing machine for numbers.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The two values must be entered on the selection screen as parameters.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Output the result.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Create your output as shown below.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;letter-spacing: 2pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;letter-spacing: 2pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp; .&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;letter-spacing: 2pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp; .&amp;nbsp; .&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;letter-spacing: 2pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp; .&amp;nbsp; .&amp;nbsp; .&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;letter-spacing: 2pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp; .&amp;nbsp; .&amp;nbsp; .&amp;nbsp; .&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write a program to accept the two numbers from the user and swap the values.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Declare a string ‘echo’ and design your output&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;span style=&quot;letter-spacing: 5pt;&quot;&gt;&amp;nbsp;&amp;nbsp; e&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;span style=&quot;letter-spacing: 5pt;&quot;&gt;&amp;nbsp;&amp;nbsp; ec&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;span style=&quot;letter-spacing: 5pt;&quot;&gt;&amp;nbsp;&amp;nbsp; ech&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;span style=&quot;letter-spacing: 5pt;&quot;&gt;&amp;nbsp;&amp;nbsp; echo&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;span style=&quot;letter-spacing: 5pt;&quot;&gt;&amp;nbsp;&amp;nbsp; ech&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;span style=&quot;letter-spacing: 5pt;&quot;&gt;&amp;nbsp;&amp;nbsp; ec&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;span style=&quot;letter-spacing: 5pt;&quot;&gt;&amp;nbsp;&amp;nbsp; e&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;DO-ENDDO, IF-ELSEIF-ELSE-ENDIF, CASE-ENDCASE&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write a program with Do – Enddo loop.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Display squares of numbers 1 to 10&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write a program to accept a number (say 2) from user and create a multiplication table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2 x 1 = 2&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2 x 2 = 4&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; …………&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2 x 10 = 20&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept a number from user and find Factorial of the same.&amp;nbsp; If the number is negative then display some message.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write a program with Do – Enddo loop for first 20 numbers.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - Output should contain only Even number&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - Odd numbers should not be displayed&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
 Accept numbers and choice ‘EVEN’ or ‘ODD’ from the user and display the
 numbers in that range according to user’s choice.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write a program with Do – Enddo loop for first 20 numbers.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 28.35pt;&quot;&gt;
- Odd numbers &amp;amp; Even numbers should be displayed with alternate intensities. (Use Format intensified – on – off)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
 Create a calculator, which performs the four basic types of 
calculations on two whole numbers. The two values and the option are to 
be entered on the selection screen as parameters.&amp;nbsp; Output the result 
with 2 decimal places.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
8&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write separate programs using ‘CONTINUE’ and ‘EXIT’ statements in DO-LOOP.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;STRING OPERATIONS&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept a string and determine its length&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept a string &amp;amp; number.&amp;nbsp; Write the string that many number of times.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept two strings and swap their contents.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept two strings and concatenate into one string.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept one string with delimiter ( , or ; ) and split it into two strings.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept a string ‘abcdef’ and use shift &amp;lt;string&amp;gt;, shift &amp;lt;string&amp;gt; right, shift &amp;lt;string&amp;gt; up to ‘def’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept a string eg. Apple.&amp;nbsp; Change first occurrence of ‘p’ to ‘b’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (use ‘replace’ command)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
8&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept a string eg. Apple.&amp;nbsp; Change all occurrences of ‘p’ to ‘b’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (use ‘translate’ command)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
9&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept two strings and compare the two strings using ‘co’, ‘ca’, ‘cs’&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ‘cp’ (out put shall be ‘true’ or ‘false’ for each comparison.)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept a string ‘ABCDEF’.&amp;nbsp; Output only ‘DEF’ using offset command.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept first name, last name and middle name&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; eg. Nandamuri Taraka Ramarao&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; display as N.T.Ramarao&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept a string.&amp;nbsp; Change all occurrences of a to b.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
13&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept a number and swap first and last digit of the same.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
14&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept a string and display the string in reverse order&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
15&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept a string and check for palindrome&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;DATE PROBLEMS&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept a date earlier to today’s date and find the difference in number of days.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept a date from user and display first day of the month and last day of the previous month.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept a date from user and add six months to the date.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept a date from user and convert month part to ‘jan’, ‘feb’ etc., and display this date.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write a program to accept month. Display number of days in total month.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Make use of&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - Text element for your selection screen box.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - Selection text&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept birth date from user and output age in years, months and days.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;CHECK BOXES AND RADIO BUTTONS&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write a program with&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - Parameter as checkboxes&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - If checkbox 1 is clicked write c.b 1 clicked else c.b 1 not clicked.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - If checkbox 2 is clicked write c.b 2 clicked else c.b 2 not clicked.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - If checkboxes 1 &amp;amp; 2 are clicked write c.b 1 &amp;amp; c.b. 2 are clicked.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - If checkboxes 1 &amp;amp; 2 are not clicked write c.b 1 &amp;amp; c.b. 2 are not clicked.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write a program with&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - Parameters as two groups of Radiobuttons (two Radiobuttons in each group).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - Give detailed coding as above, to show the Radiobuttons and groups&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - selected&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write a program with&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - Parameter as checkbox.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - If you click the checkbox then display first day of the next year.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - If the checkbox is not clicked then display last day of the current year.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
4.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write a program with&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - Parameter as group of 3 radio buttons&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - If first radio button is clicked, display last day of the current month.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - If second radio button, display first day of the next month&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - If third radio button, display date after six months.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;SELECT STATEMENTS&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List all the rows from the table VBAK.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List single row from the table BKPF.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List up to 5 rows from the table BSIS.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List all ERDATs.&amp;nbsp; For better readability create a column heading in the list&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Display total amount for carrid ‘LH’.&amp;nbsp; (Tables: SFLIGHT)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List all the flights for which booking date is greater than ’01.06.1995’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List all the flights for which payments currency is ‘DEM’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
8&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List all the flights where carrid is between ‘LH’ and ‘SQ’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
9&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Select a single record where carrid = ‘LH’, flight-no = ‘0400’ and&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fldate = ’28.02.1998’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Display carrid, connid, fldate and luggage weight multiplied by 2&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List the maximum capacity, occupied seats and total of current bookings for each flight in the following format.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div align=&quot;center&quot;&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; border: none;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;border: 1pt solid windowtext; padding: 0in 5.4pt; width: 56.7pt;&quot; valign=&quot;top&quot; width=&quot;76&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;text-align: center;&quot;&gt;
Carrier id&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;border: 1pt solid windowtext; padding: 0in 5.4pt; width: 99.25pt;&quot; valign=&quot;top&quot; width=&quot;132&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;text-align: center;&quot;&gt;
Max. capacity&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;border: 1pt solid windowtext; padding: 0in 5.4pt; width: 99.25pt;&quot; valign=&quot;top&quot; width=&quot;132&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;text-align: center;&quot;&gt;
Occupied seats&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;border: 1pt solid windowtext; padding: 0in 5.4pt; width: 141.75pt;&quot; valign=&quot;top&quot; width=&quot;189&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;text-align: center;&quot;&gt;
Total of current bookings&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; From the given from-city and to-city, list all the available on this route:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; From: &amp;lt;from-city&amp;gt; To: &amp;lt;to-city&amp;gt; (say from Frankfurt to&amp;nbsp;&lt;st1:place w:st=&quot;on&quot;&gt;Madras&lt;/st1:place&gt;)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (Tables: SPFL1)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div align=&quot;center&quot;&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; border: none;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;border: 1pt solid windowtext; padding: 0in 5.4pt; width: 56.7pt;&quot; valign=&quot;top&quot; width=&quot;76&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;text-align: center;&quot;&gt;
Carrier id&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;border: 1pt solid windowtext; padding: 0in 5.4pt; width: 99.25pt;&quot; valign=&quot;top&quot; width=&quot;132&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;text-align: center;&quot;&gt;
Departure Time&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;border: 1pt solid windowtext; padding: 0in 5.4pt; width: 99.25pt;&quot; valign=&quot;top&quot; width=&quot;132&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;text-align: center;&quot;&gt;
&lt;st1:place w:st=&quot;on&quot;&gt;&lt;st1:placename w:st=&quot;on&quot;&gt;Start&lt;/st1:placename&gt;&amp;nbsp;&lt;st1:placetype w:st=&quot;on&quot;&gt;Airport&lt;/st1:placetype&gt;&lt;/st1:place&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td style=&quot;border: 1pt solid windowtext; padding: 0in 5.4pt; width: 141.75pt;&quot; valign=&quot;top&quot; width=&quot;189&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;text-align: center;&quot;&gt;
&lt;st1:place w:st=&quot;on&quot;&gt;&lt;st1:placename w:st=&quot;on&quot;&gt;Destination&lt;/st1:placename&gt;&amp;nbsp;&lt;st1:placetype w:st=&quot;on&quot;&gt;Airport&lt;/st1:placetype&gt;&lt;/st1:place&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;OPEN SQL&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept document no. from user and display particulars of Sales document.&amp;nbsp; (Default document no. ‘0010000031’)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (Table: VBAP)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Created on: xxxxx&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Created by: xxxxx&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xxxxx&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept Sales Document number from user and display corresponding material&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; no, description of that material and item category (Table : VBAP)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept material no. &amp;amp; item category by default PP100 and KMN respectively&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Display corresponding details of sales document (Table: VBAP)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Display fields from BKPF.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Document type = ‘AB’ and&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Document date = ’05.02.1998’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Also display number of records selected.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Display Co. code, doc.no., acc.type, tax code.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Make use of select-options to give range of document type.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Display title of your program at the end of program&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept doc. no from user.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Display doc.no., doc.status, date of doc., doc.type.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Display single record for document where date = ’05.02.1998’, type ‘= ‘AB&amp;nbsp;&amp;nbsp; and document&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; no.&amp;nbsp; = ‘0100000006’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
8&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept plant from user eg. PLTP.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-indent: 27pt;&quot;&gt;
&amp;nbsp;Display document details for that plant like doc.no., doc.status, date of document etc.,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/8635410176829162835/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/abap-basics-some-facts-about-sap-after.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/8635410176829162835'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/8635410176829162835'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/abap-basics-some-facts-about-sap-after.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDwJzuPaqNjUojcLhUXA6zTiw3rQBRNSThUN8EPYuqdSteI2yg90VAWEf4q0QMN2oVuy_oTqtiYtUl3tFzOBKU8NXlrtmiEGZuEyPFHp0Y0cRsXDiIbpj3iz5_5PFaXDFmLYbmi8GddGtR/s72-c/image001.png" height="72" width="72"/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-8705699102805983134</id><published>2012-09-22T22:54:00.002-07:00</published><updated>2012-09-22T22:55:39.918-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;a href=&quot;http://adf.ly/CUWSf&quot; name=&quot;_Toc69628302&quot;&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;DEBUGGING&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Many times an error free
program doesn’t give desired output. Behavior of program is different in
different situations, with different values of variable. Such program needs
additional testing, by which you can test the program by stopping at each point
where you feel program is behaving abnormally.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
The ABAP/4
debugger is the development workbench tool, which allows you to stop a program
during its execution when a particular condition is met.&amp;nbsp; When the program is stopped, you can use the
debugger to display the contents of the table and variable being used by the
program.&amp;nbsp; It allows you to execute the
program step by step, reviewing exactly the real flow of the program execution.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
There are many
occasions during normal system operation during which the ABAP/4 debugger can
be started.&amp;nbsp; When executing program, the
ABAP/4 debugger is automatically started when the system encounters a
breakpoint.&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314650&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWSf&quot; name=&quot;_Toc69628303&quot;&gt;Starting the ABAP/4 debugger&lt;/a&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;span style=&quot;text-align: left;&quot;&gt;There are many ways to start debugger&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l1 level1 lfo1; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;By clicking the Execute button and selecting the
debugging mode.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l1 level1 lfo1; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;From the ABAP/4 editor, by executing a program
choosing Program &lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt;
Execute &lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt;
Debugging from the menu.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l1 level1 lfo1; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Setting breakpoint in the program&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314651&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWSf&quot; name=&quot;_Toc69628304&quot;&gt;Components of ABAP/4 debugger&lt;/a&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The debugger shows the program
information using six different views.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l4 level1 lfo2; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Fields:&lt;/b&gt; Displays the field contents.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l4 level1 lfo2; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Table:&lt;/b&gt; Allows modifying the contents of
internal table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l4 level1 lfo2; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Breakpoints:&lt;/b&gt; Displays list of Breakpoint
in the Program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l4 level1 lfo2; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Watchpoints:&lt;/b&gt; Allows dealing with
Watchpoints.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l4 level1 lfo2; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Calls:&lt;/b&gt; System call status like Event,
Form etc.,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l4 level1 lfo2; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Overview:&lt;/b&gt; Presents the program structure,
events, subroutines, and modules.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l4 level1 lfo2; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Settings:&lt;/b&gt;&amp;nbsp;
Displays the calling sequence within a particular event, up to the
current breakpoint.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
All these
options are shown in the following screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjEwkqjMXc-rfeKeZB60xb2n2UeJlgUeyZPb8HeTrbyhw6Sba2jJzOZDxBhACGvbF5C1WmLBDrAm_l4CK-FB9GrH0ka7Sr7Q73X24holnvU_Ra6SQsEFVcaxXaM6Oa9CK9MgEA6IXIDSsEn/s1600/image001.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;460&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjEwkqjMXc-rfeKeZB60xb2n2UeJlgUeyZPb8HeTrbyhw6Sba2jJzOZDxBhACGvbF5C1WmLBDrAm_l4CK-FB9GrH0ka7Sr7Q73X24holnvU_Ra6SQsEFVcaxXaM6Oa9CK9MgEA6IXIDSsEn/s640/image001.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Arrow
indicates the breakpoint of the program i.e., where user has stopped the
program.&lt;/div&gt;
&lt;h1&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314652&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWSf&quot; name=&quot;_Toc69628305&quot;&gt;Breakpoints&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
A breakpoint is the signal,
which is specified in the program, tells the system to stop the program
execution and to start the debugger.&amp;nbsp;
Following types of breakpoint are available with ABAP/4:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l2 level1 lfo3; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Static are set up with the BREAKPOINT keyword
inside the program, which you can directly display with the ABAP/4 source code
editor.&amp;nbsp; To set the breakpoint in the
program enters the keyboard BREAKPOINT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l2 level1 lfo3; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Dynamic this breakpoint is not visible in the code.&amp;nbsp; Position the cursor over the source code line
to have the breakpoint and then select utilities - &lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt; breakpoint - &lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt;
set.&amp;nbsp; You can delete them or display them
from breakpoint list.&amp;nbsp; Or you can execute
the program in the ABAP/4 debugger i.e., in debugging mode.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l2 level1 lfo3; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Watchpoints are field specific.&amp;nbsp; The program is stopped when the field reaches
the value specified in the watchpoint.&amp;nbsp;
Execute the program in debugging mode.&amp;nbsp;
Position the cursor over the needed field.&amp;nbsp; Press the F button to get the view of
field.&amp;nbsp; Select the checkbox for the
needed watchpoint.&amp;nbsp; Click on the continue
button.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l2 level1 lfo3; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Keywords/events The program stops just before
executing a specific event or keyword.&amp;nbsp;
To set breakpoint at particular event, from initial screen of debugger,
select Breakpoint &lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt;
Breakpoint at &lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt;
at event/at keyword.&amp;nbsp; Enter the name of
the keyword or event.&amp;nbsp; Click on OK.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;a href=&quot;http://adf.ly/CUWSf&quot; name=&quot;_Toc69628306&quot; style=&quot;line-height: 16pt; text-align: left;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;u&gt;Navigating through the breakpoint&lt;/u&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Following
buttons are used to navigate through the program and debugger.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l38 level1 lfo4; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Single
step:&lt;/b&gt;&amp;nbsp; Executes a single program
command.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l38 level1 lfo4; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Execute:&lt;/b&gt;&amp;nbsp; Similar to the single step, but when a
program calls a subroutine, it executes the whole subroutine unlike single
step.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l38 level1 lfo4; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Continue:
&lt;/b&gt;Executes the program until it is finished or until it finds next
breakpoint.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l38 level1 lfo4; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Return:&amp;nbsp; &lt;/b&gt;Allows for executing the program
instruction up to the end of a routine and stops in the line of code where the
subroutine gives back control to the main program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l38 level1 lfo4; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Tables:&lt;/b&gt;&amp;nbsp; Switches the debugger to the table view.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;Displaying and modifying values&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Every time the
program is stopped within a debugger, you can display and modify the contents
of table field and fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
To display the
fields, click on V and you can view the contents of system field, program
field, ABAP/4 dictionary fields, and external program fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;Displaying and modifying internal tables&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When you click on the Table
button from the initial ABAP/4 debugger screen, the system will display the
table debugger view.&amp;nbsp; Here you need to
enter the name of the internal table to be displayed.&amp;nbsp; You can modify or delete or add i.e., insert
the internal table Contents.&amp;nbsp; These
changes are applicable only for the debugging and do not affect the structure
of internal table in the program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314654&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWSf&quot; name=&quot;_Toc69628307&quot;&gt;Setting WATCHPOINTS&lt;/a&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l37 level1 lfo5; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Execute a program in debugging mode.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l37 level1 lfo5; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Position the cursor over the needed field.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l37 level1 lfo5; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Press the F button to get a view of the fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l37 level1 lfo5; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Select the checkbox for the needed watchpoint.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l37 level1 lfo5; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Click on the CONTINUE button.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l37 level1 lfo5; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;To display the active watchpoint select Goto - &lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt;
Breakpoint&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 11.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h2&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314655&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWSf&quot; name=&quot;_Toc69628308&quot;&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;INTERNALTABLES&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Consider the following cases:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l17 level1 lfo6; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;You want to reorganize the contents of table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l17 level1 lfo6; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;You want to modify few details of table and then
display the contents of table to user.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l17 level1 lfo6; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;You want to perform table calculations on subset
of database table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In above cases
you need to recognize or change the database table contents.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In ABAP/4 you
work mainly with tables.&amp;nbsp; Long life data
is stored in database tables.&amp;nbsp; You cannot
afford to lose data from database table. In such cases where you can not work
directly with database table (where you are modifying contents of table or
reorganizing the contents of table or any other case where you are altering
contents of table and then displaying output to the user) hence need of
intermediate table where you put in all the data from database table and work
with this data thus avoiding accidental loss of data.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
These
intermediate tables are called &lt;b&gt;INTERNAL
TABLES &lt;/b&gt;in ABAP/4 and are created only during runtime i.e., &lt;b&gt;no memory is reserved for internal tables.&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
When you use
Internal Table in a program, three steps are associated with it.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
1. Declaration
of Internal Table&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
2. Populating
Internal Table&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
3. Processing
Internal Table&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314656&quot;&gt;&lt;/a&gt;Declaration of Internal Table&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Depending on how you create,
internal tables are of two types.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l18 level1 lfo7; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Internal tables with header line.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; text-align: justify;&quot;&gt;
When you create internal tables with header line, and then default
workarea or header is created.&amp;nbsp; And you
can work with this header.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l25 level1 lfo8; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Internal Table without header line.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; text-align: justify;&quot;&gt;
In this case you need to create output explicit workarea to work with
table.&amp;nbsp; Only advantage of internal tables
without header line is that you can nest them i.e., you can have table within
table, which is not possible on internal tables with header line.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Internal table
can be declared in the following way:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-table-layout-alt: fixed;&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 76.3pt;&quot; valign=&quot;top&quot; width=&quot;102&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l3 level1 lfo9; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
  &lt;/span&gt;&lt;/span&gt;Data&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 21.25pt;&quot; valign=&quot;top&quot; width=&quot;28&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
:&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 338.5pt;&quot; valign=&quot;top&quot; width=&quot;451&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Itab like
  sflight occurs 0 with header line&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 76.3pt;&quot; valign=&quot;top&quot; width=&quot;102&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 21.25pt;&quot; valign=&quot;top&quot; width=&quot;28&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 338.5pt;&quot; valign=&quot;top&quot; width=&quot;451&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Here you are
  declaring internal table, which is similar to sflight i.e., itab like sflight
  i.e., you are referring to existing table (like).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
(By default
  internal table created with this declaration is without header line).&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 76.3pt;&quot; valign=&quot;top&quot; width=&quot;102&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 21.25pt;&quot; valign=&quot;top&quot; width=&quot;28&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 338.5pt;&quot; valign=&quot;top&quot; width=&quot;451&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 76.3pt;&quot; valign=&quot;top&quot; width=&quot;102&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l3 level1 lfo9; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
  &lt;/span&gt;&lt;/span&gt;Data&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 21.25pt;&quot; valign=&quot;top&quot; width=&quot;28&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
:&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 338.5pt;&quot; valign=&quot;top&quot; width=&quot;451&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Begin of
  itab occurs 0.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp; Include structure sflight&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 76.3pt;&quot; valign=&quot;top&quot; width=&quot;102&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Data&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 21.25pt;&quot; valign=&quot;top&quot; width=&quot;28&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
:&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 338.5pt;&quot; valign=&quot;top&quot; width=&quot;451&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
End of itab&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 76.3pt;&quot; valign=&quot;top&quot; width=&quot;102&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 21.25pt;&quot; valign=&quot;top&quot; width=&quot;28&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 338.5pt;&quot; valign=&quot;top&quot; width=&quot;451&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
(Internal
  Table created with this type of declaration is similar to declaration done in
  ‘a’ type the only difference is by default internal table created by this
  type is with header line)&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 76.3pt;&quot; valign=&quot;top&quot; width=&quot;102&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 21.25pt;&quot; valign=&quot;top&quot; width=&quot;28&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 338.5pt;&quot; valign=&quot;top&quot; width=&quot;451&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 76.3pt;&quot; valign=&quot;top&quot; width=&quot;102&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l3 level1 lfo9; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
  &lt;/span&gt;&lt;/span&gt;Data&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 21.25pt;&quot; valign=&quot;top&quot; width=&quot;28&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
:&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 338.5pt;&quot; valign=&quot;top&quot; width=&quot;451&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Begin of
  itab occurs 0&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp; carrid like sflight-carrid,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp; connid like sflight-connid,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp; fldate like sflight-f1date&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
End of itab.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 76.3pt;&quot; valign=&quot;top&quot; width=&quot;102&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 21.25pt;&quot; valign=&quot;top&quot; width=&quot;28&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 338.5pt;&quot; valign=&quot;top&quot; width=&quot;451&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
By default
  internal table created by this type of declaration is with header line.&amp;nbsp; In this type of declaration, you are using
  only those fields from database table, which you require for processing.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 76.3pt;&quot; valign=&quot;top&quot; width=&quot;102&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 21.25pt;&quot; valign=&quot;top&quot; width=&quot;28&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 338.5pt;&quot; valign=&quot;top&quot; width=&quot;451&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 76.3pt;&quot; valign=&quot;top&quot; width=&quot;102&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l3 level1 lfo9; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
  &lt;/span&gt;&lt;/span&gt;Data&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 21.25pt;&quot; valign=&quot;top&quot; width=&quot;28&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
:&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 338.5pt;&quot; valign=&quot;top&quot; width=&quot;451&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Begin of
  itab occurs 0&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp; carrid like sflight-carrid,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp; connid like sflight-connid,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp; bookid like sbook-bookid&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp; id like scustom-id,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
End of itab.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 76.3pt;&quot; valign=&quot;top&quot; width=&quot;102&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 21.25pt;&quot; valign=&quot;top&quot; width=&quot;28&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 338.5pt;&quot; valign=&quot;top&quot; width=&quot;451&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Here you are
  combining fields from three different tables in one internal table.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 76.3pt;&quot; valign=&quot;top&quot; width=&quot;102&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 21.25pt;&quot; valign=&quot;top&quot; width=&quot;28&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 338.5pt;&quot; valign=&quot;top&quot; width=&quot;451&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 76.3pt;&quot; valign=&quot;top&quot; width=&quot;102&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l3 level1 lfo9; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
  &lt;/span&gt;&lt;/span&gt;Data&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 21.25pt;&quot; valign=&quot;top&quot; width=&quot;28&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
:&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 338.5pt;&quot; valign=&quot;top&quot; width=&quot;451&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Begin of
  itab occurs 0&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp; Carrid1 like sflight-carrid,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
End of itab.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Here you are
  specifying different field names.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;Populating Internal Table&lt;/b&gt;&lt;b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l9 level1 lfo10; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Itab-name = ‘ABCD’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .5in;&quot;&gt;
Append
Itab.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .25in;&quot;&gt;
(In this case itab is filled with one name i.e., ‘ABCD’.)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l11 level1 lfo11; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Do 5 times.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .5in;&quot;&gt;
Itab-number
= sy-index.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-align: justify; text-indent: .5in;&quot;&gt;
Append itab.&lt;/div&gt;
&lt;div class=&quot;MsoHeading7&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;;&quot;&gt;Enddo.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .25in;&quot;&gt;
(In this case itab is filled with sy-index for 5 times)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l7 level1 lfo12; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Select * from sflight into itab.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .5in;&quot;&gt;
Append
itab.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .25in;&quot;&gt;
Endselect.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l15 level1 lfo13; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Select * from sflight into table itab.&lt;/div&gt;
&lt;div class=&quot;MsoBodyTextIndent2&quot; style=&quot;text-indent: 0in;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;background: gray; color: windowtext; mso-highlight: gray;&quot;&gt;Note:&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;background: gray; color: windowtext; mso-highlight: gray;&quot;&gt; Addition of &lt;i&gt;Table&lt;/i&gt; in INTO clause,
you omit append itab and Endselect&lt;/span&gt;&lt;span style=&quot;color: windowtext;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; text-align: justify; text-indent: 3.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l15 level1 lfo13; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Select * from sflight &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .5in;&quot;&gt;
Move-corresponding
sflight to itab.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .5in;&quot;&gt;
Append
itab.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .25in;&quot;&gt;
Endselect.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; text-align: justify;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;background: gray; mso-highlight: gray;&quot;&gt;Note:&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;background: gray; mso-highlight: gray;&quot;&gt; While using &lt;i&gt;Move-corresponding&lt;/i&gt;,
field names of DB table &amp;amp; Int’ table should be same.&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l32 level1 lfo14; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Select * from sflight.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .5in;&quot;&gt;
Move
sflight to itab.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .5in;&quot;&gt;
Append
itab.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .25in;&quot;&gt;
Endselect.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .25in;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;background: gray; mso-highlight: gray;&quot;&gt;Note:&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;background: gray; mso-highlight: gray;&quot;&gt; In this case structure of sflight
and itab should be similar&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l0 level1 lfo15; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Select carrid1 connid1 from sflight into
(itab-carr1, itab-connid1)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .5in;&quot;&gt;
Append
itab.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .5in;&quot;&gt;
Clear
itab.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .25in;&quot;&gt;
Endselect.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;a href=&quot;http://adf.ly/CUWSf&quot; name=&quot;_Toc69628311&quot;&gt;&lt;b&gt;Processing Internal Table&lt;/b&gt;&lt;/a&gt;&lt;b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Processing of
internal table includes:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l16 level1 lfo16; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Writing: write : / itab carrid.&amp;nbsp; (will write only one field)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .25in;&quot;&gt;
Loop at itab.&amp;nbsp; (Will write whole
internal table)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write itab&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; text-align: justify;&quot;&gt;
Endloop.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l16 level1 lfo16; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;st1:city w:st=&quot;on&quot;&gt;Reading&lt;/st1:city&gt;:
You can read internal table by:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; text-align: justify;&quot;&gt;
Read table itab with key carrid = ‘LH’ (Here you are reading table with
key)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .25in;&quot;&gt;
Or Read table itab with index 3. (Here you read table with index 3)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .25in;&quot;&gt;
(Note: &lt;st1:city w:st=&quot;on&quot;&gt;Reading&lt;/st1:city&gt;
of internal table can be done inside the loop or outside the loop)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .25in;&quot;&gt;
Modifying: You can modify contents of internal table by specifying key
or index.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .25in;&quot;&gt;
Itab-carrid = ‘LM’&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .25in;&quot;&gt;
Modify table itab index 3.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l34 level1 lfo17; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Delete: delete table itab index 3.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .75in; text-align: justify; text-indent: .25in;&quot;&gt;
(Will delete record with index 3)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Commands
associated with clearing of internal tables are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-table-layout-alt: fixed;&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 125.9pt;&quot; valign=&quot;top&quot; width=&quot;168&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 200%; margin-left: .25in; mso-list: l30 level1 lfo18; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
  &lt;/span&gt;&lt;/span&gt;Clear itab&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 21.25pt;&quot; valign=&quot;top&quot; width=&quot;28&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 200%; text-align: justify;&quot;&gt;
:&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 281.7pt;&quot; valign=&quot;top&quot; width=&quot;376&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 200%; text-align: justify;&quot;&gt;
Will clear
  header of internal table&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 125.9pt;&quot; valign=&quot;top&quot; width=&quot;168&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 200%; margin-left: .25in; mso-list: l30 level1 lfo18; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
  &lt;/span&gt;&lt;/span&gt;Clear itab [ ]&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 21.25pt;&quot; valign=&quot;top&quot; width=&quot;28&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 200%; text-align: justify;&quot;&gt;
:&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 281.7pt;&quot; valign=&quot;top&quot; width=&quot;376&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 200%; text-align: justify;&quot;&gt;
Will clear
  body of table.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 125.9pt;&quot; valign=&quot;top&quot; width=&quot;168&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 200%; margin-left: .25in; mso-list: l30 level1 lfo18; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
  &lt;/span&gt;&lt;/span&gt;Refresh itab&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 21.25pt;&quot; valign=&quot;top&quot; width=&quot;28&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 200%; text-align: justify;&quot;&gt;
:&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 281.7pt;&quot; valign=&quot;top&quot; width=&quot;376&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 200%; text-align: justify;&quot;&gt;
Will remove
  contents of internal table.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 125.9pt;&quot; valign=&quot;top&quot; width=&quot;168&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 200%; margin-left: .25in; mso-list: l30 level1 lfo18; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
  &lt;/span&gt;&lt;/span&gt;Fee itab&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 21.25pt;&quot; valign=&quot;top&quot; width=&quot;28&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 200%; text-align: justify;&quot;&gt;
:&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 281.7pt;&quot; valign=&quot;top&quot; width=&quot;376&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 200%; text-align: justify;&quot;&gt;
Will
  de-allocate memory associated with internal table.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;h1&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314657&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWSf&quot; name=&quot;_Toc69628312&quot;&gt;Sorting of Internal Tables&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h5&gt;
To sort contents of internal table you can use&lt;/h5&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
SORT ITAB&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
This command
will sort internal table on all &lt;b&gt;non-numeric
primary keys &lt;/b&gt;in ascending order.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
To specify
internal table for given key the syntax is,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
SORT ITAB BY CARRID ASCENDING.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case
the table itab is sorted with carrid key in ascending order.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
You can sort
table in either ASCENDING or DESCENDING order.&amp;nbsp;
The default order is ASCENDING.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
You can sort
table with multiple keys also.&amp;nbsp; The
number of SORT key fields is restricted to 250.&amp;nbsp;
If you specify more than one field then the system sorts the record
first by f1 then by f2 and so on (Here f1, f2 are fields).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314658&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWSf&quot; name=&quot;_Toc69628313&quot; target=&quot;_blank&quot;&gt;Control Break Statements&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Control break statements are
used to create statement blocks which process only specific table lines the &lt;st1:place w:st=&quot;on&quot;&gt;LOOP&lt;/st1:place&gt; – ENDLOOP block.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
You open such
a statement block with the control level statement AT and close it with the
control level statement ENDAT.&amp;nbsp; The
syntax is as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;Table should be sorted when you use
control-break statements&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;You can break the sequential access of
internal tables by using these statements.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;Syntax:&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
At first.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Statement block&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Endat.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;This is the first statement to get executed inside the loop (remember
control break statements are applicable only inside the loop)&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
So in this block you can write
or process those statements which you want to get executed when the loop
starts.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
At New carrid.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write:/ carrid.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Endat.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case
whenever the new carrid is reached, carrid will be written.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
At End of
carrid.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Uline.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Endat.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case
whenever the end of carrid is reached, a line will be drawn.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
At Last.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write:/ ‘Last Record is reached’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Endat.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Processing of
statements within this block is done when entire processing of entire internal
table is over.&amp;nbsp; Usually used to display
grand totals.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
You can use
either all or one of the above control break statements with in the loop for
processing internal table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
At end of
carrid.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sum.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Endat.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText3&quot;&gt;
In above case the statement SUM (applicable only within
AT-ENDAT) will sum up all the numeric fields in internal table and result is
stored in same internal table variable.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h1&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314659&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWSf&quot; name=&quot;_Toc69628314&quot; target=&quot;_blank&quot;&gt;SUBROUTINES&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The process of breaking down a
large program into smaller modules is supported by ABAP/4 through subroutine,
also called forms.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Subroutines
are programs modules, which can be called from ABAP/4 programs.&amp;nbsp; Frequently used parts of program can be put
into subroutines and these subroutines can be called explicitly from the
program. &lt;b&gt;You use subroutines mainly to
modularize and structure your program.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314660&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWSf&quot; name=&quot;_Toc69628315&quot; target=&quot;_blank&quot;&gt;Defining Subroutines&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
A subroutine is block of code
introduced by FORM and concluded by ENDFORM.&amp;nbsp;
Following syntax is used to define a form or subroutine:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
FORM
&amp;lt;name&amp;gt; &amp;lt;parameters&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;. .&amp;nbsp;
…..&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;…&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
ENDFORM.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Here
parameters is optional. You can have plain subroutine without the parameters
for example.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h5&gt;
FORM SUB1.&lt;/h5&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;… .&amp;nbsp;
.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;… .&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
ENDFORM.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314661&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWSf&quot; name=&quot;_Toc69628316&quot; target=&quot;_blank&quot;&gt;Calling Subroutine&lt;/a&gt;s&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You can call subroutines from
program by following statement:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h5&gt;
PERFORM &amp;lt;subr&amp;gt; [&amp;lt;para&amp;gt;].&lt;/h5&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Parameters are
optional. i.e., you can call subroutine without passing any parameter&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Perform SUB1.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628317&quot;&gt;&lt;b&gt;Passing Data to Subroutines&lt;/b&gt;&lt;/a&gt;&lt;b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
When you work with
global data in subroutines, you can put a copy of the global data on a local
data stack and use it to avoid accidental loss of data (In this way you protect
global data.)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
You can pass
data between calling program and subroutines by using parameters.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l24 level1 lfo19; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Parameters, which are defined during definition
of a subroutine with FORM statement are called ‘formal parameter’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l24 level1 lfo19; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Parameters which are specified during the call
of a subroutine with the PERFORM statement are called ‘actual parameter’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Parameters are
passed to the FORM either:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l36 level1 lfo20; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;By value&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l36 level1 lfo20; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;By Reference&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l36 level1 lfo20; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;By value and return.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70154029&quot;&gt;By Value&lt;/a&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Data : a type I value 20.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Perform sub1 using a.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write a.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FORM sub1 using value (p_a)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; P – a = 15&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ENDORM.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
In this case during subroutine
call, the formal parameter are created as copies of actual parameter.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
The formal
parameters have the memory of their own. Changes made to formal parameter have
no effect on the actual parameter.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Like in this
case, though value of p_a is changed to 15, it has no effect on ‘a’ which
remains as 20.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;By Reference&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Data: a type I value 20.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Perform sub1 using a.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write a.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FORM sub1 using value (p_a)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; P – a = 15.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ENDORM.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
By default
system calls all the forms by reference.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case,
only the address of the actual parameter is transferred to the formal
parameters.&amp;nbsp; The formal parameter has no
memory of its own.&amp;nbsp; If you change the
formal parameter, change is visible in actual parameter also.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;By Value and Return&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Data : a type I value 20.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .5in;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Perform sub1 changing a.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FORM sub1 changing value
(p_a)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; P – a = 15.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ENDORM.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case
if you change formal parameter, then the value of actual parameter is changed
when the control is transferred back to the main program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Assuming A is
declared by DATA statement and has value 20 and subroutine SUB1 is called by
passing A.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-border-insideh: .5pt solid windowtext; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-table-layout-alt: fixed;&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-bottom: none; border-left: solid windowtext 1.0pt; border-right: none; border-top: solid windowtext 1.0pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 125.9pt;&quot; valign=&quot;top&quot; width=&quot;168&quot;&gt;&lt;h6&gt;
CALLING FORM&lt;/h6&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-top: solid windowtext 1.0pt; border: none; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 164.8pt;&quot; valign=&quot;top&quot; width=&quot;220&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
VALUE
  OF A IN PROGRAM&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: none; border-left: none; border-right: solid windowtext 1.0pt; border-top: solid windowtext 1.0pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 145.35pt;&quot; valign=&quot;top&quot; width=&quot;194&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
VALUE
  OF A IN FORM&lt;/div&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
(p_a
  = 15)&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: 34.6pt; mso-yfti-irow: 1;&quot;&gt;
  &lt;td style=&quot;border-bottom: none; border-left: solid windowtext 1.0pt; border-right: none; border-top: solid windowtext 1.0pt; height: 34.6pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 125.9pt;&quot; width=&quot;168&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-top: solid windowtext 1.0pt; border: none; height: 34.6pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 164.8pt;&quot; width=&quot;220&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
BEFORE
  CALLING FORM&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: none; border-left: none; border-right: solid windowtext 1.0pt; border-top: solid windowtext 1.0pt; height: 34.6pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 145.35pt;&quot; width=&quot;194&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
A
  = 20&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: 27.0pt; mso-yfti-irow: 2;&quot;&gt;
  &lt;td style=&quot;border-left: solid windowtext 1.0pt; border: none; height: 27.0pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 125.9pt;&quot; width=&quot;168&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border: none; height: 27.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 164.8pt;&quot; width=&quot;220&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
A
  = 20&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; height: 27.0pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 145.35pt;&quot; width=&quot;194&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
P_A
  = 100&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: .75in; mso-yfti-irow: 3;&quot;&gt;
  &lt;td style=&quot;border-left: solid windowtext 1.0pt; border: none; height: .75in; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 125.9pt;&quot; width=&quot;168&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
BY
  VALUE&lt;/div&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
(USING)&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border: none; height: .75in; padding: 0in 5.4pt 0in 5.4pt; width: 164.8pt;&quot; width=&quot;220&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
AFTER
  RETURNING FROM FORM A = 20&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; height: .75in; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 145.35pt;&quot; width=&quot;194&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;(changing value of p_a)&lt;/div&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
A
  = 20.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: 38.0pt; mso-yfti-irow: 4;&quot;&gt;
  &lt;td style=&quot;border-bottom: none; border-left: solid windowtext 1.0pt; border-right: none; border-top: solid windowtext 1.0pt; height: 38.0pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 125.9pt;&quot; width=&quot;168&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-top: solid windowtext 1.0pt; border: none; height: 38.0pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 164.8pt;&quot; width=&quot;220&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
BEFORE
  CALLING FORM&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: none; border-left: none; border-right: solid windowtext 1.0pt; border-top: solid windowtext 1.0pt; height: 38.0pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 145.35pt;&quot; width=&quot;194&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
A
  = 20&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: 38.0pt; mso-yfti-irow: 5;&quot;&gt;
  &lt;td style=&quot;border-left: solid windowtext 1.0pt; border: none; height: 38.0pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 125.9pt;&quot; width=&quot;168&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border: none; height: 38.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 164.8pt;&quot; width=&quot;220&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
A
  = 20&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; height: 38.0pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 145.35pt;&quot; width=&quot;194&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
P_A
  = 100&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: 38.0pt; mso-yfti-irow: 6;&quot;&gt;
  &lt;td style=&quot;border-left: solid windowtext 1.0pt; border: none; height: 38.0pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 125.9pt;&quot; width=&quot;168&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
BY
  REFERENCE&lt;/div&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
(USING)&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border: none; height: 38.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 164.8pt;&quot; width=&quot;220&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
AFTER
  RETURNING FROM FORM A = 20&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; height: 38.0pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 145.35pt;&quot; width=&quot;194&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
(changing
  value of p_a)&lt;/div&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
A
  = 100&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: 38.0pt; mso-yfti-irow: 7;&quot;&gt;
  &lt;td style=&quot;border-bottom: none; border-left: solid windowtext 1.0pt; border-right: none; border-top: solid windowtext 1.0pt; height: 38.0pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 125.9pt;&quot; width=&quot;168&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
BE
  VALUE AND RETURN&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-top: solid windowtext 1.0pt; border: none; height: 38.0pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 164.8pt;&quot; width=&quot;220&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
BEFORE
  CALLING FORM&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: none; border-left: none; border-right: solid windowtext 1.0pt; border-top: solid windowtext 1.0pt; height: 38.0pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 145.35pt;&quot; width=&quot;194&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
A
  = 20&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: 38.0pt; mso-yfti-irow: 8;&quot;&gt;
  &lt;td style=&quot;border-left: solid windowtext 1.0pt; border: none; height: 38.0pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 125.9pt;&quot; width=&quot;168&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border: none; height: 38.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 164.8pt;&quot; width=&quot;220&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
A
  = 20&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; height: 38.0pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 145.35pt;&quot; width=&quot;194&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
P_A
  = 100&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: 38.0pt; mso-yfti-irow: 9; mso-yfti-lastrow: yes;&quot;&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: solid windowtext 1.0pt; border-right: none; border-top: none; height: 38.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 125.9pt;&quot; width=&quot;168&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
(CHANGING)&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border: none; height: 38.0pt; mso-border-bottom-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 164.8pt;&quot; width=&quot;220&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
AFTER
  RETURNING FROM FORM A = 100&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 38.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 145.35pt;&quot; width=&quot;194&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
(changing
  value of p_a)&lt;/div&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
A
  = 100.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314662&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628318&quot;&gt;Passing Table to a Subroutine&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You can pass internal tables
as parameters USING or CHANGING in the FORM and PERFORM statements.&amp;nbsp; If you want to access the components of the
internal table, you must specify the type of the corresponding formal parameter.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
You also must
distinguish between internal tables with or without header lines. For internal
tables with header lies, you must specify the table body by using square
brackets [ ], after the table name to distinguish it from the header line.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
With internal
subroutines, you can use TYPE or LIKE to refer to the internal table you want
to pass directly.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
You can pass
all internal tables as parameters in the list after TABLES in the FORM and
PERFORM statements.&amp;nbsp; Internal tables
passed with TABLES are always called by reference.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
If you pass
all internal table with a header line, the table body and the table work area
are passed to the subroutine. If you pass an internal table without a header
line, a header line is created automatically as a local data object in the
subroutine. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-table-layout-alt: fixed;&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style=&quot;border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 436.05pt;&quot; valign=&quot;top&quot; width=&quot;581&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
PROGRAM
  ZDEMO&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
DATA: Begin
  of itab occurs 0,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Number type I,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp; end of itab&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
PERFORM SUB1
  TABLES ITAB.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
LOOP AT
  ITAB.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
WRITE: /
  itab-number.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
&amp;nbsp; ENDLOOP.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
FORM SUB1
  TABLES F_ITAB LIKE ITAB [&amp;nbsp; ].&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
DO 3 TIMES.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F_itab-number = SY-INDEX.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; APPEND F_ITAB.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ENDDO.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
ENDFORM.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
After starting
ZDEMO the output appears as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this
example, an internal table ITAB is declared with a header line.&amp;nbsp; ITAB is passed to the subroutine SUB1, where
it is filled using the table work area F_ITAB.&amp;nbsp;
And itab is written in main program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 11.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h2&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314663&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWSf&quot; name=&quot;_Toc69628319&quot; target=&quot;_blank&quot;&gt;FUNCTIONS&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Function modules are special
external subroutines stored in a central library.&amp;nbsp; The R/3 system provides numerous predefined
function modules that you can call from your ABAP/4 programs, and plus you can
create your own function modules.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
The main
difference between a function module and a normal ABAP/4 subroutine is as
follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Function is
stored in central library and has global presence while subroutines are
confined to a particular program.&amp;nbsp;
Subroutine cannot return values while functions can return values.
Unlike functions, subroutine cannot handle exceptions. And last but not least,
the difference in the way the parameters are passed to functions.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;Declaring data as common parts is not
possible for function modules.&lt;/b&gt;&amp;nbsp; The
calling program and the called function module have separate work in ABAP/4
Dictionary tables.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
You use the
ABAP/4 Workbench to call, create, and maintain function modules.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
You can &lt;b&gt;combine several function modules to form a
function group in the function library.&amp;nbsp; &lt;/b&gt;Since
you can define global data that can be accessed from all function modules of
one function group, it is reasonable to include function modules that operate
with the same data, for example internal table for sales module can be grouped,
in one function group.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Via the ABAP/4
Development Workbench screen, choose Development &lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt; Function Library or select
Function Library in the application toolbar or use se37 transaction code.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314664&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWSf&quot; name=&quot;_Toc69628321&quot; target=&quot;_blank&quot;&gt;The Function Library:&lt;/a&gt; &lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgW2LwhfKTVDxqwaKSJtQVDpvV6AD9fI-jxn02B4J4wj6jPJcnpYsukE_mjo8nydlhs8nFSHn5OQD3ie9pwADPT9c32T7D_NsLz6i66penObqKu8uZlFav6Dk7jHxBoqolFGYnv4yDU8AWo/s1600/image003.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;460&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgW2LwhfKTVDxqwaKSJtQVDpvV6AD9fI-jxn02B4J4wj6jPJcnpYsukE_mjo8nydlhs8nFSHn5OQD3ie9pwADPT9c32T7D_NsLz6i66penObqKu8uZlFav6Dk7jHxBoqolFGYnv4yDU8AWo/s640/image003.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
The function
library maintains Function Modules, the screen displays following components: &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
All function
names should start with Z_ or Y_ followed by any name.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo21; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Source code&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo21; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Documentation&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo21; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Administrative info&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo21; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Import-export parameters&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo21; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Table parameters and exception interface&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo21; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Global data&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo21; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Main program&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; text-align: justify;&quot;&gt;
(Not necessarily in the same order)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h3 align=&quot;left&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;;&quot;&gt;Documentation&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The documentation describes
the purpose of the function module, lists the parameters for passing data to
and from the module, and the exceptions.&amp;nbsp;
The parameters of the parameter type I are import parameters, which are
used to pass data to the function module.&amp;nbsp;
Parameters of the parameter type E are export parameters, which are used
to pass data from, the function module to the calling program.&amp;nbsp; Exceptions describe error scenarios, which
can occur in function modules.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;b style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;;&quot;&gt;Import-export
parameters&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Import
parameters correspond to the formal input parameter of subroutines.&amp;nbsp; They pass data from the &lt;b&gt;calling program to the function module.&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Export
parameters correspond to the formal output parameters of subroutines.&amp;nbsp; They pass data from the function module back
to the calling program (which his not possible in subroutines)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h3 align=&quot;left&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;;&quot;&gt;Table
parameters&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Table parameters are internal
tables.&amp;nbsp; Internal tables are treated like
changing parameters and are always passed by reference.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314665&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Exceptions&lt;/span&gt;&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Exceptions are
used to handle error scenarios, which can occur in function modules.&amp;nbsp; The function module checks for any type of
error and raise exception and returns SY-SUBRC to the calling program.&amp;nbsp; Main program checks this SY-SUBRC for any
errors that have occurred and then takes action accordingly.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h3 align=&quot;left&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;;&quot;&gt;Source
Code&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The ABAP/4 Edit screen
displays the ABAP/4 source code of the function module.&amp;nbsp; You can work with the source code in the same
way as you would work with normal ABAP/4 programs.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Import
parameters, changing parameters, and table parameters can be Optional.&amp;nbsp; This means that you can omit the
corresponding actual parameter when you call the function in the calling
program.&amp;nbsp; If the parameter is optional
and the actual parameter is not specified, you can specify a default value for
use in the function module.&amp;nbsp; Export
parameters are always optional.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
As with
subroutines, you can specify the data types of the formal parameters in the
field Reference type.&amp;nbsp; In the field Ref.
structure, you can specify ABAP/4 Dictionary reference structures or
fields.&amp;nbsp; Then, the system checks the
current parameter against the structure or field at runtime.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314666&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628322&quot;&gt;Testing of function module&lt;/a&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
You can test a
function module without calling it from an ABAP/4 program via the Function
Library: Maintain Function Modules screen by choosing Single test.&amp;nbsp; You can assign values to the import
parameters on the Test Function Modules screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;b style=&quot;line-height: 16pt;&quot;&gt;Calling Function Modules&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;To call a function module from an ABAP/4 program, &lt;/b&gt;use the CALL
statement as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Syntax:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;h5&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;CALL FUNCTION &amp;lt;module&amp;gt;&lt;/h5&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp; [EXPORTING&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .5in;&quot;&gt;
f1&amp;nbsp;&amp;nbsp; = s1&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; f2&amp;nbsp;
= s2&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fn&amp;nbsp;
= sn (parameters which you pass from program to function are&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s1, s2, sn)]&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp; [IMPORTING &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; f1&amp;nbsp;&amp;nbsp;
= r1&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; f2&amp;nbsp;
= r2&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fn&amp;nbsp;
= rn (parameters which program receives you pass from function in&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; r1, r2, rn)]&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp; [TABLES &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; f1
= a1 … fn = an]&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EXCEPTIONS notvalid = 1&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; not correct = 2&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OTHERS = 5].&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
You can
specify the name of the function module &amp;lt;module&amp;gt; as a literal or as a
variable.&amp;nbsp; Parameters are passed to and
from the function module by exactly assigning the actual parameters to the
formal parameters in the lists after the EXPORTING, IMPORTING, TABLES.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
If in your
function if you have raised exception not valid then this exception can be
handled in main program.&amp;nbsp; Functions
return different sy-subrc for different exceptions.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 11.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h2&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314667&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628323&quot;&gt;REPORTS&lt;/a&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628324&quot; style=&quot;font-size: x-large; text-align: left;&quot;&gt;About reports&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Reports, in
the R/3 system are online programs whose function is to retrieve data from
database and display it or print it for the user. An end user often needs some
information to look up, depending upon which various management decisions are
taken, or to just see business results or simply to continue work. As R/3 is
collection of all business applications, it has provided a very powerful
feature to satisfy this crucial business need i.e., reports are involved at
each and every step of business. This type of extracting, collecting and
formatting data that is stored in database is done by REPORT program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
The program
that is written to retrieve and display data is REPORT program and the data
that is displayed on the screen when you execute the program is called as LIST
(output of the report).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
SAP has
provided thousands of preprogrammed reports. User just selects a menu option or
just one click here and there, displays the report. Often user is unaware that
by clicking one button he is executing a complicated report program, which is
actually accessing database and then displaying the result. An end user might
not feel the necessity of writing a REPORT program but a developer has to
develop a report manually using the functions and facilities provided by the
R/3 system. How to develop a report using these facilities, is the purpose of
this section.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
When you
display data, you need to display the data, user needs. For example, user wants
to see the all the employee, who has joined after 12&lt;sup&gt;th&lt;/sup&gt; December
1997.&amp;nbsp; In this case user has to pass this
information, to the system, that he needs only those employee records where
joining data is greater than 12&lt;sup&gt;th&lt;/sup&gt; December 1997. For user, it is
passing information to the system but for the system it is input from the user.
System takes input from the user before it retrieves the data from the
database. This is very common requirement of any report as the need of any
business is to display data, which is required by user.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: large; text-align: left;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628325&quot;&gt;Selection criteria&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;line-height: 16pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
System accepts inputs from
user through &lt;b&gt;SELECTION CRITERIA.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Selection
criteria are nothing but input fields which allows the user to restrict
information given to program for processing further data. If you don’t specify
any criteria for selection, your report program produces a long list of data,
which might not be needed by the user. Basically, selection criteria are the
fields where user enters some value for which he needs information. Through &lt;b&gt;selection criteria user can enter discrete
value or ranges.&lt;/b&gt; For example, user wants to see all the records of the
employees, who have joined between 12&lt;sup&gt;th&lt;/sup&gt; December 1997 and 12&lt;sup&gt;th&lt;/sup&gt;
May 1998. This range can be entered in selection criteria. As the user becomes
more specific for mentioning the criteria, the list will be smaller and more
specific.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;Syntax:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h5&gt;
SELECT-OPTIONS &amp;lt;field&amp;gt; for &amp;lt;table field&amp;gt;.&lt;/h5&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;line-height: 16pt; text-align: left;&quot;&gt;Field is the variable, which
you declare for accepting input from the user.&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Table field is
reference field.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; tab-stops: 99.25pt 113.4pt; text-align: justify;&quot;&gt;
SELECT-OPTIONS:
fld1 for sflight-fldate,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; tab-stops: 99.25pt 113.4pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;carrid1 for sflight-carrid.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Maximum length of the name
Select-Options variable is 8.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
When system
executes this statement, the selection screen is displayed and is like this.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhU9efujpH85IhRudR148_mWKVdhI5YP2_0Vxq1Zh_pUY7jpJ5BhTyDdpT6-pB4SI1G0v4sHzQkWLjzMq1A3m59ELdQCegKPlO486TpZD2rAwBPiNSTjfCIGxu4c0b5CYabEWSF2Wo4oUqU/s1600/image005.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;460&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhU9efujpH85IhRudR148_mWKVdhI5YP2_0Vxq1Zh_pUY7jpJ5BhTyDdpT6-pB4SI1G0v4sHzQkWLjzMq1A3m59ELdQCegKPlO486TpZD2rAwBPiNSTjfCIGxu4c0b5CYabEWSF2Wo4oUqU/s640/image005.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
When you enter
the desired information and click on execute button, rest of the program is
executed, that is retrieval of data from database, which matches this
information and the list is displayed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Behavior of &lt;b&gt;SELECT-OPTIONS&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
When the
Select-Options statement is executed the system creates the internal table with
the same variable name (in this case it will be carrid1). This table is also
called as &lt;b&gt;selection table.&lt;/b&gt; The main
purpose of selection table is to store selection criteria. The table has four
standard fields, which are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l20 level1 lfo22; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;SIGN is a variable, which denotes the system
whether the result should be included with those particular criteria. It can
contain either I or E. I denotes Inclusion. The criteria are included. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify; text-indent: .25in;&quot;&gt;
E denotes Exclusion. The criteria are excluded from the result.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l20 level1 lfo22; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;LOW the data type of LOW is the same as the
field type of the database table, for which you are using selection criteria.
This acts as lower limit of the selection.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l20 level1 lfo22; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;HIGH the data type of HIGH is the same field
type of the database table, for which you are using the selection criteria.
This acts as higher limit. If you don’t enter HIGH value then the LOW value
defines a single value selection.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l20 level1 lfo22; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;OPTION is two-character field, which contains
operators like EQ, GT, LT, GE, and LE.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; text-align: justify;&quot;&gt;
When the user enters both the values i.e., high and low then this field
acts as BT (between).&amp;nbsp; If you don’t enter
high value then all other operators can be Applicable.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
For each
Select-Options statement system creates internal table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;&lt;i&gt;Default
values for select-options&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
If you want to display default
values for the selection criteria before your screen is displayed, give default
values for the selection table fields i.e., low or high.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
SELECT-OPTIONS:
CARRID1 FOR SFLIGHT-CARRID DEFAULT CARRID1-LOW = ‘LH’ AND CARRID1-HIGH = ‘SQ’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case
selection screen is displayed with default values ‘LH’ for lower range and ‘SQ’
for higher range. User can use same values or overwrite these values with new
values, whichever he needs.&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628326&quot;&gt;&lt;b&gt;Standard report&lt;/b&gt;&lt;/a&gt;&lt;b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The normal format of any
report is as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: center;&quot;&gt;
HEADING
FOR THE LIST i.e., header area&lt;/div&gt;
&lt;div style=&quot;border-bottom: solid windowtext 1.0pt; border: none; mso-border-bottom-alt: solid windowtext .5pt; mso-element: para-border-div; padding: 0in 0in 1.0pt 0in;&quot;&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;border: none; line-height: 16.0pt; margin-bottom: 2.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-padding-alt: 0in 0in 1.0pt 0in; padding: 0in; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-bottom: 2.0pt; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-bottom: 2.0pt; text-align: center;&quot;&gt;
LIST HEADERS&lt;/div&gt;
&lt;div style=&quot;border-bottom: solid windowtext 1.0pt; border: none; mso-border-bottom-alt: solid windowtext .5pt; mso-element: para-border-div; padding: 0in 0in 1.0pt 0in;&quot;&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;border: none; line-height: 16.0pt; margin-bottom: 2.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-padding-alt: 0in 0in 1.0pt 0in; padding: 0in; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-bottom: 2.0pt; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-bottom: 2.0pt; text-align: center;&quot;&gt;
Detailed data&lt;/div&gt;
&lt;div style=&quot;border-bottom: solid windowtext 1.0pt; border: none; mso-border-bottom-alt: solid windowtext .5pt; mso-element: para-border-div; padding: 0in 0in 1.0pt 0in;&quot;&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;border: none; line-height: 16.0pt; margin-bottom: 2.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-padding-alt: 0in 0in 1.0pt 0in; padding: 0in; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-bottom: 2.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h6 style=&quot;margin-bottom: 2.0pt;&quot;&gt;
At the end of page you can have sub total of
page number i.e., footer area&lt;/h6&gt;
&lt;div style=&quot;border-bottom: solid windowtext 1.0pt; border: none; mso-border-bottom-alt: solid windowtext .5pt; mso-element: para-border-div; padding: 0in 0in 1.0pt 0in;&quot;&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;border: none; line-height: 16.0pt; margin-bottom: 2.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-padding-alt: 0in 0in 1.0pt 0in; padding: 0in; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-bottom: 2.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Usually any
report has some page headings at the top of page and then data is displayed
with column headings, followed by data and at the end of page may be some grand
total or page number.&amp;nbsp; Any such report
can be displayed by using report program.&amp;nbsp;
Such report is called as &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;i&gt;Classical
Report.&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Usually a standard report
produced by system is one continuous page of 65k lines.&amp;nbsp; The standard report can be declared as
follows;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
REPORT ZDEMO&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
By default the
report produced by system is standard report.&amp;nbsp;
But when you need to have your report divided into pages of say 20 lines
and you want to reserve some area for footer than you need to use following
format of report statement:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
REPORT ZDEMO
line-count 20(3)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Line-size
75.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case
the line count for one page is 20 lines, in which 3 lines are reserved for
footer. You can display your data only in 17 lines. The width of page will be
75 characters.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
As all of us
know ABAP/4 is event driven language, the ABAP/4 processor controls the
execution of events.&amp;nbsp; For example in
above report at the end of the page, you want to write the page number,
reaching end of page is an event. Or whenever at the top of a page you want to
write list headers, then in this event you can write the code for displaying
the list headers. Report program is nothing but a set of events either
controlled externally or internally. All above events are external events as
the top portion of your page is reached on your screen or on your printer and
is no way connected to your program. &lt;b&gt;Internal
events &lt;/b&gt;are those events, which are controlled inside the program i.e., either
&lt;b&gt;by if – endif&lt;/b&gt; statement or any other
decision-making statement.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
A sample
report program without any events is as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Report zdemo1.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Tables:
sflight.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Select-options
carrid1 for sflight-carrid.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;* For accepting input from user.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Write: ‘This
is my first report program’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Write: / 10
‘carrier id’, 20 ‘connection id’ 30 ‘flight date’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;* These two write statements are for writing heading and
column headings.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Select * from
sflight where carrid in carrid1.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Write: / 10
sflight-carrid, 20 sflight-connid, 30 sflight-fldate.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Endselect.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Write: / ‘page
number:‘, sy-pagno.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case
we are writing list headings for report. But these list headings are applicable
only for the first page. If your list is spilling over multiple pages, then
these list headings are not applicable to other pages. Again in this program,
we write page number after all the data is displayed. This is fine as long as
you have one page, but the moment your list spills over multiple pages, the
page number will be displayed only after all the records are displayed. So in
order to have some data like company name or list headings or page number or
total of some number field on each page, you need to make use of events.&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 11.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h2&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314670&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628327&quot;&gt;CLASSICAL REPORTS&lt;/a&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;o:p&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/o:p&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628328&quot; style=&quot;font-size: x-large; text-align: left;&quot;&gt;Events in Classical report&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Events associated with classical
report are as follows and each one will be discussed in detail.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l27 level1 lfo23; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;INITIALIZATION&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l27 level1 lfo23; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;AT
SELECTION-SCREEN&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l27 level1 lfo23; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;AT
&lt;st1:place w:st=&quot;on&quot;&gt;&lt;st1:city w:st=&quot;on&quot;&gt;SELECTION-SCREEN&lt;/st1:city&gt; &lt;st1:state w:st=&quot;on&quot;&gt;ON&lt;/st1:state&gt;&lt;/st1:place&gt; &amp;lt;field&amp;gt; &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l27 level1 lfo23; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;START-OF-SELECTION&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l27 level1 lfo23; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;TOP-OF-PAGE&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l27 level1 lfo23; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;END-OF-PAGE&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l27 level1 lfo23; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;END-OF-SELECTION&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case
first three events are associated with selection screen. Rest of the events are
associated with your list.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l27 level1 lfo23; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;INITIALIZATION&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
We have already seen how to
fill default values for the selection criteria. But in many cases you need to
calculate the value and then put it in selection criteria. For example, say,
you are accepting date from user and you need to fill in the default value for
lower range as sy-datum – 30 days and sy-datum for higher range. In this case
you are calculating lower range and then filling the criteria. This can be done
in INITIALIZATION event.&amp;nbsp; Piece of code
to do the above task would look like the following:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Tables:
Sflight.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Select-options:
fldate1 for sflight-fldate.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
INITIALIZATION.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Data: date1
like SY-DATUM.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Date1 =
sy-datum – 30.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Fldate1-low =
date1.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Fldate1-high =
sy-datum.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Append
fldate1.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;* Here appending is required because fldate1 is int’ table&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
This event is
triggered when you execute your program for the first time i.e., before
selection screen is displayed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l29 level1 lfo24; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;AT
SELECTION-SCREEN&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When user enters the values in
the fields of selection screen and clicks on execute button, this event gets
triggered. This event is basically for checking the values entered by the user
for the fields of the selection screen i.e., data validity checking. This event
is for entire selection screen.&amp;nbsp; For
example:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
You are
accepting carrid, connid, fldate from user and you don’t want to proceed if
user enters no value for carrid and fldate.&amp;nbsp;
Using AT SELECTION-SCREEN can do this.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Select-options:
carrid1 for sflight-carrid,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Connid1 for
sflight-connid,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F1date1 for
sflight-f1date.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
AT
SELECTION-SCREEN.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
If carrid1-low
ne ‘&amp;nbsp; ’ and fldate1-low = ‘&amp;nbsp; ’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; Error message.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Endif.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case,
if both the fields are entered blank, then the user gets error message.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Basically,
this event is for many fields on selection screen.&amp;nbsp; Usually, it is for the fields which are
logically related.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l23 level1 lfo25; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;AT &lt;st1:place w:st=&quot;on&quot;&gt;&lt;st1:city w:st=&quot;on&quot;&gt;SELECTION-SCREEN&lt;/st1:city&gt; &lt;st1:state w:st=&quot;on&quot;&gt;ON&lt;/st1:state&gt;&lt;/st1:place&gt;&amp;nbsp; &amp;lt;field&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When you want to check for
specific value of a field. For example, carrid should be in the range of ‘LH’
and ‘SQ’. This can be done in this event.&amp;nbsp;
Basically, this event is for checking individual fields. You can have
many AT selection-screen events in your program (i.e., for each field specified
in the Select-Options).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Select-Options
carrid1 for sflight-carrid.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
AT
SELECTION-SCREEN.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
If carrid1-low
ne ‘LH’ and carrid1-high ne ‘SQ’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp; Error message.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Endif.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Here the
system will not proceed on entering wrong values.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l29 level1 lfo24; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;START-OF-SELECTION&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
This is the
first event for your list. Once all the events are triggered for selection
screen, the data is retrieved from database. Data declaration, select
statements are done in this event. Consider the following example:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
START-OF-SELECTION.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Data:&amp;nbsp; mtype i.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Tables:
sflight.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Select * from
sflight where carrid = ‘LH’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&amp;nbsp;&amp;nbsp; Write: / sflight-carrid,sflight-connid.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Endselect.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l8 level1 lfo26; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;TOP-OF-PAGE&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
This event is triggered with
first WRITE statement or whenever new page is triggered.&amp;nbsp; Advantage of using this event is that,
whatever you write under this event, is applicable to all the pages. If you
don’t have any write statement before TOP-OF-PAGE or in START-OF-SELECTION,
this event is not triggered at all.&amp;nbsp; For
example, if you want the name of company and column headers for all the pages,
it can be written in this event.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
TOP-OF-PAGE&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Write: /
‘INTELLIGROUP &lt;st1:place w:st=&quot;on&quot;&gt;ASIA&lt;/st1:place&gt; PVT. LTD.’&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Write : / 10
‘carrid’, 20 ‘connid’, 30 ‘fldate’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l39 level1 lfo27; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;END-OF-PAGE&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
This event is
triggered at the end of page.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
End-of-page.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Write : /
‘page number’, sy-pagno.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case
page number will be written on every page.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314672&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628329&quot;&gt;Conditional triggering of EOP&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
Consider the following case.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
REPORT ZDEMO1
line-count 15(3).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Top-of-page.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Write: ‘this
line is written by top-of-page event’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Start-of-selection.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Write: ‘this
line is written by start-of-selection event’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
End-of-page.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Write : ‘this
line is written by end-of-page event’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
In this case EOP will never be
triggered, as end of page is never reached. The total Line-count defined for
page = 15 in which 3 lines are for footer area. The output of the above code
will be &lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
This line is
written by top of page event.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
This line is
written by start of selection event.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In output
screen, only two lines are written and cursor remains still on 3&lt;sup&gt;rd&lt;/sup&gt;
line, the end-of-page event is not triggered. To trigger end of page event,
cursor should reach at the last position, in this case on 11&lt;sup&gt;th&lt;/sup&gt; line.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Such cases are
quite common, and could be overcome by conditional triggering of end of page.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Sy-linct is
the system variable, which gives total line count of a list.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Sy-linno is
the system variable, which gives the current line number where the cursor is
placed on the list.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Consider the
following case:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Report zdemo1 line count 20(1).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Start-of-selection.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Data: m type i.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Write: / ‘this is first line’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Do 5 times.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Write: / ‘the number is’,
sy-index.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Enddo.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
M = sy-linct, sy-linno – 1.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Skip x.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
End-of-page.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Write: / ‘page
end’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
The output of above example is as
follows :&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
This is first line.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
The number is 1&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
The number is 2&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
The number is 3&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
The number is 4&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
The number is
5&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
After skipping
10 lines&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Page end&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case,
with all write statement, you don’t reach to the end of page. After all write
statement, m is calculated in this case:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
M = 20 – 8 –
1, So m is 12. And 11 lines are skipped after write statement and end of page
is reached. (In this case you have 6 write statement so 6 lines + 1 line for
page number and 1 horizontal line which is displayed for any list.&amp;nbsp; So cursor is on 8&lt;sup&gt;th&lt;/sup&gt; line and is
subtracted from total line count i.e, 20.)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314673&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628330&quot;&gt;Common errors that user commits&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Stating of another event
denotes the end of any event.&amp;nbsp; If you
forget to mention the next event then everything is included in the same
event.&amp;nbsp; Consider the following case:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
AT SELECTION-SCREEN.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
If carrid1-low ne ‘&amp;nbsp;&amp;nbsp; ‘.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Err. or message.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Endif.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Write: / ‘INTELLIGROUP ASIA P.
LTD.’&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
WRITE: / 10 ‘CARRID’, 20
‘CONNID’, 30 ‘FLDATE’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
START-OF-SELECTION.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText3&quot;&gt;
….&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;….&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;….&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
In this case all the write
statement are included in the `at selection screen’ as top-of-page is not specified.
The end of `at selection-screen’ is denoted by the starting of
start-of-selection.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Though the sequence of events
in program is immaterial, it is a good programming practice to write all the
events in the order specified above.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628331&quot; style=&quot;font-size: x-large; text-align: left;&quot;&gt;Using Variants with selection criteria&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In many cases
you need report to execute report at regular interval for certain fixed values
of selection criteria. That means each times you execute the report you need to
enter its values again and again. ABAP/4 provides the facility by which you can
define the values for selection screen and store it. Using VARIANTS can do
this. It can be defined as group of values used for selection criteria while
executing report.&amp;nbsp; For a particular
report, you create a variant which means variant created for particular report
cannot be used for another report. The group of values for the selection criteria
is saved and assigned a variant name.&amp;nbsp; So
every time you call a report, you need not specify the values for selection
criteria but instead call the variant thus avoiding extra typing. User can have
many variants for a single report.&amp;nbsp; Each
of them can be used as different type of information. For example, if a manager
wants to see how an employee in personnel department or admin department has
performed. He need not enter the department, one has to just execute the report
with variant. In case he doesn’t know about the variant, which is available, he
can display list of variants attached to the report and values assigned to each
variant.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70154030&quot;&gt;Creating variant&lt;/a&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l26 level1 lfo28; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Execute the report program. The selection screen
is displayed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l26 level1 lfo28; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Enter the values for selection screen and click
on saves.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; text-align: justify;&quot;&gt;
-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; System displays the variant
screen&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l33 level1 lfo29; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Enter the variant name and description for it.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l33 level1 lfo29; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Save it.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Usually the
variants are useful when you need to execute the report in background, which
will be discussed in background processing.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
.&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628332&quot; style=&quot;text-align: left;&quot;&gt;INTERACTIVE REPORTS&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628333&quot; style=&quot;text-align: left;&quot;&gt;About interactive report&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
A classical report consists of
one program that creates a single list.&amp;nbsp;
This means that when the list is displayed, it has to contain all the
requested data, regardless of the number of details the user want to see.&amp;nbsp; This procedure may result in extensive and
cluttered lists from which the user has to pick the relevant data. The desired
selections must be made before hand and the report must provide detailed
information.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
This is not
possible using the classical report and for this ABAP/4 has provided reporting
feature called &lt;b&gt;INTERACTIVE REPORT.&lt;/b&gt;
The list produced by classical report doesn’t allow user to interact with the
system but the list produced by interactive report allows the user to interact
with the system i.e., user can tell the system, that he needs further
information. Depending upon what the user tells the system, the action is
taken. Interactive reporting thus reduces information retrieval to the data
actually required. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;&lt;i&gt;Interactive
reporting&lt;/i&gt;&lt;/b&gt; allows the user to participate in retrieving and presenting
data at each level during the session.&amp;nbsp;
Instead of presenting one extensive and detailed list with cluttered
information, with interactive reporting you can create a condensed basic list
from which the user can call detailed information by positioning the cursor and
entering commands.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Detailed
information is presented in secondary lists. A secondary list may either
overlay the basic list completely or appear in an additional dialog window on
the same screen.&amp;nbsp; The secondary list can
itself be interactive again. The basic list is not deleted when secondary list
is created.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
User can
interact with the system by:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l13 level1 lfo30; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Double clicking or pressing F2&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l13 level1 lfo30; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Selecting menu option&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Like classical
report, the interactive report is also event driven. Both the action mentioned
above trigger events and code is written to handle these events.&amp;nbsp; The events triggered by this action are as
follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l35 level1 lfo31; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;At line-selection&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l35 level1 lfo31; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;At user-command&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l35 level1 lfo31; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Top-of-Page During Line-Selection for Secondary
Page Header info&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;mso-special-character: line-break; page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Interactive
report consists of one BASIC list and 20 secondary list. Basic list is produced
by START-OF-SELECTION event. When the user double clicks on the basic list or
chooses the menu option, the secondary list is produced. All the events
associated with classical report except end-of-page are applicable only to
basic list.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314677&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628334&quot;&gt;AT LINE-SELECTION event&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Double clicking is the way
most users navigate through programs. Double clicking on basic list or any
secondary list triggers the event AT LINE-SELECTION. SY-LSIND denotes the index
of the list currently created. For BASIC list it is always 0.&amp;nbsp; Following piece of code shows how to handle
the event.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Start-of-selection.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Write: / ‘this
is basic list’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
At
line-selection.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Write : ‘this
is first secondary list’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case
the output will be displayed on basic list i.e.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
This is basic
list.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
When user
double clicks on this line, the event at line-selection gets triggered and
secondary list is produced, i.e.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
This is first
secondary list.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
You can go
back to basic list by clicking on F3 or back icon on the standard tool
bar.&amp;nbsp; For this list, the value of
sy-lsind will be 1.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314678&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628335&quot;&gt;HIDE technique&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;line-height: 16pt; text-align: justify;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In this case
thins are much simpler. Consider the case, wherein you display fields from
table sflight in basic list. When user double clicks on any sflight-carrid, you
are displaying the detailed information related to that particular carrid on
secondary list.&amp;nbsp; Hence there is a need to
store the clicked carrid in some variable.&amp;nbsp;
So that you can access this carrid for next list. ABAP/4 has facility; a
statement called &lt;b&gt;HIDE&lt;/b&gt;, which
provides the above functionality.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
HIDE command
temporarily stores the content of clicked field in system area.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;Syntax:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
HIDE &amp;lt;FIELDS&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
This statement
stores the contents of variable &amp;lt;f&amp;gt; in relation to the current output line
(system field SY-LINNO) internally in the so-called HIDE area. The variable
&amp;lt;f&amp;gt; must not necessarily appear on the current line.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
You have to
place the HIDE statement always directly after the output statement i.e., WRITE
for the variable &amp;lt;f&amp;gt;.&amp;nbsp; As when you
hide the variable, control is passed to next record.&amp;nbsp; While writing, &lt;b&gt;WRITE statement takes that record from header and writes it on to the
list, but when writing onto your interactive list you will miss out 1&lt;sup&gt;st&lt;/sup&gt;
record.&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
To hide
several variables, use chain HIDE statement.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
As soon as the
user selects a line for which you stored HIDE fields, the system fills the
variables in the program with the values stored.&amp;nbsp; A line can be selected.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l22 level1 lfo32; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;By an interactive event.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
For each interactive event,
the HIDE fields of the line on which the cursor is positioned during the event
are filled with the stored values.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
The HIDE area
is a table, in which the system stores the names and values of all HIDE fields
for each list and line number.&amp;nbsp; As soon
as they are needed, the system reads the values from the table.&amp;nbsp; (Please try to find the name of this table.)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Sy-lsind
indicates the index of the list and can be used to handle all the secondary
lists.&amp;nbsp; When the user double clicks on
the line or presses F2, sy-lsind is increased by one and this new sy-lsind can
be handled.&amp;nbsp; For example:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Write: / ‘this is basic list’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .25in; mso-list: l19 level1 lfo33; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Will create a basic list.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
If sy-lsind = 1.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Write: / ‘this is first secondary
list’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Elseif sy-lsind = 2.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Write: / ‘This is second
secondary list’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Endif.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
When this code
is executed,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l31 level1 lfo34; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Basic list is produced. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l31 level1 lfo34; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;When the user clicks on the basic list, sy-lsind
becomes one.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l31 level1 lfo34; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;AT LINE-SELECTION event is triggered.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l31 level1 lfo34; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Whatever is written under IF Sy-lsind = 1, gets
executed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l31 level1 lfo34; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Secondary list is produced.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l31 level1 lfo34; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Again if user clicks on this list, sy-lsind
becomes two.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l31 level1 lfo34; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;AT LINE-SELECTION gets triggered.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l31 level1 lfo34; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Code written under IF Sy-lsind = 2, gets
executed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
A sample
program for AT LINE-SELECTION.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314679&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628336&quot;&gt;User interface&lt;/a&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;span style=&quot;line-height: 16pt; text-align: left;&quot;&gt;An interactive report starts
with basic list where condensed information is stored on basic list and
detailed information is stored on secondary list. To implement this kind of
reporting, you need to provide the user with things like menu, icons, function
keys. You also need to write code, which must react, to the user’s action.&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
For this, you
need to create the interface, which interacts with the user.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
The user
interface is independent of the program or list or screen. However both
interface and list can be associated by means of GUI status. A GUI status
groups together the interface components.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l28 level1 lfo35; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Menu bar&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l28 level1 lfo35; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Application tool bar&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l28 level1 lfo35; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Function keys&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l28 level1 lfo35; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Title bar&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The last element of the user
interface is independent of the GUI status i.e., titlebar.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
To assign
status to your list the statement SET PR-STATUS.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Some facts
about GUI status are:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l6 level1 lfo36; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;A program can have multiple GUI status and
titles for different lists.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l6 level1 lfo36; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Multiple lists can be assigned to same GUI
status.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l6 level1 lfo36; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Normally both GUI status and title go together.&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314680&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628337&quot;&gt;Function code&lt;/a&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;span style=&quot;line-height: 16pt; text-align: left;&quot;&gt;An important concept, when
working with user interface. Function is a four character alphanumeric code,
which the system stores in the system variable called SY-UCOMM for each
function key, push button, or menu option. Whenever any push button is clicked
or menu option is selected, the code attached to that, is stored in SY-UCOMM
and can be handled in your program.&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628338&quot; style=&quot;font-size: x-large; text-align: left;&quot;&gt;Menu painter&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Menu painter
is the ABAP/4 workbench tool for creating and maintaining user interface.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: 10.0pt; mso-bidi-font-size: 12.0pt;&quot;&gt;Starting Menu Painter&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h5&gt;
ABAP/4 development workbench &lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt;
menu painter&lt;/h5&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Or&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Transaction
SE41 in the command field.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Or&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Through
program SET PF-STATUS &amp;lt;var&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
If you double
click on the variable, the system takes you to the menu painter screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: 10.0pt; mso-bidi-font-size: 12.0pt;&quot;&gt;Creating Menu bar&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Steps involved are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l10 level1 lfo37; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Enter the name in the first field. It is just a
name given to the menu and is not displayed anywhere in the output.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l10 level1 lfo37; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Enter the name of each menu item. You can create
up to six menus (total eight menu items are available, out of which &lt;i&gt;system &lt;/i&gt;and &lt;i&gt;help&lt;b&gt; &lt;/b&gt;&lt;/i&gt;are mandatory).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l10 level1 lfo37; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Enter name of the menu items and function
code.&amp;nbsp; You can have fifteen menu items
under one menu.&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
If you leave
function blank, the system assumes that this particular menu item will have
submenu. You can create the sub menu items under this menu item. User can go up
to three levels.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhuXD076d0EtGasqw4CjwSVPcscxWQydvoIWYSP-Q1lhB-ZKebGIx8U709ODUhGVLTJKy-VoYhMPDOIEK1Hsno3QNnuhq8A4VfzR4LiHUwvtupyuJ2DhLE7qO6kLA4BOWoCWjQsXKvxenGd/s1600/image007.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;460&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhuXD076d0EtGasqw4CjwSVPcscxWQydvoIWYSP-Q1lhB-ZKebGIx8U709ODUhGVLTJKy-VoYhMPDOIEK1Hsno3QNnuhq8A4VfzR4LiHUwvtupyuJ2DhLE7qO6kLA4BOWoCWjQsXKvxenGd/s640/image007.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;Creating Application Tool Bar&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGb7JfpTnNK7VvGre2yIR9Qe-SpT5vwichiVrH7wT3z8OTsimNRmo-MVsY4Wi-oU1dXBKgBRJHQ8YRVpk4Y8hwUnGHkVAaBUtQTelcCbPEaT0PfL_4ZZxk8u7LSZt83xEyy-KezRXWxIGH/s1600/image009.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;460&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGb7JfpTnNK7VvGre2yIR9Qe-SpT5vwichiVrH7wT3z8OTsimNRmo-MVsY4Wi-oU1dXBKgBRJHQ8YRVpk4Y8hwUnGHkVAaBUtQTelcCbPEaT0PfL_4ZZxk8u7LSZt83xEyy-KezRXWxIGH/s640/image009.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
Assign
Function Keys&lt;o:p&gt;&lt;/o:p&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEt_JPzgpGsBY9eXIEdqIavREQMt28XUxBYpxE1F5BafznqtL077QYL4HaRTSTFyVjIURA2nRt-f42lSNdonnhpNEgcgeUZMkS12KjKnpzCRPeeUajhuo39DDTpLyeYpOydxvShfVybJD7/s1600/image011.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;460&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEt_JPzgpGsBY9eXIEdqIavREQMt28XUxBYpxE1F5BafznqtL077QYL4HaRTSTFyVjIURA2nRt-f42lSNdonnhpNEgcgeUZMkS12KjKnpzCRPeeUajhuo39DDTpLyeYpOydxvShfVybJD7/s640/image011.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h5&gt;
In Application tool bar you can include icon assigned for function keys. &lt;/h5&gt;
&lt;h5&gt;
Procedure:&lt;/h5&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l5 level1 lfo38; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Select function key.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l5 level1 lfo38; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;From the menu, more utilities - &lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt;
change text type. The system displays a dialog box, click on icon and presses
ENTER.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l5 level1 lfo38; tab-stops: list .25in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Select icon from list of icons displayed&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Creating GUI title&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
From your program, you can set
title for your list and SET TITLEBAR is used.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Syntax:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
SET TITLEBAR
&amp;lt;var&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Here var can
be any three-character name. When developer double clicks on the var, system
displays the dialog box in which you enter the title number, the description,
and the actual text for title.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Similar to
dictionary objects, the GUI status must be generated to be accessible by
program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314682&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628339&quot;&gt;AT USER-COMMAND&lt;/a&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When the user selects the menu
item or presses any function key, the event that is triggered is AT
USER-COMMAND, and can be handled in the program by writing code for the same.
The system variable SY-UCOMM stores the function code for the clicked menu item
or for the function key and the same can be checked in the program.&amp;nbsp; Sample code would look like&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
AT USER-COMMAND.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Case sy-ucomm.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When ‘DISP’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Select * from sflight.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write sflight-carrid, sflight-connid.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Endselect.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When ‘EXIT’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LEAVE.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
If GUI status, suppose you
have set menu bar for two items and the function code is ‘DISP’ and ‘EXIT’
respectively. If the user clicks the menu item ‘DISPLAY’, then function code
‘DISP’ is stored in the sy-ucomm and whatever is written under the when ‘DISP’,
gets executed. This is applicable for EXIT as well.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Sy-lsind for the screen
increases when the user clicks the menu item.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Usually you have combination
of all the three navigations in your user interface, i.e., you have to create
menu bar, assign function code for the function keys and write code to handle
all this in addition to handling double clicking.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Things to remember while using
all the combinations:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l21 level1 lfo39; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Sy-lsind increases even if you select menu-item.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l21 level1 lfo39; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;When the user double clicks on particular line,
value of sy-ucomm is ‘PICK.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l21 level1 lfo39; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;If you set sy-lsind = 2 for your 4&lt;sup&gt;th&lt;/sup&gt;
secondary list, when control is transferred to the 2&lt;sup&gt;nd&lt;/sup&gt; secondary
list, all the other lists after 2&lt;sup&gt;nd&lt;/sup&gt; are lost or memory allocated to
them is lost.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l21 level1 lfo39; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Sy-lisel also gives you the value of clicked
line but in this case you cannot differentiate between field. To retrieve the
exact field, you have to know the field length of each field.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l21 level1 lfo39; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;If you use statement SY-LSIND = 1.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The system reacts to a
manipulation of SY-LSIND only at the end of an event, directly before
displaying the secondary list. So, if within the processing block, you use
statements whose INDEX options access the list with the index SY-LSIND, make
sure that you manipulate the SY-LSIND field only after processing these
statements. The best way is to have it always at the `as the last statement’ of
the processing block.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314683&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628340&quot;&gt;Important system fields for reports&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 70.9pt 85.05pt;&quot;&gt;
Sy-linct&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -&amp;nbsp;&amp;nbsp; Gives
total line numbers for a page.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 70.9pt 85.05pt;&quot;&gt;
Sy-linno&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -&amp;nbsp;&amp;nbsp; Gives
current line number on the list&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 70.9pt 85.05pt;&quot;&gt;
Sy-lsind&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -&amp;nbsp;&amp;nbsp; Index
of the lists created in interactive report&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 70.9pt 85.05pt;&quot;&gt;
Sy-listi&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -&amp;nbsp;&amp;nbsp; Index
of the list from where event was triggered, usually previous list&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 70.9pt 85.05pt;&quot;&gt;
Sy-lilli&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -&amp;nbsp;&amp;nbsp; Line
number of a list from where event was triggered&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 70.9pt 85.05pt;&quot;&gt;
Sy-lisel&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -&amp;nbsp;&amp;nbsp; Contents
of a line from where event was triggered&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 70.9pt 85.05pt;&quot;&gt;
Sy-ucomm&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -&amp;nbsp;&amp;nbsp; Holds
the function code of clicked menu item or function key&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 11.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h2&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314684&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628341&quot;&gt;EXERCISES&lt;/a&gt;&lt;/h2&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314685&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628342&quot;&gt;INTERNAL TABLES and REPORTS&lt;/a&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Create
an internal table taking all the fields from BKPF and display fields Company
code, Document number, Document type and date of document.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Create
an internal table taking fields’ Company code, Document number, Account type
and Tax code from table BSEG and display the same with column headings.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Create
an internal table with following fields:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sales
Document and Material from table VBAP.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Date,
Name of the user and sales document type from table VBAK and&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Price
group and customer group from table VBKD.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sort
the table according to Material number and display the contents.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Create
an internal table called T_BSIS having a similar structure as table BSIS.&amp;nbsp; Explore all possible methods to create the
internal table with header line / without header line.&amp;nbsp; (use data types, data … begin of ….end of,
data ….&amp;nbsp; data …. Include structure …
etc.)&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Also
create a field string F_BSIS.&amp;nbsp; Populate
the internal code and display contents of BSIS.&amp;nbsp;
Sort the table according to company code and display contents.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Determine
for each material type (MTART) the 5 table entries with the highest gross
weight (as a ranked list).&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; To
do this, read the table MARA and store the material type (MTART), material
number (MATNR), unit of measure (MEINS) and gross weight (BRGEW) into an
internal table.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Allow
the user to specify the Material type as a parameter on the selection screen.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; mso-list: l14 level1 lfo40; tab-stops: 28.35pt list .5in; text-indent: -.25in;&quot;&gt;
6&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Create a list of the maximum number of available
seats for each carrier. To do this, read the table SFLIGHT and store the
airline carrier id (CARRID) and maximum number of seats (SEATSMAX) in an
internal table.&amp;nbsp; Determine the total
number of seats for each airline carrier when filing the int’ table. &lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Read
the table SFLIGHT into an internal table and then output the internal table
with the fields CARRID, FLDATE and PRICE.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Delete
all the internal table entries where the airline carrier (CARRID) is not equal
to LH.&amp;nbsp; Read the internal table with
entry with the key CARRID = LH and CONNID = 0400, multiply the price by 3 and
write the modified entry back to the internal table.&amp;nbsp; Then Output the internal table.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
8&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Read
table TABNA into internal table and output the fields &lt;b&gt;Country, Id, Name1,
and Sales. Sort the table with Country&lt;/b&gt;. &lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Delete
all internal table lines with sales lower than 50,000.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Read
internal table with key ‘GB’ and ‘00000003’ and multiply the sales by 3 and
change table entry.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Insert
any one record of your choice.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Find
out how many lines are there in the internal table.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Remove
all the contents of the table.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; De-allocate
the memory associated with table.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
9&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Use
tables LFA1, LFB1 and LFM1.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Define
an internal table with the following:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Lifnr
like Lfa1-lifnr,&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Bukrs
like Lfb1-bukrs,&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Ekorg
like Lfm1-ekorg.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Add
data from these table into the internal tables.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sort
the internal table Lifnr.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Read
the internal table with Lifnr = ‘A5’ and change name to trainee.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Put
back the record into the table.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Delete
first three records of internal table.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Clear
header for internal table each time you access a record.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Create
a report, which will give the existing stock for a material.&amp;nbsp; The report should have subtotal of the stock
for each storage location and Grand total of the stock at the end of the plant.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Plant
data should start at new page.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Input:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Selection screen which will allow one to
select a range of materials.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Materials:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Output&amp;nbsp;&amp;nbsp; Report format as follows:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-table-layout-alt: fixed;&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style=&quot;border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.2pt;&quot; valign=&quot;top&quot; width=&quot;116&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
Plant&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-left: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.2pt;&quot; valign=&quot;top&quot; width=&quot;116&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
Storage
  location&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-left: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.2pt;&quot; valign=&quot;top&quot; width=&quot;116&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
Material
  number&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-left: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.2pt;&quot; valign=&quot;top&quot; width=&quot;116&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
Description&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-left: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.2pt;&quot; valign=&quot;top&quot; width=&quot;116&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
Stock&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
(unrestricted)&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.2pt;&quot; valign=&quot;top&quot; width=&quot;116&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.2pt;&quot; valign=&quot;top&quot; width=&quot;116&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.2pt;&quot; valign=&quot;top&quot; width=&quot;116&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.2pt;&quot; valign=&quot;top&quot; width=&quot;116&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.2pt;&quot; valign=&quot;top&quot; width=&quot;116&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-bottom: none; border-left: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; border-top: none; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.2pt;&quot; valign=&quot;top&quot; width=&quot;116&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.2pt;&quot; valign=&quot;top&quot; width=&quot;116&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.2pt;&quot; valign=&quot;top&quot; width=&quot;116&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.2pt;&quot; valign=&quot;top&quot; width=&quot;116&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.2pt;&quot; valign=&quot;top&quot; width=&quot;116&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-top: solid windowtext 1.0pt; border: none; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.2pt;&quot; valign=&quot;top&quot; width=&quot;116&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-top: solid windowtext 1.0pt; border: none; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.2pt;&quot; valign=&quot;top&quot; width=&quot;116&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-top: solid windowtext 1.0pt; border: none; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.2pt;&quot; valign=&quot;top&quot; width=&quot;116&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
&lt;u&gt;Grand
  total&lt;o:p&gt;&lt;/o:p&gt;&lt;/u&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-top: solid windowtext 1.0pt; border: none; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.2pt;&quot; valign=&quot;top&quot; width=&quot;116&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-top: solid windowtext 1.0pt; border: none; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.2pt;&quot; valign=&quot;top&quot; width=&quot;116&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt; text-align: center;&quot;&gt;
* * * * * *&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&lt;u&gt;Tables
and fields:&lt;o:p&gt;&lt;/o:p&gt;&lt;/u&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
Material Number&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MARA-MATNR&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
Description&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MAKT-MAKTX&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
Plant&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MARC-WERKS&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
Storage location&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MARD-LGORT&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
Stock&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MARD-LABST&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
Use Standard Formatting colors.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
Exception handling:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
Error message “ Material not found “ – if
Material not present.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Generate
a report to list the following details from the tables LFA1 &amp;amp; LFB1 vendor
no., vendor name, city, state, telephone no., fax no., company code and terms
of payment.&amp;nbsp; User shall have options to
select the vendor number range for which the report is generated.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-table-layout-alt: fixed;&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style=&quot;border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 436.05pt;&quot; valign=&quot;top&quot; width=&quot;581&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
Report
  title: Vendor Master Listing 2&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 436.05pt;&quot; valign=&quot;top&quot; width=&quot;581&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
Vendor
  Name: _____________&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
  Vendor no. : _____________&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
Address:
  __________________&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
Telephone
  no. _______________&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
  Fax no&amp;nbsp; : ______________&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
Company
  code&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Terms of
  payments&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
_____________&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _________________&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
All text used in the report shall be
generated using text elements only.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
The output list shall have a footer
showing page no., date and Intelligroup’(left corner)&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Generate
a report for displaying material description, plant &amp;amp; storage data.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Input:
Material number (MARA-MATNR)&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Data
to be displayed for the following three materials only.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1.
BP770M15&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2.
FP56790031&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3.
FP28652011&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
Output format:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
11/11/1998&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Report to analyze material stocks&lt;/div&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-table-layout-alt: fixed;&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style=&quot;border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 436.05pt;&quot; valign=&quot;top&quot; width=&quot;581&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
Material
  No.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Description&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 436.05pt;&quot; valign=&quot;top&quot; width=&quot;581&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
FP96412101&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Meditech&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Patterned&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Weld Rod&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
  Oatmeal 60’&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 436.05pt;&quot; valign=&quot;top&quot; width=&quot;581&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
Plant&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Storage Loc.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Unrestricted stock&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 436.05pt;&quot; valign=&quot;top&quot; width=&quot;581&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 28.35pt;&quot;&gt;
xxxx&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xxxxxxxxxxx&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xxxxxxxxxxxxxxx&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
All texts are to be generated using Text
Elements only.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
Use tables: MARA, MAKT, MARC and MARD.&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314686&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69628343&quot;&gt;SUBROUTINES&lt;/a&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
1.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Read
a number between 0 and 100 and another digit between 0 and 9. Write a
subroutine that will calculate the sum of all numbers (below the limit) that
end with the digit. The parameters to be passed are limit and digit both by
value and sum by reference.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Ex.&amp;nbsp; If limit = 67 and digit = 4 then sum should
be the sum of 4,14,24,34, ..64.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
2.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write
a subroutine CENTRE-STRING, which will output a string on the center of a
line.&amp;nbsp; The subroutine will accept
parameters STRING pass by value.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
3.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write
a program extensively using subroutines to print the equivalent number in
words.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; For
example: if the number is 66, the output should be SIXTY SIX.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Limit
the number range from 0 – 99.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept
the input number as a parameter.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
4.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Accept
a date from the user.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write
a date as dd-mm-yyyy where mm is month written as JAN/FEB/Mar…etc.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Make
use of subroutines.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 28.35pt; tab-stops: 28.35pt; text-indent: -28.35pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/8705699102805983134/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/debugging-many-times-error-freeprogram.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/8705699102805983134'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/8705699102805983134'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/debugging-many-times-error-freeprogram.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjEwkqjMXc-rfeKeZB60xb2n2UeJlgUeyZPb8HeTrbyhw6Sba2jJzOZDxBhACGvbF5C1WmLBDrAm_l4CK-FB9GrH0ka7Sr7Q73X24holnvU_Ra6SQsEFVcaxXaM6Oa9CK9MgEA6IXIDSsEn/s72-c/image001.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-1367195054265632616</id><published>2012-09-22T22:53:00.005-07:00</published><updated>2012-09-22T22:53:43.308-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69631767&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWiq&quot; name=&quot;_Toc70315238&quot; style=&quot;text-align: center;&quot;&gt;BATCH DATACOMMUNICATIONS/BATCH INPUT/INBOUND-OUTBOUND&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;ABOUT DATA
TRANSFER&lt;/b&gt;&lt;b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Implementing a new software
system takes major effort. &lt;b&gt;New
implementation requires moving data from the present system i.e., legacy system
into the R3 system. &lt;/b&gt;The product, components, customers and vendors have to
be available in the new system. Initial data transfer is the process of
populating your R3 database with data from your legacy system.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
To prepare for the data
transfer there are certain tasks you need to perform.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l20 level1 lfo1; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;First, understand your SAP system to know which
data needs to be transferred, e.g., you would not transfer any sales order if
you do not use the Sales and distribution module.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l20 level1 lfo1; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Second, you need to know the contents of
existing data in your legacy system.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Data transfer program, an
effective and efficient way of transferring large amount of data into your new
system, saves time and resources. &lt;b&gt;But
more importantly it ensures that accurate data is transferred into R/3.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Two steps involved in data transfer are CONVERSION and SAP DATA
TRANSFER.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l6 level1 lfo2; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;CONVERSION,&lt;/b&gt;
data is converted from your legacy system into the required flat file format.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l6 level1 lfo2; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;SAP DATA
TRANSFER, &lt;/b&gt;data is automatically entered into the SAP system. &amp;nbsp;A SAP data transfer program reads the prepared
data from the flat file and moves it into R/3.&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69631167&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Steps for any data
transfer&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;a href=&quot;http://adf.ly/CUWiq&quot; name=&quot;_Toc69631168&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Preparation for legacy database&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
This is the first step of
transfer though not associated with SAP, plays very important role in data
transfer.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Before data is extracted,
delete obsolete data in the legacy system and fix inconsistencies. It is easier
this way, than doing it during conversion.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The two steps involved in this
are:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Data purging:&lt;/b&gt; Before transferring data from legacy system, delete
all the old and obsolete data, e.g.: To save conversion time and disk space,
you may delete all one-time customers, vendors and all unused materials.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Data cleansing:&lt;/b&gt;&amp;nbsp; This process
corrects data inconsistencies and ensures the integrity of the existing data
during the transfer process.&amp;nbsp; Mistakes
must be fixed before the transfer.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315242&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWiq&quot; name=&quot;_Toc69631169&quot; target=&quot;_blank&quot;&gt;Converting legacy data to the flat file&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
For this second step, SAP
provides no specific tools.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l0 level1 lfo3; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;In the ABAP/4 development workbench, write an
ABAP/4 program to convert a file from your legacy system into the required flat
file structure.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l0 level1 lfo3; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Use other programming language to write
conversion program.&amp;nbsp; For C, COBOL, you
can easily download the table definition for specific flat file structure.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l0 level1 lfo3; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Use third party tools, such as format editors
and code generators, which support mapping and conversion between different
file formats.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l0 level1 lfo3; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;For other RDBMS like oracle, &lt;st1:place w:st=&quot;on&quot;&gt;&lt;st1:city w:st=&quot;on&quot;&gt;Sybase&lt;/st1:city&gt;, &lt;st1:state w:st=&quot;on&quot;&gt;MS&lt;/st1:state&gt;&lt;/st1:place&gt;
access, you have EXPORT utility.&amp;nbsp; By
which, you can directly export data to flat file.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Files will be discussed in
detail in later part of the topic.&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://adf.ly/CUWiq&quot; name=&quot;_Toc69631170&quot; target=&quot;_blank&quot;&gt;Getting the data into R/3&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
This step actually transfers
data to SAP database.&amp;nbsp; After converting
the data into the flat file you are ready to begin the third step of the data
transfer.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Data transfer is an
interactive process. You may often feel like you are taking two steps forward
and one step back.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
For example, short steps
involved in whole process are as follows: &lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l23 level1 lfo4; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Convert the data from the legacy system into the
flat file format.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l23 level1 lfo4; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Run the data transfer program.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l23 level1 lfo4; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Check data for error.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l23 level1 lfo4; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Is the transfer working as it was designed?&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l23 level1 lfo4; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;If not, adjust the data/conversion program and
start with step 1. Go back to step one, if you don’t get the desired result.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You have three different
options to enter your data into R/3.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l2 level1 lfo5; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Automatically, with SAP standard data transfer
programs.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l2 level1 lfo5; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Automatically, by creating your own branch input
programs&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l2 level1 lfo5; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Manually, by entering the data via the
corresponding online transaction.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: 14.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Automatic
transfer with a standard data transfer program&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
This can be done if:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l8 level1 lfo6; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;A standard program exists for the data transfer
of a business object in R/3.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l8 level1 lfo6; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;The data is available in electronic form.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l8 level1 lfo6; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;There is a significant number of records you
want to transfer.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l8 level1 lfo6; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;The cost of converting the legacy data into the
required flat file format is acceptable.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: 14.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Manually
transferring business objects&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You should manually transfer
data, if: &lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l15 level1 lfo7; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;You have no legacy system.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l15 level1 lfo7; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;There is only small number of records to enter.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l15 level1 lfo7; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Translating legacy data into the R/3 structure
is more an effort than manually entering the data.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: 14.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Using customer
specific batch input to transfer business objects&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Create batch input program to
transfer data if:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l19 level1 lfo8; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;No standard program exists to transfer the
business object in R/3.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l19 level1 lfo8; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;The data is available in electronic form.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l19 level1 lfo8; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;There is a significant number of records you
want to transfer.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l5 level1 lfo9; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Translating your legacy data into the structure
required by your custom program is easier than manually entering data.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Batch input is a standard
procedure for transferring large amount of data into the R/3 system. It
simulates manual data entry. Data consistency is ensured because batch input
uses all the checks conducted on the normal screen. Using batch input is like
entering the data online. Another advantage to batch input is that you do not
have to check the data in advance.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Batch input is a two-step
procedure. It involves a program that creates the batch input session.&amp;nbsp; This session is the data file that includes
everything to begin the transaction and the data to be entered on the appropriate
screens. The data is not yet in the database tables of R/3 application. The
second step is to process the session, which then actually transfers the data
to database table. You can transfer data directly to database table by using
CALL TRANSACTION method also. Another method - Direct Input, is done for high
volume of data for the standard application. All these methods are discussed in
detail in later part of the topic.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Basically there are two steps
involved in any transfer of data from legacy system to SAP system.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo10; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
-&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Creation of file and transferring file into SAP
system&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo10; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
-&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Transferring data to database file&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Whenever, you create flat file
following points should be considered:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo10; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
-&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Provide the data in an ASCII/Text file format.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo10; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
-&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Know how each line of the file is structured.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo10; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
-&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Know how the required flat file for the business
object must be structured.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo10; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
-&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Once your flat file is ready, the data should be
transferred into SAP system.&lt;/div&gt;
&lt;h2&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315244&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWiq&quot; name=&quot;_Toc69631171&quot; target=&quot;_blank&quot;&gt;FILE HANDLING IN SAP&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Introduction&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l24 level1 lfo11; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Files on application server are &lt;b&gt;sequential files.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l24 level1 lfo11; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Files on presentation server / workstation are &lt;b&gt;local files. &lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l24 level1 lfo11; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;A sequential file is also called a dataset.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315245&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWiq&quot; name=&quot;_Toc69631172&quot; target=&quot;_blank&quot;&gt;Handling of Sequentialfile&lt;/a&gt;&lt;b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Three steps are involved in
sequential file handling&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l24 level1 lfo11; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;OPEN&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l24 level1 lfo11; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;PROCESS&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l24 level1 lfo11; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;CLOSE&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Here processing of file can be
READING a file or WRITING on to a file.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;OPEN FILE&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Before data can be processed,
a file needs to be opened.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
After processing file is
closed.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Syntax:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-table-layout-alt: fixed;&quot;&gt;
 &lt;tbody&gt;
&lt;tr style=&quot;height: 39.0pt; mso-yfti-firstrow: yes; mso-yfti-irow: 0; mso-yfti-lastrow: yes;&quot;&gt;
  &lt;td style=&quot;border: solid windowtext 1.0pt; height: 39.0pt; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 455.4pt;&quot; valign=&quot;top&quot; width=&quot;607&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
OPEN DATASET &amp;lt;file
  name&amp;gt; FOR {OUTPUT/INPUT/APPENDING}&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
IN&amp;nbsp; {TEXT/BINARY} MODE&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
This statement returns
SY_SUBRC as 0 for successful opening of file or 8, if unsuccessful.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;OUTPUT: &lt;/b&gt;Opens the file for writing. If the dataset already exists,
this will place the cursor at the start of the dataset, the old contents get
deleted at the end of the program or when the CLOSE DATASET is encountered.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;INPUT: &lt;/b&gt;Opens a file for READ and places the cursor at the beginning
of the file.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;FOR APPENDING: &lt;/b&gt;Opens the file for writing and places the cursor at
the end of file. If the file does not exist, it is generated.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;BINARY MODE: &lt;/b&gt;The READ or TRANSFER will be character wise. Each time
‘n’’ characters are READ or transferred. The next READ or TRANSFER will start
from the next character position and not on the next line.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;IN TEXT MODE: &lt;/b&gt;The READ or TRANSFER will start at the beginning of a
new line each time.&amp;nbsp; If for READ, the
destination is shorter than the source, it gets truncated. If destination is
longer, then it is padded with spaces.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Defaults: If nothing is
mentioned, then defaults are FOR INPUT and in BINARY MODE.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;PROCESS FILE:&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Processing a file involves
READing the file or Writing on to file TRANSFER.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;TRANSFER Statement&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Syntax:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-table-layout-alt: fixed;&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style=&quot;border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 338.55pt;&quot; valign=&quot;top&quot; width=&quot;451&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
TRANSFER &amp;lt;field&amp;gt; TO
  &amp;lt;file name&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;lt;Field&amp;gt; can also be a
  field string / work area / DDIC structure.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Each transfer statement writes a statement to the dataset. In binary
mode, it writes the length of the field to the dataset. In text mode, it writes
one line to the dataset.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
If the file is not already
open, &lt;b&gt;TRANSFER tries to OPEN file FOR
OUTPUT (IN BINARY MODE) or using the last OPEN DATASET statement for this file.&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
IF FILE HANDLING, &lt;b&gt;TRANSFER&lt;/b&gt; IS THE ONLY STATEMENT WHICH
DOES NOT RETURN SY-SUBRC&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;READ Statement&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Syntax:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-table-layout-alt: fixed;&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style=&quot;border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 338.55pt;&quot; valign=&quot;top&quot; width=&quot;451&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
READ DATASET &amp;lt;file
  name&amp;gt; INTO &amp;lt;field&amp;gt;. &lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;lt;Field&amp;gt; can also be a
  field string / work area / DDIC structure.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Each READ will get one record from the dataset. In binary mode it reads
the length of the field and in text mode it reads each line.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;CLOSE FILE: &lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The program will close all
sequential files, which are open at the end of the program. However, it is a
good programming practice to explicitly close all the datasets that were
opened.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Syntax:&lt;/b&gt;&lt;/div&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-table-layout-alt: fixed;&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style=&quot;border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 3.15in;&quot; valign=&quot;top&quot; width=&quot;302&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
CLOSE DATASET &amp;lt;file
  name&amp;gt;.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
SY-SUBRC will be set to 0 or 8
depending on whether the CLOSE is successful or not.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;DELETE FILE:&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
A dataset can be deleted.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Syntax:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-table-layout-alt: fixed;&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style=&quot;border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 3.15in;&quot; valign=&quot;top&quot; width=&quot;302&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
DELETE DATASET &amp;lt;file
  name&amp;gt;.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
SY-SUBRC will be set to 0 or 8
depending on whether the DELETE is successful or not.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Pseudo logic for processing
the sequential files:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;For reading:&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-table-layout-alt: fixed;&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style=&quot;border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 283.5pt;&quot; valign=&quot;top&quot; width=&quot;378&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Open dataset for input in a
  particular mode.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Start DO loop.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Read dataset into a field.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If READ is not successful.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Exit the loop.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Endif.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Do relevant processing for
  that record.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End the do loop.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Close the dataset.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;For writing:&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-table-layout-alt: fixed;&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style=&quot;border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 340.2pt;&quot; valign=&quot;top&quot; width=&quot;454&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Open dataset for output /
  Appending in a particular mode.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Populate the field that is
  to be transferred.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
TRANSFER the filed to a
  dataset.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Close the dataset.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;h1&gt;
&lt;a href=&quot;http://adf.ly/CUWiq&quot; name=&quot;_Toc70315246&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;Handling of local files&lt;/span&gt;&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Introduction&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Files on presentation server /
workstation are LOCAL FILES.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Local files are processed
using UPLOAD and DOWNLOAD functions. The local files are brought into ABAP/4
memory using these functions. Unlike dataset, all the records of the file are
UPLOADED into an internal table in one shot. Similarly, all records are
DOWNLOADED in one shot from an internal table to a local file.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;DOWNLOAD function:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Important EXPORTING parameters
for this function are:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Filename = name of the local
file to which the internal table is to be downloaded.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Filetype = file type, default
values are ASC, DAT, BIN&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Mode = Write mode, overwrite
(‘&amp;nbsp; ‘) or append (‘A’)&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Important IMPORTING parameters
are:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Filename = actual file name
entered&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Tables to be passed to the
function:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Data_tab = the internal table
that is to be downloaded.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Similar function called
WS_DOWNLOAD is used to download the information from internal table to local
file. The only difference between DOWNLOAD and WS_DOWNLOAD is that, DOWNLOAD
does not require the ‘FILENAME’ and ‘FILETYPE’ to be exported to the function;
instead it will ask for the same at runtime.&amp;nbsp;
However, for WS_DOWNLOAD, these two parameters need to be passed.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: 10.0pt;&quot;&gt;UPLOAD function &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Upload function is used to
upload the local file to internal table into SAP system.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Parameters passed are similar
to DOWNLOAD function.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
For uploading, you have
similar function called WS_UPLOAD.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315247&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69631174&quot;&gt;Files with multiple record types&lt;/a&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Many times the input files
will have records with different structures. In all such cases each record will
have a field, (usually the first) which identifies the record (e.g., ‘H’ for
header, ‘D’ for detail or ‘1’ &amp;amp; ‘2’ etc).&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Text tile with multiple record
types would be as mentioned below:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Hxxxxyyyyyyyynnnnnnnnn&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Daaaaaaaaaabbbbbbbbbcccccccc&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Daaaaaaaaaabbbbbbbbbbcccccccc&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Hxxxxyyyyyyynnnnnnnnnnn&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Daaaaaaaaaabbbbbbbbbbcccccccc&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Daaaaaaaaaabbbbbbbbbbcccccccc&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Processing Text file with
multiple record types:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
To process such files, it is
necessary to first read the record into a character field that is a minimum of
the lengths of the different structure in the file.&amp;nbsp; If ‘H’ type record is 30 char long (including
the record identifier) and ‘D’ type is 40 long (including the record
identifier), then this character field should be at least 40 char long.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Pseudo logic for processing the sequential files with multiple record
types (text mode):&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-table-layout-alt: fixed;&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style=&quot;border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 283.5pt;&quot; valign=&quot;top&quot; width=&quot;378&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Open dataset. &lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Do.,&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;Read dataset into character field.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;If sy-subrc ne 0.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp; Exit.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;Endif.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
If record id of the char
  field (or the first of field) is ‘H’&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Do processing for ‘H’ type
  of records.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Else.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Do processing for d type of
  records.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;Endif.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Enddo.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Pseudo logic for processing
the local files with multiple record types:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-table-layout-alt: fixed;&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style=&quot;border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 340.2pt;&quot; valign=&quot;top&quot; width=&quot;454&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
WS_UPLOAD into itab.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Loop at itab.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If itab-recid is ‘H’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Do processing for ‘H’ type
  record.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Do processing for ‘D’ type record.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Endif.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Endloop.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 11.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h2&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315248&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: #274e13;&quot;&gt;BATCH DATA COMMUNICATION&lt;/span&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h1&gt;
&lt;span style=&quot;color: #274e13;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315249&quot;&gt;&lt;/a&gt;About Data Transfer In R/3 System&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When a company decides to
implement the SAP R/3 to manage business-critical data, it usually does not
start from a no-data situation. Normally, a SAP R/3 project comes into replace
or complement existing application.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
In the process of replacing
current applications and transferring application data, two situations might
occur:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l17 level1 lfo12; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;The first is when application data to be
replaced is transferred at once, and only once.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l17 level1 lfo12; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;The second situation is to transfer data
periodically from external systems to SAP and vice versa.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l17 level1 lfo12; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;There is a period of time when information has
to be transferred from existing application, to SAP R/3, and often this process
will be repetitive.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The SAP system offers two
primary methods for transferring data into SAP systems. From non-SAP systems or
legacy system. These two methods are collectively called “batch input” or
“batch data communication”.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
1. SESSION METHOD&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
2. CALL TRANSACTION&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
3. DIRECT INPUT&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;&lt;i&gt;Advantages &lt;/i&gt;&lt;/b&gt;offered by
BATCH INPUT method:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 21.25pt; tab-stops: 21.25pt; text-indent: -21.25pt;&quot;&gt;
1.&amp;nbsp;&amp;nbsp;&amp;nbsp; Can
process large data volumes in batch.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 21.25pt; tab-stops: 21.25pt; text-indent: -21.25pt;&quot;&gt;
2.&amp;nbsp;&amp;nbsp;&amp;nbsp; Can
be planned and submitted in the background.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 21.25pt; tab-stops: 21.25pt; text-indent: -21.25pt;&quot;&gt;
3.&amp;nbsp;&amp;nbsp;&amp;nbsp; No
manual interaction is required when data is transferred.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 21.25pt; tab-stops: 21.25pt; text-indent: -21.25pt;&quot;&gt;
4.&amp;nbsp;&amp;nbsp;&amp;nbsp; Data
integrity is maintained as whatever data is transferred to the table is through
transaction. Hence batch input data is submitted to all the checks and
validations.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
To implement one of the
supported data transfers, you must often write the program that exports the
data from your non-SAP system. This program, known as a “&lt;b&gt;&lt;i&gt;data transfer&lt;/i&gt;&lt;/b&gt;&lt;i&gt;” &lt;/i&gt;program must map the data from the
external system into the data structure required by the SAP batch input
program.&lt;i&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The batch input program must
build all of the input to execute the SAP transaction.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Two main steps are required: &lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l9 level1 lfo13; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;To build an internal table containing every
screen and every field to be filled in during the execution of an SAP
transaction.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l9 level1 lfo13; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;To pass the table to SAP for processing.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: 10.0pt;&quot;&gt;Prerequisite for Data Transfer Program&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Writing a Data Transfer
Program involves following prerequisites:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;a href=&quot;http://adf.ly/CUWiq&quot; name=&quot;_Toc70315250&quot; style=&quot;font-size: x-large;&quot;&gt;Analyzingdata from local file&lt;/a&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://adf.ly/CUWiq&quot; name=&quot;_Toc70315251&quot;&gt;Analyzing transaction&lt;/a&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Analyzing transaction involves
following steps:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 17.85pt; text-indent: -17.85pt;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;The transaction code, if you do not already know
it.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 17.85pt; text-indent: -17.85pt;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Which fields require input i.e., mandatory.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 17.85pt; text-indent: -17.85pt;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Which fields can you allow to default to
standard values.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 17.85pt; text-indent: -17.85pt;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;The names, types, and lengths of the fields that
are used by a transaction.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l16 level1 lfo14; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Screen number and Name of module pool program
behind a particular transaction.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;To analyze a transaction:&lt;/b&gt;:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 17.85pt; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Start the transaction by menu or by entering the
transaction code in the command box.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 17.85pt;&quot;&gt;
(You can
determine the transaction name by choosing System – Status.)&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 17.85pt; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Step through the transaction, entering the data
will be required for processing your batch input data.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 17.85pt; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;On each screen, note the program name and screen
(dynpro) number.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 17.85pt;&quot;&gt;
(dynpro =
dyn + pro. Dyn = screen, pro = number)&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 17.85pt; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Display these by choosing System – Status. The
relevant fields are Program (dynpro) and Dynpro number.&amp;nbsp; If pop-up windows occur during execution, you
can get the program name and screen number by pressing F1 on any field or
button on the screen.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 17.85pt;&quot;&gt;
The
technical info pop-up shows not only the field information but also the program
and screen.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 17.85pt; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;For each field, check box, and radio button on
each screen, press F1 (help) and then choose Technical Info.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Note the following
information:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .75in; mso-list: l12 level1 lfo10; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
-&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;The field name for batch input, which you’ll
find in its own box.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .75in; mso-list: l12 level1 lfo10; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
-&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;The length and data type of the field. You can
display this information by double clicking on the Data Element field.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l3 level1 lfo16; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Find out the identification code for each
function (button or menu) that you must execute to process the batch-input data
(or to go to new screen).&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Place the
cursor on the button or menu entry while holding down the left mouse button.
Then press F1.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
In the
pop-up window that follows, choose Technical info and note the code that is
shown in the Function field.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
You can also
run any function that is assigned to a function key by way of the function key
number. To display the list of available function keys, click on the right
mouse button. Note the key number that is assigned to the functions you want to
run.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Once you
have program name, screen number, field name (screen field name), you can start
writing.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
DATA
TRANSFER program.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;a href=&quot;http://adf.ly/CUWiq&quot; name=&quot;_Toc70315252&quot;&gt;Declaring internal table&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;First Integral Table similar to structure like local file.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69631177&quot;&gt;Declaring internal table like BDCDATA&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The data from internal table
is not transferred directly to database table, it has to go through
transaction. You need to pass data to particular screen and to particular
screen-field. Data is passed to transaction in particular format, hence there
is a need for batch input structure.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The batch input structure
stores the data that is to be entered into SAP system and the actions that are
necessary to process the data. The batch input structure is used by all of the
batch input methods. You can use the same structure for all types of batch
input, regardless of whether you are creating a session in the batch input
queue or using CALL TRANSACTION.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
This structure is BDCDATA,
which can contain the batch input data for only a single run of a transaction.
The typical processing loop in a program is as follows:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l1 level1 lfo17; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Create a BDCDATA structure&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l1 level1 lfo17; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Write the structure out to a session or process
it with CALL TRANSACTION USING; and then&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l1 level1 lfo17; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Create a BDCDATA structure for the next
transaction that is to be processed.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Within a BDCDATA structure,
organize the data of screens in a transaction. Each screen that is processed in
the course of a transaction must be identified with a BDCDATA record. This
record uses the Program, Dynpro, and Dynbegin fields of the structure.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The screen identifier record
is followed by a separate BDCDATA record for each value,&amp;nbsp; to be entered into a field. These records use
the FNAM and FVAL fields of the BDCDATA structure. Values to be entered in a
field can be any of the following:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l22 level1 lfo18; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Data that is entered into screen fields.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l22 level1 lfo18; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Function codes that are entered into the command
field. Such function codes execute functions in a transaction, such as Save or
Enter.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The &lt;b&gt;BDCDATA&lt;/b&gt; structure
contains the following fields:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l13 level1 lfo19; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;PROGRAM:&lt;/b&gt; Name of module pool program
associated with the screen. Set this field only for the first record for the
screen.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l14 level1 lfo20; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;DYNPRO:&lt;/b&gt; Screen Number. Set this field
only in the first record for the screen.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l21 level1 lfo21; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;DYNBEGIN:&lt;/b&gt; Indicates the first record for
the screen. Set this field to X, only for the first record for the screen.
(Reset to ‘&amp;nbsp; ‘ (blank) for all other
records.)&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l25 level1 lfo22; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;FNAM:&lt;/b&gt; Field Name. The FNAM field is not
case-sensitive.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l11 level1 lfo23; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;FVAL:&lt;/b&gt; Value for the field named in FNAM.
The FVAL field is case-sensitive. Values assigned to this field are always
padded on the right, if they are less than 132 characters. Values must be in
character format.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Transferring data from local file to internal table&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Data is uploaded to internal
table by UPLOAD of WS_UPLOAD function.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315254&quot;&gt;Population of BDCDATA&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
For each record of internal
table, you need to populate Internal table, which is similar to BDCDATA
structure.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
All these five initial steps
are necessary for any type of BDC interface.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
DATA TRANSFER program can call
SESSION METHOD or CALL TRANSACTION.&amp;nbsp; The
initial steps for both the methods are same.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;First step for both the methods is to upload the data to internal
table. From Internal Table, the data is transferred to database table by two
ways i.e., Session method and Call transaction.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 11.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h2&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315255&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWiq&quot; name=&quot;_Toc69631178&quot; target=&quot;_blank&quot;&gt;SESSION METHOD&lt;/a&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: 14.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;About Session
method&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
In this method you transfer
data from internal table to database table through sessions.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
In this method, an ABAP/4
program reads the external data that is to be entered in the SAP System and
stores the data in session. A session stores the actions that are required to
enter your data using normal SAP transaction i.e., Data is transferred to
session which in turn transfers data to database table.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Session is intermediate step
between internal table and database table. Data along with its action is stored
in session i.e., data for screen fields, to which screen it is passed, the
program name behind it, and how the next screen is processed.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When the program has finished
generating the session, you can run the session to execute the SAP transactions
in it. You can either explicitly start and monitor a session or have the
session run in the background processing system.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Unless session is processed,
the data is not transferred to database table.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315256&quot;&gt;&lt;/a&gt;BDC_OPEN_GROUP&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You create the session through
program by BDC_OPEN_GROUP function. &lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Parameters to this function
are: &lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l21 level1 lfo21; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;User Name:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; User
name&lt;b&gt; &lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l25 level1 lfo22; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Group:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Name
of the session&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l25 level1 lfo22; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Lock Date:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The
date on which you want to process the session.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l25 level1 lfo22; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Keep:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; This
parameter is passed as ‘X’ when you want to retain session after&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 77.95pt 92.15pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; processing
it or ‘&amp;nbsp;&amp;nbsp; ‘ to delete it after
processing.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: 14.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;BDC_INSERT&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
This function creates the
session &amp;amp; data is transferred to Session.&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Parameters to this function are:&lt;/span&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l21 level1 lfo21; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Tcode:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Transaction
Name&lt;b&gt; &lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l25 level1 lfo22; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Dynprotab:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BDC
Data&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;BDC_CLOSE_GROUP&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
This function closes the BDC Group. No Parameters.&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;Some
additional information for session processing&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When the session is generated
using the KEEP option within the BDC_OPEN_GROUP, the system always keeps the
sessions in the queue, whether it has been processed successfully or not.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
However, if the session is
processed, you have to delete it manually. When session processing is completed
successfully while KEEP option was not set, it will be removed automatically
from the session queue.&amp;nbsp; Log is not
removed for that session.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
If the batch-input session is
terminated with errors, then it appears in the list of INCORRECT session and it
can be processed again. To correct incorrect session, you can analyze the
session. The Analysis function allows to determine which screen and value has
produced the error. If you find small errors in data, you can correct them
interactively, otherwise you need to modify batch input program, which has
generated the session or many times even the data file.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h2&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315260&quot;&gt;&lt;/a&gt;CALL TRANSACTION&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
About CALL TRANSACTION&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
A technique similar to SESSION
method, while batch input is a two-step procedure, Call Transaction does both
steps online, one after the other. In this method, you call a transaction from
your program by&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 85.05pt;&quot;&gt;
&lt;b&gt;Call transaction &amp;lt;tcode&amp;gt; using &amp;lt;BDCTAB&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 85.05pt;&quot;&gt;
&lt;b&gt;&lt;i&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Mode &lt;/i&gt;&amp;lt;A/N/E&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 85.05pt;&quot;&gt;
&lt;b&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Update
&amp;lt;S/A&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 85.05pt;&quot;&gt;
&lt;b&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Messages
into &amp;lt;MSGTAB&amp;gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 70.9pt; tab-stops: 70.9pt; text-indent: -70.9pt;&quot;&gt;
Parameter – 1&amp;nbsp; is
transaction code.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 70.9pt; tab-stops: 70.9pt; text-indent: -70.9pt;&quot;&gt;
Parameter – 2&amp;nbsp; is
name of BDCTAB table.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 70.9pt; tab-stops: 70.9pt; text-indent: -70.9pt;&quot;&gt;
Parameter – 3&amp;nbsp; here
you are specifying mode in which you execute transaction&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 70.9pt; tab-stops: 70.9pt; text-indent: -70.9pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;b&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A&lt;/b&gt; is all screen mode.&amp;nbsp; All the screen of transaction are displayed.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 70.9pt; tab-stops: 70.9pt; text-indent: -70.9pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;b&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; N&lt;/b&gt; is no screen mode. No screen
is displayed when you execute the transaction.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 70.9pt; tab-stops: 70.9pt; text-indent: -70.9pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;b&gt;E&lt;/b&gt;
is error screen. Only those screens are displayed wherein you have error
record.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 70.9pt; tab-stops: 70.9pt; text-indent: -70.9pt;&quot;&gt;
Parameter – 4&amp;nbsp; here
you are specifying update type by which database table is updated.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 70.9pt; tab-stops: 70.9pt; text-indent: -70.9pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;b&gt;S&lt;/b&gt;
is for Synchronous update in which if you change data of one table then all the
related Tables gets updated. And sy-subrc is returned i.e., sy-subrc is
returned for once and all.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 70.9pt; tab-stops: 70.9pt; text-indent: -70.9pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;b&gt;A&lt;/b&gt;
is for Asynchronous update. When you change data of one table, the sy-subrc is
returned. And then updating of other affected tables takes place.&amp;nbsp; So if system fails to update other tables,
still sy-subrc returned is 0 (i.e., when first table gets updated).&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 70.9pt; tab-stops: 70.9pt; text-indent: -70.9pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 70.9pt; tab-stops: 70.9pt; text-indent: -70.9pt;&quot;&gt;
Parameter – 5&amp;nbsp; when
you update database table, operation is either successful or unsuccessful or
operation is successful with some warning. These messages are stored in
internal table, which you specify along with MESSAGE statement. This internal
table should be declared like &lt;b&gt;BDCMSGCOLL&lt;/b&gt;,
a structure available in ABAP/4. It contains the following fields:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1. &lt;b&gt;Tcode:&lt;/b&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Transaction code&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2. &lt;b&gt;Dyname:&lt;/b&gt; &amp;nbsp;&amp;nbsp; Batch point module name&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3. &lt;b&gt;Dynumb:&lt;/b&gt; &amp;nbsp;&amp;nbsp; Batch input Dyn number&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4. &lt;b&gt;Msgtyp:&lt;/b&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Batch input message type (A/E/W/I/S)&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5. &lt;b&gt;Msgspra:&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/b&gt;Batch input Lang, id of message&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6. &lt;b&gt;Msgid:&lt;/b&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Message id&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 7. &lt;b&gt;MsgvN:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/b&gt;Message variables (N = 1 - 4)&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
For each entry, which is
updated in database, table message is available in BDCMSGCOLL. As BDCMSGCOLL is
structure, you need to declare a internal table which can contain multiple
records (unlike structure).&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315262&quot;&gt;&lt;/a&gt;Steps for CALL TRANSACTION method&lt;/span&gt;&lt;/h1&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-table-layout-alt: fixed;&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-bottom: none; border: solid windowtext 1.0pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 28.35pt;&quot; valign=&quot;top&quot; width=&quot;38&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
1.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: none; border-left: none; border-right: solid windowtext 1.0pt; border-top: solid windowtext 1.0pt; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 340.2pt;&quot; valign=&quot;top&quot; width=&quot;454&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Internal table for the data (structure similar to your local file)&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-bottom: none; border-left: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; border-top: none; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 28.35pt;&quot; valign=&quot;top&quot; width=&quot;38&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
2.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 340.2pt;&quot; valign=&quot;top&quot; width=&quot;454&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
BDCTAB like BDCDATA&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-bottom: none; border-left: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; border-top: none; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 28.35pt;&quot; valign=&quot;top&quot; width=&quot;38&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
3.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 340.2pt;&quot; valign=&quot;top&quot; width=&quot;454&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
UPLOAD or WS_UPLOAD function to upload the data from local file to
  itab. (Considering file is local file)&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-bottom: none; border-left: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; border-top: none; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 28.35pt;&quot; valign=&quot;top&quot; width=&quot;38&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
4.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 340.2pt;&quot; valign=&quot;top&quot; width=&quot;454&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Loop at itab.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Populate BDCTAB table.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 85.05pt;&quot;&gt;
Call transaction&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;tcode&amp;gt; using &amp;lt;BDCTAB&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; tab-stops: 85.05pt;&quot;&gt;
&lt;i&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/i&gt;Mode&lt;i&gt; &lt;/i&gt;&amp;lt;A/N/E&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Update &amp;lt;S/A&amp;gt;.&lt;i&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Refresh BDCTAB.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Endloop.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
(To populate BDCTAB, You need to transfer each and every field)&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-top: none; border: solid windowtext 1.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 28.35pt;&quot; valign=&quot;top&quot; width=&quot;38&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 340.2pt;&quot; valign=&quot;top&quot; width=&quot;454&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The major differences between
Session method and Call transaction are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; mso-padding-alt: 0in 5.4pt 0in 5.4pt;&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-right: none; border: solid windowtext 1.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 24.0pt;&quot; valign=&quot;top&quot; width=&quot;32&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: none; border: solid windowtext 1.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 11.8pt;&quot; valign=&quot;top&quot; width=&quot;16&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: none; border-top: solid windowtext 1.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 198.45pt;&quot; valign=&quot;top&quot; width=&quot;265&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;SESSION METHOD&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-left: none; border: solid windowtext 1.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 11.8pt;&quot; valign=&quot;top&quot; width=&quot;16&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: none; border-top: solid windowtext 1.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 17.85pt;&quot; valign=&quot;top&quot; width=&quot;24&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: none; border-left: none; border-right: solid windowtext 1.0pt; border-top: solid windowtext 1.0pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 198.45pt;&quot; valign=&quot;top&quot; width=&quot;265&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;CALL TRANSACTION&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-left: solid windowtext 1.0pt; border: none; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 24.0pt;&quot; valign=&quot;top&quot; width=&quot;32&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;1.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-left: solid windowtext 1.0pt; border: none; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 11.8pt;&quot; valign=&quot;top&quot; width=&quot;16&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border: none; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 198.45pt;&quot; valign=&quot;top&quot; width=&quot;265&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Data is not updated in database table
  unless Session is processed.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 11.8pt;&quot; valign=&quot;top&quot; width=&quot;16&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border: none; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 17.6pt;&quot; valign=&quot;top&quot; width=&quot;23&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: none; border-left: none; border-right: solid windowtext 1.0pt; border-top: solid windowtext 1.0pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 198.45pt;&quot; valign=&quot;top&quot; width=&quot;265&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Immediate updation in database table.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-left: solid windowtext 1.0pt; border: none; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 24.0pt;&quot; valign=&quot;top&quot; width=&quot;32&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;2.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-left: solid windowtext 1.0pt; border: none; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 11.8pt;&quot; valign=&quot;top&quot; width=&quot;16&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 198.45pt;&quot; valign=&quot;top&quot; width=&quot;265&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;No sy-subrc is returned.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 11.8pt;&quot; valign=&quot;top&quot; width=&quot;16&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border: none; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 17.6pt;&quot; valign=&quot;top&quot; width=&quot;23&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 198.45pt;&quot; valign=&quot;top&quot; width=&quot;265&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Sy-subrc is returned.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-left: solid windowtext 1.0pt; border: none; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 24.0pt;&quot; valign=&quot;top&quot; width=&quot;32&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;3.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-left: solid windowtext 1.0pt; border: none; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 11.8pt;&quot; valign=&quot;top&quot; width=&quot;16&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;padding: 0in 5.4pt 0in 5.4pt; width: 198.45pt;&quot; valign=&quot;top&quot; width=&quot;265&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Error log is created for error records.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 11.8pt;&quot; valign=&quot;top&quot; width=&quot;16&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border: none; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 17.6pt;&quot; valign=&quot;top&quot; width=&quot;23&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 198.45pt;&quot; valign=&quot;top&quot; width=&quot;265&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Errors need to be handled explicitly &lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: solid windowtext 1.0pt; border-right: none; border-top: none; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 24.0pt;&quot; valign=&quot;top&quot; width=&quot;32&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;4.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: solid windowtext 1.0pt; border-right: none; border-top: none; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 11.8pt;&quot; valign=&quot;top&quot; width=&quot;16&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border: none; mso-border-bottom-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 198.45pt;&quot; valign=&quot;top&quot; width=&quot;265&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Updation in database table is always
  synchronous&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 11.8pt;&quot; valign=&quot;top&quot; width=&quot;16&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border: none; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 17.6pt;&quot; valign=&quot;top&quot; width=&quot;23&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 198.45pt;&quot; valign=&quot;top&quot; width=&quot;265&quot;&gt;&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Updation in database table can be
  synchronous Or Asynchronous.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: 14.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Error Handling
in CALL TRANSACTION&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When Session Method updates
the records in database table, error records are stored in the log file. In
Call transaction there is no such log file available and error record is lost
unless handled. Usually you need to give report of all the error records i.e.,
records which are not inserted or updated in the database table. This can be
done by the following method:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Steps for the error handling
in CALL TRANSACTION&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-border-insidev: .5pt solid windowtext; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-table-layout-alt: fixed;&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-bottom: none; border: solid windowtext 1.0pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 28.35pt;&quot; valign=&quot;top&quot; width=&quot;38&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
1.&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: none; border-left: none; border-right: solid windowtext 1.0pt; border-top: solid windowtext 1.0pt; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 368.55pt;&quot; valign=&quot;top&quot; width=&quot;491&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Internal table for the data
  (structure similar to your local file)&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-bottom: none; border-left: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; border-top: none; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 28.35pt;&quot; valign=&quot;top&quot; width=&quot;38&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
2.&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 368.55pt;&quot; valign=&quot;top&quot; width=&quot;491&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
BDCTAB like BDCDATA&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-bottom: none; border-left: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; border-top: none; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 28.35pt;&quot; valign=&quot;top&quot; width=&quot;38&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
3.&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 368.55pt;&quot; valign=&quot;top&quot; width=&quot;491&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Internal table BDCMSG like
  BDCMSGCOLL&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-bottom: none; border-left: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; border-top: none; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 28.35pt;&quot; valign=&quot;top&quot; width=&quot;38&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
4.&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 368.55pt;&quot; valign=&quot;top&quot; width=&quot;491&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Internal table similar to
  Ist internal table&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-bottom: none; border-left: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; border-top: none; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 28.35pt;&quot; valign=&quot;top&quot; width=&quot;38&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 368.55pt;&quot; valign=&quot;top&quot; width=&quot;491&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
(Third and fourth steps are
  for error handling)&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-bottom: none; border-left: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; border-top: none; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 28.35pt;&quot; valign=&quot;top&quot; width=&quot;38&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
5.&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 368.55pt;&quot; valign=&quot;top&quot; width=&quot;491&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
UPLOAD or WS_UPLOAD function
  to upload the data from the local file to itab. (Considering file is local
  file)&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-bottom: none; border-left: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; border-top: none; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 28.35pt;&quot; valign=&quot;top&quot; width=&quot;38&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
6.&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 368.55pt;&quot; valign=&quot;top&quot; width=&quot;491&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Loop at itab.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Populate BDCTAB table.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Call transaction &amp;lt;tr.code&amp;gt;
  using &amp;lt;Bdctab&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Mode &amp;lt;A/N/E&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Update &amp;lt;S/A&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Messages
  &amp;lt;BDCMSG&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Perform check.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Refresh BDCTAB.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Endloop.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-bottom: none; border-left: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; border-top: none; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 28.35pt;&quot; valign=&quot;top&quot; width=&quot;38&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
7&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-right: solid windowtext 1.0pt; border: none; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 368.55pt;&quot; valign=&quot;top&quot; width=&quot;491&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Form check.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
IF sy-subrc &amp;lt;&amp;gt; 0.&amp;nbsp; (Call transaction returns the sy-subrc if
  updating is not successful).&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Call function
  Format_message.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
(This function is called to
  store the message given by system and to display it along with record)&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Append itab2.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Display the record and
  message.&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style=&quot;border-top: none; border: solid windowtext 1.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 28.35pt;&quot; valign=&quot;top&quot; width=&quot;38&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 368.55pt;&quot; valign=&quot;top&quot; width=&quot;491&quot;&gt;&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 11.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h2&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315263&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWiq&quot; name=&quot;_Toc69631183&quot; target=&quot;_blank&quot;&gt;DIRECT INPUT&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315264&quot;&gt;&lt;/a&gt;About Direct Input&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
In contrast to batch input,
this technique does not create sessions, but stores the data directly. It does
not simulate the online transaction. To enter the data into the corresponding
database tables directly, the system calls a number of function modules that
execute any necessary checks. In case of errors, the direct input technique
provides a restart mechanism. However, to be able to activate the restart
mechanism, direct input programs must be executed in the background only.
Direct input checks the data thoroughly and then updates the database directly.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You can start a Direct Input
program in two ways;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;Start the program directly&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
This is the quickest way to
see if the program works with your flat file. This option is possible with all
direct input programs. If the program ends abnormally, you will not have any
logs telling you what has or has not been posted. To minimize the chance of
this happening, always use the check file option for the first run with your
flat file. This allows you to detect format errors before transfer.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315266&quot;&gt;&lt;/a&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Starting the program via the DI administration transaction&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
This transaction restarts the
processing, if the data transfer program aborts. Since DI document are
immediately posted into the SAP D/B, the restart option prevents the duplicate
document posting that occurs during a program restart (i.e., without adjusting
your flat file).&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Direct input is usually done
for standard data like material master, FI accounting document, SD sales order
and Classification for which SAP has provided standard programs.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
First time you work with the
Direct Input administration program, you will need to do some preparation
before you can transfer data:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo10; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
-&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Create variant&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo10; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
-&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Define job&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo10; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
-&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Start job&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo10; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
-&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Restart job&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315267&quot;&gt;&lt;/a&gt;Common batch input errors&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo10; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
-&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;The batch input BDCDATA structure tries to
assign values to fields which do not exist in the current transaction screen.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo10; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
-&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;The screen in the BDCDATA structure does not
match the right sequence, or an intermediate screen is missing.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo10; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
-&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;On exceptional occasions, the logic flow of
batch input session does not exactly match that of manual online processing.
Testing the sessions online can discover by this.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo10; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
-&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;The BDCDATA structure contains fields, which are
longer than the actual definition.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l12 level1 lfo10; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
-&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Authorization problems.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;span style=&quot;color: #274e13;&quot;&gt;RECORDING A BATCH INPUT&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
A B recording allows you to
record a R/3 transaction and generate a program that contains all screens and
field information in the required BDC-DATA format.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You can either use SHDB
transaction for recording or&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
SYSTEM &lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt; SERVICES &lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt;
BATCH INPUT &lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt;
EDIT&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
And from here click recording.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Enter name for the recording.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
(Dates are optional)&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Click recording.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Enter transaction code.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Enter.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Click Save button.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You finally come to a screen
where, you have all the information for each screen including BDC_OKCODE.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l18 level1 lfo24; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Click Get Transaction.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l18 level1 lfo24; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Return to BI.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l18 level1 lfo24; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Click overview.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l18 level1 lfo24; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Position the cursor on the just recorded entry
and click generate program.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l18 level1 lfo24; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Enter program name.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l18 level1 lfo24; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Click enter&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The program is generated for
the particular transaction.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;a href=&quot;http://adf.ly/CUWiq&quot; name=&quot;_Toc69631189&quot; target=&quot;_blank&quot;&gt;BACKGROUND PROCESSING&lt;/a&gt;&lt;/div&gt;
&lt;h2&gt;
&lt;a href=&quot;http://adf.ly/CUWiq&quot; target=&quot;_blank&quot;&gt;&lt;o:p&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/o:p&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWiq&quot; name=&quot;_Toc69631190&quot; style=&quot;font-size: medium;&quot;&gt;Need for Background processing&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;span style=&quot;line-height: 16pt;&quot;&gt;When a large volume of data is
involved, usually all batch inputs are done in background.&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The R/3 system includes
functions that allow users to work non-interactively or offline.&amp;nbsp; The background processing systems handle
these functions.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Non-interactively means that
instead of executing the ABAP/4 programs and waiting for an answer, user can
submit those programs for execution at a more convenient planned time. &lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
There are several reasons to
submit programs for background execution. &lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l10 level1 lfo25; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;The maximum time allowed for online execution
should not exceed 300 seconds.&amp;nbsp; User gets
TIMEOUT error and an aborted transaction, if time for execution exceeds 300
seconds. To avoid these types of error, you can submit jobs for background
processing.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l10 level1 lfo25; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;You can use the system while your program is
executing.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
This does not mean that
interactive or online work is not useful. Both type of processing have their
own purposes. Online work is the most common one entering business data,
displaying information, printing small reports, managing the system and so
on.&amp;nbsp; Background jobs are mainly used for
the following tasks; to process large amount of data, to execute periodic jobs
without human intervention, to run program at a more convenient, planned time
other than during normal working hours i.e., Nights or weekends.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The transaction for background
processing is &lt;b&gt;SM36.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Or&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Tools &lt;/b&gt;&lt;b&gt;&lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt;
Administration &lt;/b&gt;&lt;b&gt;&lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt; Jobs
&lt;/b&gt;&lt;b&gt;&lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt; Define jobs&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Or&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;System &lt;/b&gt;&lt;b&gt;&lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt;
services &lt;/b&gt;&lt;b&gt;&lt;span style=&quot;font-family: Symbol;&quot;&gt;®&lt;/span&gt; Jobs&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;color: #274e13;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Components of the
background jobs&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
A job in Background processing
is a series of steps that can be scheduled and step is a program for background
processing.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l4 level1 lfo26; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Job name.&amp;nbsp;
Define the name of assigned to the job. It identifies the job. You can
specify up to 32 characters for the name.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l4 level1 lfo26; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Job class.&amp;nbsp;
Indicates the type of background processing priority assigned to the
job.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
The job
class determines the priority of a job.&amp;nbsp;
The background system admits three types of job classes: A B &amp;amp; C,
which correspond to job priority.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l4 level1 lfo26; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;¨&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Job steps.&amp;nbsp;
Parameters to be passed for this screen are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .5in;&quot;&gt;
Program name.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .5in;&quot;&gt;
Variant if it
is report program&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .5in;&quot;&gt;
Start
criteria for the job: Option available for this are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .5in;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Immediate - allows you to start a
job immediately.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .5in;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Date/Time - allows you to start a
job at a specific name.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .5in;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; After job - you can start a job
after a particular job.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: .5in;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; After event - allows you to start a
job after a particular event.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt; margin-left: 1.0in; text-indent: -.5in;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; At operation mode -
allows you to start a job when the system switches to a particular operation
mode.&lt;br /&gt;
&lt;span style=&quot;color: #274e13;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;color: #274e13;&quot;&gt;Defining Background jobs&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;It is two step process: Firstly, you define the job and then release
it.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When users define a job and
save it, they are actually &lt;b&gt;scheduling &lt;/b&gt;the
report i.e., specifying the job components, the steps, the start time.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When users schedule program
for background processing, they are instructing the system to execute an ABAP/4
report or an external program in the background.&amp;nbsp; Scheduled jobs are not executed until they
are released. When jobs are released, they are sent for execution to the
background processing system at the specified start time. Both scheduling and
releasing of jobs require authorizations.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 11.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h2&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315273&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWiq&quot; name=&quot;_Toc69631193&quot; target=&quot;_blank&quot;&gt;HANDLING OF POP UP SCREEN IN BDC&lt;/a&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Many times in transaction pop
up screen appears and for this screen you don’t pass any record but some
indication to system telling it to proceed further. For example: The&amp;nbsp; following screen&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;

&lt;br /&gt;
&lt;table align=&quot;left&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td height=&quot;16&quot; width=&quot;29&quot;&gt;&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td&gt;&lt;/td&gt;
  &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
To handle such screen, system
has provided a variable called BDC_CURSOR. You pass this variable to BDCDATA
and process the screen.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Usually such screen appears in
many transactions, in this case you are just passing information, that YES you
want to save the information, that means YES should be clicked. So you are
transferring this information to BDCDATA i.e., field name of YES which is
usually SPOT_OPTION. Instead of BDC_OKCODE, you are passing BDC_CURSOR.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
BDC_CURSOR is also used to
place cursor on particular field.&lt;/div&gt;
&lt;br /&gt;
&lt;h2&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315274&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://adf.ly/CUWiq&quot; name=&quot;_Toc69631194&quot; target=&quot;_blank&quot;&gt;AN EXAMPLE WITH SESSION METHOD&lt;/a&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Following program demonstrates
how data is passed from flat file to SAP transaction and further to database
table by using SESSION method.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The transaction is TFBA (to
change customer).&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
A simple transaction where you
are entering customer number on first screen and on next screen data is
displayed for the particular customer number. Field, which we are changing
here, are name and city. When you click on save, the changed record gets saved.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
Prerequisite to write this BDC
interface as indicated earlier is:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
1. To find screen number&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
2. To find screen field names,
type of the field and length of the field.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
3. To find BDC_OKCODE for each
screen&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
4. Create flat file.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Flat file can be created in
your hard disk as follows: &lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Vinod Krishna&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;st1:city w:st=&quot;on&quot;&gt;Hyderabad&lt;/st1:city&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Kavitha&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Secunderabad&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Kishore&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;st1:city w:st=&quot;on&quot;&gt;Hyderabad&lt;/st1:city&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;(Where 1&lt;sup&gt;st&lt;/sup&gt; character field is
Customer number, 2&lt;sup&gt;nd&lt;/sup&gt; field is Customer name and 3&lt;sup&gt;rd&lt;/sup&gt; field
is City.)&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
To transfer this data to database
table SCUSTOM following interface can be used.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
REPORT DEMO1.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;*
Following internal table is to upload flat file.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
DATA: BEGIN OF ITAB OCCURS 0,&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ID(10),&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NAME(25),&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CITY(25),&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; END OF ITAB.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;*Following
internal table BDCDATA is to pass date from internal table to session.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
DATA: BDCTAB LIKE BDCDATA
OCCURS 0 WITH HEADER LINE.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;*
Variables&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
DATA: DATE1 LIKE SY-DATUM.
DATE1 = SY-DATUM - 1. “ This is for Hold Date&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;* To
upload flat file to internal table. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
CALL FUNCTION UPLOAD&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;text-indent: 0.5in;&quot;&gt;
EXPORTING&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
FILE NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
‘C:\FF.TXT’&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
FILE TYPE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
‘ASC”&lt;/div&gt;
&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot; style=&quot;text-indent: 0.5in;&quot;&gt;
TABLES&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
DATA_TAB&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
ITAB&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-right: -36.4pt; text-indent: 0.5in;&quot;&gt;
EXCEPTIONS&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
CONVERSION_ERROR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
1&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
INVALID_TABLE_WIDTH&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
2&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
INVALID_TYPE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
3&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
NO_BATCH&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
4&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
UNKNOWN_ERROR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
5&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
OTHERS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
6.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
If sy-subrc = 0.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;*
Calling Function to Create a Session&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
CALL FUNCTION ‘BDC_OPEN_GROUP’&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;text-indent: 0.5in;&quot;&gt;
EXPORTING&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
CLIENT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
SY-MANDT&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
GROUP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
‘POTHURI’&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
HOLDDATE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
DATE1&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
KEEP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
‘X’&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
USER&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
SY-UNAME&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;text-indent: 0.5in;&quot;&gt;
EXCEPTIONS&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
CLIENT_INVALID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
1&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
DESTINATION_INVALID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
2&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
GROUP_INVALID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
3&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
GROUP_IS_LOCKED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
4&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
HOLDDATE_INVALID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
5&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
INTERNAL_ERROR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
6&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
QUEUE_ERROR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
7&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
RUNNING&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
8&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
SYSTEM_LOCK_ERROR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
9&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
USER_INVALID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
10&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
OTHERS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
11.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
If sy-subrc = 0.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;*--------------------------
MAIN Logic------------------------------&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
LOOP AT ITAB&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp; PERFORM GENERATE_DATA. “ Populating BDCDATA
Table&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp; CALL FUNCTION ‘BDC_INSERT’&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EXPORTING&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
TCODE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
‘TFBA’&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;text-indent: 0.5in;&quot;&gt;
TABLES&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
DYNPROTAB&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
BDCTAB&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;text-indent: 0.5in;&quot;&gt;
EXCEPTIONS&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
INTERNAL_ERROR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
1&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
NOT_OPEN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
2&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
QUEUE_ERROR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 3&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
TCODE_INVALID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 4&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
PRINTING_INVALID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 5&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
POSTING_INVALID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 6&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
OTHERS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =
7.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp; REFRESH BDCTAB&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
ENDLOOP. &lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&lt;b&gt;* Calling function to close
the session&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
CALL FUNCTION
‘BDC_CLOSE_GROUP’&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;text-indent: 0.5in;&quot;&gt;
EXCEPTIONS&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
NOT_OPEN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 1&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
QUEUE_ERROR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 2&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;margin-left: 0.5in; text-indent: 0.5in;&quot;&gt;
OTHERS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 3.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
Endif.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
Endif.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
*&amp;amp;--------------------------------------------------------------------*&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
*&amp;amp; Form GENERATE_DATA&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
*&amp;amp;--------------------------------------------------------------------*&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
*&amp;nbsp;&amp;nbsp;&amp;nbsp; Create BDC Data&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
*&amp;amp;--------------------------------------------------------------------*&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
FORM GENERATE_DATA&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;*
Passing information for 1st screen on BDCDATA&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;BDCTAB-PROGRAM = ‘SAPMTFBA’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;BDCTAX-DYNPRO = 100.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;BDCTAP-DYNBEGIN = ‘X’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;APPEND BCDTAB.CLEAR BDCTAB.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;*
Passing field information to BDCDATA&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;BDCTAB-FNAM = ‘SCUSTOM-ID’&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;BDCTAB-FVAL = ITAB-ID.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;APPEND BDCTAB.CLEAR BDCTAB.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;*
Passing BDC_OKCODE to BDCDATA&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;BDCTAB-FNAM = ‘BDC_OKCODE’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;BDCTAB-FVAL = ‘/5’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;APPEND BDCTAB.CLEAR BDCTAB.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;*
Passing screen information for next screen to BDCDATA&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;BDCTAB-PROGRAM = ‘SAPMTFBA’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;BDCTAB-DYNPRO = 200.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;BDCTAB-DYNBEGIN = ‘X’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;APPEND BDCTAB.CLEAR BDCTAB.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;*
Passing screen information to BDCDATA&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;BDCTAB-FNAM = ‘SCUSTOM-NAME’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;BDCTAB-FVAL = ITAB-NAME.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;APPEND BDCTAB.CLEAR BDCTAB.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;&lt;span style=&quot;color: blue;&quot;&gt;* Passing screen
information to BDCDATA&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;BDCTAB-FNAM = ‘SCUSTOM-CITY’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;BDCTAB-FVAL = ITAB-CITY.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;APPEND BDCTAB.CLEAR BDCTAB.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;*
Passing BDC_OKCODE to BDCDATA&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;BDCTAB-FNAM = ‘BDC_OKCODE’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;BDCTAB-FVAL = ‘SAVE’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;APPEND BDCTAB.CLEAR BDCTAB.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
ENDFORM.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; “GENERATE_DATA&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;span style=&quot;color: #274e13;&quot;&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;AN EXAMPLE WITH CALL TRANSACTION&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Same steps to be repeated for
CALL TRANSACTION&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The only difference between
the two types of interface is in Session method, you create session and store
information about screen and data into session. When session is processed the
data is transferred to database. While in CALL TRANSACTION, data is transferred
directly to database table.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
REPORT DEMO1.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;*
Follow above Code till MAIN Logic. Even the Subroutine should be copied&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot;&gt;
LOOP AT ITAB&lt;/div&gt;
&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;PERFORM
GENERATE_DATA, “Populating BDCDATA Table&lt;/div&gt;
&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;Call transaction
‘TFBA’ using BCDDATA Mode ‘A’ Update ‘S’.&lt;/div&gt;
&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot;&gt;
&amp;nbsp;REFRESH BDCTAB&lt;/div&gt;
&lt;div align=&quot;left&quot; class=&quot;MsoBodyText2&quot;&gt;
ENDLOOP.&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/1367195054265632616/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/batch-datacommunicationsbatch.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/1367195054265632616'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/1367195054265632616'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/batch-datacommunicationsbatch.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-6457438531745288675</id><published>2012-09-22T22:53:00.002-07:00</published><updated>2012-09-22T22:55:06.217-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;a href=&quot;http://adf.ly/CUXC2&quot; name=&quot;_Toc70256226&quot; style=&quot;font-size: 16pt;&quot;&gt;SAP Scripts/LayoutSets/Forms&lt;/a&gt;&lt;br /&gt;
&lt;div dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;
&lt;h2&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315330&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69630063&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69629966&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69629677&quot;&gt;&lt;/a&gt;&lt;span style=&quot;font-size: 14.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Sap Scripts&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
If the user wants to print
documents such as invoices, purchase order, all such documents are printed with
the use of forms. SAP allows the user to define these forms by using layout
sets. SAP script is the tool used to create the layout set.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
In order to
print the document, the SAP system runs a program that collects the data for
the document and feeds it into the layout set. This is called as Print Program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
SAP Provides a
standard layout set for every printable document and usually there is no need
to create layout sets as such. User just modifies the existing layout sets as
per requirement of client. Following are some standard layout sets provided by
SAP:&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;ul style=&quot;margin-top: 0in;&quot; type=&quot;disc&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l2 level1 lfo3; tab-stops: list .5in; text-align: justify;&quot;&gt;RVORDER 01&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sales order confirmation&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l2 level1 lfo3; tab-stops: list .5in; text-align: justify;&quot;&gt;RVDELNOTE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Picking List&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l2 level1 lfo3; tab-stops: list .5in; text-align: justify;&quot;&gt;RVPICKSIN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Picking List&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l2 level1 lfo3; tab-stops: list .5in; text-align: justify;&quot;&gt;RVINVOICE 01&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Invoice&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l2 level1 lfo3; tab-stops: list .5in; text-align: justify;&quot;&gt;MEDRUCK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Purchase Order&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l2 level1 lfo3; tab-stops: list .5in; text-align: justify;&quot;&gt;F110_PRENUM_CHCK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Pre-numbered check&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Usually you
don’t create layout sets, instead, you copy the existing layout sets with some
modification to the existing layout sets. SAP doesn’t allow you to modify the
layout sets. You need to copy the existing layout set to your own layout set
and then do all the modification.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Procedure to
copy the existing layout sets.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Tools &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt;
Word processing &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt;
Layout sets.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Utilities &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt;
Copy from client&lt;/div&gt;
&lt;ul style=&quot;margin-top: 0in;&quot; type=&quot;disc&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l3 level1 lfo5; tab-stops: list .5in; text-align: justify;&quot;&gt;Enter the name of the layout set in
     layout name.&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l3 level1 lfo5; tab-stops: list .5in; text-align: justify;&quot;&gt;Enter target layout set name&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l3 level1 lfo5; tab-stops: list .5in; text-align: justify;&quot;&gt;Click execute &lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
The SAP
standard layout set uses D German as the original language. In order to modify
the copied layout set, the original language of the set must be changed to the
language in which you are working. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
To convert language:&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315331&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69630098&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69630065&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69629968&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69629679&quot;&gt;&lt;/a&gt;Utilities – Convert original language&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Click OK.&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69630066&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69629970&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69629681&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69629573&quot;&gt;&lt;b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/a&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;
Layout Set&lt;/span&gt;&lt;b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/h1&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: 12pt;&quot;&gt;Layout
set is used to design the document. Layout set on its own does not contain any
data. The selection of data for the document is done through the print program
i.e. the print program selects the data from database table and feeds it to the
layout set. The document is printed after the print program gets executed.&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
A layouts set
consist of following components:&lt;/div&gt;
&lt;ul style=&quot;margin-top: 0in;&quot; type=&quot;disc&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l0 level1 lfo4; tab-stops: list .5in; text-align: justify;&quot;&gt;Header&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l0 level1 lfo4; tab-stops: list .5in; text-align: justify;&quot;&gt;Paragraph&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l0 level1 lfo4; tab-stops: list .5in; text-align: justify;&quot;&gt;Character String&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l0 level1 lfo4; tab-stops: list .5in; text-align: justify;&quot;&gt;Windows&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l0 level1 lfo4; tab-stops: list .5in; text-align: justify;&quot;&gt;Pages&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l0 level1 lfo4; tab-stops: list .5in; text-align: justify;&quot;&gt;Page Window&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;Header: &lt;/b&gt;The header consists
administrative information for the layout sets and default settings for the
various other components of the layout sets like page, paragraph. You give all
the administrative information for the header when you create the layout set,
while all default settings are specified when all the components are created.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;Paragraphs&lt;/b&gt;: A Paragraph contains all
the information needed to format a paragraph of text and font. Tabs are
important for paragraphs. Specifying the list of tabs is the way to create
columns for outputting line items of a document.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;Character string: &lt;/b&gt;is used to override
paragraph settings for specific words in a paragraph. For example you might
want to use Bold for a single word but not the entire paragraph. The only
important thing that is defined with the character string is the font.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;Windows: &lt;/b&gt;A window mainly contains the SAP scripts text and the variable to
be printed. There is one special window, &lt;st1:place w:st=&quot;on&quot;&gt;MAIN&lt;/st1:place&gt;,
which contains the output of the line item of a document and is created by the
system. The window can be of type VAR or CONST except for the &lt;st1:place w:st=&quot;on&quot;&gt;MAIN&lt;/st1:place&gt;.
But in the present version, SAP system does not distinguish between these two
types. The content of variable window is regenerated on every page. The content
of a constant window is generated once at the beginning and later printed on
every page.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315333&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69630067&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69629971&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69629682&quot;&gt;&lt;/a&gt;Printing
a company logo&lt;b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/h1&gt;
&lt;h1&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315334&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69630101&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69630068&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69629972&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69629683&quot;&gt;&lt;/a&gt;There are two ways to print a company logo:&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l1 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.25in;&quot;&gt;
1.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;The logo can be included in the layout set.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l1 level1 lfo1; tab-stops: list .5in; text-align: justify; text-indent: -.25in;&quot;&gt;
2.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;It can be a macro on PCL – 5 printers.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Including a logo in the layout
sets&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l4 level1 lfo2; tab-stops: list .5in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Create logo with a graphics program and save it
as tiff file.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l4 level1 lfo2; tab-stops: list .5in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;From editor run the program RSTXLDMC.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Parameters to be passed are&amp;nbsp;&amp;nbsp; &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l4 level1 lfo2; tab-stops: list .5in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;File name&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l4 level1 lfo2; tab-stops: list .5in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;File type&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l4 level1 lfo2; tab-stops: list .5in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;BMON – For a black and white image.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l4 level1 lfo2; tab-stops: list .5in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;BCOL – For a color image.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l4 level1 lfo2; tab-stops: list .5in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Text name – The standard text in layout set&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
This text can be included in a layout set by including &amp;lt;text
name&amp;gt;. Using PCL – 5 printers, can also print the logo. In R3, the printer
types are IIPLJIIID, IIPLJ4, LX4039 and SM120XXS.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70315335&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69630069&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69629973&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc69629684&quot;&gt;&lt;/a&gt;Control
Commands&lt;b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
About control commands:&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot;&gt;
All script control commands are entered in the SAP Script editor.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l4 level1 lfo2; tab-stops: list .5in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;All commands are indicated by &lt;b&gt;/:&lt;/b&gt; in the
tag column&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l4 level1 lfo2; tab-stops: list .5in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Only one control command is allowed per line&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l4 level1 lfo2; tab-stops: list .5in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Lines with control commands are not affected by
the editor formatting&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; mso-list: l4 level1 lfo2; tab-stops: list .5in; text-align: justify; text-indent: -.25in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;If control command is unknown or incorrect,
command line is treated as comment line&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: 14.0pt; mso-bidi-font-size: 12.0pt;&quot;&gt;ADDRESS:&lt;/span&gt;&lt;/b&gt; This command formats and address
according to the postal standards of the country.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText3&quot;&gt;
&lt;span style=&quot;height: 182px; left: 0px; margin-left: -1px; margin-top: 16px; mso-ignore: vglayout; position: absolute; width: 206px; z-index: 251657216;&quot;&gt;&lt;img height=&quot;182&quot; src=&quot;file:///C:/Users/pondu/AppData/Local/Temp/msohtmlclip1/01/clip_image001.gif&quot; v:shapes=&quot;_x0000_s1026&quot; width=&quot;206&quot; /&gt;&lt;/span&gt;Syntax:&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify; text-indent: .5in;&quot;&gt;
/: Address&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; text-align: justify;&quot;&gt;
/: Title
‘Company’&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; text-align: justify;&quot;&gt;
/: Name
‘Intelligroup’&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; text-align: justify;&quot;&gt;
/: Street ‘115’&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; text-align: justify;&quot;&gt;
/: P.O. BOX
`&amp;nbsp; `&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; text-align: justify;&quot;&gt;
/: Postcode&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; text-align: justify;&quot;&gt;
/: City&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; text-align: justify;&quot;&gt;
/: Region&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; text-align: justify;&quot;&gt;
/: Country&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: .5in; text-align: justify;&quot;&gt;
/: End Address&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: 14.0pt; mso-bidi-font-size: 12.0pt;&quot;&gt;BOTTOM-ENDBOTTOM:&amp;nbsp; &lt;/span&gt;&lt;/b&gt;For the Main window you can
determine lines, which are always output automatically at the bottom of that
window. This is called footer text.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Syntax:&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;/: Bottom&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;/: endbottom&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;span style=&quot;mso-bidi-font-size: 12.0pt; mso-bidi-font-weight: bold; text-transform: uppercase;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/h4&gt;
&lt;h4&gt;
BOX, POSITION, &amp;amp; SIZE: &lt;span style=&quot;font-weight: normal; mso-bidi-font-weight: bold;&quot;&gt;These commands are used for drawing boxes and are used only during
creating output.&lt;/span&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Syntax: &lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;/: box [X&lt;/span&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;pos]&amp;nbsp;
[Ypos]&amp;nbsp; [Width]&amp;nbsp; [Height] [Frame]&amp;nbsp; [Intensive]&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
X &amp;amp; Y –
Upper left corner of the box.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Width – Width
of the box&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Ht – Height of
the box&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Frame –
Thickness of the box (Default is full black)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Units used for
Width, Height and Thickness are TW, PT, IN, CM, CH, LN.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;table align=&quot;left&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td height=&quot;18&quot; width=&quot;30&quot;&gt;&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td&gt;&lt;/td&gt;
  &lt;td&gt;&lt;img height=&quot;59&quot; src=&quot;file:///C:/Users/pondu/AppData/Local/Temp/msohtmlclip1/01/clip_image002.gif&quot; v:shapes=&quot;_x0000_s1027&quot; width=&quot;414&quot; /&gt;&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;br clear=&quot;ALL&quot; /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-align: justify;&quot;&gt;
Ex.,
/: BOX WIDTH ‘20’ CM HEIGHT 1 IN&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-align: justify;&quot;&gt;
FRAME
10 TW INTENSIFY 15.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: 14.0pt; mso-bidi-font-size: 12.0pt;&quot;&gt;POSITION&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Syntax:&lt;/b&gt;&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;/: Position [X&lt;/span&gt; Origin] [Y Origin]
[Window] [Page]&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
X &amp;amp; Y&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sets
the origin for x 7 y parameters for the box command.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Window&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sets
the default values for the left and upper edges.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Pages&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sets
the values for the left and upper edges of the current page.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
Basically used
to set default setting for the box command.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
/: Position x
Origin ‘1.5’ cm y origin ‘1’ cm&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
SIZE&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Syntax:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;/:
Size [Width]&amp;nbsp; [Height]&amp;nbsp; [Window]&amp;nbsp;
[pAGE]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
Sets width and height parameters
for the box command.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
CASE: &lt;span style=&quot;font-size: 12.0pt; font-weight: normal; mso-bidi-font-size: 10.0pt; mso-bidi-font-weight: bold;&quot;&gt;It is similar to ABAP/4
editor command ‘CASE’ only symbol can be queried.&lt;/span&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Syntax:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
/: CASE SYMBOL&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
/: WHEN 1&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
/: WHEN 2&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
/: WHEN OTHERS&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
/: ENDCASE&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText3&quot;&gt;
&lt;span style=&quot;font-size: 14.0pt; mso-bidi-font-size: 12.0pt; mso-bidi-font-weight: bold;&quot;&gt;DEFINE: &lt;/span&gt;Values can be assigned to
text symbol by DEFINE keyword. The assigned value may have a maximum 60 characters.
It can also contain further symbols.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Syntax:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;/: define &amp;amp;
symbol &amp;amp; = ‘xxxx’&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: 16.0pt; mso-bidi-font-size: 12.0pt;&quot;&gt;IF:&amp;nbsp; &lt;/span&gt;&lt;/b&gt;With IF command you can define the
lines that are output only under certain conditions.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Syntax: &lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoHeader&quot;&gt;
/: IF &amp;amp;var&amp;amp; = ‘char val’&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
/: ENDIF&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: 14.0pt; mso-bidi-font-size: 12.0pt;&quot;&gt;INCLUDE: &lt;/span&gt;&lt;/b&gt;Contents of another text can be
included in text by INCLUDE command. The contents are copied only at the time
of the output formatting. You can also specify language and the paragraph
irrespective of the language in which the calling text is created. The language
which is used in include test is used for output.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Syntax:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoHeader&quot; style=&quot;line-height: 16.0pt; tab-stops: .5in;&quot;&gt;
/: INCLUDE MYTEXT&lt;/div&gt;
&lt;div class=&quot;MsoListBullet&quot;&gt;
&lt;span style=&quot;font-size: 14.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;NEW–PAGE:&lt;/span&gt;
SAP Script automatically carries out a page break if window &lt;st1:place w:st=&quot;on&quot;&gt;MAIN&lt;/st1:place&gt;
of one page is filled with NEW-PAGE command. You can face page break at any
point. The current page is completed and the text in the following line is
written on new page. If no name is defined, then, the next page attributes from
page setup is taken.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Syntax:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
/: NEW – PAGE
[PAGE-NAME]&lt;/div&gt;
&lt;div class=&quot;MsoListBullet&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListBullet&quot;&gt;
&lt;span style=&quot;font-size: 14.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;NEW–WINDOW:&lt;/span&gt;
You can have 99 MAIN windows on one page. If MAIN window is filled, then the
next MAIN window is accessed automatically. With NEW-WINDOW command, you can
call next main window even if the current MAIN window is not yet completely
filled.&lt;/div&gt;
&lt;div class=&quot;MsoListBullet&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListBullet&quot;&gt;
&lt;span style=&quot;font-size: 14.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;PROTECT:&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
 
You can determine that a paragraph must not be separated by a page 
break. The
lines in this command are printed together on one page. If the space is 
enough
on current page, then all the lines are printed on current page. If, 
however
the space is not sufficient the PROTECT command works as a ‘NEW-PAGE’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;Syntax:&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
/: PROTECT&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
/: ENDPROTECT&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: 14.0pt; mso-bidi-font-size: 12.0pt;&quot;&gt;SET COUNTRY: &lt;/span&gt;&lt;/b&gt;Some field types are
formatted country – specifically. E.G. date. Normally the display types are
defined in the user master record with the control command set country, an
alternative to that in the user master record can be chosen.&lt;/div&gt;
&lt;div class=&quot;MsoListBullet&quot;&gt;
Syntax:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
/: &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SET COUNTRY &amp;lt;COUNTRY KEY&amp;gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: 14.0pt; mso-bidi-font-size: 12.0pt;&quot;&gt;SET DATE MASK:&lt;/span&gt; &lt;/b&gt;Standard
display of date can be changed&lt;b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText3&quot; style=&quot;line-height: 14.0pt;&quot;&gt;
Syntax:&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 14.0pt; text-align: justify;&quot;&gt;
e.g. SET DATE
MASK = ‘MM DDDD (Day in full) yyyy’&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListBullet&quot;&gt;
You can switch back to default display of date by&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
/: SET DATE
MASK = ‘&amp;nbsp; ‘&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: 14.0pt; mso-bidi-font-size: 12.0pt;&quot;&gt;SET
TIME MASK: &lt;/span&gt;&lt;/b&gt;Standard display of time can be changed&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
&lt;b&gt;Syntax:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-align: justify;&quot;&gt;
/: SET TIME
MASK = ‘HH:MM’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: 14.0pt; mso-bidi-font-size: 12.0pt;&quot;&gt;TOP-ENDTOP:
&lt;/span&gt;&lt;/b&gt;For main window, you can determine lines, which are always O/P
automatically at the top of the window.&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/6457438531745288675/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/sap-scriptslayoutsetsforms-sap-scripts.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/6457438531745288675'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/6457438531745288675'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/sap-scriptslayoutsetsforms-sap-scripts.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-6178121330640965654</id><published>2012-09-22T22:52:00.002-07:00</published><updated>2012-09-22T22:55:17.552-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;span style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://adf.ly/CUXGD&quot; style=&quot;text-align: justify;&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 16.0pt; mso-bidi-font-size: 12.0pt;&quot;&gt;TRANSACTIONS&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;text-align: justify;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
GENERAL INTRODUCTION TO TRANSACTION&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Transaction,
in R/3 system is an operation that lets the user make necessary changes to the
database. The entire R/3 system is nothing but set of business transaction. The
data transfer from old system to SAP R/3 database, or modifying data, or
deleting data, which is not required, is done through transaction.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
For SAP
system, Transaction is nothing but sequence of steps called as dialog steps and
for user it is sequence of screens that appears one after the other depending
upon the option he selects. The special transaction monitor called the SAP
dispatcher handles the sequence of steps that takes place in any transaction.
The main task of transaction is to update database table. The database table is
not updated until a transaction is completed. All changes can be rolled back if
the transaction has not finished.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The
transaction contains two steps which are as following:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Interactive phase&lt;/b&gt;: In this step, user
enters the data, which needs to be inserted or deleted or modified on to the
screen. There can be single screen or multiple screens depending upon the
transaction. So this step can consist of single step or multiple steps.&amp;nbsp; In this phase you prepare database record.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Update phase&lt;/b&gt;: This phase processes the
database record and updates the database table. Actual updating of database
table takes place in this phase.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
All the
transactions are associated with transaction code. And all these codes are
stored in a table &lt;b&gt;TSTC&lt;/b&gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;Logical Unit of Work (LUW)&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;span style=&quot;line-height: 16pt;&quot;&gt;The R/3 system
is multi user system and many users access the same information at the same
time, which is mainly DATA. Consider the case where one user is modifying a
record, and second user is trying to delete the same record. If the second user
is successful in deleting the record then the first user will face problem for
modifying the record that is already deleted. The avoid such situation, R/3
system has provided Logical Unit of Work, which is defined as a locking
mechanism to protect transaction integrity. Of course, there are other
measures, which ensures data integrity like check table i.e. foreign key
relationship. Within SAP system there are three types of transaction and may be
distinguished as:&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Database transaction known as LUW.&amp;nbsp; It can be defined as a period in which
operation requested must be performed as a unit, i.e. all or nothing
operation.&amp;nbsp; At the end of LUW, either of
the database changes are committed or rolled back.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Update transaction or SAP LUW.&amp;nbsp; One SAP LUW can have several databases LUW.
So a set of a database is either committed or rolled back. The special ABAP/4
command COMMIT WORK, marks the end of a SAP LUW.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;ABAP/4 transaction. Is made up of a set of
related task combined under one transaction code. ABAP/4 transactions are for
programming environment, in which ABAP/4 transaction functions like one
complete object containing screens, menus and transaction codes.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
R/3 system has
provided in built locking mechanism, which defines the Logical Unit of Work.
Also user can set his own locking mechanism. The LUW starts when a lock entry
in the system table is created, and it ends when the lock is released.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
To provide the
user the facility to communicate with the table in order to modify or delete or
insert data, R/3 has provided tool called SCREEN PAINTER. This tool allows you
to design screen, process screen through program and update the database
table.&amp;nbsp; SAP has provided one and only one
way to update the database table, i.e. transaction.&amp;nbsp; Though you can update database table by using
open SQL statement through program, SAP usually doesn’t recommend this kind of
updating.&amp;nbsp; Many standard transactions are
available to update standard table but if the need arises, the developer should
be able to develop new transaction, which allows the updating of database
tables. This can be achieved by using various components of screen painter.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Following are
the few concepts and steps for creating entire new transaction.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;span style=&quot;font-variant: small-caps;&quot;&gt;Dynpro&lt;/span&gt;
concept&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;span style=&quot;font-size: 12pt; text-align: left;&quot;&gt;A
dynpro refers to the screen + flow logic. With screen painter you can develop
screen and flow logic. The relationship between screen, flow logic, and program
can be shown as follows:&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;
&lt;table align=&quot;left&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;
  &lt;tbody&gt;
&lt;tr&gt;
   &lt;td height=&quot;24&quot; width=&quot;83&quot;&gt;&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr&gt;
   &lt;td&gt;&lt;/td&gt;
   &lt;td&gt;&lt;/td&gt;
  &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br clear=&quot;all&quot; style=&quot;mso-special-character: line-break; page-break-before: always;&quot; /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Dynpro, as figure indicates
consist of screen and flow logic and places exactly one call to module pool
program. A transaction consists of many screens and for each screen flow logic
is attached. When the transaction is executed, the screen places a call to flow
logic and flow logic in turn places a call to module pool program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;A module program is usual ABAP/4 program that
consist of modules and data declaration.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;ABAP/4 is an event driven language. In module
pool program too, events get triggered and these events are handled in flow
logic. Flow logic editor is subset of ABAP/4 editor. The system automatically
displays the two important events for the flow logic.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Screen is the important component of dynpro and
can be created, designed by screen painter.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h2&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Screen Painter&lt;/span&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
A screen painter can be started
by&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Development workbench &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt;
Screen &lt;span style=&quot;text-transform: uppercase;&quot;&gt;p&lt;/span&gt;ainter&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Or&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;SE51&lt;/b&gt; transaction code.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Using Screen &lt;span style=&quot;font-variant: small-caps;&quot;&gt;p&lt;/span&gt;ainter&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
The process of creating a dynpro
includes the creation and definition of all the needed screen components.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
The steps involved in creating
the dynpro are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Create screen and attributes by using screen
attribute screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Select and place the needed fields within the
screen by using dict/program fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Establish the field attributes to which the
screen belongs by using field list.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Define the flow logic respect to the transaction
to which it belongs by using flow logic.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Creating a new Screen&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Steps involved are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Enter the name of program and number of the
screen&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Click on Create&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;On “screen attribute” screen enter short
description&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Enter screen type. Normally, you select &lt;st1:place w:st=&quot;on&quot;&gt;NORMAL&lt;/st1:place&gt; option for usual R/3 screen. Other options
available are SUBSCREEN &amp;amp; MODAL DIALOG BOX. Modal dialog box is used to
establish independent and interactive dialog box while subscreen is screen
within screen.&amp;nbsp; &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Next attribute to be passed is NEXT SCREEN. Here
you need to specify the next screen number, which must be processed after the
current one.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Designing of Screen&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Screen can be designed by using
FULL SCREEN EDITOR. You can go to full screen editor.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
From screen attribute screen&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
By pressing full screen editor
pushbutton&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Or&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
From initial screen of screen
painter.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
There are two modes available
with full screen editor.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Graphical mode. The graphical mode works
similarly to typical window application. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Alphanumeric mode (rarely used).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
Elements of screen&lt;o:p&gt;&lt;/o:p&gt;&lt;/h4&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Text – Standard text or field labels.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Entry&amp;nbsp; -
display field.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Radiobutton – All radiobutton must be associated
with one group.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Checkbox – Normally used for YES/NO operations.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Pushbutton – Used for activating particular
function.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Boxes – grouping together many screen elements.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Subscreens – This is a screen area in which you
can display another screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Table controls – This area of screen is similar
to table but should be treated as a loop.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Status - Display output fields containing icon.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
All these elements are on the
control bar of full screen editor and can be placed on the screen work area by
clicking and placing them wherever needed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h1&gt;
Selecting Screen &lt;span style=&quot;text-transform: uppercase;&quot;&gt;f&lt;/span&gt;ields&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Screen field can be either
dictionary objects or program fields. Steps involved in the placing of fields
on the screen are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Click the pushbutton Dict/program
fields on the full screen editor &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Or&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Goto &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt;
dict/prog fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Enter table name.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Click Get from dictionary.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Select fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Click copy pushbutton.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Position the cursor where you want those fields
to be placed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
To adjust various screen
elements, you can use drag and drop facility for screen elements.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Attributes of Screen Elements&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
The entire element of a screen
has some attributes, which determines their behavior.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;General – These attributes are directly managed by
the screen painter like name of the element, or text of element or column width
and various things associated with the screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Dictionary – These attributes are applicable to
fields, which are from dictionary. Various components of dictionary can be attached
to this element like search help, foreign key.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Display – Behavior of the element with respect
to their display feature.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Attribute dialog box can be
displayed by&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Clicking on the &lt;span style=&quot;text-transform: uppercase;&quot;&gt;Attribute&lt;/span&gt; push button on the application tool bar.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Double clicking on the element.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h1&gt;
Field List&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
This list
displays a list of all screen elements together with their screen
attributes.&amp;nbsp; One important element of
Field list is OKCODE. Any pushbutton is associated with function code as in
menu item in menu painter. When the user clicks the pushbutton this code is
stored in OKCODE. This OKCODE is created by system without a name and is not
visible on the screen. In ABAP/4 this field is work field and is nothing but an
area wherein system stores the variable and is the last field of the field list
and is invisible, hence user needs to give the name OKCODE. It is not mandatory
to give the name OKCODE; developer can give any name to this field.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Screen Flow Logic&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
You can go to
this screen either by&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Initial screen
of &lt;span style=&quot;text-transform: uppercase;&quot;&gt;s&lt;/span&gt;creen painter &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt;
Flow logic&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Or&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
From Screen
attribute screen &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt; Flow logic&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
When
transaction is executed, the screen is displayed, user enters few fields,
selects few functions. Later the screen is processed and processing of screen
is done by flow logic.&amp;nbsp;&amp;nbsp;&amp;nbsp; The events that
are associated with screen are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Process before Output (PBO)&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Process after input (PAI)&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Process on value request (POV)&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;Process on help request (POH)&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The system
automatically displays two very important events or modules in flow logic i.e.
PAI and PBO&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;PBO event&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
This event is
triggered before the screen is displayed. The processing of screen before the
display of screen is done in this event. For example, filling in default values
in the screen fields.&amp;nbsp; &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;PAI event&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
This event is
responsible for processing of screen after the user enters the data and clicks
the pushbutton. The processing of screen can include displaying another screen,
or just displaying list or quitting the transaction itself and many more
things. Usually it is displaying another screen. These operations can be
carried out in the PAI event. OKCODE plays an important role in this operation.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;POV event&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Process on
value request is triggered when the user clicks F4 key. You can handle this
event when the user presses F4 key by writing code for the same in module pool
program. Normally when the user presses F4, list of possible values is
displayed.&amp;nbsp; The standard list produced by
system is adequate for applications you develop yourself.&amp;nbsp; However, you can also have the option of
setting up your own documentation and lists of possible values that are more
detailed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;POH event&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Normally when
the user places the cursor on the field and presses F1 function key, the system
displays its own Help for that particular field. You can add your own
functionality to the Help button by writing code for the same in the POH event.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 11.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h2&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Module Pool Programming&lt;/span&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
This component
though is not attached to the screen painter, plays important role in
transaction. Normally, for reports, on line executable programs are written but
for transaction, Module Pool Programs are written. The module pool program
contains only modules to handle various events associated with screen and data
declaration statements.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
System divides
the module pool program into several include program. These are global field,
PBO modules, and PAI modules. It is entirely user’s decision whether to use
these modules or write directly into main program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Creation of Module Pool Program&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
You can create
module pool program either through &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Object browser&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
System
automatically creates the module pool program and for these program which are
created through object browser, system creates the include modules.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Or&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
ABAP/4 editor&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
It is similar
to normal program creation. Type of program should be given ‘M’ and is not
created by system.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Communication between Dynpro and Module Program&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
For each
screen, the system executes the flow logic, which contains corresponding
events. The control is passed to Module Pool Program. Module Pool Program
handles the code for these events and again passes back control to the flow
logic and finally to screen. Unlike on line program, in this case, the control
remains with flow logic. The switching of control between flow logic and module
pool program and back is common process when user executes transaction.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h2&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Creation of a Complete Transaction&lt;/span&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Steps involved to create a complete transaction&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Create module pool program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;From screen painter create screens.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Write flow logic for each screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Write code for all the events in module pool
program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Check for any error in screen and flow logic.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Generate each and every component of screen i.e.
flow logic and screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Single screen can be tested using Screen
Painter.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Create transaction code through object browser.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Generate the transaction code.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;User can execute the transaction by entering the
transaction code in the command field.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Handling Function Code&lt;/h1&gt;
&lt;h1&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The function
code or OKCODE is the last field of Field list. Function code can be handled as
follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
During the
Designing of the screen, a function code is assigned to pushbutton.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;In field list, developer needs to specify OKCODE
as last field.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;In module program it is a global field and can
be evaluated in the PAI event.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;A function code is treated in the same way,
regardless it comes from pushbutton, menu item or any other GUI element.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
A complete
example for transaction is shown below:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
If you have a
screen like the one below:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
When the user clicks on the
Display button, you want to display details of sflight, with corresponding carrid
and connid (which is entered by the user).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Module pool program to handle
this particular screen is as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Program YVTEST7.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;Tables:
SFlighT.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;data:
okcode (4).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;Module
input1 input,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;case okcode.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;&amp;nbsp; when ‘disp’.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Select * from sflight &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;where carrid =&amp;nbsp; sflight – carrid and &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; connid = sflight –
connid.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Endselect.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; leave to screen 200.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;&amp;nbsp; When ‘exit’.&amp;nbsp;
Leave to screen 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp; Endcase.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;endmodule.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; “input1
input&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;module user_command_0200 input.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;case okcode.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-indent: 0.5in;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;when ‘back’. Leave to screen 100.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;endcase.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;Endmodule.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; “user_command_0200
input&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
When the user clicks on display,
control is transferred to screen no. 200 on which you display sflight details
&amp;amp; on the same screen, when user clicks on BACK button, he comes back to
main screen. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Flow logic for screen 100 is as
follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;Process
after input.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;Module input.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Flow logic for screen 200&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
PROCESS AFTER
INPUT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;User_command_0200.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
MODULES: &lt;span style=&quot;text-transform: uppercase;&quot;&gt;m&lt;/span&gt;odules are handled in module pool
program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
You need to
write flow logic for screen 200 and design screen 200.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In case of
transaction transfer of data from program to screen is automatic i.e. you need
not transfer the data from program to screen explicitly. The fields, which you
define in the screen receives the data from program and displays the same.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h2&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;The Field Checks&lt;/span&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
As already
mentioned Transaction is the only method, which SAP recommends to update the
database tables. Data entered in the database table should be valid and
correct. Data entered is validated at each and every point. ABAP/4 offers
various methods to validate data and those are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Automatic field checks&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Checks performed in the flow logic&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Checks performed in the ABAP/4 module pool
program&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Automatic Field Checks&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
These checks
are based on the field information stored in the dictionary. These checks are
performed by the system automatically when the user enters the data for the
screen field. System performs these checks before PAI event is triggered. Types
of field checks performed by system are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Required input&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
While
designing the screen, for particular screen field if you click the Req. Entry
checkbox, the field becomes mandatory. When the transaction is executed if user
leaves this particular field blank, the system displays error message. User
cannot proceed until the user enters some data.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Proper &lt;span style=&quot;text-transform: uppercase;&quot;&gt;d&lt;/span&gt;ata
Format&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Each field has
its own data format whether it is table field or screen field. Whenever data is
entered, system checks for the proper format of the data. For example date.
Each user has its own format for date, which is defined in the user master
record. If the date defined in the user master record is in the format
DD/MM/YYYY, if the user enters the date, say, in YY/DD/MM, the user displays
the error message. System also checks for the value of month or days. For
example if month entered is greater than twelve then the error message is
displayed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Valid Value for the Field&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In data
dictionary two tables are related by Primary key-Foreign key relationship.&amp;nbsp; Whenever the user enters the data, the system
checks for the check table values.&amp;nbsp;&amp;nbsp; Also
in Domain, if you have fixed values, then the system checks for these values.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Automatic field checks are repeated each
time the user enters the data.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/h4&gt;
&lt;h1&gt;
About at Exit – Command&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Automatic
field checks can be avoided by AT EXIT-COMMAND, which works exactly the same
way as Cancel works on application tools bar. In the R/3 screen, if you want to
quit the processing of that particular screen without entering the mandatory
fields, user can click the Cancel button. Same functionality can be
incorporated in the user-defined transaction by using AT EXIT-COMMAND. This
module can be called before the system executes the automatic field checks and
it goes without saying that before PAI event. Code for AT EXIT-COMMAND in flow
logic and in module pool program can be written as follows:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&lt;br /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;h1&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; In
module pool program.&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in;&quot;&gt;
Module
exit.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in;&quot;&gt;
Case
okcode.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in;&quot;&gt;
When
‘Exit’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in;&quot;&gt;
Leave
to screen 0.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
To achieve
this kind of functionality a pushbutton or menu item should be assigned a
function type ‘E’. It tells the system to process this particular module before
carrying out any field checks.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Flow Logic Validations&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Consider the
case where you want user to enter only ‘LH’ and ‘SQ’ for sflight-carrid. In
this case, you are restricting value of a screen field. This cannot be achieved
by automatic field check. Hence there is a need of additional validation. It
can be done in flow logic by using following statement:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Field --------------- Values&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Syntax&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;PAi.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Field
sflight-carrid values (‘LH’).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
For multiple
values&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;PAI.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Field
sflight-carrid values (‘LH’ ‘SQ’).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Field
sflight-price values (between 1000 and 2000).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In this case
when the user enters the value, PAI is triggered&amp;nbsp; and field is checked for&amp;nbsp; that particular value. If the value entered
happens to be wrong, that field is enabled for user to enter. If you have
multiple Field statements in your flow logic, it is sequential execution.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Consider the
following case:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;PAI.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;h1&gt;
Module &amp;nbsp;assign.&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Field
sflight-carrid values (‘LH’ ‘SQ’).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In ABAP/4&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Module&amp;nbsp; assign.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Data: carrid1
like sflight-carrid.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Carrid1 =
sflight-carrid.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Endmodule.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In this case,
Sflight-carrid is used in the flow logic before the field statement. The system
will give invalid value or some previous value as the field sflight-carrid is
used in module before it is checked i.e., field statement is after the module
in which sflight-carrid is being used. &lt;b&gt;The
field is not available to the system unless it executes the field statement&lt;/b&gt;.
Field statement transfers the values to the program and is done only once. If
you don’t have Field statement in your flow logic, transfer of values takes
place in PAI event.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Consider one
more case where you have multiple field statement.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;
&lt;table align=&quot;left&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td height=&quot;18&quot; width=&quot;30&quot;&gt;&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td&gt;&lt;/td&gt;
  &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;br clear=&quot;ALL&quot; /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in;&quot;&gt;
PAI.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in;&quot;&gt;
Field
Sflight-carrid values (‘LH’).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in;&quot;&gt;
Field
Sflight-connid values (‘0400’ ‘0500’).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In this case
if the user enters only carrid wrong, then this particular field is enabled and
rest of the fields are disabled for user to input. Many times if the user
enters wrong value for one field, then you might want to give option to user to
enter all the fields, which is not possible by using Field statement only. This
functionality can be achieved by &lt;span style=&quot;text-transform: uppercase;&quot;&gt;Chain –
endchain.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Syntax&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Chain.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Field
sflight-carrid value (‘LH’).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Field sflight-connid values (between
‘200’ and ‘500’).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Endchain.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Field
sflight-price values (‘100’ ‘1000’).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In this case,
if the user enters wrong value only for carrid, both the fields i.e. carrid and
connid are enabled as they are grouped together in the Chain statement. The
field price will be disabled for input. Usually, logically related fields are
grouped together with Chain-Endchain statement.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Module Pool Program Validations&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Checking
fields ABAP/4 program includes&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Field statement in flow logic.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Module statement in ABAP/4 module pool Program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Syntax&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
PAI.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Field
sflight-carrid module &amp;lt;name&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
This module
can be handled in the main program i.e. module pool program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In ABAP/4
program&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Module Check.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Select single
* from sflight where carrid = sflight-carrid.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
If sy-subrc ne
0.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Message e001.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Endif.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In this case,
field sflight-carrid is checked in the table for its existence.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 11.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h2&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Dynamically Calling the Screens&lt;/span&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
About Displaying Next Screen&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Transaction is
a sequence of screens, which are displayed one after the other. The next screen
displayed depends upon the attributes of first screen. In attributes you need
to give Next Screen number i.e. if next screen displayed should be 200 screen,
then this number should be given in next Screen attributes. These are static
attributes of the screen. By default, if nothing is specified in the program,
the system branches out to the screen number, which is specified in the
attribute screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
But this
doesn’t happen always. If you have many pushbuttons on the screen like the one
in the following case:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
In this case, if user selects
MARA pushbutton, then fields from Mara table are displayed. When the user
clicks on the MARD, then the fields from MARD table are displayed. Depending
upon users selection, the screen is branched out and this has to be done during
runtime. This functionality can be achieved by dynamically calling the screen
in module pool program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The screen can
branch out to new screen depending upon user selection. Following command in
module pool program can do this:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol; text-transform: uppercase;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;text-transform: uppercase;&quot;&gt;Set
Screem&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol; text-transform: uppercase;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;text-transform: uppercase;&quot;&gt;Call
Screen&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;text-transform: uppercase;&quot;&gt;Leave to
screen &amp;lt;number&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;A&lt;/span&gt;ll these commands override the
specifications given in the attributes. This overriding is temporary. The
values stored in the attribute are not changed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Set Screen&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Syntax&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Set screen
&amp;lt;number&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In module pool
program&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Case okcode.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; When&amp;nbsp;
‘&lt;span style=&quot;text-transform: uppercase;&quot;&gt;Disp&lt;/span&gt;’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set screen 200.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; When ‘&lt;span style=&quot;text-transform: uppercase;&quot;&gt;List&lt;/span&gt;’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set screen 300.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Endcase.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In this case,
the entire processing of current screen takes place and then the system
branches out to next screen. If you want to branch out to the next screen
without processing the current screen, LEAVE SCREEN should be used along with
the &lt;span style=&quot;text-transform: uppercase;&quot;&gt;set screen.&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;For
Example:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Case okcode..&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; When&amp;nbsp;
‘&lt;span style=&quot;text-transform: uppercase;&quot;&gt;Disp&lt;/span&gt;’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set screen 200.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Leave Screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; When ‘&lt;span style=&quot;text-transform: uppercase;&quot;&gt;List&lt;/span&gt;’.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set screen 300.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Leave Screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Endcase.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText3&quot;&gt;
When SET SCREEN is used, control cannot be
transferred to the main screen or previous screen, unless you write code for
the same.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Call Screen&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Usually used
for pop up screens. Many times, there is a need for user to enter additional
information or secondary information on another screen or pop up screen. Once
the user enters the data, he should be able to go back to main screen or to the
screen where he started. This is not possible by using SET SCREEN. CALL SCREEN
achieves this functionality&lt;span style=&quot;text-transform: uppercase;&quot;&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Syntax&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;span style=&quot;text-transform: uppercase;&quot;&gt;C&lt;/span&gt;all Screen 200.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Will simply
call a screen number 200 from a main screen. Once the screen is displayed the
user can enter all the data and return to the main screen by clicking &lt;span style=&quot;text-transform: uppercase;&quot;&gt;back&lt;/span&gt; button.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
To call screen
as pop up screen the syntax is &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Call
screen starting at &amp;lt;col.no.&amp;gt; &amp;lt;line no&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Ending at &amp;lt;col no&amp;gt; &amp;lt;line no&amp;gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In this case
window will be popped as window and user can close it by using &lt;span style=&quot;text-transform: uppercase;&quot;&gt;back&lt;/span&gt; button.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Leave to screen &lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
To SET a new
screen without processing current screen, you need to use the following two
statements together:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;SET Screen 200.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;Leave Screen.&lt;/span&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Or a Single
statement&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;Leave to screen 200.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 11.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-size: 10.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;&lt;/b&gt;

&lt;br /&gt;
&lt;h2&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Subscreens&lt;/span&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
A subscreen is
a screen within screen. Consider the following case.&lt;/div&gt;
&lt;h2&gt;
&lt;span style=&quot;color: yellow;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
If user clicks
on &lt;span style=&quot;text-transform: uppercase;&quot;&gt;First&lt;/span&gt; pushbutton, you want to
display details of MARA table and if user clicks on the &lt;span style=&quot;text-transform: uppercase;&quot;&gt;second&lt;/span&gt; pushbutton, you want to display details of &lt;span style=&quot;text-transform: uppercase;&quot;&gt;mard&lt;/span&gt; table.&amp;nbsp; You can do this by calling two different
screens. But the information will be displayed on the next screen. Displaying
data on the same screen is possible by using &lt;span style=&quot;text-transform: uppercase;&quot;&gt;Subscreens.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Step to create
a subscreen are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Create a subscreen area on &lt;span style=&quot;text-transform: uppercase;&quot;&gt;main&lt;/span&gt; screen and name it.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Create a separate screen of subscreen type.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Arrange the fields on this screen so that they
fit in subscreen area exactly. Only when it is larger, the part of the screen
that fits in the main area will be visible. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Write code for calling subscreen in flow logic.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
To call
subscreen, from your flow logic, you need to include the statement both in PAI
and PBO.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;Syntax&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
PBO.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Call
subscreen &amp;lt;area&amp;gt; including &amp;lt;prg name&amp;gt; &amp;lt;’screen no’&amp;gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
PAI.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Call subscreen
&amp;lt;area&amp;gt;.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Area - is the
name of the area on main screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Prg. Name - is
the name of the module pool program. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Screen number
- is subscreen screen number.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Some of the
don’ts with subscreen are:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
GUI status cannot
be set to the subscreen&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;OKCODE is not applicable to the subscreen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Subscreen cannot call another screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;It cannot contain &lt;span style=&quot;text-transform: uppercase;&quot;&gt;at Exit-Command.&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
You can call
multiple subscreen in the same area (at any given point of time, only one
subscreen can be called in the subscreen area) and is done dynamically during
runtime by using variable screen number.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h2&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/h2&gt;
&lt;h2&gt;
Table Controls &lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
A table can be
created in transaction. These tables when designed on the screen are called as &lt;span style=&quot;text-transform: uppercase;&quot;&gt;Screen Tables&lt;/span&gt;. These screen tables are
of two types viz.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Table controls&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Step loops&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Though these
are tables when code is written to handle them, the&amp;nbsp; tables are treated&amp;nbsp; as loops.&amp;nbsp;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Features of Table Controls&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Data is displayed in the form of table when many
records match the criteria.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Table control gives user the feeling of an
actual table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;You can scroll through the table vertically and
horizontally.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;You can select rows and columns&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Resize the width of a column&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;You can have separator lines in between rows and
columns&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Automatic resizing of the table when the user
resizes the window.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In general
table control includes all the features of an actual table and user gets the
feeling that he is actually working with table. You can update information in
table control and it can be updated in the database table by writing code for
it.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Steps
associated for creating complete screen table are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Declaration of table control in module pool
program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Designing of table control on the screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Passing data to table in flow logic.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Declaring of Table Control in the Module Pool
Program&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;Syntax&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Controls
TCI type Tableview using screen &amp;lt;screen no.&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
When you use
table control in a screen you must declare the structure in module pool
program. Important fields of tableview are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Lines – number of displayable rows in a table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Top_line – the row of table where the screen
displays start.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Current_line – The row currently being processed
inside a loop.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
When you
process the table control in flow logic depending upon where you want to start
display of rows, you need to use these variables.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Designing Table Control on Screen&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;To design table control on the screen, you need
to click on Table in control bar and place it on the screen. You can adjust the
length and width of table control.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Name the table control. (Here you need to use
same name which you have used for declaration of table control in module pool
program)&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;From dictionary object, select table fields and
place them in the table control.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Passing data to &lt;span style=&quot;text-transform: uppercase;&quot;&gt;t&lt;/span&gt;able
Control&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
As already
mentioned, table controls are tables but are treated like loops. Usually
transfer of data from program to screen is automatic. But in case of table
control, transfer of data is not automatic. You need to explicitly transfer the
data to table control. ABAP/4 provides loop statement, which is associated with
flow logic to transfer the data. Because table control is treated like a loop,
data from where it is transferred should be a loop. You cannot transfer the
data by only select statement; you need to put the data into internal table.
ABAP/4 provides the &lt;st1:place w:st=&quot;on&quot;&gt;LOOP&lt;/st1:place&gt; statement, which is
associated with the flow logic and allows you to loop through the table control
and internal tables. In between LOOP-ENDLOOP, you can use most of the flow
logic keywords like field values.&amp;nbsp; Module
etc.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
You need to
code a &lt;st1:place w:st=&quot;on&quot;&gt;LOOP&lt;/st1:place&gt; statement in both PBO and PAI
event of the screen. With &lt;st1:place w:st=&quot;on&quot;&gt;LOOP&lt;/st1:place&gt; statement, you
can transfer the data from program to table control and vice versa.&amp;nbsp; That is, if user updates the value in the
table control, you can update database table with its value. And this can be
done in PAI event. So even if you are not updating database table through the
table control, you need to put the &lt;st1:place w:st=&quot;on&quot;&gt;LOOP&lt;/st1:place&gt;
statement in the PAI event also.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText3&quot;&gt;
Syntax&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;PBO.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;Loop at &lt;/span&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;&amp;lt;internal table&amp;gt; with control &amp;lt;table
control name&amp;gt; cursor &amp;lt;scroll variable&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;PAI.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Loop
at itab.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Proper usage
of Table Control is as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText3&quot;&gt;
In flow logic.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;
&lt;table align=&quot;left&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td height=&quot;16&quot; width=&quot;10&quot;&gt;&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td&gt;&lt;/td&gt;
  &lt;td&gt;&lt;img height=&quot;184&quot; src=&quot;file:///C:/Users/pondu/AppData/Local/Temp/msohtmlclip1/01/clip_image010.gif&quot; v:shapes=&quot;_x0000_s1033&quot; width=&quot;502&quot; /&gt;&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;br clear=&quot;ALL&quot; /&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;PBO.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;LOOP at iTAB with control
Tc1 cursor tc1-top_line.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;Module assign.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;Endloop.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;Pai.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;loop at itab.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;endloop.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Considering,
we have following fields in table control and the screen looks like this: &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
In module pool
program&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;
&lt;table align=&quot;left&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td height=&quot;18&quot; width=&quot;20&quot;&gt;&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td&gt;&lt;/td&gt;
  &lt;td&gt;&lt;img height=&quot;171&quot; src=&quot;file:///C:/Users/pondu/AppData/Local/Temp/msohtmlclip1/01/clip_image013.gif&quot; v:shapes=&quot;_x0000_s1034&quot; width=&quot;353&quot; /&gt;&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;br clear=&quot;ALL&quot; /&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt; text-transform: uppercase;&quot;&gt;Control TC1 t&lt;/span&gt;&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;ype tableview using screen
200.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Module assign.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Sflight – carrid = itab – carrid.&lt;span style=&quot;text-transform: uppercase;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in;&quot;&gt;
Sflight
- connid= itab -&amp;nbsp; connid.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in;&quot;&gt;
Sflight
- fldate= itab – fldate.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in;&quot;&gt;
Endmodule.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
The transfer
of the data from program to table control takes place in steps and these steps
are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;With LOOP AT statement the first row is picked
up and placed in the header of the internal table. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Whatever statements you have in between
LOOP-ENDLOOP are executed.&amp;nbsp; In this case,
you have Module statement. In Module statement, value of internal table is
assigned to table control field.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;The row in internal table is transferred to the
first line of the table control as stated in the &lt;st1:place w:st=&quot;on&quot;&gt;LOOP&lt;/st1:place&gt;
AT statement.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;The system encounters the ENDLOOP statement and
Control is passed to the next line of the internal table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;In the same way, all the records of the internal
table are passed to the table control.&lt;/div&gt;
&lt;h2&gt;
STEP LOOPS&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Step Loops are
type of screen table as already mentioned. Step loops are repeated blocks of
field in a screen. Each block contains one or more fields and these blocks are
repeated. Step loops aren’t like actual table. You can scroll vertically but
not horizontally. Three steps are associated with creation of step loops:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Creation of step loops on screen, which includes
declaring fields on the screen and then defining the step, loops for these
fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Passing data to the step loop is exactly similar
to the passing of data to table controls.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;In step loop, you don’t need to define the step
loop as such in the module pool program but the cursor needs to be defined in
the program.&lt;/div&gt;
&lt;h1&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/h1&gt;
&lt;h1&gt;
Types of Step Loops&lt;/h1&gt;
&lt;h1&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Static – Static Step Loop (SSL) have fixed size
that cannot be changed during the runtime. If user resizes the window, the size
of the static step loop is not changed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt; margin-left: 0.5in; text-indent: -0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;Dynamic – Dynamic Step Loop (DSL) is variable in
size. When the user resizes the window, the system increases or decreases the
number of the step loop blocks.&amp;nbsp; &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
You can have
only one dynamic step loop and can have as many static loops in your&amp;nbsp;&amp;nbsp;&amp;nbsp; transaction.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Programming
with the Static and dynamic step loop is exactly same.&amp;nbsp; For the system or for the user it doesn’t
make any difference whether it is static or dynamic step loop.&amp;nbsp; Only attribute, which you fix during
designing of the step loop, is type attribute for step loop F for fixed i.e
static and V for variable i.e. dynamic.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Writing code
for Step Loop in the flow logic. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PBO.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Loop
at itab cursor cl.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-indent: .5in;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Module set.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-indent: .5in;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Endloop.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAI.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Loop
at itab.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Endloop.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;* Empty
loop is must for both table control and step loop&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
LOOP AT statement for step loops and Table controls is similar. &lt;st1:place w:st=&quot;on&quot;&gt;Loop&lt;/st1:place&gt; At statement transfers the data to screen table. You
need to have the Module to assign the values for the screen table.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
In module pool program you need
to define the cursor.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Date:&amp;nbsp;&amp;nbsp; CL TYPE&amp;nbsp;&amp;nbsp;
i.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;* Cursor
parameter tells which line of step loop display should start.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
“Module Set” in module pool
program assigns the values to step loop fields, which is similar to table controls.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;color: yellow;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Branching to List Processing &lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;
&lt;/div&gt;
&lt;h1&gt;
Switching To List Mode &lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You can display a list within a transaction.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You can produce a list from
module pool program by using the command &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Leave to List-Processing.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
This statement switches the
system from dialog mode to list mode. And from this point onwards until you
return to dialog mode, you can use all the normal report statement like write,
select or any other event.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Returning back from LIST mode&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You can return back to dialog
mode by clicking the BACK button.&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You can have your GUI status and write code for the same. You can
include the command LEAVE LIST-PROCESSING. When the system reaches this
command, it leaves the list mode and returns to the dialog mode.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Help &amp;amp; Value Request&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText&quot;&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;In
any transaction, When the user presses F1 or ? on a field, System provides the
help&amp;nbsp; facility for that particular field.
In dialog program, when F1 is pressed, help provided by R3 system is sourced
from data element documentation. If this documentation is not present for that
particular field or if user needs to display additional information for that
particular field, then user defined help can be provided through PROCESS ON
HELP REQUEST.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
In ABVP/4 help can be provided to
the user by:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Data element documentation: The
F1 help can be enhanced, by adding an additional text for the data element in
ABAP/4 dictionary.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
It can be done with the help of
following steps:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Place cursor on the screen field,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
GOTO &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt; DOCUMENTATION &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt;
DATA ELEMENT DOCUMENT&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You can now extend the existing
help.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
USING THE PROCESS ON
HELP-REQUEST.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
If you don’t have this event in a
program, then the documentation of the field in the ABAP/4 dictionary is taken
into consideration. If this event exits in the program then it is executed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Process on HELP-REQUEST event&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
This event is triggered when user
presses F1 on a screen field. You need to handle this event in flow-logic by
specifying the fields and attaching the module to it.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Syntax&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
PROCESS ON HELP –REQUEST.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
FIELD SFLIGHT-CARRID MODULE
HELP-FOR-CARRID.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
In module pool program&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
MODULE HELP.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Write&amp;nbsp;&amp;nbsp; : `This is field is from sflight table’&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Write&amp;nbsp;&amp;nbsp; : /&amp;nbsp;
‘It is of four Character’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
ENDMODULE.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When the user presses F1 on this
particular field, then this message will be displayed on the screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Value Request&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Whenever the
user presses F4 on the screen field list of possible values, particular fields
are displayed. If the standard value-help is inadequate or if you want to
display additional fields or with different combination of fields, developer
can program this in PROCESS ON VALUE-REQUEST event in the flow-logic and
subsequent module in the module pool program. When the user presses F4, list of
possible values are displayed either from matchcode objects or check table or
help view or domain. Each one of them is explained briefly.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Matchcode objects:&lt;/b&gt; Are
aggregated dictionary objects and detailed procedure to create these objects is
explained in the later part of the material.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Check Table:&amp;nbsp; If a check table is assigned to the table
field and if the user presses F4 for that particular field, then all the key
fields are displayed. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Domain Values: The values defined
in the domain are displayed. These values are set in domain when the domain is
created in the dictionary.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Help views:&amp;nbsp; In cases where the check table is not sufficient,
you can create a help view with this check table, which gives additional
information like explanatory text for the fields of the check table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
PROCESS ON VALUE_REQUEST.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Each time the user presses F4 on
the screen field, following algorithm is called internally.&lt;/div&gt;
&lt;div class=&quot;MsoToc1&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
When the user presses F4 on flight number, the following
screen is displayed.&lt;/div&gt;
&lt;h2&gt;
&lt;span style=&quot;font-weight: normal; mso-bidi-font-weight: bold;&quot;&gt;&amp;nbsp;&lt;/span&gt;Flow-logic code&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
PROCESS ON VALUE-REQUEST.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FIELD
SFLIGHT-CONNID MODULE HELP-FOR-CONNID.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Code for module pool program. &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
MODULE HELP-FOR-CONNIDINPUT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
DATA: BEGIN OF ITAB OCCURS 0,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CONNID(50),&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; END OF ITAB.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
REFRESH ITAB.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
ITAB-CONNIDI= POSSIBLE VALUES FOR
CONNECTION ID’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
APPEND ITAB.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
SELECT CONNID FROM SFLIGHT INTO
TABLE ITAB.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
CALL FUNCTION
‘POPUP_WITH_TABLE_DISPLAY’&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-indent: .5in;&quot;&gt;
EXPORTING&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-indent: .5in;&quot;&gt;
ENDPOS_COL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 45&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-indent: .5in;&quot;&gt;
ENDPOS_ROW&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 25&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-indent: .5in;&quot;&gt;
STARTPOS_COL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-indent: .5in;&quot;&gt;
STARTPOS_ROW&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-indent: .5in;&quot;&gt;
TITLETEXT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
‘TEXT’&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-indent: .5in;&quot;&gt;
IMPORTING&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-indent: .5in;&quot;&gt;
CHOISE&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Some Integer Variable&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-indent: .5in;&quot;&gt;
TABLES&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VALUETAB&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ITAB&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-indent: .5in;&quot;&gt;
EXCEPTIONS&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .5in; text-indent: .5in;&quot;&gt;
BREAK_OFF&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =1&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; text-indent: .5in;&quot;&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OTHERS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =2.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
ENDMODULE.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
“HELP-FOR-CONNID&amp;nbsp; INPUT&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Changing The Screen During
Runtime&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The attributes are assigned to the screen field when the screen is
designed in full screen editor.&amp;nbsp; Such
kind of assignment is static, which means that these attributes are fixed. But
many times the need to change the attributes of the screen arises. And this has
to be done during runtime.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Need To Change Screen&lt;span style=&quot;line-height: 16pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
There can be a requirement in the
transaction that, certain fields on the screen &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Appear only in certain
conditions.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Are in Change/display mode
according to user inputs&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Become mandatory subject to
specific inputs.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Changes its format depending upon
certain conditions.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;Modifying the screen&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
At the runtime, attributes for each screen field is stored in system
defined internal table, with header line, called as SCREEN TABLE. It contains
name of field and its attributes. This tab le can be modified during the runtime
i.e. through module pool program. Screen table has following fields:&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1 style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;Field Name &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Length&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Description&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 30&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Name of screen field&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
GROUP1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Field
belongs to field group1&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
GROUP2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Group
2&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
GROUP3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Group
3&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
GROUP4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Group
4&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
ACTIVE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Hide/Show&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
REQUIRED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Field
input is mandatory&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
INPUT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Enable/Disable&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
OUTPUT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Field
for display only&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
INTENSIFIED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Field
is highlighted.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
INVISIBLE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Field
is suppressed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
LENGTH&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Field
output length is reduced &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
DISPLAY 3D&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Field
is displayed with 3-D Frame&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
VALUE_HELP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Field is displayed with
Value help&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
E.g., SCREEN-ACTIVE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0&amp;nbsp;&amp;nbsp;
has the same effect as the following statements.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCREEN- INPUT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCREEN-OUTPUT&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCREEN-INVISIBLE = 1.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
The fields SCREEN-NAME and
SCREEN-GROUP 1 through SCREEN-GROUP4 tell you which field and / or field group
has the attributes.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You can assign up to 4 groups to
a field.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You need to program screen
modifications in module, which is processed during the event PROCESS BEFORE
OUTPUT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
`SCREEN’ is an internal table and, in order to change the field values,
LOOP statement has to be used so that the header-line can be populated with the
new values, changing the earlier values, the SCREEN table consisted for the
specific screen. Finally the changed record in the header-line is NOT APPENDED,
but is MODIFIED to the SCREEN table. That is, we first use `LOOP AT SCREEN’ and
then assign the values. And finally PRIOR TO ENDLOPP give `MODIFY SCREEN’.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
PROCESS BEFORE OUTPUT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&amp;nbsp;MODULE MODIFY_SCREEN OUTPUT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h2 align=&quot;left&quot;&gt;
&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;MODULE MODIFY_SCREEN.&lt;/span&gt;&lt;span style=&quot;font-weight: normal; mso-bidi-font-weight: bold;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h2 align=&quot;left&quot;&gt;
&lt;span style=&quot;font-weight: normal; mso-bidi-font-weight: bold;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&amp;nbsp; &lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314948&quot;&gt;&lt;/a&gt;&lt;st1:place w:st=&quot;on&quot;&gt;LOOP&lt;/st1:place&gt; AT SCREEN.&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; IF SCREEN-NAME =
‘SFLIGHT-CARRID’.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCREEN-INPUT =
1.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MODIFY SCREEN.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; ENDIF.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp; ENDLOOP.&lt;/div&gt;
&lt;h2 align=&quot;left&quot;&gt;
&lt;span style=&quot;font-weight: normal; mso-bidi-font-weight: bold;&quot;&gt;ENDMODULE.&lt;/span&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;span style=&quot;font-size: 12.0pt; mso-bidi-font-size: 10.0pt;&quot;&gt;Working with Matchcode
Objects&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoHeader&quot; style=&quot;line-height: 16.0pt; tab-stops: .5in;&quot;&gt;
A Matchcode is
an aggregated object and it gives list of possible values for the user. A
matchcode is a collection of search terms on which you retrieve a data from the
database table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoBodyText2&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
All matchcode are associated with either selection criteria or
parameters. When an input field has a little triangle in the right-hand corner,
it indicates that it has an associated matchcode. When you click on drop-down
arrow or press F4 button, it gives a list of all possible values. For example
Matnr field i.e. material number from MARA table, user might not know all the
material number, but they might know other details like material description,
type or any other details. You can create matchcode, which has all these search
terms i.e. you can create matchcode with description as search term or
matchcode with type as search term.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
R/3 system
includes many predefined matchcode but developers can create new matchcode as
is created in following case. Usually, system displays list of possible values
for all the primary keys with particular search term. Usually you create
matchcode in following cases:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When you use non-primary key of
input.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You need different search term
for the primary key.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Creating Matchcode object&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Entire Matchcode object is
created in two steps:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Defining of Matchcode object.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Defining one or more search ids
for the object.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Defining Matchcode object &lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
It includes all the tables and
fields, which make up the Matchcode, which are used for Matchcode Ids.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Steps for defining Matchcode
object are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
From dictionary, enter name (four
character).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Select Matchcode radiobutton and
click on CREATE.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Define attributes for the object
i.e. description.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Select primary table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Select the fields for the table
by clicking on the fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Activate the object.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
If at all you are selecting
secondary table then it is done after selecting primary table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
And steps are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Tables &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt; Choose secondary
table. A dialog box appears, which displays list of possible secondary tales.
Select the table by Choose&amp;nbsp; &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt;
copy.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
To activate the object,&amp;nbsp; Matchcode object&amp;nbsp; -&lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; activate&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1&gt;
Creating Matchcode ids.&lt;/h1&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Once the object is created, you
need to define search term for the object and steps are as follows:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Click on the Matchcode ID from
maintenance screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Enter attributes for the Matchcode&amp;nbsp; &lt;st1:state w:st=&quot;on&quot;&gt;Id.&lt;/st1:state&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Short text.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Update
type&amp;nbsp; - Default is 1 for logical
updating. It means that at the moment when you access the Matchcode object, the
table is created like view. Unlike logical updating, physical updates are:&amp;nbsp; A,S,P.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
System
Matchcode:&amp;nbsp; If you click this particular
field, it indicates a system matchcode, which is used by SAP software and
cannot be changed by the end user.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
Autho.checks:
If it is checked, the system performs authorization checks for this matchcode &lt;st1:state w:st=&quot;on&quot;&gt;Id.&lt;/st1:state&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Selecting secondary tables&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Position the cursor on the base
table of the ID.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Edit &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt; Choose secondary
tables &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
A dialog box appears listing the
tables linked to the table by foreign keys&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Select table.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Save.&lt;/div&gt;
&lt;h3 align=&quot;left&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;;&quot;&gt;Selecting fields for Matchcode Id&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Select fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Choose fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Once all the fields are selected,
click on copy fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Fields are transferred to the
matchcode &lt;st1:state w:st=&quot;on&quot;&gt;Id.&lt;/st1:state&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Activation of Id&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
A corresponding database view is
created in the database during activation for the Ids of update type I. During
activation, a check is made to see whether the corresponding index to support
view selection exists in the database. If it doesn’t, a warning is displayed.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Testing the Matchcode Id.&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
To test the matchcode Id:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Maintain matchcode object.Utilities &lt;span style=&quot;font-family: Wingdings;&quot;&gt;à&lt;/span&gt; display matchcode
data.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16pt;&quot;&gt;
&lt;span style=&quot;color: #274e13;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Using Matchcode&lt;span style=&quot;line-height: 16pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When the user do not know which
matchcodes are available for a field, user can find the matchcode by:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Positioning the cursor on a field
and clicking on drop arrow or pressing the F4 key.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
A dialog box appears with a list
of available matchcode &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
User can select another matchcode
by clicking on the NEW selection button.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Double click on a matchcode to
use it. If you want to use this as default matchcode, click on standard button.
If user does this once, the selected matchcode is proposed automatically the
next time.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You can enter the search term and
press ENTER. If search term is not specified, the system displays all the
records for the specific matchcode.&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;Lock Objects&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
In a system where many users can
access the same data, it becomes necessary to control the access to the data.
In R/3 system this access control is built-in on database tables. Developers
can also lock objects over table records.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
To lock an object you need to
call standard functions, which are automatically generated while defining the
lock object in ABAP/4 dictionary. This locking system is independent of the
locking mechanism used by the R/3 system. This mechanism also defines LUW i.e.
Logical Unit of Work. Whenever an object is locked, either by in built locking
mechanism or by function modules, it creates corresponding entry in global
system table i.e. table is locked. The system automatically releases the lock
at the end of transaction. The LUW starts when a lock entry is created in the
system table and ends when the lock is released.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;span style=&quot;color: #274e13;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Creating Lock Objects&lt;span style=&quot;line-height: 16pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Lock object is an aggregated
dictionary object and can be defined by using the following steps:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;ul style=&quot;margin-top: 0in;&quot; type=&quot;circle&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l1 level1 lfo3; tab-stops: list .5in;&quot;&gt;From initial data dictionary screen, enter the name
     for the object, Click Lock object radiobutton and then click on Create.
     The system displays a dialog box for Maintain Lock Objects screen&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l1 level1 lfo3; tab-stops: list .5in;&quot;&gt;Enter short text as usual and the name for primary
     table.&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l1 level1 lfo3; tab-stops: list .5in;&quot;&gt;Save&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; mso-list: l1 level1 lfo3; tab-stops: list .5in;&quot;&gt;Select Tables option&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
From this screen you can:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Select secondary tables, if any,
linked by foreign key relationship.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Fields for the lock objects. This
option allows you to select fields for objects (R/3&amp;nbsp; system allows locking up to record level).
Lock object argument are not selected by user but are imposed by the system and
includes all the primary keys for the table.&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Types of locks&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
You can lock the table or record
by using following types of locking:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Exclusive (E) the locked data can
only be displayed or modified by single user i.e the owner of the object.
Access to other users is denied.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Shared (S) several users can
access the same record simultaneously, but only in display mode and except the
first one, who has asked for the data in update mode.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Exclusive not cumulating (X) it
is similar to exclusive lock. It allows only a single user access. E can be
called several times from the same transaction. In contrast, a lock type X can
be called only once during the transaction. Any other call for this lock is
rejected.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;a href=&quot;http://www.blogger.com/blogger.g?blogID=1469881311491515692&quot; name=&quot;_Toc70314955&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;span style=&quot;color: #274e13;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Activation of Lock Object&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When you activate the lock
object, the functions are automatically generated. And these are ENQUEUE-EZN
and DEQUEUE-EZN. EZN is name of the lock object.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
While ENQUEUE is used in program
to set the code over the selected data depending upon the lock object
arguments. DEQUEUE is used to release the lock.&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Garamond&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12.0pt; mso-ansi-language: EN-US; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-language: EN-US;&quot;&gt;&lt;br clear=&quot;all&quot; style=&quot;page-break-before: always;&quot; /&gt;
&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
EXERCISES&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
1.&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Create&amp;nbsp; a
matchcode for MARA-MATNR with one matchcode ID. The fields in the ID should be
MARA_MATNR., MARD-WERKS. MARD-LGORT. MAKT-MAKTX.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l0 level1 lfo2; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
2.&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Create a GUI status of type list with the
following features and attach it to a report. (Create a simple report with
Write statement).&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Use the
statement SUBMIT REPORT AND RETURN TO CALL A REPORT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Menu&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
REPORTS&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYSTEM&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HELP&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Materials&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Vendors&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Exit&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Application
tool bar: 3 push button&amp;nbsp; - Material,
vendors, exit.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
When material
push button or menu option is chosen to display a list a materials with the
following fields:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
MARA-MATNR,
MARD-WERKS,MARD-LGORT,MAKT-SPRAS.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
When vendor
pushbutton or menu option is chosen, display a list of vendors with the
following fields.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
LFA1-LIFNR,
LFA1-NAME1, LFA1-ORTO1.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Exit to quit
the program.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l0 level1 lfo2; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
3.&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Create a transaction with three screens&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Screen 1:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Radiobutton&amp;nbsp; :&amp;nbsp;&amp;nbsp; 2
R1,R2.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
Pushbutton&amp;nbsp;&amp;nbsp;&amp;nbsp; :2-Next, Exit,&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When NEXT button is pressed,
display screen 2 or screen 3 on the radio button selected.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
i.e., if R1 is selected display
screen 2 or if R2 is selected display screen3.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Screen 2:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Entry fields&amp;nbsp;&amp;nbsp; : SPFLI-CARRID, SPFLI-CONNID,SPFLI-CITYFROM,
SPFLI-CITYTO.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Pushbutton&amp;nbsp;&amp;nbsp; : First screen, Exit.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Screen&amp;nbsp; 3.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Entry fields&amp;nbsp;&amp;nbsp;&amp;nbsp; : SFLIGHT-CARRID.&amp;nbsp;&amp;nbsp;
SFLIGHT-CONNID.SFLIGHT-FLDATE.SFLIGHT-SEATSMAX,SFLIGHT-SEATSOCC.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Pushbuttons: First screen, Exit.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
`Firstscreen’ pushbutton is to
display screen 1 and exit is to quit the transaction.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
***********USE
SELECT-SINGLE*************&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l0 level1 lfo2; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
4.&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Create a transaction with on screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Screen one&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Entry fields:
MARD-MANTNR,MARD-WERKS,MARD-LGORT&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Pushbuttons: Firstrecord Next
Record, Previous record, Last Record, Exit.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Select the data from MARD into an
internal table and whenever a button is pressed display the corresponding
record (i.e. First, Next, Previous, or Last) using the internal table index.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Exit to quit the transaction.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in; mso-list: l0 level1 lfo2; tab-stops: list .25in; text-indent: -.25in;&quot;&gt;
5.&lt;span style=&quot;font-size: 7pt; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;Copy above transaction and enhance it with these
features. Place another pushbutton ‘List’. When this button is pressed, Display
a list with the following fields. MARD-MATNR,MARD-WERKS,MARD-LGORT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
**********Use
LEAVE –TO-LIST-PROCESSING***********&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt; margin-left: .25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
6.&amp;nbsp;&amp;nbsp;&amp;nbsp; Create a transaction with two normal
screens and two subscreens.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Screen1&amp;nbsp;&amp;nbsp; : &lt;st1:place w:st=&quot;on&quot;&gt;Normal&lt;/st1:place&gt;
screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Entry fields&amp;nbsp; : MARA-MATNR&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Radiobuttons: Plant, Description&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Push-button :Display, Exit.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Screen2: &lt;st1:place w:st=&quot;on&quot;&gt;Normal&lt;/st1:place&gt;
screen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Display fields: MARA-MATNR.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Pushbuttons:Back,Exit.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Screen3: Subscreen.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Display fields:
MARD-WERKS,MARD-LGORT.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Screen4: Subscreen&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
Display
fields:MAKT-SPRAS,MAKT-MAKTX.&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
When the display pushbutton is
clicked, display Screen2 with proper subscreen attached to it based on the
selection of radio button..&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 16.0pt;&quot;&gt;
i.e. Screen 3 -&amp;nbsp; if plant is selected and Screen 4 - if
description is selected.&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/6178121330640965654/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/transactions-general-introduction-to.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/6178121330640965654'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/6178121330640965654'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/09/transactions-general-introduction-to.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8515918989646549727.post-135974616863438061</id><published>2012-08-31T05:21:00.007-07:00</published><updated>2012-09-22T22:46:36.960-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h3 class=&quot;post-title entry-title&quot; itemprop=&quot;name&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; color: #444444; font-family: Verdana, Geneva, sans-serif; font-size: 20px; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; margin: 0px; orphans: 2; position: relative; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;&quot;&gt;
&lt;br class=&quot;Apple-interchange-newline&quot; /&gt;SDN Articles - BW Administration&lt;/h3&gt;
&lt;div class=&quot;post-body entry-content&quot; id=&quot;post-body-6246233322252245080&quot; itemprop=&quot;articleBody&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; color: black; font-family: &#39;Times New Roman&#39;; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 1.4; orphans: 2; position: relative; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; width: 556px; word-spacing: 0px;&quot;&gt;
&lt;div dir=&quot;ltr&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;i&gt;&lt;b&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;List Of Articles:&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;The Documents&amp;nbsp;in this section answers most of the questions related to&amp;nbsp;Administration&amp;nbsp;in SAP BW/BI.&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;i&gt;&lt;b&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;i) Aggregates:&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;The below&amp;nbsp;documents&amp;nbsp;will give overview about when to create aggregates and how to create also how the performance improvement will happen due to aggregates.&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/908d2964-0a62-2e10-7baa-db86115cdbd9?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Illustrated Step-By-Step Guide to Performance Optimization using Aggregates in SAP BI&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/70d283f6-68ac-2d10-2391-f209590bcf1d?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Backend Performance Improvement Measures in BI&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;i&gt;&lt;b&gt;ii) Authorizations:&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;i&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
This section tells about how the Analysis Authorizations works and how to create them. How the analysis authorizations works at report level.&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/b0b3fb3f-a21c-2e10-3a9c-efc3e59996a8?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Analysis Authorization Using Variable Exits&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/c0b7acf2-6121-2e10-5591-eaec182d9315&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;BI 7.0 Reporting Authorization based on Characteristic Value Level&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/9000928e-dd3d-2e10-9ca1-a00f249305b7?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;SAP BI Analysis Authorization (Customer Exit Variables)&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;i&gt;&lt;b&gt;iii) Attribute Change Run (ACR):&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;i&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;What is Attribute Change Run,&amp;nbsp;Advantages of it.&amp;nbsp;Back end operations of Attribute Change Run. How to run the Attribute Change Run.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/f029ac0b-74d7-2d10-bca8-d97a4fb15b4c?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Attribute Change Run (ACR) Performance Optimization and Forceful Completion&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/c0da0368-7669-2d10-74aa-82f15ce45e09&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;SAP BW Hierarchy Attribute Change run Management&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;i&gt;&lt;b&gt;iv) DSO Administration:&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;i&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
This section explains about the different parameters in DSO Administration. How to check the DSO Activation job log. This also gives information about step by step procedure of selective deletion in DSO.&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/d02812d8-1727-2e10-98bb-b8e91f5400dc?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Database Statistics During ODS Activation&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/f0d82054-f705-2e10-75b8-fc0f428bc16e?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;DSO Job Log and Activation Parameters&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/d032758c-a61c-2e10-eb9f-afb1460f920d?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Step By Step: the Process of Selective Deletion from a DSO&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;i&gt;&lt;b&gt;v) Info Cube Administration:&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;i&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;This section provides information about&amp;nbsp;different&amp;nbsp;operations we perform on info cube like&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
i) Compression ii) Roll Up and how to do LISTCUBE. This also explains about indexes in Info Cube.&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/c035d300-b477-2d10-0c92-f858f7f1b575?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;All about Compression&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/1020daaa-9c48-2e10-7285-dbf4d761c69c?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Downloading InfoProvider Metadata to Excel&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/4001f4b1-189f-2e10-bcb3-87bb0fb428ba&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Dynamic Selective Deletion from Infocubes&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/c09b7019-4885-2e10-e2b8-fe1fef0643db?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;SAP BI – Compression Status for Infocubes&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/70e092a3-9d8a-2d10-6ea5-8846989ad405?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;SAP BW – Infoprovider Data Display (LISTCUBE) - Improvised&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/e0b28d18-f383-2c10-a780-a52349715b54&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Understanding the Bit-Map&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;i&gt;&lt;b&gt;vi) Miscellaneous:&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;i&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;This section gives overview about the daily&amp;nbsp;activities&amp;nbsp;we do in normal BI systems like&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;a) Lock Entries&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;b)&amp;nbsp;Decommission&amp;nbsp;of specific objects and how to find inactive objects in BI system.&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;c) How to perform where used list on different objects.&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;d) PSA and Change log deletions.&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;e) how to manage jobs in SAP BI.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/b0869e29-1405-2e10-27be-db1dad7703c5?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;About Lock Entries and Lock Table Overflow&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/903f564e-ebe5-2d10-8e92-b1a2e755036c?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Automated Approach to Find the Where Used List of an Event in SAP BW&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/404544e7-83c9-2e10-7b80-a24d5099ce3f&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;SAP BI Performance Tuning Activities&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/40bd8cef-4987-2d10-2c8a-98dd27cddbc9?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Decommissioning of BW Objects&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/106bacb2-fd3f-2e10-5fae-f00c7355ecff?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;How to Automate a File Movement to and from SAP BW using a Program&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/903afeef-1594-2e10-aea5-b5095e4f250b?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;How to Find the Where Used List of Query Restrictions&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/602074dd-bcc9-2e10-4eb5-8107050066bc?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;How to Fix Inconsistencies in SAP BEX Tables&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/e05f3b3c-0457-2e10-e592-982752ad06e2?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;How to Repair Master/Transaction Data Load Error Due to tRFC Stuck&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/00b6b739-47a6-2e10-9abf-bdac1124dde1?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;How to Update the Currencies and Unit of Measurements from ECC Source System to BI System by Automatically and Manually&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/00dbbfa9-dba2-2d10-bc80-9d6489e4b1c7?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Inactive Objects Checker in BI 7&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/0021aecc-5201-2e10-dcb5-9cbffdcbe62d&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Managing Jobs&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/f048c590-31a4-2c10-8599-bd01fabb93d4?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Performance Optimization of Long Running Queries Using OLAP Cache&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/1058b68f-96c4-2d10-fbb1-de8757ca6a58?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;SAP BW - PSA/Change Log Deletion Governance&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/a04dd32f-2638-2e10-5596-c5f97c400ac7?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Step by Step Approach to Find the List of Inactive Objects in SAP BW&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/e0c41c52-2638-2e10-0b89-ffa4e2f10ac0?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Step by Step Approach to Handle Large Files in SAP BW&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/e082b5fb-7ac9-2e10-f4b2-a9f0118a6531?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Step by Step Procedure to Copy BW Workbook from One user&#39;s Favorites to Other&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/204a99c7-b3c5-2e10-f18f-e3ddb6ec6ad3?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Validity Table in SAP BW/BI&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;i&gt;&lt;b&gt;vii) Process Chains:&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;i&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
This is the most important part in SAP BI Support Projects. This gives information about the below things&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
a) Process chains creation.&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;span style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;b) Different Process types&amp;nbsp;available.&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;span style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;c) Alerts creation in Process chain&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;span style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;d) Decision steps in Process chain&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;span style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;e) Process chains monitoring and&amp;nbsp;frequent&amp;nbsp;issues we face and lot more.&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/609faa7e-b453-2e10-9b9f-b1dec521dca1?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;APD Inclusion in Process Chains - A Step-By-Step Guide&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/f03a64de-1427-2e10-3a9c-f88ab4829623?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Automatic Mail Distribution for Failed Process Chain&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/304c3146-8eb9-2d10-d787-b6dc2d368cb2&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Automatic Notification for Process Chain Status&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/002660ff-b248-2e10-3eb7-9e3694189acb?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Creating ABAP Process type to use in Multiple Process chains that Reports Success (or) Failure&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/706d128f-f383-2c10-98b1-e71c88273148?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Creating Email Alerts for Process Chains Applies&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/509e00a4-6038-2e10-a189-c0b0d417098f?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Different types of Alerts for Process Chains&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/e01933ff-40e3-2c10-90b7-d45972a934c6?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Enhanced Decision Process Type for BW Process Chains&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/90ebea3b-387e-2e10-d39c-a0bd5661f11c?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Errors while Sending Packages from OLTP to BI (One of Error at the Time of Data Loads through Process Chains)&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/a01cc44a-5aac-2d10-3eaa-a3bbf645d25c?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Event Based Extract Generation using a Process Chain in SAP BW&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/c03d110c-15ca-2d10-e485-99c2728b35a8?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Executing APD in Process Chain&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/f030328f-5496-2d10-b785-c3260ae07204?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;How to Trigger Process Chain from Enterprise Portal&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/70d6689f-25bc-2e10-8c81-89604197ce20?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Process Chain Log Deletion&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/80ffbc22-8c91-2d10-ed84-e246b29e7be5?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Process Chain Monitoring: RSPCM Overview and Steps to add Notification Mail&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/00a1f389-ec7c-2c10-04bc-9d81b3084171?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Process Chain Tips&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/90b43fe7-87c9-2e10-a3ab-ccafa85909c5?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Raising an Event Through a Process Chain to Trigger a Dependent Chain on a Specific Day&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/0014433b-1435-2e10-7dbd-dc3e874dd8f5?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Step by Step Approach to Delete and Recreate Secondary Indices in Process Chains&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/20fcaf52-ec7c-2c10-f5b0-9f7e3739d1fe?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Step by Step Guide to Creating a Process Type to Close an Open Request in a Cube in BI 7.0&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/c0d1a942-1aad-2d10-c093-fb08ec1fe8b8?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Steps to Check in Process Chain if Flat File is Available/ Arrived in BW&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/0002ef92-6b7d-2e10-01bd-9f4cdff82073?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Trigger the Process Chain by ABAP Program and how to Schedule ABAP Program as Background Job&amp;nbsp;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/80e36f3e-0e7f-2e10-b7b7-a08d89046b03?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Triggering the Process Chains at Last Day of Every Month using Events&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/705aefe8-8a27-2d10-7b8e-88017ee9158c?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Using Decision Step in Process Chain&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/603a9558-0af1-2b10-86a3-c685c60071bc?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Using Selective Deletion in Process Chains&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;i&gt;&lt;b&gt;viii) Transports:&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
This sections provides knowledge about the transport management in SAP BI. Which includes&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
a) Transport Creation and adding objects to it.&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
b) Moving transports from one system to other.&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
c) Regular issues we face.&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
d) Best Practices.&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/205caa59-a948-2e10-b397-9ccafd3d4f5b?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Analyzing and Fix the Failed Transports in SAP BW&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/9017aca4-ecc3-2e10-2492-a9b2c765cb8d?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Collecting Multiple Objects in a Transport through Transport Connection – A Simple way&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/8042e34b-3f9b-2e10-069b-cfb94a0a486e?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Detailed View on Transports and the Common Issues in BW 7.0&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/501886f4-2e38-2e10-52af-ec5159614675?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Display Objects in Transport&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/10858449-1f59-2e10-0095-dde76e16d330?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;How to Handle Inactive Transformations-Transport of Deletions&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/c082c9e4-06ad-2d10-1688-c74eb6130d9f&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;How to Integrate the Transport Objects between Non-Connected SAP Systems&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/00f47333-a50e-2e10-a7bf-d0ab463da382?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;SAP BW Change Request Management&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/908641ed-c7c4-2d10-61be-929276f9e32c?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Transports in SAP BW: Issues and Resolution&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/40e196fb-8eda-2d10-c6b1-dc2e52009000?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;SAP BW Errors and Fixes for Transports&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/d04c8c3c-40bf-2e10-139a-f7c5cd6e617b?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;SAP Transport Procedures and Best Practices&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/8049a889-81d7-2d10-1cac-ac9912bcd7ca&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Transporting SAP BW Objects&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Verdana, sans-serif; font-size: 12px; line-height: 16px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;a href=&quot;http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/908641ed-c7c4-2d10-61be-929276f9e32c?QuickLink=index&amp;amp;overridelayout=true&quot; style=&quot;color: #4495ff; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;Transports in SAP BW: Issues and Resolution&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://stepbystepbi.blogspot.com/feeds/135974616863438061/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stepbystepbi.blogspot.com/2012/08/sdn-articles-bw-administration-list-of.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/135974616863438061'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8515918989646549727/posts/default/135974616863438061'/><link rel='alternate' type='text/html' href='http://stepbystepbi.blogspot.com/2012/08/sdn-articles-bw-administration-list-of.html' title=''/><author><name>satish</name><uri>http://www.blogger.com/profile/12488891224004709964</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>