<?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: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-7340973092627485257</id><updated>2011-07-07T18:41:21.773-07:00</updated><category term='ASAP'/><category term='Reports'/><category term='FAQs'/><category term='Data Dictionary'/><category term='Cross Applications'/><category term='Enhancement'/><category term='Project'/><category term='ALE/Idoc'/><category term='Error Handling'/><category term='Data Migration'/><category term='SAP architecture'/><category term='Basis'/><category term='T-codes'/><category term='Real-Time Stuffs'/><title type='text'>SAP Champs..</title><subtitle type='html'>Place for all SAP stuffs..</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>70</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-8634243036795257573</id><published>2009-11-17T20:52:00.000-08:00</published><updated>2009-11-17T20:56:40.858-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Basis'/><title type='text'>BASIS DAILY ACTIVITIES</title><content type='html'>SAP DAILY ACTIVITIES &lt;br /&gt;&lt;br /&gt;1] Check that all the application servers are up: &lt;br /&gt; sm51           SAP Servers &lt;br /&gt; sm04/al08    Logon Users &lt;br /&gt;&lt;br /&gt;2] Check that daily backup are executed without errors &lt;br /&gt; db12 Backup logs: overview &lt;br /&gt;&lt;br /&gt;3] SAP standard background jobs are running successfully. Review for cancelled and critical jobs. &lt;br /&gt; sm37 Background jobs--- Check for successful completion  of jobs. Enter * in user-id field and verify that all critical successful jobs and review any cancelled jobs. &lt;br /&gt;&lt;br /&gt;4] Operating system Monitoring &lt;br /&gt; st06 &lt;br /&gt;&lt;br /&gt;5] Extents monitoring &lt;br /&gt; db02 Database monitoring--Check for max-extents reached &lt;br /&gt;&lt;br /&gt;6] Check work-processes(started from sm51) &lt;br /&gt; sm50 Process overview-- All work processes with a running  or waiting status. &lt;br /&gt;&lt;br /&gt;7] Check system log &lt;br /&gt; sm21 System log-- Set date and time to before the last log  review. Check for errors ,warning, security, message-bends,database events. &lt;br /&gt;&lt;br /&gt;8] Review workload statistics &lt;br /&gt; st03 Workload analysis of &lt;sid&gt; &lt;br /&gt; sto2 tune summary instance &lt;br /&gt;&lt;br /&gt;9] Look for any failed updates &lt;br /&gt; sm13 update records &lt;br /&gt;&lt;br /&gt;10] check for old locks &lt;br /&gt; sm12 lock entry list &lt;br /&gt;&lt;br /&gt;11] Check for spool problems &lt;br /&gt; sp01 spool request screen-- check for spool that are in  request for over an hour. &lt;br /&gt;&lt;br /&gt;12] Review and resolve dumps &lt;br /&gt; st22 ABAP Dump analysis &lt;br /&gt;&lt;br /&gt;13] Checking .trc file in SAP trace directory for block corruption on daily basis. &lt;br /&gt; C:\ORacle\sid\saptrace &lt;br /&gt;&lt;br /&gt;14] Archive backup &lt;br /&gt; brarchive -f force -cds -c &lt;br /&gt; Insert the archive backup tape &lt;br /&gt;&lt;br /&gt;15] Review NT system logs for problem &lt;br /&gt; -&gt; NT system log- look 4 errors or failures &lt;br /&gt; -&gt; NT security log- failed logon 2 sap servers &lt;br /&gt; -&gt; NT Application log -look 4 errors or failures&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-8634243036795257573?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/8634243036795257573/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=8634243036795257573' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8634243036795257573'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8634243036795257573'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/11/basis-daily-activities.html' title='BASIS DAILY ACTIVITIES'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-2537248114887418240</id><published>2009-09-13T11:30:00.000-07:00</published><updated>2009-09-13T11:35:29.976-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Basis'/><title type='text'>What is BASIS?</title><content type='html'>BASIS- A set of middleware programs and tools that provide the underlying base that enable applications to be interoperable across operating systems. SAP Basis includes a RDBMS, GUI, and client server architecture. Beyond the interface aspect of Basis, it also includes such components as a data dictionary as well as user and system administration.&lt;br /&gt;&lt;br /&gt;Basis is a business application software integrated solution. Simply, Basis is the administration of the SAP system.&lt;br /&gt;&lt;br /&gt;It's a piece of middleware which links the application with the database and the operating system. Basis is most commonly associated with the GUI interface to the SAP, and the Basis administrator is an SAP, professional who is responsible for configuring the SAP environment, including the GUI screens and SAP application servers.&lt;br /&gt;&lt;br /&gt;R/3 Basis includes client/server architecture and configuration, a relational database management system (RDBMS), and a graphical user interface (GUI). In addition to the interface between system elements, Basis components include a development environment for R/3 applications, and a data dictionary, as well as user and system administration and monitoring tools.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-2537248114887418240?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/2537248114887418240/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=2537248114887418240' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/2537248114887418240'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/2537248114887418240'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/09/what-is-basis.html' title='What is BASIS?'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-8481392973863406012</id><published>2009-09-11T10:15:00.000-07:00</published><updated>2009-09-11T10:21:15.775-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Basis'/><title type='text'>Client Copy</title><content type='html'>&lt;strong&gt;Client Copy &lt;/strong&gt;  &lt;br /&gt;Purpose&lt;br /&gt;You can use the client copy to create, for example the following clients:&lt;br /&gt;&lt;br /&gt;·        new clients from the SAP reference client 000 during initial installation of an SAP system.&lt;br /&gt;&lt;br /&gt;·        training clients&lt;br /&gt;&lt;br /&gt;·        demo clients&lt;br /&gt;&lt;br /&gt;·        test clients&lt;br /&gt;&lt;br /&gt;·        production clients&lt;br /&gt;&lt;br /&gt;The source client can be in the same or another system.&lt;br /&gt;&lt;br /&gt;You can copy selected parts of an existing client into another client, e.g. the user master data with the copy profile SAP_USER, with the client copy tools.&lt;br /&gt;&lt;br /&gt;You are strongly advised to use the profile SAP_CUST to copy client 000 to create your first client because the consistency of the application data in the SAP delivery client is not guaranteed.&lt;br /&gt;&lt;br /&gt;You are no longer required to transport clients before you can copy them between systems. You can make a remote copy instead. SAP will continue to support the transport function.&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Preparation&lt;br /&gt;Target client&lt;br /&gt;You can create a new client in the client maintenance (transaction SCC4). You need a user with sufficient authorization in the target client, for the client copy. &lt;br /&gt;&lt;br /&gt;The newly-created client contains the initial benutzer SAP* with the password PASS, which you can use to copy a client.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The user SAP* is inactive by default in a new client. To activate the user SAP*, set the profile parameter login/no_automatic_user_sapstar to 0, and restart the application server.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;You do not need to delete an existing client before the copy.&lt;br /&gt;&lt;br /&gt;Resource requirements&lt;br /&gt;Copying clients requires a large amount of system resources. To avoid premature termination due to bottlenecks, you should ensure that enough resources are available by considering the following points:&lt;br /&gt;&lt;br /&gt;·        Database storage space&lt;br /&gt;&lt;br /&gt;Perform a test run before copying a client. The total of copied and deleted data in kB is at the end of the log file.&lt;br /&gt;&lt;br /&gt;For ORACLE, INFORMIX, ADABAS and DB2/CS databases, you can check the test run log to see whether there is sufficient database space available.&lt;br /&gt;&lt;br /&gt;Storage requirements can only be estimated, because space already allocated, but not yet used, is not taken into account. A client without application data needs approximately 500 MB in the database. In most databases, space made free by deleting data is only available after a reorganization.&lt;br /&gt;&lt;br /&gt;For pool tables, the estimate is very imprecise, because their extent size is very large. You must assume that a new extent is required for each pool table, which must be added to the estimate.&lt;br /&gt;&lt;br /&gt;·        Runtime&lt;br /&gt;&lt;br /&gt;Copying a client can take several hours or even days. Users or background processes in clients other than the source or target clients, can make the time longer. For example, locks in a third client in the same system can obstruct the processing of individual objects. You can technically work in the system while client copy is running, but you are strongly advised not to do so, or only in exceptional cases.&lt;br /&gt;&lt;br /&gt;You may have to increase the standard timeout value for these processes if you are working in the foreground with slow databases, large clients or clients with a lot of users:&lt;br /&gt;&lt;br /&gt;§         ...&lt;br /&gt;&lt;br /&gt;                                                  i.       To increase the default timeout value, call the transaction Maintain Profile Parameters (RZ 11).&lt;br /&gt;&lt;br /&gt;                                                ii.       Specify the profile parameter rdisp/max_wprun_time.&lt;br /&gt;&lt;br /&gt;                                               iii.       Choose Display.&lt;br /&gt;&lt;br /&gt;                                               iv.       Choose Change Value.&lt;br /&gt;&lt;br /&gt;                                                 v.       Specify a new value for the profile parameter.&lt;br /&gt;&lt;br /&gt;We recommend a value of 2000 seconds.&lt;br /&gt;&lt;br /&gt;If you use parallel processes, dialog processes are used even if the job is scheduled in the background. The standard timeout value is usually sufficient. If the database is loaded by additional processes, it can be advisable to increase the profile parameter.&lt;br /&gt;&lt;br /&gt;·        System load&lt;br /&gt;&lt;br /&gt;Copying or transporting a client can take a long time because large amounts of data are moved. One or more dialog processes are occupied for this time. The database interface is heavily loaded.&lt;br /&gt;&lt;br /&gt;Protecting clients against user logon&lt;br /&gt;·        You must ensure that no users logon to the system during the copy. For technical reasons, only the target client is locked. If, e.g. the lock is not reset after a copy is cancelled, you can reset it by calling the transaction SCC3 in any client.&lt;br /&gt;&lt;br /&gt;Users who are in the target client before the start of the copy cannot be locked automatically, so you must ensure that they leave the system.&lt;br /&gt;&lt;br /&gt;·        The source and target clients should both be additionally protected by a system message (SM02). Monitor compliance in both clients (e.g. in SM04)&lt;br /&gt;&lt;br /&gt;·        You should not work in the source client either during  the copy.&lt;br /&gt;&lt;br /&gt;Constraints&lt;br /&gt;·        You cannot access archived data in the target client if the target client number is not the same as the source client number.&lt;br /&gt;&lt;br /&gt;·        Change documents (tables CDHDR, PCDHDR, CDPOS and PCDPOS): User administration change documents and generic logs (application log tables BAL*) are not copied&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-8481392973863406012?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/8481392973863406012/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=8481392973863406012' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8481392973863406012'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8481392973863406012'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/09/client-copy.html' title='Client Copy'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-5511386263232168210</id><published>2009-07-29T20:29:00.000-07:00</published><updated>2009-07-29T21:33:39.432-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Real-Time Stuffs'/><title type='text'>Functional Specifications</title><content type='html'>&lt;span style="font-weight:bold;"&gt;&lt;/span&gt;Functional Specifications&lt;br /&gt;&lt;br /&gt;Functional specifications (functional specs), in the end, are the blueprint for how you want a particular report and transaction to look and work. It details what the report will do, how a user will interact with it, and what it will look like. By creating a blueprint of the report or transaction first, time and productivity are saved during the development stage because the programmers can program instead of also working out the logic of the user-experience. It will also enable you to manage the expectations of your clients or management, as they will know exactly what to expect.&lt;br /&gt;&lt;br /&gt;A key benefit of writing up a Functional Spec is in streamlining the development process. The developer working from the spec has, ideally, all of their questions answered about the report or transaction and can start building it. And since this is a spec that was approved by the client, they are building nothing less than what the client is expecting. There should be nothing left to guess or interpret when the spec is completed.&lt;br /&gt;&lt;br /&gt;Functional Specification&lt;br /&gt;A functional specification (or sometimes functional specifications) is a formal document used to describe in detail for software developers a product's intended capabilities, appearance, and interactions with users. The functional specification is a kind of guideline and continuing reference point as the developers write the programming code. (At least one major product development group used a "Write the manual first" approach. Before the product existed, they wrote the user's guide for a word processing system, then declared that the user's guide was the functional specification. The developers were challenged to create a product that matched what the user's guide described.) Typically, the functional specification for an application program with a series of interactive windows and dialogs with a user would show the visual appearance of the user interface and describe each of the possible user input actions and the program response actions. A functional specification may also contain formal descriptions of user tasks, dependencies on other products, and usability criteria. Many companies have a guide for developers that describes what topics any product's functional specification should contain.&lt;br /&gt;For a sense of where the functional specification fits into the development process, here are a typical series of steps in developing a software product:&lt;br /&gt;&lt;br /&gt;Requirements:&lt;br /&gt;This is a formal statement of what the product planners informed by their knowledge of the marketplace and specific input from existing or potential customers believe is needed for a new product or a new version of an existing product. Requirements are usually expressed in terms of narrative statements and in a relatively general way.&lt;br /&gt;&lt;br /&gt;Objectives: Objectives are written by product designers in response to the Requirements. They describe in a more specific way what the product will look like. Objectives may describe architectures, protocols, and standards to which the product will conform. Measurable objectives are those that set some criteria by which the end product can be judged. Measurability can be in terms of some index of customer satisfaction or in terms of capabilities and task times. Objectives must recognize time and resource constraints. The development schedule is often part or a corollary of the Objectives.&lt;br /&gt;Functional specification.: The functional specification (usually functional spec or just spec for short) is the formal response to the objectives. It describes all external user and programming interfaces that the product must support.&lt;br /&gt;Design change requests: Throughout the development process, as the need for change to the functional specification is recognized, a formal change is described in a design change request.&lt;br /&gt;&lt;br /&gt;Logic Specification:&lt;br /&gt;The structure of the programming (for example, major groups of code modules that support a similar function), individual code modules and their relationships, and the data parameters that they pass to each other may be described in a formal document called a logic specification. The logic specification describes internal interfaces and is for use only by the developers, testers, and, later, to some extent, the programmers that service the product and provide code fixes to the field.&lt;br /&gt;&lt;br /&gt;User documentation:&lt;br /&gt;In general, all of the preceding documents (except the logic specification) are used as source material for the technical manuals and online information (such as help pages) that are prepared for the product's users.&lt;br /&gt;Test plan: Most development groups have a formal test plan that describes test cases that will exercise the programming that is written. Testing is done at the module (or unit) level, at the component level, and at the system level in context with other products. This can be thought of as alpha testing. The plan may also allow for beta test. Some companies provide an early version of the product to a selected group of customers for testing in a "real world" situation.&lt;br /&gt;&lt;br /&gt;The Final Product:&lt;br /&gt;Ideally, the final product is a complete implementation of the functional specification and design change requests, some of which may result from formal testing and beta testing. The cycle is then repeated for the next version of the product, beginning with a new Requirements statement, which ideally uses feedback from customers about the current product to determine what customers need or want next.&lt;br /&gt;Most software makers adhere to a formal development process similar to the one described above. The hardware development process is similar but includes some additional considerations for the outsourcing of parts and verification of the manufacturing process itself.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-5511386263232168210?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/5511386263232168210/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=5511386263232168210' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/5511386263232168210'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/5511386263232168210'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/07/functional-specifications.html' title='Functional Specifications'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-2297583460380487887</id><published>2009-07-21T00:02:00.000-07:00</published><updated>2009-07-21T00:07:17.548-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Real-Time Stuffs'/><category scheme='http://www.blogger.com/atom/ns#' term='SAP architecture'/><title type='text'>Understanding SAP LANDSCAPE</title><content type='html'>SAP LANDSCAPE:&lt;br /&gt;&lt;br /&gt;Landscape is like a server system or like a layout of the servers or some may even call it the architecture of the servers viz. SAP is divided into three different lanscape DEV, QAS and PROD.&lt;br /&gt;&lt;br /&gt;DEV would have multiple clients for ex: 190- Sandbox, 100- Golden, 180- Unit Test.&lt;br /&gt;&lt;br /&gt;QAS may again have mutiple clients for ex: 300- Integration Test, 700 to 710 Training.&lt;br /&gt;&lt;br /&gt;PROD may have something like a 200 Production.&lt;br /&gt;&lt;br /&gt;These names and numbers are the implementer's discreet on how they want it or they have been using in their previous implementations or how is the client's business scenario.&lt;br /&gt;&lt;br /&gt;Now whatever you do in the Sandbox doesn't affect the other servers or clients. Whenever you think you are satisfied with your configuration and you think you can use it moving forward, you RE-DO it in the golden client (remember, this is a very neat and clean client and you cannot use it for rough usage).&lt;br /&gt;&lt;br /&gt;As you re-do everything that you had thought was important and usable, you get a transport request pop up upon saving everytime. You save it under a transport request and give your description to it. Thus the configuration is transported to the Unit Test client (180 in this example).&lt;br /&gt;&lt;br /&gt;You don't run any transaction or even use the SAP Easy Access screen on the 100 (golden) client. This is a configuration only client. Now upon a successful tranport by the Basis guy, you have all the configuration in the Testing client, just as it is in the Golden client. The configuration remains in sync between these two clients.&lt;br /&gt;&lt;br /&gt;But in the Testing client you can not even access SPRO (Display IMG) screen. It's a transaction only client where you perform the unit test. Upon a satisfactory unit test, you move the good configuration to the next SERVER (DEV).&lt;br /&gt;&lt;br /&gt;The incorrect or unsatisfactory configuration is corrected in Golden (may again as well be practised in the sandbox prior to Golden) and accordingly transported back to 180 (Unit Test) until the unit test affected by that particular config is satisfactory.&lt;br /&gt;&lt;br /&gt;The Golden client remains the 'database' (if you wanna call it that) or you may rather call it the 'ultimate' reference client for all the good, complete and final configuration that is being used in the implementation.&lt;br /&gt;&lt;br /&gt;In summary:&lt;br /&gt;&lt;br /&gt;Landscape : is the arrangement for the servers&lt;br /&gt;&lt;br /&gt;IDES : is purely for education purpose and is NOT INCLUDED in the landscape.&lt;br /&gt;&lt;br /&gt;DEVELOPMENT ---&gt; QUALITY ----&gt; PRODUCTION&lt;br /&gt;&lt;br /&gt;DEVELOPMENT : is where the the consultants do the customization as per the company's requirement.&lt;br /&gt;&lt;br /&gt;QUALITY : is where the core team members and other members test the customization.&lt;br /&gt;&lt;br /&gt;PRODUCTION : is where the live data of the company is recorded.&lt;br /&gt;&lt;br /&gt;A request will flow from Dev-&gt;Qual-&gt;Prod and not backwards.&lt;br /&gt;&lt;br /&gt;1. Sandbox server:&lt;br /&gt;&lt;br /&gt;In the initial stages of any implementation project, You are given&lt;br /&gt;a sandbox server where you do all the configuration/customization as per the companies business process.&lt;br /&gt;&lt;br /&gt;2. Development Server:&lt;br /&gt;&lt;br /&gt;Once the BBP gets signed off, the configuration is done is development server and saved in workbench requests, to be transported to Production server.&lt;br /&gt;&lt;br /&gt;3. Production Server:&lt;br /&gt;&lt;br /&gt;This is the last/ most refined client where the user will work after project GO LIVE. Any changes/ new develpoment is done is development client and the request is transported to production.&lt;br /&gt;&lt;br /&gt;These three are landscape of any Company. They organised their office in these three way. Developer develop their program in Development server and then transport it to test server. In testing server tester check/test the program and then transport it to Production Server. Later it will deploy to client from production server.&lt;br /&gt;&lt;br /&gt;Presentaion Server- Where SAP GUI have.&lt;br /&gt;Application Server - Where SAP Installed.&lt;br /&gt;Database Server - Where Database installed.&lt;br /&gt;&lt;br /&gt;What is the meaning of "R" in R/3 systems?&lt;br /&gt;&lt;br /&gt;R/3 stands for realtime three tier architecture. This is the kind of architrecture SAP R/3 system has.&lt;br /&gt;&lt;br /&gt;R/3 means three layers are installed in Different system/server and they are connected with each other.&lt;br /&gt;&lt;br /&gt;1)Presentation&lt;br /&gt;2)Application.&lt;br /&gt;3)Data base server.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-2297583460380487887?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/2297583460380487887/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=2297583460380487887' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/2297583460380487887'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/2297583460380487887'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/07/understanding-sap-landscape.html' title='Understanding SAP LANDSCAPE'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-1851671036278535167</id><published>2009-06-20T08:44:00.000-07:00</published><updated>2009-06-20T08:45:20.499-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Migration'/><title type='text'>Data Migration</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_xXiFfhO31BQ/Sj0D40sryMI/AAAAAAAAEqU/WvSQ4PG8POI/s1600-h/clip_image002.gif"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 198px;" src="http://2.bp.blogspot.com/_xXiFfhO31BQ/Sj0D40sryMI/AAAAAAAAEqU/WvSQ4PG8POI/s320/clip_image002.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5349436207139637442" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-1851671036278535167?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/1851671036278535167/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=1851671036278535167' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/1851671036278535167'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/1851671036278535167'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/06/data-migration.html' title='Data Migration'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_xXiFfhO31BQ/Sj0D40sryMI/AAAAAAAAEqU/WvSQ4PG8POI/s72-c/clip_image002.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-1734626955809641450</id><published>2009-06-20T08:39:00.000-07:00</published><updated>2009-06-20T08:41:11.579-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Migration'/><title type='text'>SAP n Data Migration</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_xXiFfhO31BQ/Sj0C3Md7idI/AAAAAAAAEqM/GD1hzlXi5wA/s1600-h/V2I2ps3.gif"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 169px;" src="http://3.bp.blogspot.com/_xXiFfhO31BQ/Sj0C3Md7idI/AAAAAAAAEqM/GD1hzlXi5wA/s320/V2I2ps3.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5349435079648840146" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-1734626955809641450?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/1734626955809641450/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=1734626955809641450' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/1734626955809641450'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/1734626955809641450'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/06/sap-n-data-migration.html' title='SAP n Data Migration'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_xXiFfhO31BQ/Sj0C3Md7idI/AAAAAAAAEqM/GD1hzlXi5wA/s72-c/V2I2ps3.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-5014814178519539565</id><published>2009-06-20T08:34:00.000-07:00</published><updated>2009-06-20T08:35:48.380-07:00</updated><title type='text'>SAP Business process</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_xXiFfhO31BQ/Sj0BsaS-PsI/AAAAAAAAEqE/cRdWGAq0A3E/s1600-h/SAP1.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://3.bp.blogspot.com/_xXiFfhO31BQ/Sj0BsaS-PsI/AAAAAAAAEqE/cRdWGAq0A3E/s320/SAP1.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5349433794870787778" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-5014814178519539565?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/5014814178519539565/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=5014814178519539565' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/5014814178519539565'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/5014814178519539565'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/06/sap-business-process.html' title='SAP Business process'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_xXiFfhO31BQ/Sj0BsaS-PsI/AAAAAAAAEqE/cRdWGAq0A3E/s72-c/SAP1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-7710881191180906715</id><published>2009-06-20T08:15:00.000-07:00</published><updated>2009-06-20T08:30:53.809-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Migration'/><title type='text'>BDC Interview Questions</title><content type='html'>&lt;span style="font-weight:bold;"&gt;ABAP BDC Interview Questions&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1    What should be the approach for writing a BDC program?&lt;br /&gt;Ans.: 1. Analysis the Data.2. Generate SAP structure.3. Develop transfer program 4. Create sequential file.  5. Create batch input program. 6. Process batch input data&lt;br /&gt;&lt;br /&gt;2   What is the alternative to batch input session?&lt;br /&gt;Ans. : Call transaction  &amp;  call dialog&lt;br /&gt;&lt;br /&gt; What are the steps in a BDC session ?&lt;br /&gt;The first step in a BDC session is to identify the screens of the transaction that the program will process. Next step is to write a program to build the BDC table that will be used to submit the data to SAP. The final step is to submit the BDC table to the system in the batch mode or as a single transaction by the CALL TRANSACTION command.&lt;br /&gt;&lt;br /&gt;3  What are the problems in processing batch input sessions? How is batch input process different from processing on line?&lt;br /&gt;Ans.: Sessions cannot be run in parallel and not fast.&lt;br /&gt;&lt;br /&gt;4 What do you do when the system crashes in the middle of a BDC batch session?&lt;br /&gt;Check no. of records already updated and delete them from input file and run BDC again.&lt;br /&gt;&lt;br /&gt;5 What do you do with errors in BDC batch session?&lt;br /&gt;Analysis and correct input file format and entries in internal table BDCDATA.&lt;br /&gt;&lt;br /&gt;6  WHAT are the commands that allow you to process sequential file? And what is their syntax?&lt;br /&gt;Ans :- READ DATASET (reading) and TRANSFER (writing)&lt;br /&gt;OPEN DTASET (dataset name) for(input/output appending) in (binary text ) mode at POSITION (position)   MESSAGE(field) &lt;br /&gt;READ DATASET (dataset name ) INTO (field)&lt;br /&gt;CLOSE DATASET (dataset name)&lt;br /&gt;DELETE DATASET (dataset name)&lt;br /&gt;TRANSFER (field) to (dataset name)&lt;br /&gt;&lt;br /&gt;7  What is the process for transferring data from legacy system to SAP?&lt;br /&gt;Ans :- FTP file transfer, Manufacturer –specific field transfer NFS(network file system)/BDC.&lt;br /&gt;&lt;br /&gt;8 Explain the process to transfer a record to a dataset?&lt;br /&gt;Ans :- TRANSFER (field)   to (dataset name).&lt;br /&gt;&lt;br /&gt;9  Why batch input?&lt;br /&gt;Ans :- To input a large amount of information at off peak times.&lt;br /&gt;&lt;br /&gt;10  Can data be put directly into the database?&lt;br /&gt;Ans :- No, only after the data has been entered via transaction.&lt;br /&gt;&lt;br /&gt;11 Explain at high level, the batch input process?&lt;br /&gt;Ans :- Batch data is placed into queues called batch input sessions , then placed into the application programs for maintenance into the database.&lt;br /&gt;12  What are the function modules associated with batch input?&lt;br /&gt;Ans :- BDC_OPEN_GROUP , BDC_CLOSE_GROUP , BDC_INSERT&lt;br /&gt;&lt;br /&gt;13  What is the structure of the BDC table?&lt;br /&gt;Ans :- Program/Dynpro/start/field name/ field content.&lt;br /&gt;&lt;br /&gt;14 Write out a coding example for filling a BDC Table.&lt;br /&gt;Ans :- FORM (NAME)&lt;br /&gt;REFEESH (bdc table)&lt;br /&gt;CLEAR (bdc table)&lt;br /&gt;MOVE (program name) to (bdc table)-PROGRAM &lt;br /&gt;(number1) TO (bdc table)-DYNPRO&lt;br /&gt;‘X’ TO (bdc table)-DYNBEGIN&lt;br /&gt; APPEND (bdc table)&lt;br /&gt;CLEAR(bdc table)&lt;br /&gt; MOVE: (field1) TO (bdc table)-FNAM&lt;br /&gt; (field2) TO (bdc table)-FVAL&lt;br /&gt; APPEND (bdc table)&lt;br /&gt;&lt;br /&gt;15How do you find the transaction number, program number and field names?&lt;br /&gt;Ans :- Transaction no.,program no. – System -&gt; status  &lt;br /&gt;Field names - F1, Technical help&lt;br /&gt;&lt;br /&gt;16 What are the processing modes for Batch Input?&lt;br /&gt;Ans :- Process on screen(foreground) , Display errors only and process in the background&lt;br /&gt;&lt;br /&gt;17What are the available OK Codes that can be utilized during batch input processing?&lt;br /&gt;Ans :- /n – terminates current batch input transaction and marks as incorrect.&lt;br /&gt;/bdel – delete current batch input transaction from session.&lt;br /&gt;/bend – terminate batch input processing  and mark session as incorrect.&lt;br /&gt;/bda – change display mode to process the session on screen instead of displaying only errors.&lt;br /&gt;/bde – change display mode to display only errors instead of processing  the session on the screen.&lt;br /&gt;&lt;br /&gt;18 What is the effect of the BDC_CURSOR field name in the BDC table?&lt;br /&gt;Ans :- You can set the cursor and enter as a corresponding field value the name of  the field  on which the cursor is to be positioned .&lt;br /&gt;&lt;br /&gt;19 How many types of BDCs you have done?&lt;br /&gt;21Why you choose Call transaction and/or session method?&lt;br /&gt;Call transaction is mainly used when you want to update the database using a single transaction , you can also update the database in asynchronous mode, where as session is used to perform huge database updations using more than one transaction and which will last for a long time.&lt;br /&gt;&lt;br /&gt;22    How you trap errors in call Transaction&lt;br /&gt;Errors while updating the database using call transaction technique are trapped using a structure bdcmsgcall, whose field msgtyp become ‘e’ when an error record is encountered. Those records are formatted using format_message function call in the desired format and stored in an internal table for listing of all error records in one shot.&lt;br /&gt;&lt;br /&gt;23 What are different types of Update modes&lt;br /&gt;In BDC’s we have two types of updation modes – 1) Synchronous 2) Asynchronous&lt;br /&gt;&lt;br /&gt;24 What is main difference between session method and LSMW&lt;br /&gt;In the context of session method, &lt;br /&gt;the method of updating is “Batch Input” , &lt;br /&gt;we require a program to be coded, &lt;br /&gt;But in the context of LSMW method,&lt;br /&gt;The methods of updating &lt;br /&gt;using “Batch Input/Direction Input”&lt;br /&gt;from an IDOC,&lt;br /&gt;from a BAPI structure.&lt;br /&gt;No source code is required, the complete operation is performed in 16  steps sequence&lt;br /&gt;&lt;br /&gt;25    What is main difference between CATT and LSMW&lt;br /&gt;Using LSMW you can update any kind of data but no changes to database are allowed, where as CATT tool  can update  only master data, which also allows  changes to the master data and also a significant testing of data is possible&lt;br /&gt;&lt;br /&gt;26    What is BDC and How you use it?&lt;br /&gt;BC Basis Components--ABAP workbench--BC Basis Programming interfaces--Data transfer&lt;br /&gt;During data transfer, data is transferred from an external system into the SAP R/3 System.  •Transfer data from an external system into an R/3 System as it is installed.  •Transfer data regularly from an external system into an R/3 System. &lt;br /&gt;Example: If data for some departments in your company is input using a system other than the R/3 System, you can still integrate this data in the R/3 System. To do this, you export the data from the external system and use a data transfer method to import it into the R/3 System.&lt;br /&gt; Batch input with batch input sessions : Data consistency check with the help of screen logic.&lt;br /&gt;With the batch input method, an ABAP program reads the external data that is to be entered in the R/3 System and stores the data in a "batch input session". The session records the actions that are required to transfer data into the system using normal SAP transactions.&lt;br /&gt;When the program has generated the session, you can run the session to execute the SAP transactions in it. You can explicitly start and monitor a session with the batch input management function (by choosing System ® Services ® Batch input), or have the session run in the background processing system.&lt;br /&gt;Use the BDC_OPEN_GROUP function module to create a new session. Once you have created a session, then you can insert batch input data into it with BDC_INSERT. Use the BDC_INSERT function module to add a transaction to a batch input session. Use the BDC_CLOSE_GROUP function module to close a session after you have inserted all of your batch input data into it. &lt;br /&gt;&lt;br /&gt;What is Dataset and how you use it?&lt;br /&gt; ABAP/4 provides three statements for handling files:&lt;br /&gt;The OPEN DATASET statement opens a file.&lt;br /&gt;The CLOSE DATASET statement closes a file. &lt;br /&gt;The DELETE DATASET statement deletes a file.&lt;br /&gt;To open a file for read access, use the FOR INPUT option of the OPEN DATASET statement &lt;br /&gt;To open a file for write access, use the FOR OUTPUT option of the OPEN DATASET statement &lt;br /&gt;To open a file for appending data to the file, use the FOR APPENDING option of the OPEN DATASET statement  &lt;br /&gt;To process a file in binary mode, use the IN BINARY MODE option of the OPEN DATASET statement &lt;br /&gt;To process a file in text mode, use the IN TEXT MODE option of the OPEN DATASET statement &lt;br /&gt;To open a file at a specific position, use the AT POSITION option of the OPEN DATASET statement &lt;br /&gt;When you work with the operating systems UNIX or WINDOWS NT, you can send an operating system command with the statement OPEN DATASET. To do so, use the option FILTER&lt;br /&gt;To receive the operating system message after trying to open a file, use the MESSAGE option of the OPEN DATASET statement&lt;br /&gt;To close a file on the application server, use the CLOSE DATASET statement&lt;br /&gt;To delete a file on the application server, use the DELETE DATASET statement&lt;br /&gt;To write data to a file on the application server, use the TRANSFER statement &lt;br /&gt;To read data from a file on the application server, use the READ DATASET statement.&lt;br /&gt;&lt;br /&gt;36 Give real time work done by u in BDC ? Transactions used ? parameters passed with functions.&lt;br /&gt;37 will ask u for screen no's and dynpro names for BDC that u say u have done.&lt;br /&gt;39 Which technical field in the BDCDATA table holds the last cursor position?&lt;br /&gt;41 What is true about the LSMW:   (choose correct option/s)&lt;br /&gt;Part of the SAP system&lt;br /&gt;Processes hierarchical data files (header and position)&lt;br /&gt;Needs a source field for every target field&lt;br /&gt;&lt;br /&gt;44 How do you read a LOCAL sequential file?&lt;br /&gt;45 How do you write a sequential file?&lt;br /&gt;46 How do you send the BDCDATA table in a Call Transaction statement?&lt;br /&gt;47 What loop do you code for a READ DATASET statement?&lt;br /&gt;51 What are the steps in a BDC session ?&lt;br /&gt;The first step in a BDC session is to identify the screens of the transaction that the program will process. Next step is to write a program to build the BDC table that will be used to submit the data to SAP. The final step is to submit the BDC table to the system in the batch mode or as a single transaction by the CALL TRANSACTION command.&lt;br /&gt;&lt;br /&gt;52 How do you find the information on the current screen ?&lt;br /&gt; Status command from any menu.The information on the current screen can be found by System &lt;br /&gt;&lt;br /&gt;53 How do you save data in BDC tables ?&lt;br /&gt;The data in BDC tables is saved by using the field name ‘BDC_OKCODE’ and field value of  ‘/11’&lt;br /&gt;&lt;br /&gt;54 What is the last entry in all BDC tables ?&lt;br /&gt;In all BDC tables, the last entry is to save the data by using the field name BDC_OKCODE and a field value of ‘/11’.&lt;br /&gt;&lt;br /&gt;55 What is a multiple line field ?&lt;br /&gt;A multiple line field is a special kind of field which allows the user to enter multiple lines of data into it.&lt;br /&gt;&lt;br /&gt;56 How do you populate data into a multiple line field ?&lt;br /&gt;To populate data into a multiple line field, an index is added to the field name to indicate which line is to be populated by the BDC session (Line index ).&lt;br /&gt;&lt;br /&gt;57 Write the BDC table structure.&lt;br /&gt;BDC table structure&lt;br /&gt;FIELD                               TYPE                               DESCRIPTION&lt;br /&gt;Program                          CHAR(8)                         Program name of transaction&lt;br /&gt;DynPro                             CHAR(4)                         Screen number of transaction&lt;br /&gt;DynBegin                         CHAR(1)                         Indicator for new screen&lt;br /&gt;Fnam                               CHAR(35)                        Name of database field from &lt;br /&gt;                                                                                    Screen&lt;br /&gt;Fval                                   CHAR(80)                      Value to submit to field&lt;br /&gt;&lt;br /&gt;58 Does the CALL TRANSACTION method allow multiple transactions to be processed by SAP ?&lt;br /&gt;No. The CALL TRANSACTION method allows only a single transaction to be processed by SAP.&lt;br /&gt;&lt;br /&gt;59 Does the BDC_INSERT function allow multiple transactions to be processed by SAP ?&lt;br /&gt;Yes.&lt;br /&gt;&lt;br /&gt;60 What is the syntax for ‘CALL TRANSACTION’ ?&lt;br /&gt;CALL TRANSACTION trans [ using bdctab MODE mode ].&lt;br /&gt;Three possible entries are there for MODE.&lt;br /&gt;            A     -    show all screens&lt;br /&gt;            E    -    show only screens with errors&lt;br /&gt;            N    -    show no screens&lt;br /&gt;Which mode of ‘CALL TRANSACTION’  method  allows background processing ?&lt;br /&gt;N is the only mode that allows background processing.&lt;br /&gt;&lt;br /&gt;61 Is it possible to use ‘CALL TRANSACTION’ without a BDC table ?&lt;br /&gt;Yes, it is possible to use ‘CALL TRANSACTION’ without a BDC table. In such case, the current program is suspended, the transaction specified is brought up, and a user must enter the data into the screens.&lt;br /&gt;&lt;br /&gt;62  What is TCODE ?&lt;br /&gt;TCODE is the transaction code for the transaction that should be used to process the data in the BDC table being inserted.&lt;br /&gt;&lt;br /&gt;63 What are the function modules that need to be called from BDC program to submit the transactions for processing ?&lt;br /&gt;-    BDC_OPEN_GROUP&lt;br /&gt;-    BDC_INSERT&lt;br /&gt;-    BDC_CLOSE_GROUP&lt;br /&gt;&lt;br /&gt;64 How many sessions will be opened using BDC_OPEN_GROUP ?&lt;br /&gt;Only one session can be created using the BDC_OPEN_GROUP functon.&lt;br /&gt;&lt;br /&gt;65  What is ‘BATCH INPUT’ or ‘BDC’ ?&lt;br /&gt;The SAP system offers two primary methods (BDC SESSION METHOD, CALL TRANSACTION METHOD) for transferring data into the system from other systems and Non-SAP systems.  These two methods are collectively called as ‘BATCH INPUT’ or ‘Batch Data Communication’ (BDC).&lt;br /&gt;&lt;br /&gt;66  What are the advantages in Batch Input ?&lt;br /&gt;The Batch Input ensures Data integrity.&lt;br /&gt;No manual interaction is required during Data transfer.&lt;br /&gt;&lt;br /&gt;67 What is the functionality of ‘Classical Batch Input’ ?&lt;br /&gt;In ‘Classical Batch Input’ an ABAP/4 program reads the external data that is to be entered in the SAP system and stores the data in a Batch Input session.  This session stores the actions that are required to enter your data using normal SAP transactions.&lt;br /&gt;68 Which Function Modules are used in ‘Classical Batch Input’ ?&lt;br /&gt;BDC_OPEN_GROUP , BDC_INSERT, BDC_CLOSE_GROUP.&lt;br /&gt;&lt;br /&gt;69 What is Synchronous Database update ?&lt;br /&gt;During the processing no transaction is stored until the previous transaction has been written to the Database.  This is called Synchronous Database update.&lt;br /&gt;&lt;br /&gt;70  What are the differences between CALL TRANSACTION and BATCH INPUT SESSION ?&lt;br /&gt;                      -    The most important aspects of the batch session interface are:&lt;br /&gt;                      -    Asynchronous processing&lt;br /&gt;                      -    Transfers data for multiple transactions&lt;br /&gt;                      -    Synchronous database update&lt;br /&gt;During processing, no transaction is started until the previous transaction has been written to the database.&lt;br /&gt;                      -    A batch input processing log is generated for each session            &lt;br /&gt;                      -    Sessions cannot be generated in parallel&lt;br /&gt;The most important aspects of the CALL TRANSACTION USING interface are:&lt;br /&gt;                      -    Synchronous processing&lt;br /&gt;                      -    Transfers data for a single transaction&lt;br /&gt;                      -    Synchronous and asynchronous database updating both possible&lt;br /&gt;The program specifies which kind of updating is desired.&lt;br /&gt;                     -    Separate LUW for the transaction&lt;br /&gt;The system performs a database commit immediately before and after the CALL TRANSACTION USING statement. &lt;br /&gt;No batch input processing log is generated&lt;br /&gt;&lt;br /&gt;71 What are the types of Batch Input ?&lt;br /&gt;Classical Batch Input&lt;br /&gt;Call Transaction&lt;br /&gt;Call Dialog&lt;br /&gt;&lt;br /&gt;72  What is BDC_OKCODE ?&lt;br /&gt;The command field is identified by a special name in batch input called BDC_OKCODE. This name is constant and always identifies the command field.&lt;br /&gt;&lt;br /&gt;73  How can we execute a function in a BDC session ?&lt;br /&gt;We can execute a function in a transaction by entering the function code or function key number in the command field of an SAP session. A function key number must be prefixed with the / (slash) character. A function code must be prefixed with the = character. &lt;br /&gt;Example:&lt;br /&gt;BDCDATA-FNAM  =   'BDC_OKCODE'&lt;br /&gt;BDCDATA-FVAL   =   '=UPDA'&lt;br /&gt;&lt;br /&gt;74  How can we position the cursor on a particular field ?&lt;br /&gt;BDCDATA-FNAM  =  ‘BDC_CURSOR’&lt;br /&gt;BDCDATA-FVAL   =  &lt;FIELDNAME&gt;&lt;br /&gt;&lt;br /&gt;75  Who are Dialog users and who are Background users ?&lt;br /&gt;Dialog users are normal interactive users in the SAP system.  Background users are user master records that are specially defined for providing authorizations for background processing jobs.&lt;br /&gt;&lt;br /&gt;76 What is the use of BDC_INSERT ?&lt;br /&gt;We add a transaction to a Batch Input Session by using this function.&lt;br /&gt;&lt;br /&gt;77  What are the update modes in CALL TRANSACTION ?&lt;br /&gt;S : Synchronous&lt;br /&gt;A : Asynchrnous&lt;br /&gt;L : Local&lt;br /&gt;&lt;br /&gt;78 What does the message parameter indicates ?&lt;br /&gt;The message parameter indicates there all system messages issued during a CALL TRANSACTION are written into the internal table &lt;itab&gt;.  The internal table must have the structure of BDCMSGCOLL.&lt;br /&gt;&lt;br /&gt;79 What is Direct Input ?&lt;br /&gt;To enhance the batch input procedure, the system offers the direct input technique especially for transferring large amount of data. This technique doesn’t create sessions but stores the data directly.  The direct input programs must be executed in the back ground only.  To maintain and start these programs, use program RBMVSHOW or the transaction BMVO.&lt;br /&gt;&lt;br /&gt;80 What are the features of Recording Function ?&lt;br /&gt;recording transaction runs&lt;br /&gt;creating batch input sessions from the recorded transaction runs.&lt;br /&gt;Generating a batch input program from the recorded data.&lt;br /&gt;&lt;br /&gt;81 What is synchrnous database update ?&lt;br /&gt;During the processing, no transaction is stored until the previous transaction has been written to the database.  This is called Synchronous database update.&lt;br /&gt;&lt;br /&gt;82 How do you set up batch process?&lt;br /&gt;Data analysis: Analyze the data that is to be transferred to the SAP System.  &lt;br /&gt;           ||&lt;br /&gt;Generate SAP structures: Generate SAP data structures for incorporation into your data export program.&lt;br /&gt;           ||&lt;br /&gt;Develop transfer program: You can write the program in ABAP/4 or as an external program. &lt;br /&gt;           ||&lt;br /&gt;Create sequential file: Export the data that is to be transferred, to a sequential file.  &lt;br /&gt;           ||&lt;br /&gt;Create batch input program: ABAP/4 batch input program that will read the data to be transferred from the sequential file. &lt;br /&gt;           ||&lt;br /&gt;Process batch input data: Process the data and add it to the SAP System.  You can do this either by:&lt;br /&gt;batch-input session method or Call transaction method.&lt;br /&gt;           ||&lt;br /&gt;Analyse results: Check that all data has been successfully processed.&lt;br /&gt;           ||&lt;br /&gt;Analyse Error session: Correct and re-process erroneous data.  &lt;br /&gt;&lt;br /&gt;83  Where do you use BDC?&lt;br /&gt;transferring data from another system when you install your SAP System&lt;br /&gt;regularly transferring data that is captured by a non-SAP system in your company into the SAP System.  Assume, for example, that data collection in some areas of your company is still performed by a non-SAP system.  You can still consolidate all of your data in the SAP System by exporting the data from the other system and reading it into the SAP System with batch input.&lt;br /&gt;You can also use batch input to transfer data between two R/3 Systems.  However, there are more direct methods for doing this, such as RFC (remote function calls). &lt;br /&gt;&lt;br /&gt;84 What has to be done to the packed fields before submitting to a BDC session?&lt;br /&gt;Declare these fields in the internal table as characters and the length of the field should be same as the field length of the field's data element. This internal table is used to hold the data fetched from the sequential file using WS-upload function module&lt;br /&gt;&lt;br /&gt;What is LSMW&lt;br /&gt;The LSMW is a cross-application component (CA) of the SAP R/3 System. &lt;br /&gt;The tool has interfaces with the Data Transfer Center and with batch input and direct input processing as well as standard interfaces BAPI and IDoc in R/3.&lt;br /&gt;The LSMW comprises the following main functions:&lt;br /&gt; Read data (legacy data in spreadsheet tables and/or sequential files). &lt;br /&gt; Function Read data replaces and enhances functions Spreadsheet interface and Host interface of LSMW version 1.0. You can       use any combination out of PC and server files now. &lt;br /&gt; Convert data (from the source into the target format). &lt;br /&gt; Import data (to the database used by the R/3 application).&lt;br /&gt;&lt;br /&gt;TCODE  -  LSMW&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-7710881191180906715?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/7710881191180906715/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=7710881191180906715' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/7710881191180906715'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/7710881191180906715'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/06/bdc-interview-questions.html' title='BDC Interview Questions'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-3083799070118159905</id><published>2009-06-19T09:18:00.000-07:00</published><updated>2009-06-20T08:36:52.759-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='T-codes'/><title type='text'>SAP ABAP T-codes</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_xXiFfhO31BQ/Sju7wrtJDsI/AAAAAAAAEpQ/fYIMw-pXHwE/s1600-h/tcode.JPG"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 170px; height: 182px;" src="http://1.bp.blogspot.com/_xXiFfhO31BQ/Sju7wrtJDsI/AAAAAAAAEpQ/fYIMw-pXHwE/s320/tcode.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5349075427472772802" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;S001 ABAP/4 Development Weorkbench.&lt;br /&gt;&lt;br /&gt;SO01 Business Workflow&lt;br /&gt;&lt;br /&gt;S002 System Administration.&lt;br /&gt;&lt;br /&gt;SA38 Execute a program.&lt;br /&gt;&lt;br /&gt;SCAT Computer Aided Test Tool&lt;br /&gt;&lt;br /&gt;SCU0 Compare Tables&lt;br /&gt;&lt;br /&gt;SE01 Old Transport &amp; Corrections screen&lt;br /&gt;&lt;br /&gt;SE03 Groups together most of the tools that you need for doing transports. In total, more than 20 tools can be reached from this one transaction.&lt;br /&gt;&lt;br /&gt;SE09 Workbench Organizer&lt;br /&gt;&lt;br /&gt;SE10 New Transport &amp; Correction screen&lt;br /&gt;&lt;br /&gt;SE11 ABAP/4 Dictionary Maintenance SE12 ABAP/4 Dictionary Display SE13 Maintain Technical Settings (Tables)&lt;br /&gt;&lt;br /&gt;SE12 Dictionary: Initial Screen - enter object name.&lt;br /&gt;&lt;br /&gt;SE13 Access tables in ABAP/4 Dictionary.&lt;br /&gt;&lt;br /&gt;SE14 Utilities for Dictionary Tables&lt;br /&gt;&lt;br /&gt;SE15 ABAP/4 Repository Information System&lt;br /&gt;&lt;br /&gt;SE16 Data Browser: Initial Screen.&lt;br /&gt;&lt;br /&gt;SE16N Table Browser (the N stands for New, it replaces SE16).&lt;br /&gt;&lt;br /&gt;SE17 General Table Display&lt;br /&gt;&lt;br /&gt;SE24 Class Builder&lt;br /&gt;&lt;br /&gt;SE30 ABAP/4 Runtime Analysis&lt;br /&gt;&lt;br /&gt;SE32 ABAP/4 Text Element Maintenance&lt;br /&gt;&lt;br /&gt;SE35 ABAP/4 Dialog Modules&lt;br /&gt;&lt;br /&gt;SE36 ABAP/4: Logical Databases&lt;br /&gt;&lt;br /&gt;SE37 ABAP/4 Function Modules&lt;br /&gt;&lt;br /&gt;SE38 ABAP Editor&lt;br /&gt;&lt;br /&gt;SE39 Splitscreen Editor: Program Compare&lt;br /&gt;&lt;br /&gt;SE41 Menu Painter&lt;br /&gt;&lt;br /&gt;SE43 Maintain Area Menu&lt;br /&gt;&lt;br /&gt;SE48 Show program call hierarchy. Very useful to see the overall structure of a program.&lt;br /&gt;&lt;br /&gt;SE49 Table manipulation. Show what tables are behind a transaction code.&lt;br /&gt;&lt;br /&gt;SE51 Screen Painter: Initial Screen.&lt;br /&gt;&lt;br /&gt;SE54 Generate View Maintenance Module&lt;br /&gt;&lt;br /&gt;SE61 R/3 Documentation&lt;br /&gt;&lt;br /&gt;SE62 Industry utilities&lt;br /&gt;&lt;br /&gt;SE63 Translation&lt;br /&gt;&lt;br /&gt;SE64 Terminology&lt;br /&gt;&lt;br /&gt;SE65 R/3 document. short text statistics SE66 R/3 Documentation Statistics (Test!)&lt;br /&gt;&lt;br /&gt;SE68 Translation Administration&lt;br /&gt;&lt;br /&gt;SE71 SAPscript layout set&lt;br /&gt;&lt;br /&gt;SE71 SAPScript Layouts Create/Change&lt;br /&gt;&lt;br /&gt;SE72 SAPscript styles&lt;br /&gt;&lt;br /&gt;SE73 SAPscript font maintenance (revised)&lt;br /&gt;&lt;br /&gt;SE74 SAPscript format conversion&lt;br /&gt;&lt;br /&gt;SE75 SAPscript Settings&lt;br /&gt;&lt;br /&gt;SE76 SAPscript Translation Layout Sets&lt;br /&gt;&lt;br /&gt;SE77 SAPscript Translation Styles&lt;br /&gt;&lt;br /&gt;SE80 ABAP/4 Development Workbench&lt;br /&gt;&lt;br /&gt;SE81 SAP Application Hierarchy&lt;br /&gt;&lt;br /&gt;SE82 Customer Application Hierarchy&lt;br /&gt;&lt;br /&gt;SE83 Reuse Library. Provided by Smiho Mathew.&lt;br /&gt;&lt;br /&gt;SE84 ABAP/4 Repository Information System&lt;br /&gt;&lt;br /&gt;SE85 ABAP/4 Dictionary Information System&lt;br /&gt;&lt;br /&gt;SE86 ABAP/4 Repository Information System&lt;br /&gt;&lt;br /&gt;SE87 Data Modeler Information System&lt;br /&gt;&lt;br /&gt;SE88 Development Coordination Info System&lt;br /&gt;&lt;br /&gt;SE91 Maintain Messages&lt;br /&gt;&lt;br /&gt;SE92 Maintain system log messages&lt;br /&gt;&lt;br /&gt;SE93 Maintain Transaction.&lt;br /&gt;&lt;br /&gt;SEARCH_SAP_MENU From the SAP Easy Access screen, type it in the command field and you will be able to search the standard SAP menu for transaction codes / keywords. It will return the nodes to follow for you.&lt;br /&gt;&lt;br /&gt;SEU Object Browser&lt;br /&gt;&lt;br /&gt;SHD0 Transaction variant maintenance&lt;br /&gt;&lt;br /&gt;SM04 Overview of Users (cancel/delete sessions)&lt;br /&gt;&lt;br /&gt;SM12 Lock table entries (unlock locked tables)&lt;br /&gt;&lt;br /&gt;SM21 View the system log, very useful when you get a short dump. Provides much more info than short dump&lt;br /&gt;&lt;br /&gt;SM30 Maintain Table Views.&lt;br /&gt;&lt;br /&gt;SM31 Table Maintenance&lt;br /&gt;&lt;br /&gt;SM32 Table maintenance&lt;br /&gt;&lt;br /&gt;SM33 Display Table Parameter ID TAB&lt;br /&gt;&lt;br /&gt;SM35 View Batch Input Sessions&lt;br /&gt;&lt;br /&gt;SM37 View background jobs&lt;br /&gt;&lt;br /&gt;SM50 Process Overview.&lt;br /&gt;&lt;br /&gt;SM51 Delete jobs from system (BDC)&lt;br /&gt;&lt;br /&gt;SM62 Display/Maintain events in SAP, also use function BP_EVENT_RAISE&lt;br /&gt;&lt;br /&gt;SMEN Display the menu path to get to a transaction&lt;br /&gt;&lt;br /&gt;SMOD Transactions for processing/editing/activating new customer enhancements.&lt;br /&gt;&lt;br /&gt;CMOD Transactions for processing/editing/activating new customer enhancements.&lt;br /&gt;&lt;br /&gt;SNRO Object browser for number range maintenance.&lt;br /&gt;&lt;br /&gt;SPRO Start SAP IMG (Implementation Guide).&lt;br /&gt;&lt;br /&gt;SQ00 ABAP/4 Query: Start Queries&lt;br /&gt;&lt;br /&gt;SQ01 ABAP/4 Query: Maintain Queries&lt;br /&gt;&lt;br /&gt;SQ02 ABAP/4 Query: Maintain Funct. Areas&lt;br /&gt;&lt;br /&gt;SQ03 ABAP/4 Query: Maintain User Groups&lt;br /&gt;&lt;br /&gt;SQ07 ABAP/4 Query: Language Comparison&lt;br /&gt;&lt;br /&gt;ST05 Trace SQL Database Requests.&lt;br /&gt;&lt;br /&gt;ST22 ABAP Dump analysis&lt;br /&gt;&lt;br /&gt;SU53 Display Authorization Values for User.&lt;br /&gt;&lt;br /&gt;WEDI EDI Menu. IDOC and EDI base.&lt;br /&gt;&lt;br /&gt;WE02 Display an IDOC&lt;br /&gt;&lt;br /&gt;WE07 IDOC Statistics&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-3083799070118159905?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/3083799070118159905/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=3083799070118159905' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/3083799070118159905'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/3083799070118159905'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/06/sap-abap-t-codes.html' title='SAP ABAP T-codes'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_xXiFfhO31BQ/Sju7wrtJDsI/AAAAAAAAEpQ/fYIMw-pXHwE/s72-c/tcode.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-3098648986479552829</id><published>2009-06-19T08:54:00.000-07:00</published><updated>2009-06-20T08:37:20.097-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='T-codes'/><category scheme='http://www.blogger.com/atom/ns#' term='Basis'/><title type='text'>SAP BASIS T-Codes</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_xXiFfhO31BQ/Sju48_YhTpI/AAAAAAAAEpI/6n2joMdY03E/s1600-h/sap-basis.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 100px; height: 100px;" src="http://2.bp.blogspot.com/_xXiFfhO31BQ/Sju48_YhTpI/AAAAAAAAEpI/6n2joMdY03E/s320/sap-basis.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5349072340378537618" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP BASIS T-Codes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;AL11 Display SAP Directories &lt;br /&gt;BD54 Maintain Logical Systems &lt;br /&gt;OSS1 Logon to Online Service System &lt;br /&gt;SALE IMG Application Link Enabling &lt;br /&gt;SARA Archive Management &lt;br /&gt;SCC3 Copy Analysis Log &lt;br /&gt;SCC4 Client Administration &lt;br /&gt;SCC5 Client Delete &lt;br /&gt;SCC7 Client Import Post-Processing &lt;br /&gt;SCC8 Client Export &lt;br /&gt;SCC9 Remote client copy &lt;br /&gt;SCCL Local Client Copy &lt;br /&gt;SCU0 Customizing Cross-System Viewer &lt;br /&gt;SICK Installation Check &lt;br /&gt;SM01 Lock Transactions &lt;br /&gt;SM02 System Messages &lt;br /&gt;SM04 User Overview &lt;br /&gt;SM12 Display and Delete Locks &lt;br /&gt;SM13 Display Update Records &lt;br /&gt;SM14 Update Program Administration &lt;br /&gt;SM21 System Log &lt;br /&gt;SM35 Batch Input Monitoring &lt;br /&gt;SM50 Work Process Overview &lt;br /&gt;SM51 List of SAP Servers &lt;br /&gt;SM56 Number Range Buffer &lt;br /&gt;SM58 Asynchronous RFC Error Log &lt;br /&gt;SM59 RFC Destinations (Display/Maintain) &lt;br /&gt;SM66 System Wide Work Process Overview &lt;br /&gt;SAINT SAP Add-on Installation Tool &lt;br /&gt;SPAM SAP Patch Manager (SPAM) &lt;br /&gt;SPAU Display modified DE objects &lt;br /&gt;SPDD Display modified DDIC objects &lt;br /&gt;ST11 Display Developer Traces &lt;br /&gt;ST22 ABAP/4 Runtime Error Analysis &lt;br /&gt;SU56 Analyze User Buffer &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Alert Monitoring&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;AL01 SAP Alert Monitor &lt;br /&gt;AL02 Database alert monitor &lt;br /&gt;AL04 Monitor call distribution &lt;br /&gt;AL05 Monitor current workload &lt;br /&gt;AL16 Local Alert Monitor for Operat.Syst. &lt;br /&gt;AL18 Local File System Monitor &lt;br /&gt;RZ20 CCMS Monitoring &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Configuration&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;FILE Cross-Client File Names/Paths &lt;br /&gt;RZ04 Maintain Operation Modes and Instances &lt;br /&gt;RZ10 Maintenance of Profile Parameters &lt;br /&gt;RZ11 Profile parameter maintenance &lt;br /&gt;SE93 Maintain Transaction Codes &lt;br /&gt;SM63 Display/Maintain Operating Mode Sets &lt;br /&gt;SPRO Customizing: Initial Screen &lt;br /&gt;SWU3 Consistency check: Customizing &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Database Administration&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;DB01 Analyze exclusive lockwaits &lt;br /&gt;DB02 Analyze tables and indexes &lt;br /&gt;DB12 DB Backup Monitor &lt;br /&gt;DB13 DBA Planning Calendar &lt;br /&gt;DB15 Data Archiving: Database Tables &lt;br /&gt;Jobs &lt;br /&gt;&lt;br /&gt;SM36 Define Background Job &lt;br /&gt;SM37 Background Job Overview &lt;br /&gt;SM39 Job Analysis &lt;br /&gt;SM49 Execute External OS commands &lt;br /&gt;SM62 Maintain Events &lt;br /&gt;SM64 Release of an Event &lt;br /&gt;SM65 Background Processing Analysis Tool &lt;br /&gt;SM69 Maintain External OS &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Monitoring &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;AL08 Current Active Users &lt;br /&gt;OS01 LAN check with ping &lt;br /&gt;RZ01 Job Scheduling Monitor &lt;br /&gt;RZ03 Presentation, Control SAP Instances &lt;br /&gt;ST01 System Trace &lt;br /&gt;ST02 Setups/Tune Buffers &lt;br /&gt;ST04 Select DB activities &lt;br /&gt;ST05 Performance trace &lt;br /&gt;ST06 Operating System Monitor &lt;br /&gt;ST10 Table call statistics &lt;br /&gt;ST03 Performance, SAP Statistics, Workload &lt;br /&gt;ST07 Application monitor &lt;br /&gt;STAT Local transaction statistics &lt;br /&gt;STUN Performance Monitoring (not available in R/3 4.6x) &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Spool&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;SP01 Output Controller &lt;br /&gt;SP11 TemSe directory &lt;br /&gt;SP12 TemSe Administration &lt;br /&gt;SPAD Spool Administration &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Transports&lt;/span&gt; &lt;br /&gt;&lt;br /&gt;SCC1 Client Copy - Special Selections &lt;br /&gt;SE01 Transport Organizer &lt;br /&gt;SE06 Set Up Workbench Organizer &lt;br /&gt;SE07 CTS Status Display &lt;br /&gt;SE09 Workbench Organizer &lt;br /&gt;SE10 Customizing Organizer &lt;br /&gt;SE11 ABAP/4 Dictionary Maintenance &lt;br /&gt;SE16 Data Browser &lt;br /&gt;SE80 Repository Browser &lt;br /&gt;SM30 Call View Maintenance &lt;br /&gt;SM31 Table Maintenance &lt;br /&gt;STMS Transport Management System &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;User Administration &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;PFCG Profile Generator (Activity Group Maintenance) &lt;br /&gt;PFUD User Master Data Reconciliation &lt;br /&gt;SU01 User Maintenance &lt;br /&gt;SU01D User Display &lt;br /&gt;SU02 Maintain Authorization Profiles &lt;br /&gt;SU03 Maintain Authorizations &lt;br /&gt;SU05 Maintain Internet users &lt;br /&gt;SU10 User Mass Maintenance &lt;br /&gt;SMLG Maintain Logon Group &lt;br /&gt;SUPC Profiles for activity groups &lt;br /&gt;SUIM Infosystem Authorizations &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Other Transactions &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;AL22 Dependent objects display &lt;br /&gt;BAOV Add-On Version Information &lt;br /&gt;SA38 ABAP reporting &lt;br /&gt;SE38 ABAP Editor &lt;br /&gt;HIER Internal Application Component Hierarchy Maintenance &lt;br /&gt;ICON Display Icons &lt;br /&gt;WEDI IDoc and EDI Basis &lt;br /&gt;WE02 IDoc display &lt;br /&gt;WE07 IDoc statistics &lt;br /&gt;WE20 Partner profiles &lt;br /&gt;WE21 Port definition &lt;br /&gt;WE46 IDoc administration &lt;br /&gt;WE47 Status Maintenance &lt;br /&gt;$TAB Refreshes the table buffers &lt;br /&gt;$SYNC Refreshes all buffers, except the program buffer&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-3098648986479552829?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/3098648986479552829/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=3098648986479552829' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/3098648986479552829'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/3098648986479552829'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/06/sap-basis-t-codes.html' title='SAP BASIS T-Codes'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_xXiFfhO31BQ/Sju48_YhTpI/AAAAAAAAEpI/6n2joMdY03E/s72-c/sap-basis.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-3382966475079580034</id><published>2009-05-11T02:09:00.000-07:00</published><updated>2009-05-11T02:15:34.768-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Real-Time Stuffs'/><title type='text'>SAP Implementation</title><content type='html'>Successfully Implementing SAP&lt;br /&gt;&lt;br /&gt;Implementing a package can be a traumatic affair for both the customer and the vendor. Get it wrong and the vendor may get paid late or have to resort to lawyers to get paid and tarnish their reputation. For the company the new package may not work the way they expected, be late or cost a more than budgeted for and take management will take their eye off running their business.&lt;br /&gt;&lt;br /&gt;Top five factors to consider would be:&lt;br /&gt;&lt;br /&gt;1. Set up a Project Board,&lt;br /&gt;2. Secure the resources,&lt;br /&gt;3. Complete the GAP Analysis,&lt;br /&gt;4. Have detailed Cut Over Plans,&lt;br /&gt;5. Train the users.&lt;br /&gt;&lt;br /&gt;Taking each one in turn:&lt;br /&gt;&lt;br /&gt;The Project Board&lt;br /&gt;&lt;br /&gt;The correct set up and operation of the Project Board in my view is major factor in the success failure of the project. The Project Board will consist of the stakeholders, key users and the vendor. The Project Board is part of the governance of the project. The Project Board will meet regularly to ensure that the project plans are created and being executed as planned, moves from stage to stage with all the deliverables being signed off is resourced properly.&lt;br /&gt;&lt;br /&gt;The Resources&lt;br /&gt;&lt;br /&gt;Three types of resources are absolutely necessary -- end users, change team and technicians.&lt;br /&gt;&lt;br /&gt;Early involvement by the end users is absolutely necessary, as they will be the ones living with the system for hopefully many years to come. They will want to feel involved in its implementation. Buy in from the end users of the system is absolutely essential if the system is to have a long and stable life in any organization.&lt;br /&gt;&lt;br /&gt;The Change Team will identify the gaps between the package and the business requirements, re-engineer some of the businesses process to cope with the package, train the users to ensure implementation is smooth as possible into the business.&lt;br /&gt;&lt;br /&gt;The Technical Team will prepare the systems environment for the package, apply any software fixes from the vendor, implement the software in the best way possible for the organization set up and tune the software for the particular technical environment.&lt;br /&gt;&lt;br /&gt;GAP Analysis&lt;br /&gt;&lt;br /&gt;A through gap analysis will identify the gaps between how the business operates ad its needs against what the package can can't do. For each gap there will be one of three outcomes which must be recorded and actioned, GAP must be closed and customised software can be developed close the gap, GAP must be closed but software cannot be written therefore a workaround is required, GAP does not need to be closed.&lt;br /&gt;&lt;br /&gt;In simple terms:&lt;br /&gt;&lt;br /&gt;Gap means small cracks. In SAP world. In information technology, gap analysis is the study of the differences between two different information systems or applications( ex; existing system or legacy system with Client and new is SAP), often for the purpose of determining how to get from one state to a new state. A gap is sometimes spoken of as "the space between where we are and where we want to be." Gap analysis is undertaken as a means of bridging that space.&lt;br /&gt;Actual gap analysis is time consuming and it plays vital role in blue print stage.&lt;br /&gt;&lt;br /&gt;Cut Over Plans&lt;br /&gt;&lt;br /&gt;Detailed plans need to be developed for cutting over from the old system(s) to the new. Parallel runs of what will happen over the conversion period using test data, convert and watch for a period after wards to ensure nothing unexpected happens.&lt;br /&gt;&lt;br /&gt;Train Users&lt;br /&gt;&lt;br /&gt;Well trained users will support and defend the system on site. Unsupportive users will continually undermine the system and eventually it will be replaced. Therefore the more effort you put into helping the users master the system early the better.&lt;br /&gt;&lt;br /&gt;Difference between the User Exit &amp; Gap analysis.&lt;br /&gt;&lt;br /&gt;Both are quiet a different and has a small relation.&lt;br /&gt;&lt;br /&gt;User exits are standard gate ways provided by SAP to exit the standard code and we can write our own code with the help of ABAP workbench. its not new functionality which we are trying to build in sap but its slight enhancement within the same code.&lt;br /&gt;&lt;br /&gt;Gap analysis is start point of Realization and once blue print is finished we have to find the realization of sap system for client requirement and there will be certain gaps when compared to system fit. Those gaps can be closed either by re-engineering of business process to fit with SAP or we have to use USER exits in case of small deviations or complete enhancements with the help of ABAP to fit with the SAP system.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-3382966475079580034?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/3382966475079580034/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=3382966475079580034' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/3382966475079580034'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/3382966475079580034'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/05/sap-implementation.html' title='SAP Implementation'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-5563337660170344539</id><published>2009-05-11T02:06:00.000-07:00</published><updated>2009-05-11T02:07:33.887-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SAP architecture'/><title type='text'>SAP LANDSCAPE</title><content type='html'>&lt;span style="font-weight:bold;"&gt;SAP LANDSCAPE:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Landscape is like a server system or like a layout of the servers or some may even call it the architecture of the servers viz. SAP is divided into three different lanscape DEV, QAS and PROD.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;DEV would have multiple clients for ex: 190- Sandbox, 100- Golden, 180- Unit Test.&lt;br /&gt;&lt;br /&gt;QAS may again have mutiple clients for ex: 300- Integration Test, 700 to 710 Training.&lt;br /&gt;&lt;br /&gt;PROD may have something like a 200 Production.&lt;br /&gt;&lt;br /&gt;These names and numbers are the implementer's discreet on how they want it or they have been using in their previous implementations or how is the client's business scenario.&lt;br /&gt;&lt;br /&gt;Now whatever you do in the Sandbox doesn't affect the other servers or clients. Whenever you think you are satisfied with your configuration and you think you can use it moving forward, you RE-DO it in the golden client (remember, this is a very neat and clean client and you cannot use it for rough usage).&lt;br /&gt;&lt;br /&gt;As you re-do everything that you had thought was important and usable, you get a transport request pop up upon saving everytime. You save it under a transport request and give your description to it. Thus the configuration is transported to the Unit Test client (180 in this example).&lt;br /&gt;&lt;br /&gt;You don't run any transaction or even use the SAP Easy Access screen on the 100 (golden) client. This is a configuration only client. Now upon a successful tranport by the Basis guy, you have all the configuration in the Testing client, just as it is in the Golden client. The configuration remains in sync between these two clients.&lt;br /&gt;&lt;br /&gt;But in the Testing client you can not even access SPRO (Display IMG) screen. It's a transaction only client where you perform the unit test. Upon a satisfactory unit test, you move the good configuration to the next SERVER (DEV).&lt;br /&gt;&lt;br /&gt;The incorrect or unsatisfactory configuration is corrected in Golden (may again as well be practised in the sandbox prior to Golden) and accordingly transported back to 180 (Unit Test) until the unit test affected by that particular config is satisfactory.&lt;br /&gt;&lt;br /&gt;The Golden client remains the 'database' (if you wanna call it that) or you may rather call it the 'ultimate' reference client for all the good, complete and final configuration that is being used in the implementation.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;In summary:&lt;br /&gt;&lt;br /&gt;Landscape : is the arrangement for the servers&lt;br /&gt;&lt;br /&gt;IDES : is purely for education purpose and is NOT INCLUDED in the landscape.&lt;br /&gt;&lt;br /&gt;DEVELOPMENT ---&gt; QUALITY ----&gt; PRODUCTION&lt;br /&gt;&lt;br /&gt;DEVELOPMENT : is where the the consultants do the customization as per the company's requirement.&lt;br /&gt;&lt;br /&gt;QUALITY : is where the core team members and other members test the customization.&lt;br /&gt;&lt;br /&gt;PRODUCTION : is where the live data of the company is recorded.&lt;br /&gt;&lt;br /&gt;A request will flow from Dev-&gt;Qual-&gt;Prod and not backwards.&lt;br /&gt;&lt;br /&gt;1. Sandbox server:&lt;br /&gt;&lt;br /&gt;In the initial stages of any implementation project, You are given&lt;br /&gt;a sandbox server where you do all the configuration/customization as per the companies business process.&lt;br /&gt;&lt;br /&gt;2. Development Server:&lt;br /&gt;&lt;br /&gt;Once the BBP gets signed off, the configuration is done is development server and saved in workbench requests, to be transported to Production server.&lt;br /&gt;&lt;br /&gt;3. Production Server:&lt;br /&gt;&lt;br /&gt;This is the last/ most refined client where the user will work after project GO LIVE. Any changes/ new develpoment is done is development client and the request is transported to production.&lt;br /&gt;&lt;br /&gt;These three are landscape of any Company. They organised their office in these three way. Developer develop their program in Development server and then transport it to test server. In testing server tester check/test the program and then transport it to Production Server. Later it will deploy to client from production server.&lt;br /&gt;&lt;br /&gt;Presentaion Server- Where SAP GUI have.&lt;br /&gt;Application Server - Where SAP Installed.&lt;br /&gt;Database Server - Where Database installed.&lt;br /&gt;&lt;br /&gt;What is the meaning of "R" in R/3 systems?&lt;br /&gt;&lt;br /&gt;R/3 stands for realtime three tier architecture. This is the kind of architrecture SAP R/3 system has.&lt;br /&gt;&lt;br /&gt;R/3 means three layers are installed in Different system/server and they are connected with each other.&lt;br /&gt;&lt;br /&gt;1)Presentation&lt;br /&gt;2)Application.&lt;br /&gt;3)Data base server.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-5563337660170344539?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/5563337660170344539/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=5563337660170344539' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/5563337660170344539'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/5563337660170344539'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/05/sap-landscape.html' title='SAP LANDSCAPE'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-554976733234565449</id><published>2009-05-09T10:33:00.000-07:00</published><updated>2009-05-09T10:40:42.504-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Reports'/><title type='text'>EVENTS In ABAP</title><content type='html'>&lt;span style="font-weight:bold;"&gt;Event Block&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;•Reporting events&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;INITIALIZATION&lt;br /&gt;START-OF-SELECTION&lt;br /&gt;GET &lt;br /&gt;END-OF-SELECTION&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;•Selection screen events&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;AT SELECTION-SCREEN OUTPUT&lt;br /&gt;AT SELECTION-SCREEN ON VALUE REQUEST&lt;br /&gt;AT SELECTION-SCREEN ON HELP REQUEST&lt;br /&gt;AT SELECTION-SCREEN ON &lt;f&gt;&lt;br /&gt;AT SELECTION-SCREEN ON BLOCK&lt;br /&gt;AT SELECTION-SCREEN ON RADIOBUTTON GROUP&lt;br /&gt;AT SELECTION SCREEN&lt;br /&gt;AT SELECTION SCREEN ON END OF &lt;f&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;•List events&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;TOP-OF-PAGE&lt;br /&gt;END-OF-PAGE&lt;br /&gt;AT LINE-SELECTION&lt;br /&gt;AT PF&lt;nn&gt;&lt;br /&gt;AT USER-COMMAND&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-554976733234565449?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/554976733234565449/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=554976733234565449' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/554976733234565449'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/554976733234565449'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/05/events-in-abap.html' title='EVENTS In ABAP'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-8441823179495861692</id><published>2009-05-07T23:44:00.000-07:00</published><updated>2009-05-08T06:48:57.765-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cross Applications'/><title type='text'>Cross Applications (Definitions)</title><content type='html'>1 Application Link Enabling (ALE)&lt;br /&gt;&lt;br /&gt;The ALE concept supports the construction and operation of distributed applications.&lt;br /&gt;The basic principle is the guarantee of a distributed, yet fully integrated, R/3 System installation.&lt;br /&gt;&lt;br /&gt;It incorporates the controlled exchange of business data messages whilst ensuring data consistency across loosely coupled R/3 Systems.&lt;br /&gt;The integration of various applications is achieved by using synchronous and asynchronous communication, rather than by means of a central database.&lt;br /&gt;ALE comprises three layers:&lt;br /&gt;&lt;br /&gt;• the applications services,&lt;br /&gt;• the distribution services,&lt;br /&gt;• the communications services.&lt;br /&gt;&lt;br /&gt;2 Transaction Data&lt;br /&gt;&lt;br /&gt;Transaction data is data that results from daily business management processes. Examples of transaction data are purchase order data and accounting data.&lt;br /&gt;&lt;br /&gt;3 CO-PA&lt;br /&gt;&lt;br /&gt;Abbreviation for Controlling - Profitability Analysis.&lt;br /&gt;&lt;br /&gt;4 EDI - Electronic Data Interchange&lt;br /&gt;&lt;br /&gt;Electronic Data Interchange is the electronic exchange of structured data (e.g. commercial documents) that is not limited to a single company, but which may take place between business partners at home or abroad who can be using different hardware, software and communication services.&lt;br /&gt;&lt;br /&gt;5 Filter Object&lt;br /&gt;&lt;br /&gt;A specific instance of the filter object type to which an organizational unit has been assigned, for example, "Plant" ® "Plant 0001".&lt;br /&gt;&lt;br /&gt;6 Filter Object Type&lt;br /&gt;&lt;br /&gt;A filter object type is a selection criterion in the distribution reference model that specifies the criteria which determine whether a function type can be used several times in a distributed system.&lt;br /&gt;&lt;br /&gt;7 Function&lt;br /&gt;&lt;br /&gt;A specific instance of a function type in the customer model.&lt;br /&gt;&lt;br /&gt;8 Function Type&lt;br /&gt;&lt;br /&gt;A function type defines a self-contained process in an application. An example of this is the posting for a movement of goods in inventory management.&lt;br /&gt;&lt;br /&gt;9 Function Type, Distributable&lt;br /&gt;&lt;br /&gt;A collection of function types which may be grouped together because of the related use of the various function types, and which may be seen as being distinct from other function types.&lt;br /&gt;&lt;br /&gt;10 IDoc&lt;br /&gt;&lt;br /&gt;Abbreviation of intermediate document (IDoc type )&lt;br /&gt;&lt;br /&gt;11 IDoc Type - Intermediate Document Type&lt;br /&gt;&lt;br /&gt;An intermediate document type is the structure of the data container used for transporting data from a system to a target system. It is independent of any specific application data.&lt;br /&gt;&lt;br /&gt;12 Logical System&lt;br /&gt;&lt;br /&gt;A logical system is a system in which different applications are integrated and run using common data. In SAP terms, this means a client in a database.&lt;br /&gt;&lt;br /&gt;13 Information Structures&lt;br /&gt;&lt;br /&gt;The most important key figures are selected from the mass of data arising from operational applications and are stored in special statistics files known as information structures. These include information on the time period, the characteristics and the key figures. An information structure can be distributed.&lt;br /&gt;&lt;br /&gt;14 Key Figures&lt;br /&gt;&lt;br /&gt;Key figures represent information that is periodically gathered or evaluated for characteristics (for example, lead time, deviation from schedule, capacity utilization, order stocks, quantities and rejects).&lt;br /&gt;&lt;br /&gt;15 Bulk Processing&lt;br /&gt;&lt;br /&gt;Several IDocs may be grouped into a packet and processed in a single step. This is called bulk processing.&lt;br /&gt;&lt;br /&gt;16 Characteristic&lt;br /&gt;&lt;br /&gt;A characteristic is a piece of information that can be used to effect a division in a group of objects, for example, plant, work center, material).&lt;br /&gt;&lt;br /&gt;17 Message Type&lt;br /&gt;&lt;br /&gt;The messages exchanged between systems are of various message types. The message type depends on the data contained and the process involved. It determines the technical structure of the message, the IDoc type. For example, the ORDERS message type is used for purchase order messages.&lt;br /&gt;&lt;br /&gt;18 Periods&lt;br /&gt;&lt;br /&gt;Periods include days, weeks, months and accounting periods.&lt;br /&gt;&lt;br /&gt;19 Item Category&lt;br /&gt;&lt;br /&gt;An item category is a classification that distinguishes between various types of item in, for example, an order (e.g. cost-free items, standard items). The way that processing is controlled depends on the item category.&lt;br /&gt;&lt;br /&gt;20 Serialization&lt;br /&gt;&lt;br /&gt;If several IDocs are sent within a short period of time then "overtaking" can occur, so that later changes arrive sooner than changes that were actually made earlier. In order to avoid incorrect updates being made, a serialization mechanism must be used that can spot "overtaking" and report it.&lt;br /&gt;&lt;br /&gt;21 SOP&lt;br /&gt;&lt;br /&gt;Sales &amp; Operations Planning.&lt;br /&gt;&lt;br /&gt;22 Customer Distribution Model&lt;br /&gt;&lt;br /&gt;The customer stores the exact distribution of functions across his various systems in the customer distribution model. The logical systems and message flows are specified here, possibly based on defined listings.&lt;br /&gt;&lt;br /&gt;23 Distribution Reference Model&lt;br /&gt;&lt;br /&gt;The reference model is included in the standard delivery from SAP. It specifies which functions can be distributed and how, and which data is exchanged between the fucntions. The customer uses the reference model as the basis for his customer distribution model .&lt;br /&gt;&lt;br /&gt;24 Workflow&lt;br /&gt;&lt;br /&gt;A workflow is defined as a sequence of processing steps (work item ). There may be branching points within this sequence.&lt;br /&gt;&lt;br /&gt;A workflow has a container. This holds the parameters used in the processing steps.&lt;br /&gt;In order to terminate the processing steps of a workflow, an event is triggered. The parameters are passed from the current step to the workflow container.&lt;br /&gt;&lt;br /&gt;The workflow manager checks which processing step should be called next. For example, if an 'Idoc read' step is terminated and a parameter indicating an error is passed, a step will be started that initiates manual processing.&lt;br /&gt;&lt;br /&gt;An error will also cause an event to be triggered If a function module has been called directly. However, in contrast to the situation with a workflow, it does not cause a workflow step to be terminated, but rather an error workflow is started.&lt;br /&gt;&lt;br /&gt;25 Work Item&lt;br /&gt;&lt;br /&gt;A work item represents the run-time environment for a standard task that is defined once in the system. A standard task contains a method that can be used for processing a specific object.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-8441823179495861692?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/8441823179495861692/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=8441823179495861692' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8441823179495861692'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8441823179495861692'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/05/cross-applications-definations.html' title='Cross Applications (Definitions)'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-8523916500947872728</id><published>2009-05-07T23:12:00.000-07:00</published><updated>2009-05-07T23:41:47.559-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SAP architecture'/><title type='text'>Complete SAP Modules:</title><content type='html'>&lt;span style="font-weight:bold;"&gt;Complete SAP Modules:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP Basis&lt;/span&gt;&lt;br /&gt;• Remote Function Calls (RFC) &lt;br /&gt;• Common Program Interface Communications (CPI-C) &lt;br /&gt;• Electronic Data Interchange (EDI) &lt;br /&gt;• Object Linking and Embedding (OLE) &lt;br /&gt;• Application Link Enabling (ALE) &lt;br /&gt;• Customising (BC-CUS) &lt;br /&gt;• Client Server Technology (BC - CST) &lt;br /&gt;• Network Integration (BC - NET)&lt;br /&gt;• ABAP Programming and Runtime Environment (BC - ABA) &lt;br /&gt;• Basis Services/ Communication Interfaces (BC - SRV) &lt;br /&gt;• Computing Center Management System (BC - CCM) &lt;br /&gt;• Upgrade General (BC - UPG) &lt;br /&gt;• Change and Transport System (BC - CTS) &lt;br /&gt;• Operating System Platform(BC - OP) &lt;br /&gt;• Database Interface, database platforms (BC - DB) &lt;br /&gt;• Front End Services (BC - FES) &lt;br /&gt;• ABAP Workbench (BC - DWB) &lt;br /&gt;• Documentation and Translation Tools (BC - DOC) &lt;br /&gt;• Security (BC - SEC) &lt;br /&gt;• Controls and Control Framework (BC - CI) &lt;br /&gt;• Business Management (BC - BMT) &lt;br /&gt;• Middleware (BC - MID) &lt;br /&gt;• Computer Aided Test Tool (BC - CAT) &lt;br /&gt;• Ready to Run R/3 (BC - BRR) &lt;br /&gt;• Authorisations System Monitoring with CCMS Workload Alert Monitor &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP Hardware&lt;/span&gt;&lt;br /&gt;• AS400&lt;br /&gt;• AT&amp;T &lt;br /&gt;• Bull &lt;br /&gt;• Compaq Digital &lt;br /&gt;• HP &lt;br /&gt;• IBM &lt;br /&gt;• Sequent &lt;br /&gt;• SNI &lt;br /&gt;• Sun &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP Database&lt;/span&gt;&lt;br /&gt;• Adabas D &lt;br /&gt;• DB2 for AIX&lt;br /&gt;• DB2/400 &lt;br /&gt;• Informix &lt;br /&gt;• MS SQL &lt;br /&gt;• My SQL &lt;br /&gt;• Oracle &lt;br /&gt;• Sybase &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Operating System &lt;/span&gt;&lt;br /&gt;• AIX&lt;br /&gt;• HP UX &lt;br /&gt;• MS Windows NT OS/400 &lt;br /&gt;• Sinux &lt;br /&gt;• Solaris &lt;br /&gt;• Unix&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;ABAP/4 Programming&lt;/span&gt;&lt;br /&gt;• SAP Script&lt;br /&gt;• Business Workflow (BC - WF) &lt;br /&gt;• ALE &lt;br /&gt;• EDI &lt;br /&gt;• Business Connector &lt;br /&gt;• Business Server Pages &lt;br /&gt;• Internet Application Server &lt;br /&gt;• Mercator Report Painter &lt;br /&gt;• Dialog Programming &lt;br /&gt;• Repository Information System &lt;br /&gt;• Menu Painter &lt;br /&gt;• ABAP 00 &lt;br /&gt;• IDOCS &lt;br /&gt;• LSMW &lt;br /&gt;• Smartforms &lt;br /&gt;• EBP &lt;br /&gt;• ASAP methodology &lt;br /&gt;• ALV reporting &lt;br /&gt;• Report writer &lt;br /&gt;• ABAP Query &lt;br /&gt;• Data Dictionary &lt;br /&gt;• Screen Painter &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP FI (Financial Accounting)&lt;/span&gt;&lt;br /&gt;• Accounts Payable (FI- AP) &lt;br /&gt;• Accounts Receivable (FI - AR) &lt;br /&gt;• Asset Accounting (FI - AA) &lt;br /&gt;• General Ledger Accounting (FI - GL) &lt;br /&gt;• Special Ledger (FI - SL) &lt;br /&gt;• Funds Management (FI - FM) &lt;br /&gt;• Travel Management (FI-TM) &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP TR (Treasury)&lt;/span&gt;&lt;br /&gt;• Cash Management (TR - CM) &lt;br /&gt;• Treasury Management (TR - TM) &lt;br /&gt;• Loans Management (TR - LM) &lt;br /&gt;• Funds Management (TR - FM) &lt;br /&gt;• Market Risk Management (TR - MRM) &lt;br /&gt;• Information System &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP CO (Controlling)&lt;/span&gt;&lt;br /&gt;• Cost Centre Accounting (CO - CCA) &lt;br /&gt;• Overhead Cost Controlling (CO - OM) &lt;br /&gt;• Activity Based Coding (CO - ABC) &lt;br /&gt;• Product Cost Controlling (CO - PC) &lt;br /&gt;• Profitability Analysis (CO - PA) &lt;br /&gt;• Material Ledger (CO - ML) &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP EC (Enterprise Controlling)&lt;/span&gt;&lt;br /&gt;• Consolidation (EC - CS) &lt;br /&gt;• Profit Center Accounting (EC - PCA) &lt;br /&gt;• Executive Information System (EC-EIS) &lt;br /&gt;• Business Planning and Budgeting &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP IM (Investment Management)&lt;/span&gt;&lt;br /&gt;• Investment Programmes &lt;br /&gt;• Investment Measures (orders/products) &lt;br /&gt;• Appropriation Requests &lt;br /&gt;• Corporation Wide Budgeting &lt;br /&gt;• Depreciation Forecast &lt;br /&gt;• Automatic Settlement of Fixed Assets&lt;br /&gt;• Information System &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP HR (Human Resource)&lt;/span&gt;&lt;br /&gt;• Personnel Administration&lt;br /&gt;• Benefits Administration &lt;br /&gt;• Compensation Management &lt;br /&gt;• Recruitment &lt;br /&gt;• Travel Management &lt;br /&gt;• Personnel Development &lt;br /&gt;• Organisational Management &lt;br /&gt;• Training and Events Management &lt;br /&gt;• Personnel Planning &lt;br /&gt;• Time Management &lt;br /&gt;• Incentive &lt;br /&gt;• Wages &lt;br /&gt;• Workflow &lt;br /&gt;• Internet Scenarios &lt;br /&gt;• Payroll &lt;br /&gt;• Information System &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP SMB&lt;/span&gt;&lt;br /&gt;• SAP SMB&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP BW&lt;/span&gt;&lt;br /&gt;• Data Warehousing&lt;br /&gt;• BI Platform &lt;br /&gt;• BI Suite - Business Explorer &lt;br /&gt;• Development Technologies &lt;br /&gt;• ODS Structures &lt;br /&gt;• Info Cube &lt;br /&gt;• Design Build &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP IS (Industry Solutions) / SAP for Industries&lt;/span&gt;&lt;br /&gt;• Aerospace &amp; Defence&lt;br /&gt;• Retail &lt;br /&gt;• Consumer Products &lt;br /&gt;• Defence &amp; Security &lt;br /&gt;• Insurance &lt;br /&gt;• Industrial Machinery &amp; Components &lt;br /&gt;• Logistics Service Providers &lt;br /&gt;• Mill Products &lt;br /&gt;• Higher Education &amp; Research &lt;br /&gt;• Automotive &lt;br /&gt;• Banking &lt;br /&gt;• Telecoms &lt;br /&gt;• Chemicals &lt;br /&gt;• Pharmaceuticals &lt;br /&gt;• Life Sciences &lt;br /&gt;• Mining &lt;br /&gt;• Media &lt;br /&gt;• Public Sector &lt;br /&gt;• Service Provider &lt;br /&gt;• Utilities &lt;br /&gt;• Healthcare &lt;br /&gt;• Oil &amp; Gas &lt;br /&gt;• Postal Services &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP SD (Sales and Distribution)&lt;/span&gt;&lt;br /&gt;• Master Data&lt;br /&gt;• Sales &lt;br /&gt;• Special Business Transactions &lt;br /&gt;• Shipping &lt;br /&gt;• Billing &lt;br /&gt;• Credit Control &lt;br /&gt;• Sales Support &lt;br /&gt;• QM in SD &lt;br /&gt;• Internet &lt;br /&gt;• Transportation &lt;br /&gt;• Foreign Trade &lt;br /&gt;• Sales Information System &lt;br /&gt;• Electronic Data Interchange &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP Logistics Information System&lt;/span&gt;&lt;br /&gt;• Sales Information System&lt;br /&gt;• Purchasing Information System &lt;br /&gt;• Inventory Controlling &lt;br /&gt;• Production Planning and Control Information System &lt;br /&gt;• Plant Maintenance Information System &lt;br /&gt;• Project Information System &lt;br /&gt;• Retail Information System &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP QM - Quality Management&lt;/span&gt;&lt;br /&gt;• Planning&lt;br /&gt;• Inspections &lt;br /&gt;• Control &lt;br /&gt;• Notifications &lt;br /&gt;• Certificates &lt;br /&gt;• Test Equipment Management &lt;br /&gt;• QM-IS&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP MM (Materials Management)&lt;/span&gt;&lt;br /&gt;• Logistics (General)&lt;br /&gt;• Logistics Information System &lt;br /&gt;• Purchasing &lt;br /&gt;• Inventory Management &lt;br /&gt;• Invoice Verification &lt;br /&gt;• Inventory / Valuations &lt;br /&gt;• Materials Planning &lt;br /&gt;• Workflow &lt;br /&gt;• External Services Management &lt;br /&gt;• QM in MM &lt;br /&gt;• Warehouse Management &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP PM (Plant Maintenance)&lt;/span&gt;&lt;br /&gt;• Preventative Maintenance &lt;br /&gt;• Service Management &lt;br /&gt;• Maintenance Order Management &lt;br /&gt;• Maintenance Projects &lt;br /&gt;• Equipment and Technical Objects &lt;br /&gt;• Structuring Technical Systems &lt;br /&gt;• Maintenance Planning &lt;br /&gt;• PM Processing &lt;br /&gt;• Work Clearance Management &lt;br /&gt;• Internet Scenarios &lt;br /&gt;• Customising &lt;br /&gt;• Information System &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP CS (Customer Service)&lt;/span&gt;&lt;br /&gt;• Service Processing&lt;br /&gt;• Service Contracts &lt;br /&gt;• Controlling&lt;br /&gt;• Workflow in Customer Service &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP PP (Production Planning)&lt;/span&gt;&lt;br /&gt;• Make to Order (CR) &lt;br /&gt;• Make to Order (PIR) &lt;br /&gt;• Repetitive Manufacturing &lt;br /&gt;• PP for Process Industries (PP - PI)&lt;br /&gt;• PP - Processes &lt;br /&gt;• Sales and Operations Planning &lt;br /&gt;• Master Planning &lt;br /&gt;• Capacity requirements &lt;br /&gt;• KANBAN &lt;br /&gt;• Production Orders &lt;br /&gt;• Product Cost Planning &lt;br /&gt;• Assembly Orders &lt;br /&gt;• Plant Data Collection &lt;br /&gt;• Information System &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP CA (Cross Application Components)&lt;/span&gt;&lt;br /&gt;• Application Link Enabling (ALE) &lt;br /&gt;• SAP Business Workflow &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP PS (Project Systems)&lt;/span&gt;&lt;br /&gt;• Basic Data&lt;br /&gt;• Operational Structures &lt;br /&gt;• Project Planning &lt;br /&gt;• Approval &lt;br /&gt;• Project Execution and Integration &lt;br /&gt;• Information System &lt;br /&gt;• Work Breakdown Structure &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;mySAP SRM (Supplier Relationship Management)&lt;/span&gt;&lt;br /&gt;• Self Service Procurement &lt;br /&gt;• Service Procurement &lt;br /&gt;• Plan Driven Procurement &lt;br /&gt;• Spend Analysis &lt;br /&gt;• Strategic Sourcing &lt;br /&gt;• Catalogue Content Management &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;mySAP SEM&lt;/span&gt;&lt;br /&gt;• Business Consolidation (SEM-BCS) &lt;br /&gt;• Business Information Collection (SEM-BIC) &lt;br /&gt;• Business Planning and Simulation (BW-BPS) &lt;br /&gt;• Corporate Performance Monitor (SEM-CPM) &lt;br /&gt;• Stakeholder Relationship Management (SEM-SRM) &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;mySAP CRM (Customer Relationship Management)&lt;/span&gt;&lt;br /&gt;• CRM Enterprise &lt;br /&gt;• Field Applications &lt;br /&gt;• E-Commerce &lt;br /&gt;• Interaction Center &lt;br /&gt;• Channel Management &lt;br /&gt;• Industry Specific CRM &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;mySAP Product Life Cycle Management&lt;/span&gt;&lt;br /&gt;• Document Management&lt;br /&gt;• Enterprise Content Management &lt;br /&gt;• Engineering Change Management &lt;br /&gt;• Classification &lt;br /&gt;• Basic Data for Process Manufacturing &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP SCM (SAP Supply Chain Management)&lt;/span&gt;&lt;br /&gt;• SCM Process and Business Scenarios&lt;br /&gt;• SAP Advance Planning and Optimization (SAP - APO) &lt;br /&gt;• SAP Forecasting and Replenishment &lt;br /&gt;• SAP Inventory Collaboration Hub (SAP - OCH) &lt;br /&gt;• SAP Event Management (SAP - EM) &lt;br /&gt;• SCM Basis &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP Netweaver&lt;/span&gt;&lt;br /&gt;• SAP Masterdata Management &lt;br /&gt;• Portal Content &lt;br /&gt;• Information Integration &lt;br /&gt;• Process Integration &lt;br /&gt;• Life Cycle Management &lt;br /&gt;• Knowledge Management &lt;br /&gt;• SAP Visual Composer &lt;br /&gt;• SAP Business Intelligence &lt;br /&gt;• People Integration &lt;br /&gt;• Application Platform &lt;br /&gt;• Security &lt;br /&gt;• SAP Web Application Server &lt;br /&gt;• SAP Business Information Warehouse &lt;br /&gt;• SAP Enterprise Portal &lt;br /&gt;• SAP Solution Manager &lt;br /&gt;• SAP Mobile Engine&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-8523916500947872728?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/8523916500947872728/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=8523916500947872728' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8523916500947872728'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8523916500947872728'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/05/complete-sap-modules.html' title='Complete SAP Modules:'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-8037866371625469500</id><published>2009-05-02T22:05:00.000-07:00</published><updated>2009-05-02T22:26:35.654-07:00</updated><title type='text'>ABAP Performance Standards</title><content type='html'>Following are the performance standards need to be following in writing ABAP programs: &lt;br /&gt;&lt;br /&gt;1.      Unused/Dead code &lt;br /&gt;&lt;br /&gt;Avoid leaving unused code in the program. Either comment out or delete the unused situation. Use program --&gt; check --&gt; extended program to check for the variables, which are not used statically.  &lt;br /&gt;&lt;br /&gt;2.      Subroutine Usage &lt;br /&gt;&lt;br /&gt;For good modularization, the decision of whether or not to execute a subroutine should be made before the subroutine is called. For example:   &lt;br /&gt;&lt;br /&gt;This is better:&lt;br /&gt;IF f1 NE 0. &lt;br /&gt;&lt;br /&gt;  PERFORM sub1. &lt;br /&gt;&lt;br /&gt;ENDIF.  &lt;br /&gt;&lt;br /&gt;FORM sub1.&lt;br /&gt;  ... &lt;br /&gt;ENDFORM.   &lt;br /&gt;&lt;br /&gt;Than this: &lt;br /&gt;&lt;br /&gt;PERFORM sub1. &lt;br /&gt;&lt;br /&gt;FORM sub1.&lt;br /&gt;  IF f1 NE 0.&lt;br /&gt;    ... &lt;br /&gt;  ENDIF. &lt;br /&gt;&lt;br /&gt;ENDFORM.  &lt;br /&gt;&lt;br /&gt;3.      Usage of IF statements &lt;br /&gt;&lt;br /&gt;When coding IF tests, nest the testing conditions so that the outer conditions are those which are most likely to fail. For logical expressions with AND , place the mostly likely false first and for the OR, place the mostly likely true first.  &lt;br /&gt;&lt;br /&gt;Example - nested IF's: &lt;br /&gt;&lt;br /&gt;  IF (least likely to be true). &lt;br /&gt;&lt;br /&gt;    IF (less likely to be true). &lt;br /&gt;&lt;br /&gt;     IF (most likely to be true).&lt;br /&gt;     ENDIF.&lt;br /&gt;    ENDIF.&lt;br /&gt;   ENDIF.  &lt;br /&gt;&lt;br /&gt;Example - IF...ELSEIF...ENDIF : &lt;br /&gt;&lt;br /&gt;  IF (most likely to be true). &lt;br /&gt;&lt;br /&gt;  ELSEIF (less likely to be true). &lt;br /&gt;&lt;br /&gt;  ELSEIF (least likely to be true). &lt;br /&gt;&lt;br /&gt;  ENDIF.  &lt;br /&gt;&lt;br /&gt;Example - AND: &lt;br /&gt;&lt;br /&gt;   IF (least likely to be true) AND &lt;br /&gt;      (most likely to be true). &lt;br /&gt;&lt;br /&gt;   ENDIF. &lt;br /&gt;&lt;br /&gt;Example - OR: &lt;br /&gt;&lt;br /&gt;        IF (most likely to be true) OR&lt;br /&gt;      (least likely to be true).  &lt;br /&gt;&lt;br /&gt;4.      CASE vs. nested Ifs&lt;br /&gt;&lt;br /&gt;When testing fields "equal to" something, one can use either the nested IF or the CASE statement. The CASE is better for two reasons. It is easier to read and after about five nested IFs the performance of the CASE is more efficient.  &lt;br /&gt;&lt;br /&gt;5.      MOVE statements &lt;br /&gt;&lt;br /&gt;When records a and b have the exact same structure, it is more efficient to MOVE a TO b than to  MOVE-CORRESPONDING a TO b. &lt;br /&gt;&lt;br /&gt; MOVE BSEG TO *BSEG. &lt;br /&gt;&lt;br /&gt;is better than &lt;br /&gt;&lt;br /&gt; MOVE-CORRESPONDING BSEG TO *BSEG.  &lt;br /&gt;&lt;br /&gt;6.      SELECT and SELECT SINGLE &lt;br /&gt;&lt;br /&gt;When using the SELECT statement, study the key and always provide as much of the left-most part of the key as possible. If the entire key can be qualified, code a SELECT SINGLE not just a SELECT.   If you are only interested in the first row or there is only one row to be returned, using SELECT SINGLE can increase performance by up to three times.  &lt;br /&gt;&lt;br /&gt;7.      Small internal tables vs. complete internal tables &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;In general it is better to minimize the number of fields declared in an internal table.  While it may be convenient to declare an internal table using the LIKE command, in most cases, programs will not use all fields in the SAP standard table. &lt;br /&gt;&lt;br /&gt;For example: &lt;br /&gt;&lt;br /&gt;Instead of this: &lt;br /&gt;&lt;br /&gt;data:  t_mara like mara occurs 0 with header line. &lt;br /&gt;&lt;br /&gt;Use this: &lt;br /&gt;&lt;br /&gt;data: begin of t_mara occurs 0, &lt;br /&gt;&lt;br /&gt;        matnr like mara-matnr,&lt;br /&gt;        ...&lt;br /&gt;        end of t_mara.  &lt;br /&gt;&lt;br /&gt;8.      Row-level processing and SELECT SINGLE &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Similar to the processing of a SELECT-ENDSELECT loop, when calling multiple SELECT-SINGLE commands on a non-buffered table (check Data Dictionary -&gt; Technical Info), you should do the following to improve performance: &lt;br /&gt;&lt;br /&gt;o       Use the SELECT into &lt;itab&gt; to buffer the necessary rows in an internal table, then&lt;br /&gt;&lt;br /&gt;o       sort the rows by the key fields, then &lt;br /&gt;&lt;br /&gt;o       use a READ TABLE WITH KEY ... BINARY SEARCH in place of the SELECT SINGLE command. Note that this only make sense when the table you are buffering is not too large (this decision must be made on a case by case basis).&lt;br /&gt;&lt;br /&gt;9.      READing single records of internal tables&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;When reading a single record in an internal table, the READ TABLE WITH KEY is not a direct READ.  This means that if the data is not sorted according to the key, the system must sequentially read the table.   Therefore, you should: &lt;br /&gt;&lt;br /&gt;o       SORT the table&lt;br /&gt;&lt;br /&gt;o       use READ TABLE WITH KEY BINARY SEARCH for better performance.  &lt;br /&gt;&lt;br /&gt;10.  SORTing internal tables &lt;br /&gt;&lt;br /&gt;When SORTing internal tables, specify the fields to SORTed.&lt;br /&gt;&lt;br /&gt;SORT ITAB BY FLD1 FLD2.&lt;br /&gt;&lt;br /&gt; is more efficient than&lt;br /&gt;&lt;br /&gt;SORT ITAB.   &lt;br /&gt;&lt;br /&gt;11.  Number of entries in an internal table &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;To find out how many entries are in an internal table use DESCRIBE.&lt;br /&gt;&lt;br /&gt;DESCRIBE TABLE ITAB LINES CNTLNS.&lt;br /&gt;&lt;br /&gt; is more efficient than&lt;br /&gt;&lt;br /&gt;LOOP AT ITAB.&lt;br /&gt;&lt;br /&gt;  CNTLNS = CNTLNS + 1.&lt;br /&gt;&lt;br /&gt;ENDLOOP.  &lt;br /&gt;&lt;br /&gt;12.  Performance diagnosis &lt;br /&gt;&lt;br /&gt;To diagnose performance problems, it is recommended to use the SAP transaction SE30, ABAP/4 Runtime Analysis. The utility allows statistical analysis of transactions and programs.  &lt;br /&gt;&lt;br /&gt;13.  Nested SELECTs versus table views &lt;br /&gt;&lt;br /&gt;Since releASE 4.0, OPEN SQL allows both inner and outer table joins.  A nested SELECT loop may be used to accomplish the same concept.  However, the performance of nested SELECT loops is very poor in comparison to a join.  Hence, to improve performance by a factor of 25x and reduce network load, you should either create a view in the data dictionary then use this view to select data, or code the select using a join.  &lt;br /&gt;&lt;br /&gt;14.  If nested SELECTs must be used &lt;br /&gt;&lt;br /&gt;As mentioned previously, performance can be dramatically improved by using views instead of nested SELECTs, however, if this is not possible, then the following example of using an internal table in a nested SELECT can also improve performance by a factor of 5x:&lt;br /&gt;&lt;br /&gt;Use this:&lt;br /&gt;form select_good.&lt;br /&gt;&lt;br /&gt;  data: t_vbak like vbak occurs 0 with header line.&lt;br /&gt;  data: t_vbap like vbap occurs 0 with header line.&lt;br /&gt;&lt;br /&gt;  select * from vbak into table t_vbak up to 200 rows.&lt;br /&gt;  select * from vbap &lt;br /&gt;          for all entries in t_vbak&lt;br /&gt;          where vbeln = t_vbak-vbeln.&lt;br /&gt;    ...&lt;br /&gt;  endselect.&lt;br /&gt;&lt;br /&gt;endform.&lt;br /&gt;&lt;br /&gt;Instead of this:&lt;br /&gt;form select_bad.&lt;br /&gt;&lt;br /&gt; select * from vbak up to 200 rows.&lt;br /&gt;&lt;br /&gt;  select * from vbap where vbeln = vbak-vbeln.&lt;br /&gt;      ...&lt;br /&gt;  endselect.&lt;br /&gt;&lt;br /&gt; endselect.&lt;br /&gt;&lt;br /&gt;endform.&lt;br /&gt;&lt;br /&gt;Although using "SELECT...FOR ALL ENTRIES IN..." is generally very fast, you should be aware of the three pitfalls of using it:&lt;br /&gt;&lt;br /&gt;Firstly, SAP automatically removes any duplicates from the rest of the retrieved records.  Therefore, if you wish to ensure that no qualifying records are discarded, the field list of the inner SELECT must be designed to ensure the retrieved records will contain no duplicates (normally, this would mean including in the list of retrieved fields all of those fields that comprise that table's primary key).&lt;br /&gt;&lt;br /&gt;Secondly,  if you were able to code "SELECT ... FROM &lt;database table&gt; FOR ALL ENTRIES IN TABLE &lt;itab&gt;" and the internal table &lt;itab&gt; is empty, then all rows from &lt;database table&gt; will be retrieved.&lt;br /&gt;&lt;br /&gt;Thirdly, if the internal table supplying the selection criteria (i.e. internal table &lt;itab&gt; in the example "...FOR ALL ENTRIES IN TABLE &lt;itab&gt; ") contains a large number of entries, performance degradation may occur. &lt;br /&gt;&lt;br /&gt;15.  SELECT * versus SELECTing individual fields &lt;br /&gt;&lt;br /&gt;In general, use a SELECT statement specifying a list of fields instead of a SELECT * to reduce network traffic and improve performance.  For tables with only a few fields the improvements may be minor, but many SAP tables contain more than 50 fields when the program needs only a few.  In the latter case, the performace gains can be substantial.  For example:&lt;br /&gt;&lt;br /&gt;Use:&lt;br /&gt;&lt;br /&gt;select vbeln auart vbtyp from table vbak&lt;br /&gt;&lt;br /&gt;  into (vbak-vbeln, vbak-auart, vbak-vbtyp)&lt;br /&gt;&lt;br /&gt;  where ...&lt;br /&gt;&lt;br /&gt;Instead of using:&lt;br /&gt;&lt;br /&gt;select * from vbak where ...  &lt;br /&gt;&lt;br /&gt;16.  Avoid unnecessary statements&lt;br /&gt;&lt;br /&gt;There are a few cases where one command is better than two.  For example:&lt;br /&gt;&lt;br /&gt;Use:&lt;br /&gt;&lt;br /&gt;append &lt;tab_wa&gt; to &lt;tab&gt;.&lt;br /&gt;&lt;br /&gt;Instead of:&lt;br /&gt;&lt;br /&gt;&lt;tab&gt; = &lt;tab_wa&gt;.&lt;br /&gt;&lt;br /&gt;append &lt;tab&gt; (modify &lt;tab&gt;).&lt;br /&gt;&lt;br /&gt;And also, use:&lt;br /&gt;&lt;br /&gt;if not &lt;tab&gt;[] is initial.&lt;br /&gt;&lt;br /&gt;Instead of:&lt;br /&gt;&lt;br /&gt;describe table &lt;tab&gt; lines &lt;line_counter&gt;.&lt;br /&gt;&lt;br /&gt;if &lt;line_counter&gt; &gt; 0.  &lt;br /&gt;&lt;br /&gt;17.  Copying or appending internal tables&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Use this: &lt;br /&gt;&lt;br /&gt;&lt;tab2&gt;[] = &lt;tab1&gt;[].  (if &lt;tab2&gt; is empty)&lt;br /&gt;&lt;br /&gt;Instead of this:&lt;br /&gt;&lt;br /&gt;loop at &lt;tab1&gt;.&lt;br /&gt;&lt;br /&gt;  append &lt;tab1&gt; to &lt;tab2&gt;.&lt;br /&gt;&lt;br /&gt;endloop.&lt;br /&gt;&lt;br /&gt;However, if &lt;tab2&gt; is not empty and should not be overwritten, then use:&lt;br /&gt;&lt;br /&gt;append lines of &lt;tab1&gt; [from index1] [to index2] to &lt;tab2&gt;.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-8037866371625469500?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/8037866371625469500/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=8037866371625469500' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8037866371625469500'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8037866371625469500'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/05/abap-performance-standards.html' title='ABAP Performance Standards'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-8454860440609144726</id><published>2009-05-02T21:57:00.000-07:00</published><updated>2009-05-02T21:59:26.052-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Basis'/><title type='text'>Background Job Processing</title><content type='html'>&lt;span style="font-weight:bold;"&gt;Understanding Background Job Processing&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;In background processing, the SAP System automatically runs any report or program in the specified time or time intervals. The background processing system starts your job and runs the program(s) that you specify. Afterwards, you can check whether your job was executed successfully and display a log of any system messages.&lt;br /&gt;&lt;br /&gt;Features:&lt;br /&gt;* Running a report in the background does not tie up the SAP sessions you are currently working with.&lt;br /&gt;* You can shift the execution of reports to the evening or other periods depending on load on the SAP System.&lt;br /&gt;* Background processing is the only way you can execute long-running jobs.&lt;br /&gt;&lt;br /&gt;Background jobs run in a special type of work process—the background work process—that is different from dialog work processes in two ways:&lt;br /&gt;* A dialog step has a run-time limit that prevents users from interactively running especially long reports. By default, the system terminates any dialog step in a transaction that exceeds 300 seconds. Although the limit can be changed (in the system profile parameter rdisp/max_wprun_time ), it is always in effect for dialog work processes. No such limit applies to background work processes.&lt;br /&gt;* Background work processes allocate memory differently than dialog work processes so that background work processes can become as large as they need to in allocated memory to allow for processing large volumes of data.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-8454860440609144726?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/8454860440609144726/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=8454860440609144726' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8454860440609144726'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8454860440609144726'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/05/background-job-processing.html' title='Background Job Processing'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-1625229213018082813</id><published>2009-05-02T21:49:00.000-07:00</published><updated>2009-05-02T21:52:32.906-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Basis'/><title type='text'>The clients 000, 001 and 066</title><content type='html'>&lt;span style="font-weight:bold;"&gt;Understanding the clients 000, 001 and 066&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Clients 000, 001 and 066 are standard clients that are pre-delivered by SAP. These clients are not supposed to be used in development, quality and production environments.&lt;br /&gt;&lt;br /&gt;Client 000 is basically used as working client only when you do support pack upgrade or ABAP load generations (SGEN) and implementing additional languages, etc. Otherwise, client 000 should not be used as a working client. The same applies to client 001. But the only exception with 001 is, with Solution Manager, 001 will be your working client. You will do all configurations and obtain support from SAP through this client. With other Systems like BW and CRM, this client (001) will not be a working client. Two standard users (SAP* and DDIC) are defined in the clients 000 and 001.&lt;br /&gt;&lt;br /&gt;The client 066 is used only for EarlyWatch functions (Monitoring and Performance). The user EarlyWatch is delivered in client 066 and is protected using the password SUPPORT. This password needs to be changed for security purposes.&lt;blockquote&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-1625229213018082813?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/1625229213018082813/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=1625229213018082813' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/1625229213018082813'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/1625229213018082813'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/05/clients-000-001-and-066.html' title='The clients 000, 001 and 066'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-8788686643888655470</id><published>2009-04-29T10:34:00.000-07:00</published><updated>2009-04-29T10:40:10.453-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Real-Time Stuffs'/><title type='text'>Usefull SAP Tansactions</title><content type='html'>&lt;span style="font-weight:bold;"&gt;Usefull Tansactions List &lt;/span&gt;&lt;br /&gt;--------------------------------------------------------------------&lt;br /&gt;OSS1    SAP Online Service System &lt;br /&gt;OY19    Compare Tables &lt;br /&gt;S001    ABAP Development Workbench &lt;br /&gt;S002    System Administration. &lt;br /&gt;SA38    Execute a program. &lt;br /&gt;SCAT    Computer Aided Test Tool &lt;br /&gt;SCU0    Compare Tables &lt;br /&gt;SE01    Old Transport &amp; Corrections screen &lt;br /&gt;SE09    Workbench Organizer &lt;br /&gt;SE10    Customizing Organizer &lt;br /&gt;SE10    Customizing organizer – requests for user (To release for transport – enter user name, press Enter. Select changed object and select ReleaseSE10 New Transport &amp; Correction screen &lt;br /&gt;SE11      ABAP/4 Dictionary Maintenance SE12 ABAP/4 Dictionary Display SE13 Maintain Technical Settings (Tables) &lt;br /&gt;SE11    ABAP/4 Dictionary. &lt;br /&gt;SE12    Dictionary: Initial Screen – enter object name &lt;br /&gt;SE13    Access tables in ABAP/4 Dictionary. &lt;br /&gt;SE14    ABAP/4 Dictionary: Database Utility. &lt;br /&gt;SE14   Utilities for Dictionary Tables &lt;br /&gt;SE15    ABAP/4 Repository Information System &lt;br /&gt;SE15    ABAP/4 Repository Information System. &lt;br /&gt;SE16    Data Browser &lt;br /&gt;SE16    Data Browser: Initial Screen. &lt;br /&gt;SE16    Display table contents &lt;br /&gt;SE17   General Table Display &lt;br /&gt;SE30   ABAP/4 Runtime Analysis &lt;br /&gt;SE30   ABAP/4 Runtime Analysis: Initial Screen. &lt;br /&gt;SE30    Run Time Analysis (press Tips and Tricks button for good stuff) &lt;br /&gt;SE32    ABAP/4 Text Element Maintenance &lt;br /&gt;SE35    ABAP/4 Dialog Modules &lt;br /&gt;SE36   ABAP/4: Logical Databases &lt;br /&gt;SE37    ABAP/4 Function Library. &lt;br /&gt;SE37    ABAP/4 Function Modules &lt;br /&gt;SE38    ABAP Editor &lt;br /&gt;SE38    ABAP/4 Editor. &lt;br /&gt;SE38   ABAP/4 Program Development &lt;br /&gt;SE39    Splitscreen Editor: Program Compare &lt;br /&gt;SE41    Menu Painter &lt;br /&gt;SE43    Maintain Area Menu &lt;br /&gt;SE51    Screen Painter &lt;br /&gt;SE51    Screen Painter: Initial Screen. &lt;br /&gt;SE54    Generate View Maintenance Module &lt;br /&gt;SE61    R/3 Documentation &lt;br /&gt;SE62    Industry utilities &lt;br /&gt;SE63    Translate Short/Long Text. &lt;br /&gt;SE63    Translation      &lt;br /&gt;SE64    Terminology &lt;br /&gt;SE65    R/3 documents. Short text statistics SE66 R/3 Documentation Statistics (Test!) &lt;br /&gt;SE68    Translation Administration &lt;br /&gt;SE71    SAPscript layout set &lt;br /&gt;SE71    SAPscript Layouts Create/Change &lt;br /&gt;SE72    SAPscript styles &lt;br /&gt;SE73    SAPscript font maintenance (revised) &lt;br /&gt;SE74    SAPscript format conversion &lt;br /&gt;SE75    SAPscript Settings &lt;br /&gt;SE76    SAPscript Translation Layout Sets &lt;br /&gt;SE77    SAPscript Translation Styles &lt;br /&gt;SE80    ABAP/4 Development Workbench &lt;br /&gt;SE80    Repository Browser: Initial Screen. &lt;br /&gt;SE81    SAP Application Hierarchy &lt;br /&gt;SE82    Customer Application Hierarchy &lt;br /&gt;SE84    ABAP/4 Repository Information System &lt;br /&gt;SE85    ABAP/4 Dictionary Information System &lt;br /&gt;SE86    ABAP/4 Repository Information System &lt;br /&gt;SE87    Data Modeler Information System &lt;br /&gt;SE88   Development Coordination Info System &lt;br /&gt;SE91    Maintain Messages &lt;br /&gt;SE92    Maintain system log messages &lt;br /&gt;SE93    Maintain Transaction Codes &lt;br /&gt;SE93    Maintain Transaction. &lt;br /&gt;SEU    Object Browser &lt;br /&gt;SHD0    Transaction variant maintenance &lt;br /&gt;SM04    Overview of Users (cancel/delete sessions) &lt;br /&gt;SM04    Overview of Users. &lt;br /&gt;SM12    Deletion of lock entries (in the event you have you are locked out). &lt;br /&gt;SM12    Lock table entries (unlock locked tables) &lt;br /&gt;SM21    View the system log, very useful when you get a short dump. Provides much more info than short dump  &lt;br /&gt;SM30    Maintain Table Views. &lt;br /&gt;SM31    Table Maintenance &lt;br /&gt;SM32    Table maintenance &lt;br /&gt;SM35    View Batch Input Sessions &lt;br /&gt;SM37    View background jobs &lt;br /&gt;SM50    Process Overview. &lt;br /&gt; SM51    Delete jobs from system (BDC) &lt;br /&gt;SM62    Display/Maintain events in SAP, also use function BP_EVENT_RAISE &lt;br /&gt;SMEN    Display the menu path to get to a transaction &lt;br /&gt;SMOD/CMOD   Transactions for processing/editing/activating new customer enhancements. &lt;br /&gt;SNRO    Object browser for number range maintenance. &lt;br /&gt;SPRO    Start SAP IMG (Implementation Guide). &lt;br /&gt;SQ00    ABAP/4 Query: Start Queries &lt;br /&gt;SQ01    ABAP/4 Query: Maintain Queries &lt;br /&gt;SQ02    ABAP/4 Query: Maintain Funct. Areas &lt;br /&gt;SQ03    ABAP/4 Query: Maintain User Groups &lt;br /&gt;SQ07    ABAP/4 Query: Language Comparison &lt;br /&gt;ST05    Trace SQL Database Requests. &lt;br /&gt;SU53    Display Authorization Values for User. &lt;br /&gt; &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Human Resources &lt;/span&gt;&lt;br /&gt; &lt;br /&gt;PA03    Change Payroll control record &lt;br /&gt;PA20    Display PA Infotypes &lt;br /&gt;PA30    Create/Change PA Infotypes &lt;br /&gt;PP02    Quick Entry for PD object creation &lt;br /&gt;PU00    Delete PA infotypes for an employee. Will not be able to delete an infotype if there is cluster data assigned to the employee. &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Sales and Distribution (SD)&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;OLSD    Config for SD. Use Tools-Data Transfer-Conditions to setup SAP supplied BDC to load pricing data &lt;br /&gt;VA01    Create Sales/Returns Order Initial Screen &lt;br /&gt;VB21    Transaction for Volume Lease Purchases (done as a sales deal) &lt;br /&gt;VK15    Transaction used to enter multiple sales conditions (most will be entered here)  &lt;br /&gt;VL02    Deliveries &lt;br /&gt; &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SAP Office&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;SO00    send a note through SAP, can be sent to Internet, X400, etc &lt;br /&gt; &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Financial Accounting (FI)&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;FGRP    Report Writer screen &lt;br /&gt;FM12    View blocked documents by user &lt;br /&gt;FST2    Insert language specific name for G/L account. &lt;br /&gt;FST3    Display G/L account name. &lt;br /&gt;KEA0    Maintain operating concern. &lt;br /&gt;KEKE    Activate CO-PA. &lt;br /&gt;KEKK    Assign operating concern. &lt;br /&gt;KL04    Delete activity type. &lt;br /&gt;KS04    Delete a cost centre. &lt;br /&gt;KSH2    Change cost centre group – delete. &lt;br /&gt;OBR2   Deletion program for customers, vendors, G/L accounts. &lt;br /&gt;OKC5    Cost element/cost element group deletion. &lt;br /&gt;OKE1    Delete transaction data. &lt;br /&gt;OKE2    Delete a profit centre. &lt;br /&gt;OKI1    Determine Activity Number: Activity Types (Assignment of material number/service to activity type)  &lt;br /&gt;OMZ1    Definition of partner roles. &lt;br /&gt;OMZ2    Language dependent key reassignment for partner roles. &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Material Management (MM) &lt;/span&gt;&lt;br /&gt; &lt;br /&gt;MM06    Flag material for deletion. &lt;br /&gt;OLMS    materials management configuration menu, most of the stuff under this menu is not under the implementation guide &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;MM configuration transactions&lt;/span&gt; &lt;br /&gt; &lt;br /&gt;OLMB   Inventory management/Physical Inventory &lt;br /&gt;OLMD   MM Consumption-Based Planning &lt;br /&gt;OLME   MM Purchasing &lt;br /&gt;OLML   Warehouse Management &lt;br /&gt;OLMR   Invoice Verification &lt;br /&gt;OLMS    Material Master data &lt;br /&gt;OLMW   MM Valuation/Account Assignment &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Configuration related &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;OLE    OLE demo transaction &lt;br /&gt;OLI0    C Plant Maintenance Master Data &lt;br /&gt;OLI1    Set Up INVCO for Material Movements &lt;br /&gt;OLI8    Set Up SIS for Deliveries &lt;br /&gt;OLIA    C Maintenance Processing &lt;br /&gt;OLIP    C Plant Maintenance Planning &lt;br /&gt;OLIQ    New set-up of QM info system &lt;br /&gt;OLIX    Set Up Copying/Deleting of Versions &lt;br /&gt;OLIY    Set Up Deletion of SIS/Inter.Storage &lt;br /&gt;OLIZ    Stat Set Up INVCO: Invoice Verify &lt;br /&gt;OLM2   Customizing: Volume-Based Rebates &lt;br /&gt;OLMB  C RM-MAT Inventory Management Menu &lt;br /&gt;OLMD  C RM-MAT MRP Menu &lt;br /&gt;OLME  C MM Menu: Purchasing &lt;br /&gt;OLML  C MM Menu for Warehouse Management &lt;br /&gt;OLMR  C RM-MAT Menu: Invoice Verification &lt;br /&gt;OLMS    C RM-MAT Master Data Menu &lt;br /&gt;OLMW  C RM-MAT Valuation/Acct. Asset. Menu &lt;br /&gt;OLPA    SOP Configuration &lt;br /&gt;OLPE    Sales order value &lt;br /&gt;OLPF    SPRO Start SAP IMG (Implementation Guide). &lt;br /&gt;OLPK    Customizing for capacity planning &lt;br /&gt;OLPR    Project System Options &lt;br /&gt;OLPS    Customiing Basic Data &lt;br /&gt;OLPV    Customizing: Std. Value Calculation &lt;br /&gt;OLQB    C QM QM in Procurement &lt;br /&gt;OLQI    Analysis OLVD C SD Shipping Menu &lt;br /&gt;OLVF    C SD Billing Menu &lt;br /&gt;OLQM  Customizing QM Quality Notifications &lt;br /&gt;OLQS    C QM Menu Basic Data &lt;br /&gt;OLQW  C QM Inspection Management &lt;br /&gt;OLQZ    Quality Certificates &lt;br /&gt;OLS1    Customizing for Rebates &lt;br /&gt;OLSD    Customizing: SD &lt;br /&gt;OLVA    C SD Sales Menu            &lt;br /&gt;OLVS    C SD Menu for Master Data&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-8788686643888655470?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/8788686643888655470/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=8788686643888655470' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8788686643888655470'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8788686643888655470'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/04/usefull-sap-tansactions.html' title='Usefull SAP Tansactions'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-6324007610800524007</id><published>2009-04-29T10:15:00.000-07:00</published><updated>2009-04-29T10:31:23.731-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Dictionary'/><title type='text'>Open SQL vs Native SQL</title><content type='html'>&lt;span style="font-weight:bold;"&gt;What is Open SQL vs Native SQL?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;If you write a business application, there is always a database on back end. So SAP R/3 uses a database too. It is a special database? No. SAP uses standard databases like Oracle, IBM DB2, MS SQL Server, etc. If you have a database on back end, it is inevitable that you must use SQL. SAP uses SQL to select, insert and update data inside database. However, the problem is that if you use different databases, your code whatever it is whether ABAP or not, SQL can vary. In that situation although programmers tend to use Standard SQL which is valid for all databases, the problems sometimes occur to switch one database to different database. What I am trying to say is SAP had invented a new way to solve this problem i.e. Open SQL.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Open SQL&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Open SQL consists of a set of ABAP statements that perform operation on central database in the R/3 System. The results of the operations and any error messages are independent of the database system in use. Open SQL thus provides a uniform syntax and semantics for all of database systems supported by SAP. ABAP programs that only use Open SQL statements will work in any SAP R/3 System, regardless of the database system in use. Open SQL statements can work with database tables that have been created in the ABAP Dictionary.&lt;br /&gt;The method actually is simple that when a programmer writes an ABAP program with Open SQL statements, the kernel SAP programs convert Open SQL statements to real / native SQL statements for database in use. So like that write once, run for all databases and even for all operating systems. Like Java’s “Write Once. Run Anywhere“. Think about Java, even the Java uses the same principal that is Java Virtual Machine which looks like SAP’s kernel programs. &lt;br /&gt;&lt;br /&gt;Open SQL contains the following keywords:&lt;br /&gt;• SELECT - Reads data from database tables. &lt;br /&gt;• INSERT - Adds lines to database tables. &lt;br /&gt;• UPDATE - Changes the contents of lines of database tables. &lt;br /&gt;• MODIFY - Inserts lines into database tables or changes the contents of existing lines. &lt;br /&gt;• DELETE - Delete lines from database tables. &lt;br /&gt;• OPEN CURSOR, FETCH, CLOSE CURSOR - Reads lines of database tables using the cursor. &lt;br /&gt;&lt;br /&gt;All Open SQL statements fill the following two system fields with return codes:&lt;br /&gt;&lt;br /&gt;• SY-SUBRC &lt;br /&gt;After every Open SQL statement, the system field SY-SUBRC contains 0 if the operation was successful, a value other than 0 if not. &lt;br /&gt;&lt;br /&gt;• SY-DBCNT &lt;br /&gt;After an OPEN SQL statement, the system field SY-DBCNT contains the number of database lines processed. &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Native SQL&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Native SQL is real SQL for database in use. It means beside OPEN SQL, if you need you can use the native SQL for databases. Native SQL allows you to use database-specific SQL statements in an ABAP program. This means that you can use database tables that are not administered by the ABAP Dictionary, and therefore integrate data that is not part of the R/3 System.&lt;br /&gt;&lt;br /&gt;As a rule, an ABAP program containing database-specific SQL statements will not run under different database systems. If your program will be used on more than one database platform, only use Open SQL statements.&lt;br /&gt;&lt;br /&gt;All ABAP programs in SAP R/3 System have been written with Open SQL. But sometimes you can see Native SQL statements in original ABAP programs. If you have a different database instant in the same database, you can use Native SQL statement to connect and do operation on this database instant. Let me clarify this a little bit. Let’s assume you have an SAP R/3 system that uses Oracle database instant ORC1. You have an other application, even it uses the same database Oracle, but as normally different database instant ORC2. So like data inside ABAP program, you can use Native SQL statements to connect ORC2, non-SAP database instant, to integrate SAP R/3 and non-SAP system. It is kind of an integration activity.&lt;br /&gt;&lt;br /&gt;If you create a table by using database tools, without ABAP Dictionary, you are not able to use Open SQL to reach this table. You just can use Native SQL to do that.&lt;br /&gt;Native SQL statements bypass the R/3 database interface. There is no table logging, and no synchronization with the database buffer on the application server. For this reason, you should, wherever possible, use Open SQL to change database tables declared in the ABAP Dictionary. In particular, tables declared in the ABAP Dictionary that contain log columns with types LCHR and LRAW should only be addressed using Open SQL, since the columns contain extra, database-specific length information for the column. Native SQL does not take this information into account, and may therefore produce incorrect results. Furthermore, Native SQL does not support automatic client handling. Instead, you must treat client fields like any other.&lt;br /&gt;To ensure that transactions in the R/3 System are consistent, you should not use any transaction control statements (COMMIT, ROLLBACK WORK), or any statements that set transaction parameters (isolation level…) using Native SQL.&lt;br /&gt;&lt;br /&gt;Using Native SQL, you can&lt;br /&gt;• Transfer values from ABAP fields to the database &lt;br /&gt;• Read data from the database and process it in ABAP programs. &lt;br /&gt;Native SQL works without the administrative data about database tables stored in the ABAP Dictionary. Consequently, it cannot perform all of the consistency check used in Open SQL. This places a larger degree responsibility on application developers to work with ABAP fields of the correct type. You should always ensure that the ABAP data type and the type of database column are identical.&lt;br /&gt;&lt;br /&gt;Native SQL Advantages and Disadvantages - EXEC SQL statement&lt;br /&gt;&lt;br /&gt;Advantages&lt;br /&gt;• Tables are not declared in ABAP Dictionary can be accessed. (e.g. Tables belonging to sys or system user of Oracle, etc.) &lt;br /&gt;• To use some of the special features supported by the database-specific SQL. (e.g. Passing hints to Oracle optimizer.) &lt;br /&gt;&lt;br /&gt;Disadvantages&lt;br /&gt;• No syntax check is performed whatever is written between EXEC and ENDEXEC. &lt;br /&gt;• ABAP program containing database-specific SQL statements will not run under different database systems. &lt;br /&gt;• There is no automatic client handling for client dependent tables. &lt;br /&gt;• Care has to be taken during migration to higher versions.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-6324007610800524007?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/6324007610800524007/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=6324007610800524007' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/6324007610800524007'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/6324007610800524007'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/04/open-sql-vs-native-sql.html' title='Open SQL vs Native SQL'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-1600212450990019933</id><published>2009-04-29T09:42:00.000-07:00</published><updated>2009-04-29T10:43:05.134-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Real-Time Stuffs'/><title type='text'>SAP Production Support</title><content type='html'>&lt;span style="font-weight:bold;"&gt;What is SAP Production Support - Ticket Resolving &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;What are the types of ticket and its importance? &lt;br /&gt;&lt;br /&gt;This depends on the SLA. It can be like: &lt;br /&gt;  1. Critical. &lt;br /&gt;  2. Urgent. &lt;br /&gt;  3. High. &lt;br /&gt;  4. Medium &lt;br /&gt;  5. Low. &lt;br /&gt;The response times and resolution times again are defined in the SLA based on the clients requirement and the charges. &lt;br /&gt;This is probably from the viewpoint of Criticality of the problem faced by the client as defined by SAP. &lt;br /&gt;&lt;br /&gt;1) First Level Ticketing: &lt;br /&gt;Not severe problem. Routine errors. Mostly handled by Service desk arrangement of the company (if have one). &lt;br /&gt;Eg: a) Say Credit limit block in working on certain documents? &lt;br /&gt;    b) Pricing Condition Record not found even though conditions are maintained? &lt;br /&gt;    c) Unable to print a delivery document or Packing list? &lt;br /&gt;PS: In the 4th phase of ASAP Implementation Methodology( i.e Final Preparations for GO-LIVE) SAP has clearly specified that a Service desk needs to be arranged for any sort of Implementation for better handling of Production errors. &lt;br /&gt;Service desk lies with in the client. &lt;br /&gt;&lt;br /&gt;2)Second Level Ticketing: &lt;br /&gt;Some sort of serious problems. Those Could not be solved by Service Desk. Should be referred to the Service Company (or may be company as prescribed in SLA). &lt;br /&gt;Eg: a) Credit Exposure (especially open values) doesn't update perfectly to KNKK Table. &lt;br /&gt;      b) Inter company Billing is taking a wrong value of the Bill. &lt;br /&gt;      c) Need a new order type to handle reservation process &lt;br /&gt;      d) New product has been added to our selling range. Need to include this into SAP. (Material Masters, Division attachments, Stock Handling etc.) &lt;br /&gt;&lt;br /&gt;3)Third Level Ticketing: &lt;br /&gt;Problems could not be solved by both of the above, are referred to Online Service Support (OSS) of SAP Itself. SAP tries to solve the Problem, sometimes by providing the perfect OSS Notes, fits to the error and rarely SAP logs into our Servers (via remote log-on)for postmortem the problem. (The Medical check-up client, connections, Login id and Passwords stuff are to be provided to SAP whenever they need or at the time of opening OSS Message.) &lt;br /&gt;There are lots of OSS Notes on each issue, SAP Top Notes and Notes explaining about the process of raising a OSS Message. &lt;br /&gt;Sometimes SAP Charges to the client / Service company depending on the Agreement made at the time of buying License from SAP. &lt;br /&gt;Eg: 1) Business Transaction for the Currency 'EUR' is not possible. Check OSS Note  - This comes at the time of making Billing. &lt;br /&gt;      2) Transaction MMPI- Periods cannot be opened – See OSS Note. &lt;br /&gt;      There are many other examples on the issue.&lt;br /&gt;&lt;br /&gt;4)Fourth Level Ticketing: &lt;br /&gt;Where rarely, problems reach this level. &lt;br /&gt;Those problem needs may be re-engineering of the business process due to change in the Business strategy. Upgradation to new Version.  More or less this leads to extinction of the SAP Implementation.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-1600212450990019933?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/1600212450990019933/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=1600212450990019933' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/1600212450990019933'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/1600212450990019933'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/04/what-is-sap-production-support-ticket.html' title='SAP Production Support'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-1066955241464180387</id><published>2009-04-26T22:52:00.000-07:00</published><updated>2009-04-26T23:49:52.452-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SAP architecture'/><title type='text'>Client-Server Architecture..</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_xXiFfhO31BQ/SfVVha_LR4I/AAAAAAAAEdQ/7Bq7x9-gf80/s1600-h/R-3.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 230px;" src="http://4.bp.blogspot.com/_xXiFfhO31BQ/SfVVha_LR4I/AAAAAAAAEdQ/7Bq7x9-gf80/s320/R-3.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5329259766731196290" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-1066955241464180387?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/1066955241464180387/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=1066955241464180387' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/1066955241464180387'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/1066955241464180387'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/04/client-server-architecture.html' title='Client-Server Architecture..'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_xXiFfhO31BQ/SfVVha_LR4I/AAAAAAAAEdQ/7Bq7x9-gf80/s72-c/R-3.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-4218784173832996319</id><published>2009-04-26T21:50:00.000-07:00</published><updated>2009-04-26T23:51:17.369-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SAP architecture'/><title type='text'>Enterprise Structure Terminology</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_xXiFfhO31BQ/SfVV2gn9DaI/AAAAAAAAEdY/O-n3kdKigYM/s1600-h/Org+Structure.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 233px;" src="http://3.bp.blogspot.com/_xXiFfhO31BQ/SfVV2gn9DaI/AAAAAAAAEdY/O-n3kdKigYM/s320/Org+Structure.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5329260129021660578" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-4218784173832996319?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/4218784173832996319/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=4218784173832996319' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/4218784173832996319'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/4218784173832996319'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/04/enterprise-structure-terminology.html' title='Enterprise Structure Terminology'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_xXiFfhO31BQ/SfVV2gn9DaI/AAAAAAAAEdY/O-n3kdKigYM/s72-c/Org+Structure.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-6047631465495929158</id><published>2009-04-14T08:49:00.000-07:00</published><updated>2009-04-26T21:54:17.966-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Basis'/><title type='text'>How to Lock user in SAP..</title><content type='html'>How to Lock user in SAP? &lt;br /&gt;Go to SU01&lt;br /&gt;&lt;br /&gt;Enter the userID to be locked in the user field and click on lock button Then you will see the the following screen if the user is already locked.&lt;br /&gt;&lt;br /&gt;click on the unlock button at the bottom left of the window and the user will be unlocked.to lock a user again enter the user id in the user field and click on lock button and you will see the following screen now press on the lock button to lock the user...you can also lock the user at database level. login to the system database.. then run a query to update the USR02 table.&lt;br /&gt;&lt;br /&gt;To lock an user.&lt;br /&gt;SQL&gt; UPDATE USR02 SET UFLAG = '64' where BNAME='USERID' AND MANDT='CLIENT' &lt;br /&gt;SQL&gt; COMMIT &lt;br /&gt;To unlock an user &lt;br /&gt;SQL&gt; UPDATE USR02 SET UFLAG = '0' where BNAME='USERID' AND MANDT='CLIENT'&lt;br /&gt;SQL&gt; COMMIT &lt;br /&gt;Here the different values of uflag have different meaning UFLAG value&lt;br /&gt;0 ------ Not locked&lt;br /&gt;16 ------ Mystery values&lt;br /&gt;32 ------ Locked by CUA admin&lt;br /&gt;64 ------ Locked by system Administrator&lt;br /&gt;128 ------ Locked due to incorrect logon attempts or too many failed attempts&lt;br /&gt;192 ------ A combination of both. The user is locked by admin and user tries to logon with incorrect passwords and gets locked ( 192 = 64+128)&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-6047631465495929158?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/6047631465495929158/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=6047631465495929158' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/6047631465495929158'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/6047631465495929158'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/04/how-to-lock-user-in-sap.html' title='How to Lock user in SAP..'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-2164594116347907097</id><published>2009-04-09T01:08:00.000-07:00</published><updated>2009-04-26T21:54:38.083-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Error Handling'/><title type='text'>SAP- Handling Errors... 1.</title><content type='html'>1. Cannot activate a table in SAP&lt;br /&gt;Syntax error in SDCC, table inconsistency between ABAP Dictionary and the database, transport error 8 during the generation of ABAP Dictionary. When you call Transaction SDCC, a termination occurs due to a putative syntax error because a table is not known or active. When you check this with the ABAP dictionary (SE11), you notice, that the table is active or inactive, however it is not possible to activate it. The activation might terminate with the error message 'Inconsistency between ABAP Dictionary and database'. A check of the affected object also delivers this error.&lt;br /&gt;Solution&lt;br /&gt;Proceed as follows:&lt;br /&gt;• Log on as user DDIC&lt;br /&gt;• Call Transaction SE14&lt;br /&gt;• Enter the affected table name and&lt;br /&gt;• select EDIT&lt;br /&gt;• In the following screen, choose Table -&gt; Reconstruct&lt;br /&gt;• Confirm the execution&lt;br /&gt;• Call Transaction SE11&lt;br /&gt;• Enter the affected table name&lt;br /&gt;• Display&lt;br /&gt;• Activate&lt;br /&gt;If - after you chose EDIT -, the error message occurs that the table only exists on the database, you need to activate the source and the runtime object.&lt;br /&gt;• Call Transaction SE37:&lt;br /&gt;-&gt; Function module 'DD_TABL_ACTM' -&gt; Single test&lt;br /&gt;• Under import parameter MODE, enter the number 12 and under TABNAME the corresponding table name&lt;br /&gt;• -&gt; Execute (F8) -&gt; Export parameter ACT_RESULT must be 0&lt;br /&gt;• Call Transaction SE14 again as described above.&lt;br /&gt;• -&gt; Extras -&gt; Database object -&gt; Check,&lt;br /&gt;as well as&lt;br /&gt;-&gt; Extras -&gt; Runtime object -&gt; Check&lt;br /&gt;inconsistencies should no longer be contained.&lt;br /&gt;If you cannot switch to the EDIT mode in Transaction SE14, which means no modifications are allowed in the customer system, then proceed as follows:&lt;br /&gt;• Call function module 'DD_TABL_ACTM' as described above.&lt;br /&gt;• Then call Transaction SE14 again and verify that the table has been activated.&lt;br /&gt;• As a result, this ensures that the SDCC can be executed.&lt;br /&gt;• The menu options in Transaction SE14 are&lt;br /&gt;-&gt; Extras -&gt; Database object -&gt; Check,&lt;br /&gt;as well as&lt;br /&gt;-&gt; Extras -&gt; Runtime object -&gt; Check&lt;br /&gt;inconsistencies should no longer be contained.&lt;br /&gt;• If this is not the case, open a CSN message under the BC-DWB-DIC-ED component.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-2164594116347907097?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/2164594116347907097/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=2164594116347907097' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/2164594116347907097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/2164594116347907097'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/04/sap-handling-errors-1.html' title='SAP- Handling Errors... 1.'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-2632394575236093486</id><published>2009-02-18T06:57:00.000-08:00</published><updated>2009-04-26T21:54:57.589-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Reports'/><title type='text'>Some Important ALV Function modules</title><content type='html'>REUSE_ALV_LIST_DISPLAY&lt;br /&gt;REUSE_ALV_GRID_DISPLAY&lt;br /&gt;REUSE_ALV_BLOCK_LIST_APPEND    &lt;br /&gt;REUSE_ALV_BLOCK_LIST_DATA_GET  &lt;br /&gt;REUSE_ALV_BLOCK_LIST_DATA_SET  &lt;br /&gt;REUSE_ALV_BLOCK_LIST_DISPLAY   &lt;br /&gt;REUSE_ALV_BLOCK_LIST_HS_APPEND &lt;br /&gt;REUSE_ALV_BLOCK_LIST_INIT      &lt;br /&gt;REUSE_ALV_BLOCK_LIST_REFRESH   &lt;br /&gt;REUSE_ALV_BLOCK_STATUS_GET     &lt;br /&gt;REUSE_ALV_CHECKBOX_SET         &lt;br /&gt;REUSE_ALV_COMMENTARY_WRITE     &lt;br /&gt;REUSE_ALV_EVENTS_GET           &lt;br /&gt;REUSE_ALV_EVENTS_TRANSFER      &lt;br /&gt;REUSE_ALV_EVENT_NAMES_GET      &lt;br /&gt;REUSE_ALV_FIELDCATALOG_MERGE   &lt;br /&gt;REUSE_ALV_HIERSEQ_LIST_DISPLAY &lt;br /&gt;REUSE_ALV_HS_LIST_WIDTH_GET    &lt;br /&gt;REUSE_ALV_HS_TABLES_GET        &lt;br /&gt;REUSE_ALV_LIST_DISPLAY         &lt;br /&gt;REUSE_ALV_LIST_LAYOUT_INFO_GET &lt;br /&gt;REUSE_ALV_LIST_LAYOUT_INFO_SET &lt;br /&gt;REUSE_ALV_LIST_WIDTH_GET       &lt;br /&gt;REUSE_ALV_POPUP_TO_SELECT      &lt;br /&gt;REUSE_ALV_TABLES_GET           &lt;br /&gt;REUSE_ALV_TABLE_CREATE&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-2632394575236093486?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/2632394575236093486/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=2632394575236093486' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/2632394575236093486'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/2632394575236093486'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2009/02/some-important-alv-function-modules.html' title='Some Important ALV Function modules'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-3077934032736653679</id><published>2008-09-20T02:02:00.000-07:00</published><updated>2008-09-20T02:30:28.518-07:00</updated><title type='text'></title><content type='html'>&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-3077934032736653679?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/3077934032736653679/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=3077934032736653679' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/3077934032736653679'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/3077934032736653679'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/09/idoc-status-codes.html' title=''/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-2269641613520638074</id><published>2008-09-20T01:08:00.000-07:00</published><updated>2008-09-20T01:19:49.872-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Reports'/><category scheme='http://www.blogger.com/atom/ns#' term='Data Dictionary'/><title type='text'>Internal table</title><content type='html'>Purpose of Internal Tables&lt;br /&gt;&lt;br /&gt;• In ABAP/4, you work mainly with tables. Tables are the essential data structures in the R/3 System. Long-life data is stored in relational database tables.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;• Besides database tables, you can create internal tables which exist only during the runtime of your program. ABAP/4 provides various operations for working with internal tables. You can, for example, search for, append, insert, or delete lines.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;• The number of lines in an internal table is not fixed. Depending on requirements, the system increases the size of internal tables at runtime.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;• You can use internal tables to perform table calculations on subsets of database tables. For example, you can read a certain part of a database table into an internal table (see Reading Data into an Internal Table).&lt;br /&gt;&lt;br /&gt;From the internal table, you can then calculate totals or generate a ranked list.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;• Another use for internal tables is reorganizing the contents of database tables according to the needs of your program. For example, you can read data relevant for creating a telephone list from one or several large customer tables into an internal table. During the runtime of your program, you can then access this list directly without having to perform a time-consuming database query for each call.&lt;br /&gt;&lt;br /&gt;Structure of Internal Tables&lt;br /&gt;&lt;br /&gt;In ABAP/4, you can distinguish between internal table data types, which define the structure of internal tables, and internal table data objects, which are the actual internal tables and can be filled with data. An internal table data type is an abstract definition of a data structure which can be used to declare data objects as internal tables.&lt;br /&gt;&lt;br /&gt;Data type&lt;br /&gt;&lt;br /&gt;An internal table is one of the two structured data types in ABAP/4. The other structured data type is the field string. An internal table consists of any number of lines which all have the same data type. The data type of the lines can be elementary or structured.&lt;br /&gt;&lt;br /&gt;This definition opens a variety of internal table structures which range from lines consisting of one field to lines consisting of field strings which have internal tables as components.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;You can define a data type as an internal table by using the TYPES statement with the OCCURS parameter. No memory is occupied when defining a data type.&lt;br /&gt;&lt;br /&gt;Data object&lt;br /&gt;&lt;br /&gt;A data object which has a data type defined as an internal table is the actual internal table you work with. It occupies memory and you can fill or read its lines.&lt;br /&gt;You create a data object as an internal table by using the DATA statement either with the OCCURS parameter or by referring to another internal table by using the TYPE or LIKE parameters.&lt;br /&gt;&lt;br /&gt;Identifying Table Lines&lt;br /&gt;&lt;br /&gt;In order to access a certain line of a table, you must specify a field or combination of fields that can be used to identify the line. In the relational data model which is used to store long-life data in the R/3 System, the minimum combination required for this purpose is known as the key. The fields that define the key are called key fields.&lt;br /&gt;&lt;br /&gt;Internal Table Index&lt;br /&gt;&lt;br /&gt;The index is the sequential number of a table line. It is not a table field, but is created and managed automatically by the system.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;You can use the index with the DELETE, INSERT, MODIFY, LOOP, and READ statements. In these statements, you can specify the index either as literal or as variable.&lt;br /&gt;After processing a particular line of an internal table, the system field SY-TABIX generally contains the index of that line.&lt;br /&gt;&lt;br /&gt;Internal Table Key&lt;br /&gt;&lt;br /&gt;There are two kinds of internal table keys.&lt;br /&gt;&lt;br /&gt;Self-defined Key&lt;br /&gt;&lt;br /&gt;When reading lines from an internal table using the READ statement, you can specify a self-defined.&lt;br /&gt;&lt;br /&gt;Standard Key&lt;br /&gt;&lt;br /&gt;By definition, the key fields of an internal table are those fields which are not numeric (type F, I, and P) and are not internal tables. These key fields form the standard key of an internal table.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;To obtain the standard key of an internal tables with nested structures (table lines which contain field strings as components), the system breaks down the sub-structures to the level of elementary fields.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-2269641613520638074?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/2269641613520638074/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=2269641613520638074' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/2269641613520638074'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/2269641613520638074'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/09/internal-table.html' title='Internal table'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-8516337506942855010</id><published>2008-09-20T01:06:00.000-07:00</published><updated>2008-09-20T01:07:00.645-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Reports'/><category scheme='http://www.blogger.com/atom/ns#' term='Data Dictionary'/><title type='text'>LUW - Logical Unit of Work</title><content type='html'>An SAP logical unit of work (LUW) is a functionally complete set of steps within a business process in the R/3 System.&lt;br /&gt;&lt;br /&gt;The process steps must be logically related.&lt;br /&gt;&lt;br /&gt;SAP LUWs work on an all-or-nothing principle: Either all or none of its steps are carried out.&lt;br /&gt;&lt;br /&gt;The business process to be mapped must be basic. For example, you would not have a single SAP LUW consisting of all of the steps between a customer processing an order and an invoice being produced. Instead, you would split this up into separate parts, each of which would then be represented in the R/3 System by its own LUW. What constitutes an "elementary" process depends on the overall process and how you have modeled it.&lt;br /&gt;&lt;br /&gt;For further information, see the ABAP Editor Keyword documentation for the term transaction processing.&lt;br /&gt;&lt;br /&gt;A database logical unit of work (LUW) is a non-separable sequence of database operations. At the beginning and end of the LUW, the database is in a consistent state.&lt;br /&gt;&lt;br /&gt;The database LUW is either fully carried out by the database system, or is not carried out at all.&lt;br /&gt;&lt;br /&gt;A database LUW is opened with every dialog step and by a database commit of the previous DB LUW.&lt;br /&gt;&lt;br /&gt;The database LUW is closed with a database commit. It is only in the commit that the data is written to the database (after which it can no longer be reversed). Before the database commit, you can undo the changes using a database rollback. Here, the database is reset to the status that it had before the first change was made to the current DB LUW.&lt;br /&gt;&lt;br /&gt;Data that has been written to the database permanently with a database commit cannot be rolled back.&lt;br /&gt;&lt;br /&gt;Database LUWs allow you to encapsulate logically related actions from a business process. For example, when transferring sums of money in financial accounting, you must deduct an amount from one account and then add it to another account. Before and after the process, the data is consistent, but in between the two steps, it can be inconsistent.&lt;br /&gt;&lt;br /&gt;For further information, see the ABAP Editor Keyword documentation for the term transaction processing.&lt;br /&gt;&lt;br /&gt;The SAP R/3 System is based on the three-tier architecture of a client/server system. The three tiers are the database, application, and presentation server layers.&lt;br /&gt;&lt;br /&gt;This architecture, along with the distribution of users' requests (user dispatching), leads to a highly efficient, cost-effective multi-user system.&lt;br /&gt;&lt;br /&gt;The three-tier architecture means that a large number of users with low-cost desktop computers (with low performance) can be mapped to a small number of high-performance (and considerably more expensive) work processes on application servers. Each work process on an application server is assigned a work process on a high-performance database server.&lt;br /&gt;&lt;br /&gt;Distributing user requests to work processes assigns individual clients at presentation server level to a work process for a particular period. In turn, the work process uses another work process in the database. After the work process has processed the user input in a dialog step, the user, along with the program context, is removed from the work process, which can then be used by another user.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The three-tier architecture is far more scalable than a "fat" client architecture, in which the Presentation and application levels run on one server. With three-tier architecture, the number of database users is considerably lower than the number of users active in the system. This has a positive effect on the behavior of the database.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The three-tier architecture of the R/3 System has certain consequences for process handling. When a work process is released for use by another user (client), an implicit database commit is triggered for the database process assigned to it (via a basis program).&lt;br /&gt;&lt;br /&gt;Work processes on the application server and database are released before each user dialog. This Ensures that long user dialogs in which the system is "only displaying a screen" are not included in Database LUWs. The duration of the user interaction will be longer than the DB LUW duration.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Shorter database LUWs lead to less load on the database.&lt;br /&gt;&lt;br /&gt;Implicit commits on the database are triggered whenever the work process has to wait. This includes:&lt;br /&gt;&lt;br /&gt;When the system sends a new screen&lt;br /&gt;When the system sends a dialog message&lt;br /&gt;When you make a synchronous remote function call (RFC)&lt;br /&gt;When you use the CALL TRANSACTION or SUBMIT statement.&lt;br /&gt;&lt;br /&gt;Using an SAP LUW to represent a business process chain usually involves user dialogs as well as the changes to the database. The aim of an R/3 transaction is to represent the information exchanged in the SAP LUW as an indivisible unit in the database. This means that an SAP LUW can only use a single database LUW.&lt;br /&gt;&lt;br /&gt;Since SAP LUWs usually involve several database LUWs, you need to bundle the database changes in a single database LUW within your transaction.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-8516337506942855010?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/8516337506942855010/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=8516337506942855010' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8516337506942855010'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8516337506942855010'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/09/luw-logical-unit-of-work.html' title='LUW - Logical Unit of Work'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-6039648838133798979</id><published>2008-09-20T00:58:00.000-07:00</published><updated>2008-09-20T01:03:44.504-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cross Applications'/><category scheme='http://www.blogger.com/atom/ns#' term='Real-Time Stuffs'/><title type='text'>Few Technical definations..</title><content type='html'>1 Application Link Enabling (ALE)&lt;br /&gt;&lt;br /&gt;The ALE concept supports the construction and operation of distributed applications.&lt;br /&gt;The basic principle is the guarantee of a distributed, yet fully integrated, R/3 System installation.&lt;br /&gt;&lt;br /&gt;It incorporates the controlled exchange of business data messages whilst ensuring data consistency across loosely coupled R/3 Systems.&lt;br /&gt;The integration of various applications is achieved by using synchronous and asynchronous communication, rather than by means of a central database.&lt;br /&gt;ALE comprises three layers:&lt;br /&gt;&lt;br /&gt;• the applications services,&lt;br /&gt;• the distribution services,&lt;br /&gt;• the communications services.&lt;br /&gt;&lt;br /&gt;2 Transaction Data&lt;br /&gt;&lt;br /&gt;Transaction data is data that results from daily business management processes. Examples of transaction data are purchase order data and accounting data.&lt;br /&gt;&lt;br /&gt;3 CO-PA&lt;br /&gt;&lt;br /&gt;Abbreviation for Controlling - Profitability Analysis.&lt;br /&gt;&lt;br /&gt;4 EDI - Electronic Data Interchange&lt;br /&gt;&lt;br /&gt;Electronic Data Interchange is the electronic exchange of structured data (e.g. commercial documents) that is not limited to a single company, but which may take place between business partners at home or abroad who can be using different hardware, software and communication services.&lt;br /&gt;&lt;br /&gt;5 Filter Object&lt;br /&gt;&lt;br /&gt;A specific instance of the filter object type to which an organizational unit has been assigned, for example, "Plant" ® "Plant 0001".&lt;br /&gt;&lt;br /&gt;6 Filter Object Type&lt;br /&gt;&lt;br /&gt;A filter object type is a selection criterion in the distribution reference model that specifies the criteria which determine whether a function type can be used several times in a distributed system.&lt;br /&gt;&lt;br /&gt;7 Function&lt;br /&gt;&lt;br /&gt;A specific instance of a function type in the customer model.&lt;br /&gt;&lt;br /&gt;8 Function Type&lt;br /&gt;&lt;br /&gt;A function type defines a self-contained process in an application. An example of this is the posting for a movement of goods in inventory management.&lt;br /&gt;&lt;br /&gt;9 Function Type, Distributable&lt;br /&gt;&lt;br /&gt;A collection of function types which may be grouped together because of the related use of the various function types, and which may be seen as being distinct from other function types.&lt;br /&gt;&lt;br /&gt;10 IDoc&lt;br /&gt;&lt;br /&gt;Abbreviation of intermediate document (IDoc type )&lt;br /&gt;&lt;br /&gt;11 IDoc Type - Intermediate Document Type&lt;br /&gt;&lt;br /&gt;An intermediate document type is the structure of the data container used for transporting data from a system to a target system. It is independent of any specific application data.&lt;br /&gt;&lt;br /&gt;12 Logical System&lt;br /&gt;&lt;br /&gt;A logical system is a system in which different applications are integrated and run using common data. In SAP terms, this means a client in a database.&lt;br /&gt;&lt;br /&gt;13 Information Structures&lt;br /&gt;&lt;br /&gt;The most important key figures are selected from the mass of data arising from operational applications and are stored in special statistics files known as information structures. These include information on the time period, the characteristics and the key figures. An information structure can be distributed.&lt;br /&gt;&lt;br /&gt;14 Key Figures&lt;br /&gt;&lt;br /&gt;Key figures represent information that is periodically gathered or evaluated for characteristics (for example, lead time, deviation from schedule, capacity utilization, order stocks, quantities and rejects).&lt;br /&gt;&lt;br /&gt;15 Bulk Processing&lt;br /&gt;&lt;br /&gt;Several IDocs may be grouped into a packet and processed in a single step. This is called bulk processing.&lt;br /&gt;&lt;br /&gt;16 Characteristic&lt;br /&gt;&lt;br /&gt;A characteristic is a piece of information that can be used to effect a division in a group of objects, for example, plant, work center, material).&lt;br /&gt;&lt;br /&gt;17 Message Type&lt;br /&gt;&lt;br /&gt;The messages exchanged between systems are of various message types. The message type depends on the data contained and the process involved. It determines the technical structure of the message, the IDoc type. For example, the ORDERS message type is used for purchase order messages.&lt;br /&gt;&lt;br /&gt;18 Periods&lt;br /&gt;&lt;br /&gt;Periods include days, weeks, months and accounting periods.&lt;br /&gt;&lt;br /&gt;19 Item Category&lt;br /&gt;&lt;br /&gt;An item category is a classification that distinguishes between various types of item in, for example, an order (e.g. cost-free items, standard items). The way that processing is controlled depends on the item category.&lt;br /&gt;&lt;br /&gt;20 Serialization&lt;br /&gt;&lt;br /&gt;If several IDocs are sent within a short period of time then "overtaking" can occur, so that later changes arrive sooner than changes that were actually made earlier. In order to avoid incorrect updates being made, a serialization mechanism must be used that can spot "overtaking" and report it.&lt;br /&gt;&lt;br /&gt;21 SOP&lt;br /&gt;&lt;br /&gt;Sales &amp; Operations Planning.&lt;br /&gt;&lt;br /&gt;22 Customer Distribution Model&lt;br /&gt;&lt;br /&gt;The customer stores the exact distribution of functions across his various systems in the customer distribution model. The logical systems and message flows are specified here, possibly based on defined listings.&lt;br /&gt;&lt;br /&gt;23 Distribution Reference Model&lt;br /&gt;&lt;br /&gt;The reference model is included in the standard delivery from SAP. It specifies which functions can be distributed and how, and which data is exchanged between the fucntions. The customer uses the reference model as the basis for his customer distribution model .&lt;br /&gt;&lt;br /&gt;24 Workflow&lt;br /&gt;&lt;br /&gt;A workflow is defined as a sequence of processing steps (work item ). There may be branching points within this sequence.&lt;br /&gt;&lt;br /&gt;A workflow has a container. This holds the parameters used in the processing steps.&lt;br /&gt;In order to terminate the processing steps of a workflow, an event is triggered. The parameters are passed from the current step to the workflow container.&lt;br /&gt;&lt;br /&gt;The workflow manager checks which processing step should be called next. For example, if an 'Idoc read' step is terminated and a parameter indicating an error is passed, a step will be started that initiates manual processing.&lt;br /&gt;&lt;br /&gt;An error will also cause an event to be triggered If a function module has been called directly. However, in contrast to the situation with a workflow, it does not cause a workflow step to be terminated, but rather an error workflow is started.&lt;br /&gt;&lt;br /&gt;25 Work Item&lt;br /&gt;&lt;br /&gt;A work item represents the run-time environment for a standard task that is defined once in the system. A standard task contains a method that can be used for processing a specific object.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-6039648838133798979?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/6039648838133798979/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=6039648838133798979' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/6039648838133798979'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/6039648838133798979'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/09/few-technical-definations.html' title='Few Technical definations..'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-2618808954793081759</id><published>2008-09-19T23:18:00.000-07:00</published><updated>2008-09-20T00:56:29.198-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Dictionary'/><title type='text'>SAP LOCK CONCEPT</title><content type='html'>SAP LOCK CONCEPT:&lt;br /&gt;&lt;br /&gt;If several users are competing to access the same resource or resources, you need to find a way of synchronizing the access in order to protect the consistency of your data.&lt;br /&gt;&lt;br /&gt;Example: In a flight booking system, you would need to check whether seats were still free before making a reservation. You also need a guarantee that critical data (the number of free seats in this case) cannot be changed while you are working with the program.&lt;br /&gt;&lt;br /&gt;Locks are a way of coordinating competing accesses to a resource. Each user requests a lock before accessing critical data.&lt;br /&gt;&lt;br /&gt;It is important to release the lock as soon as possible, so as not to hinder other users unnecessarily.&lt;br /&gt;&lt;br /&gt;Whenever you make direct changes to data on the database in a transaction, the database system sets corresponding locks.&lt;br /&gt;&lt;br /&gt;The database management system (DBMS) physically locks the table entries that you want to change (INSERT; UPDATE, MODIFY), and those that you read from the database and intend to change (SELECT SINGLE FROM FOR UPDATE). Other users who want to access the locked record or records must wait until the physical lock has been released. In such a case, the ABAP program waits until the lock has been released again.&lt;br /&gt;&lt;br /&gt;At the end of the database transaction, the database releases all of the locks that it has set during the transaction.&lt;br /&gt;&lt;br /&gt;In the R/3 System, this means that each database lock is released when a new screen is displayed, since a change of screen triggers an implicit database commits.&lt;br /&gt;&lt;br /&gt;To keep a lock set through a series of screens (from the dialog program to the update program), the R/3 System has a global lock table at the application server level, which you can use to set logical locks for table entries.&lt;br /&gt;&lt;br /&gt;One application server contains this lock table and a special enqueue work process, which administers all requests for logical locks in the R/3 System. All logical lock requests of the R/3 System run using this work process.&lt;br /&gt;&lt;br /&gt;You can also use logical locks to "lock" table entries that do not yet exist on the database (inserting new lines). You cannot do this with physical database locks.&lt;br /&gt;&lt;br /&gt;For further information, see the ABAP Editor Keyword documentation for the term Locking.&lt;br /&gt;Logical locks are generated when an entry is written in the lock table. You use function modules to do this.&lt;br /&gt;&lt;br /&gt;You can only set a lock if the relevant table entry is not already locked.&lt;br /&gt;&lt;br /&gt;The SAP transaction receives information on the success of a lock request from a return code sent via the EXCEPTION interface of the function module. In other words, the control is returned to the program using the function module. The ABAP program does not need to wait.&lt;br /&gt;&lt;br /&gt;The SAP transaction can react appropriately by analyzing the return code.&lt;br /&gt;&lt;br /&gt;Another user cannot gain access to work with the same table entries that are already locked.&lt;br /&gt;&lt;br /&gt;Depending on the bundling technique in use for database updates), the program must delete the lock entries it generated using a lock module, or have them deleted indirectly (see unit Organizing Database Updates).&lt;br /&gt;&lt;br /&gt;If the user terminates the program that generated the lock entries (usually a dialog program), the locks are released automatically (implicitly). You can do this by entering /n in the command field, or with the statements LEAVE PROGRAM, LEAVE TO TRANSACTION, and 'A' or 'X'&lt;br /&gt;Messages.&lt;br /&gt;&lt;br /&gt;When you call an ENQUEUE function module, the dialog program tries to generate a lock entry.&lt;br /&gt;&lt;br /&gt;The export parameters identify the table entry (or entries) that you want to lock.&lt;br /&gt;&lt;br /&gt;The program that generates the locks (usually dialog program) analyzes the return code for lock requests and reacts accordingly.&lt;br /&gt;&lt;br /&gt;If the lock could not be set; you should normally output an error message.&lt;br /&gt;&lt;br /&gt;At the end of the dialog program, you can use the corresponding DEQUEUE function module to delete the entries from the lock table.&lt;br /&gt;&lt;br /&gt;DEQUEUE function modules have no exceptions. If you try to release an entry that is not locked, this has no effect.&lt;br /&gt;&lt;br /&gt;If you want to release all of the locks that you have set, at the end of your dialog program, you can use the function module DEQUEUE_ALL.&lt;br /&gt;&lt;br /&gt;The lock table contains the lock arguments for each table (for lock arguments, see the following slide).&lt;br /&gt;&lt;br /&gt;To display the lock table, use transaction SM12.&lt;br /&gt;&lt;br /&gt;The entries in the lock table are standard. Locks are always set using the values of the key fields in a table. These form the lock argument.&lt;br /&gt;&lt;br /&gt;You pass the values for the lock argument to the lock modules via their interface (function module IMPORT parameters).&lt;br /&gt;&lt;br /&gt;If you fail to set any of these parameters, the system interprets it generically, that is, the lock is set for all table lines that meet the criteria specified in the other parameters. The client parameter is an exception to this rule, where the default client SY-MANDT applies.&lt;br /&gt;&lt;br /&gt;Lock entries must be assigned to a lock mode.&lt;br /&gt;&lt;br /&gt;There are three different lock modes:&lt;br /&gt;&lt;br /&gt;Mode 'E' for write locks: This is set if you want to write data to the database (change, create, or delete).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Mode 'S' for read locks: This is set if you want to ensure that the data, which you are reading from the database in your program, is not changed by other users while the program is running. You do not want to change the data itself in your program.&lt;br /&gt;&lt;br /&gt;Mode 'X' for write locks: Like mode 'E', mode 'X' is used for writing data to the database. The technical difference between mode 'X' and mode 'E' is that locks of mode 'X' are not accumulated while a program is being executed. (For further details, see the following pages).&lt;br /&gt;&lt;br /&gt;If someone tries to lock the same data record again with a second program (different user), the various lock modes take effect as follows:&lt;br /&gt;&lt;br /&gt;Write locks ('E' or 'X') mean that any lock attempts from other users are refused, irrespective of the mode in which the lock is attempted.&lt;br /&gt;&lt;br /&gt;If a data record is locked in mode 'S' (shared), further locks in mode 'S' may be set by other users.&lt;br /&gt;&lt;br /&gt;Lock attempts in other lock modes ('E' or 'X') are refused.&lt;br /&gt;&lt;br /&gt;If you want to try to lock a data record more than once while a program is running (for example using a function module that you call up, which sets locks itself), the lock system reacts in the following way:&lt;br /&gt;&lt;br /&gt;Mode 'E' write locks are not refused. Instead, a cumulative counter is incremented. The same applies to read locks (mode 'S').&lt;br /&gt;&lt;br /&gt;If a data record is locked in mode 'E', a lock request generates a second lock, which is marked as a read lock.&lt;br /&gt;&lt;br /&gt;If a data record is locked in mode 'S' and no further read locks are set by other users, a lock attempt in mode 'E' is possible. This generates a second entry in the lock table (for mode 'E').&lt;br /&gt;&lt;br /&gt;If a data record is locked in mode 'X', all further lock requests are refused.&lt;br /&gt;&lt;br /&gt;If you want to ensure that you are reading up-to-date data in your program (with the intention of changing and returning this to the database), you should use the following procedure for lock requests and database accesses in your program:&lt;br /&gt;&lt;br /&gt;First, lock the data that you want to edit.&lt;br /&gt;&lt;br /&gt;Then read the current data from the database.&lt;br /&gt;&lt;br /&gt;In the next step, process (change) the data in your program and write this to the database.&lt;br /&gt;&lt;br /&gt;In the final step, release the locks that you set at the beginning.&lt;br /&gt;&lt;br /&gt;This procedure ensures that your changes run fully with lock protection and that you only read data that has been changed consistently by other programs (provided that these also use the SAP lock concept and follow the procedure described here).&lt;br /&gt;&lt;br /&gt;Lock modules are created for lock objects and not tables.&lt;br /&gt;&lt;br /&gt;Lock objects are maintained in the dictionary. Customer lock objects must begin with "EY" or "EZ".&lt;br /&gt;&lt;br /&gt;A lock object is a logical object composed of a list of tables that are linked by foreign key&lt;br /&gt;Relationships. Lock modules are generated for these objects and enable common lock entries to be set for all tables contained in the lock object. This allows combinations of table entries to be locked.&lt;br /&gt;&lt;br /&gt;Example: A lock object that contains the tables SFLIGHT and SBOOK enables a flight with its bookings to be locked.&lt;br /&gt;&lt;br /&gt;The list of tables for a lock object consists of a primary table. Further table entries are referred to as secondary tables. Only tables with foreign key relationships to the primary table can be used as secondary tables.&lt;br /&gt;&lt;br /&gt;With lock objects, you can assign different names for the parameters that describe the fields of the lock arguments for the lock modules. The names of the table fields (key fields of the tables) are proposed by the system.&lt;br /&gt;&lt;br /&gt;You can specify the lock mode (a write lock 'E' or 'X' or a read lock 'S') for each table. These function as default values for the lock modules.&lt;br /&gt;&lt;br /&gt;After you have assigned tables and default lock modes, lock objects must be generated.&lt;br /&gt;&lt;br /&gt;When you activate a lock object, the system generates an ENQUEUE and a DEQUEUE function module.&lt;br /&gt;&lt;br /&gt;These have the names ENQUEUE_ and DEQUEUE_ respectively.&lt;br /&gt;&lt;br /&gt;If you want to ensure that you are reading current data in your program (with the intention of changing and returning this to the database), you should use the following procedure in your program for lock requests and database accesses:&lt;br /&gt;&lt;br /&gt;1. Lock the data that you want to edit.&lt;br /&gt;2. Read the current data from the database.&lt;br /&gt;3. Process (change) the data in your program and write this to the database.&lt;br /&gt;4. Release the locks that you set at the beginning.&lt;br /&gt;&lt;br /&gt;This procedure ensures that your changes run fully with lock protection and that you only read data, which has been changed consistently by other programs (with the restriction that these are also using the SAP lock concept and following the procedure described).&lt;br /&gt;&lt;br /&gt;If you change the order of the four steps to Read -&gt; Lock -&gt; Change -&gt; Unlock, you run the risk that the data read by your program will not be up to date. Your program can read data before another user's program writes changes to the database. This means that a user of your program will make decisions for entries that are not based on up-to-date data from the database. For this reason, you should always follow the recommended procedure.&lt;br /&gt;&lt;br /&gt;Requesting a lock from a program is a communication step with lock administration. The&lt;br /&gt;Communication step requires a certain time interval. If your program sets locks for several objects, this interval occurs more than once.&lt;br /&gt;&lt;br /&gt;By using so-called local lock containers, you can reduce these communication intervals with lock administration. To do so, collect the required lock requests of your program and send them together to lock administration.&lt;br /&gt;&lt;br /&gt;The locks (delayed execution) can be collected when the lock modules are called. For this purpose, qualify the IMPORT parameter_collect with 'X'. The data transferred via the lock module interface is then registered in a list (lock container) as a lock request that needs to be executed.&lt;br /&gt;&lt;br /&gt;The lock container can be terminated using the FLUSH_ENQUEUE function module and sent to lock administration.&lt;br /&gt;&lt;br /&gt;When the lock orders of a lock container can be executed, the lock container is deleted.&lt;br /&gt;&lt;br /&gt;If one of the locks in a container cannot be set, the function module FLUSH_ENQUEUE triggers the exception FOREIGN_LOCK. In this case, none of the registered lock requests is executed. The registered locks remain in the lock container.&lt;br /&gt;&lt;br /&gt;You can delete the contents of an existing lock container with the function module&lt;br /&gt;RESET_ENQUEUE.&lt;br /&gt;&lt;br /&gt;The specified function modules have release status internally-released.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-2618808954793081759?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/2618808954793081759/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=2618808954793081759' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/2618808954793081759'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/2618808954793081759'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/09/sap-lock-concept.html' title='SAP LOCK CONCEPT'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-1480902560759066110</id><published>2008-09-19T22:50:00.000-07:00</published><updated>2008-09-19T22:51:52.602-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Reports'/><title type='text'>ABAP List Viewer</title><content type='html'>ABAP List Viewer &lt;br /&gt;The common features of report are column alignment, sorting, filtering, subtotals, totals etc. To implement these, a lot of coding and logic is to be put. To avoid that we can use a concept called ABAP List Viewer (ALV).&lt;br /&gt;Using ALV, we can have three types of reports:&lt;br /&gt;1. Simple Report&lt;br /&gt;2. Block Report&lt;br /&gt;3. Hierarchical Sequential Report&lt;br /&gt;There are some function modules which will enable to produce the above reports without much effort.&lt;br /&gt;All the definitions of internal tables, structures&lt;br /&gt;and constants are declared in a type-pool called SLIS.&lt;br /&gt;Simple Report&lt;br /&gt;The important function modules are: &lt;br /&gt;•Reuse_alv_list_display&lt;br /&gt;•Reuse_alv_fieldcatalog_merge&lt;br /&gt;•Reuse_alv_events_get&lt;br /&gt;•Reuse_alv_commentary_write&lt;br /&gt;•Reuse_alv_grid_display&lt;br /&gt;A. REUSE_ALV_LIST_DISPLAY: This is the function module which prints the data.&lt;br /&gt;The important parameters are:&lt;br /&gt;1. Export:&lt;br /&gt;a. I_callback_program : report id&lt;br /&gt;b. I_callback_pf_status_set : routine where a user can set his own pf status or change the&lt;br /&gt;functionality of the existing pf -status.&lt;br /&gt;c. I_callback_user_command : routine where the function codes are handled.&lt;br /&gt;d. I_structure name : name of the dictionary table&lt;br /&gt;e. Is_Layout : structure to set the layout of the report&lt;br /&gt;f. It_fieldcat : internal table with the list of all fields and their attributes which are to&lt;br /&gt;be printed (this table can be populated automatically by the function&lt;br /&gt;module REUSE_ALV_FIELDCATALOG_MERGE)&lt;br /&gt;g. It_events : internal table with a list of all possible events of ALVand their &lt;br /&gt;corresponding routine names.&lt;br /&gt;2. Tables:&lt;br /&gt;a. t_outtab : internal table with the data to be output&lt;br /&gt;B. REUSE_ALV_FIELDCATALOG_MERGE: &lt;br /&gt;This function module is used to populate a fieldcatalog which is essential to display the data in ALV. If the output data is from a single dictionary table and all the columns are selected, then we need not exclusively create the field catalog. Its enough to mention the table name as a parameter(I_structure_name) in the REUSE_ALV_LIST_DISPLAY. But in other cases we need to create it.&lt;br /&gt;The important parameters are:&lt;br /&gt;1. Export:&lt;br /&gt;a. I_program_name : report id&lt;br /&gt;b. I_internal_tabname : the internal output table &lt;br /&gt;c. I_inclname : include or the report name where all the dynamic forms are handled.&lt;br /&gt;2. Changing&lt;br /&gt;ct_fieldcat : an internal table with the type SLIS_T_FIELDCAT_ALV which is declared in &lt;br /&gt;the type pool SLIS.&lt;br /&gt;C . REUSE_ALV_EVENTS_GET: Returns table of possible events for a a list type&lt;br /&gt;1. Import:&lt;br /&gt;Et_Events : The event table is returned with all possible CALLBACK events for the &lt;br /&gt;specified list type (column ‘NAME’). For events to be processed by the &lt;br /&gt;callback, their ‘FORM’ field must be filled. If the field is initialized, the event &lt;br /&gt;is ignored. The entry can be read from the event table, the field ‘FORM’ filled &lt;br /&gt;and the entry modified using constants from the type pool SLIS.&lt;br /&gt;2. Export:&lt;br /&gt;I_list_type: &lt;br /&gt;0 = simple list&lt;br /&gt;1 = hierarchical-sequential list &lt;br /&gt;2 = simple block list&lt;br /&gt;3 = hierarchical-sequential block list&lt;br /&gt;D. REUSE_ALV_COMMENTARY_WRITE : This is used in the Top-of-page event to print the headings and other comments for the list.&lt;br /&gt;1. It_list_commentary : Internal table with the headings of the type slis_t_listheader.&lt;br /&gt;This internal table has three fields:&lt;br /&gt;Typ : ‘H’ - header, ‘S’ - selection, ‘A’ - action&lt;br /&gt;Key : only when typ is ‘S’.&lt;br /&gt;Info : the text to be printed&lt;br /&gt;E. REUSE_ALV_GRID_DISPLAY: A new function in 4.6 version, to display the results in grid rather than as a list.&lt;br /&gt;Parameters : same as reuse_alv_list_display&lt;br /&gt;HIERARCHICAL REPORTS&lt;br /&gt;A. REUSE_ALV_HIERSEQ_LIST_DISPLAY&lt;br /&gt;1. Export:&lt;br /&gt;a. I_CALLBACK_PROGRAM&lt;br /&gt;b. I_CALLBACK_PF_STATUS_SET&lt;br /&gt;c. I_CALLBACK_USER_COMMAND&lt;br /&gt;d. IS_LAYOUT&lt;br /&gt;e. IT_FIELDCAT &lt;br /&gt;f. IT_EVENTS&lt;br /&gt;g. I_TABNAME_HEADER : Name of the internal table in the program containing the output data of the &lt;br /&gt;highest hierarchy level.&lt;br /&gt;h. I_TABNAME_ITEM : Name of the internal table in the program containing the output data of the &lt;br /&gt;lowest hierarchy level.&lt;br /&gt;i. IS_KEYINFO : This structure contains the header and item table field names which link the two tables &lt;br /&gt;(shared key).&lt;br /&gt;2. Tables &lt;br /&gt;a. T_OUTTAB_HEADER : Header table with data to be output&lt;br /&gt;b. T_OUTTAB_ITEM : Name of the internal table in the program containing the output data of the&lt;br /&gt;lowest hierarchy level.&lt;br /&gt;BLOCK REPORT&lt;br /&gt;This is used to display multiple lists continuously.&lt;br /&gt;The important functions used in this report are:&lt;br /&gt;A. REUSE_ALV_BLOCK_LIST_INIT&lt;br /&gt;B. REUSE_ALV_BLOCK_LIST_APPEND&lt;br /&gt;C. REUSE_ALV_BLOCK_LIST_DISPLAY &lt;br /&gt;D. REUSE_ALV_BLOCK_HS_LIST_APPEND&lt;br /&gt;A. REUSE_ALV_BLOCK_LIST_INIT&lt;br /&gt;Parameters:&lt;br /&gt;a. I_CALLBACK_PROGRAM&lt;br /&gt;b. I_CALLBACK_PF_STATUS_SET&lt;br /&gt;c. I_CALLBACK_USER_COMMAND&lt;br /&gt;This function module is used to set the default GUI status etc.&lt;br /&gt;B. REUSE_ALV_BLOCK_LIST_APPEND&lt;br /&gt;Export :&lt;br /&gt;a. IS_LAYOUT : layout settings for block&lt;br /&gt;b. IT_FIELDCAT : field catalog&lt;br /&gt;c. I_TABNAME : Internal table name of the output data&lt;br /&gt;d. IT_EVENTS : internal table name with all possible events&lt;br /&gt;Tables : &lt;br /&gt;a. T_OUTTAB : internal table with output data.&lt;br /&gt;This function module adds the data to the block.&lt;br /&gt;INTERNAL TABLES IN SLIS &lt;br /&gt;Slis_t_fieldcat_alv :&lt;br /&gt;This internal table contains the field attributes. This internal table can be populated automatically by using ‘REUSE_ALV_FIELDCATALOG_MERGE’.&lt;br /&gt;Important Attributes:&lt;br /&gt;a. col_pos : position of the column&lt;br /&gt;b. fieldname : internal fieldname&lt;br /&gt;c. tabname : internal table name&lt;br /&gt;d. ref_fieldname : fieldname (dictionary)&lt;br /&gt;e. ref_tabname : table (dictionary)&lt;br /&gt;f. key(1) : column with key-color&lt;br /&gt;g. icon(1) : icon&lt;br /&gt;h. hotspot(1) : hotspot&lt;br /&gt;i. Symbol(1) : symbol&lt;br /&gt;j. Checkbox(1) : checkbox&lt;br /&gt;k. just(1) : (R)ight (L)eft (C)ent&lt;br /&gt;l. do_sum(1) : sum up&lt;br /&gt;m. no_out(1) : (O)blig. (X)no out&lt;br /&gt;n. outputlen : output length&lt;br /&gt;o. seltext-l : long key word&lt;br /&gt;p. seltext_m : middle key word &lt;br /&gt;q. seltext_s : short key word&lt;br /&gt;r. reptext_ddic : heading(ddic)&lt;br /&gt;s. ddictxt(1) : (S)hort (M)iddle (L)ong&lt;br /&gt;t. datatype : datatype&lt;br /&gt;SLIS_T_EVENT :&lt;br /&gt;Internal table for storing all the possible events of the ALV. This can be populated by the function module Reuse_alv_events_get&lt;br /&gt;The columns are : &lt;br /&gt;name : name of the event&lt;br /&gt;form : name of the routine&lt;br /&gt;SYNTAXES FOR THE ROUTINES&lt;br /&gt;I_CALLBACK_PF_STATUS_SET &lt;br /&gt;Syntax : &lt;br /&gt;FORM set_pf_status USING rt_extab TYPE slis_t_extab &lt;br /&gt;The table RT_EXTAB contains the function codes which are hidden in the standard interface.&lt;br /&gt;I_CALLBACK_USER_COMMAND &lt;br /&gt;Syntax : &lt;br /&gt;FORM user_command USING r_ucomm LIKE sy-ucomm&lt;br /&gt;rs_selfield TYPE slis_selfield.&lt;br /&gt;The parameter r_ucomm contains the function code.&lt;br /&gt;The structure rs_selfield has the details about the current cursor position.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-1480902560759066110?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/1480902560759066110/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=1480902560759066110' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/1480902560759066110'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/1480902560759066110'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/09/abap-list-viewer.html' title='ABAP List Viewer'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-7066055223313616342</id><published>2008-08-28T09:24:00.000-07:00</published><updated>2008-08-28T09:27:08.115-07:00</updated><title type='text'>Implementation Ques..</title><content type='html'>1. What are the responsibilities of a functional consultant in an implementation project? &lt;br /&gt;a) Responsibilities in implementation project  &lt;br /&gt;- Preparing the functional specification documents. &lt;br /&gt;- Review and approval of functional specifications. &lt;br /&gt;- Designing a road map and setting approval from client. &lt;br /&gt;- Changing existing configuration whenever needed. &lt;br /&gt;- Setting up configuration for new enhancements. &lt;br /&gt;- Handling basic issues of MM module. &lt;br /&gt;b) Responsibilities in support project &lt;br /&gt;- Handling customization, configuration, and enhancement related issues  &lt;br /&gt;- Handling tickets on Day to Day basis &lt;br /&gt;- Monitoring S&amp;D reports on daily basis required by clients &lt;br /&gt;- Preparing functional specification documents  &lt;br /&gt;- Preparing end user training Documents  &lt;br /&gt;2. What are the responsibilities of a technical consultant in an implementation project? &lt;br /&gt;Preparation of technical specifications, getting approvals from functional consultant and PM, assistance to functional consultant. &lt;br /&gt;3.What is ERP and SAP? and why implementing SAP in an organization? Explain the special features of SAP over other ERPs? &lt;br /&gt;SAP is an ERP package.  SAP can be fit it any language.  It is used to get exact data with a fraction of section which will be use fully for management to take correct decision in a short span of time.  Using of sap means there is no need to maintain the &lt;br /&gt;middle management in the organization because the CEO of the company is able to direct the executives directly with the system.  SAP is able to integrate all functional organizational units together and retrieve exact data needed by management. Therefore, investing on middle management will become less. and the user will be able to access instance reports using the logistic information systems in SAP. &lt;br /&gt;4.Explain the business flow of an implementation project? &lt;br /&gt;- Project preparation &lt;br /&gt;- Business blue prints &lt;br /&gt;- Fit gap analysis &lt;br /&gt;- Realization &lt;br /&gt;- Go-live &lt;br /&gt;- Support &lt;br /&gt;5. Explain briefly about your role in current/previous project? (If you have one) &lt;br /&gt;6. Explain your functional experience prior to SAP? &lt;br /&gt;7. Can you explain the modern technologies in SAP?  Do you use this in your current project? &lt;br /&gt;8. Explain the terms "AS IS" and "FIT GAP ANALYSIS"? &lt;br /&gt;Business blue print stage is called AS-IS process.  Fit gap means, before implementing the SAP all the business data is in the form of documents, we cannot keep this data as is in the SAP.  There should be a gap.  So by filling this gap, we make configuration with the help of these documents.  This is called as fit gap analysis.  In this stage, we should analysis the gap between as is and is as process.&lt;br /&gt;9. What are the responsibilities of "CORE TEAM" and "FUNCTIONAL TEAM" in an implementation? &lt;br /&gt;Core Team are the power users who are selected for the SAP implementation.  The Functional Team gather the initial implementation requirement from these core team users who will be the bridge between the SAP Functional Team and their department users with the expert work knowledge.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-7066055223313616342?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/7066055223313616342/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=7066055223313616342' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/7066055223313616342'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/7066055223313616342'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/08/implementation-ques.html' title='Implementation Ques..'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-5787327444741524784</id><published>2008-08-12T03:42:00.000-07:00</published><updated>2008-08-12T21:40:09.283-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cross Applications'/><category scheme='http://www.blogger.com/atom/ns#' term='ALE/Idoc'/><title type='text'>Idoc - basics</title><content type='html'>SAP IDOC&lt;br /&gt;&lt;br /&gt;Basically an IDOC is formed of segments, and comprises of IDOC Type and IDOC Data. IDOC types defines the structure and format of the data being exchanged. &lt;br /&gt;&lt;br /&gt;Typically an IDOC will have the following&lt;br /&gt;• Control Record&lt;br /&gt;• Data Records&lt;br /&gt;• Status Records&lt;br /&gt;&lt;br /&gt;Control Record: &lt;br /&gt;&lt;br /&gt;Will have all the following.&lt;br /&gt;• IDOC number&lt;br /&gt;• IDOC TYPE&lt;br /&gt;• Sender and Receiver Information&lt;br /&gt;• Message Type&lt;br /&gt;Please note that there is only one control record per IDOC and the structure of IDOC control record is the same for all IDOCs.&lt;br /&gt;&lt;br /&gt;Data Record:&lt;br /&gt;&lt;br /&gt;This basically contains the data, the header data and the line item data for a particular IDOC for example Sales Order or Purchase Order. These are multiple records. &lt;br /&gt;&lt;br /&gt;Status Record:&lt;br /&gt;&lt;br /&gt;This represents the different status the IDOC goes through. And a status record will have multiple statuses. A status code, Date and Time are assigned.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-5787327444741524784?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/5787327444741524784/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=5787327444741524784' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/5787327444741524784'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/5787327444741524784'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/08/idoc-basics.html' title='Idoc - basics'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-6277733942709147270</id><published>2008-08-11T10:08:00.000-07:00</published><updated>2008-08-11T10:14:04.050-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FAQs'/><title type='text'>Modularization FAQ</title><content type='html'>1. Does every ABAP/4 have a modular structure? &lt;br /&gt;&lt;br /&gt;        Yes. &lt;br /&gt;&lt;br /&gt;   2. What is Modularization and its benefits? &lt;br /&gt;&lt;br /&gt;If the program contains the same or similar blocks of statements or it is required to process the same function several times, we can avoid redundancy by using modularization techniques.  By modularizing the ABAP/4 programs we make them easy to read and improve their structure.  Modularized programs are also easier to maintain and to update. &lt;br /&gt;&lt;br /&gt;   3.  Name the ABAP/4 Modularization techniques. &lt;br /&gt;&lt;br /&gt;·        Source code module.&lt;br /&gt;&lt;br /&gt;·        Subroutines.&lt;br /&gt;&lt;br /&gt;·        Functions. &lt;br /&gt;&lt;br /&gt;   4.  How can we create callable modules of program code within one ABAP/4 program? &lt;br /&gt;&lt;br /&gt;·            By defining Macros.&lt;br /&gt;&lt;br /&gt;·            By creating include programs in the library. &lt;br /&gt;&lt;br /&gt;   5.   M  is the attribute type of the module program. &lt;br /&gt;&lt;br /&gt;   6.  Is it possible to pass data to and from include programs explicitly? &lt;br /&gt;&lt;br /&gt;No.  If it is required to pass data to and from modules it is required to use subroutines or function modules. &lt;br /&gt;&lt;br /&gt;   7. What are subroutines? &lt;br /&gt;&lt;br /&gt;Subroutines are program modules, which can be called from other ABAP/4 programs or within the same program. &lt;br /&gt;&lt;br /&gt;   8. What are the types of Subroutines? &lt;br /&gt;&lt;br /&gt;·            Internal Subroutines: The source code of the internal subroutines will be in the same ABAP/4 program as the calling procedure (internal call).&lt;br /&gt;&lt;br /&gt;·            External Subroutines: The source code of the external subroutines will be in an ABAP/4 program other than the calling procedure. &lt;br /&gt;&lt;br /&gt;   9. It is not possible to create an ABAP/4 program, which contains only Subroutines (T/F). &lt;br /&gt;&lt;br /&gt;False. &lt;br /&gt;&lt;br /&gt;  10. A subroutine can contain nested form and endform blocks. (T/F) &lt;br /&gt;&lt;br /&gt;False. &lt;br /&gt;&lt;br /&gt;  11. Data can be passed between calling programs and the subroutines using Parameters. &lt;br /&gt;&lt;br /&gt;  12. What are the different types of parameters? &lt;br /&gt;&lt;br /&gt;       Formal Parameters: Parameters, which are defined during the definition of subroutine with the FORM statement.&lt;br /&gt;&lt;br /&gt;       Actual Parameters: Parameters which are specified during the call of a subroutine with the PERFORM statement. &lt;br /&gt;&lt;br /&gt;  13. How can one distinguish between different kinds of parameters? &lt;br /&gt;&lt;br /&gt;·            Input parameters are used to pass data to subroutines.&lt;br /&gt;&lt;br /&gt;·            Output parameters are used to pass data from subroutines. &lt;br /&gt;&lt;br /&gt;  14. What are the different methods of passing data? &lt;br /&gt;&lt;br /&gt;·            Calling by reference: During a subroutine call, only the address of the actual parameter is transferred to the formal parameters.  The formal parameter has no memory of its own, and we work with the field of the calling program within the subroutine.  If we change the formal parameter, the field contents in the calling program also changes.&lt;br /&gt;&lt;br /&gt;·            Calling by value: During a subroutine call, the formal parameters are created as copies of the actual parameters.  The formal parameters have memory of their own.  Changes to the formal parameters have no effect on the actual parameters.&lt;br /&gt;&lt;br /&gt;·            Calling by value and result: During a subroutine call, the formal parameters are created as copies of the actual parameters.  The formal parameters have their own memory space.  Changes to the formal parameters are copied to the actual parameters at the end of the subroutine. &lt;br /&gt;&lt;br /&gt;  15. The method by which internal tables are passed is By Reference. &lt;br /&gt;&lt;br /&gt;   16.  How can an internal table with Header line and one without header line be distinguished when passed to a subroutine?&lt;br /&gt;&lt;br /&gt;       Itab [] is used in the form and endform if the internal table is passed with a header line. &lt;br /&gt;&lt;br /&gt;  17. What should be declared explicitly in the corresponding ABAP/4 Statements to access internal tables without header lines &amp; why? &lt;br /&gt;&lt;br /&gt;Work Area. This is required as the Work Area is the interface for transferring data to and from the table. &lt;br /&gt;&lt;br /&gt;  18.  A subroutine can be terminated unconditionally using EXIT. (T/F) &lt;br /&gt;&lt;br /&gt;True. &lt;br /&gt;&lt;br /&gt;  19.  A subroutine can be terminated upon a condition using CHECK Statement. &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;  20. Function Modules are also external Subroutines. (T/F). &lt;br /&gt;&lt;br /&gt;      True. &lt;br /&gt;&lt;br /&gt;  21. What is the difference between the function module and a normal ABAP/4 subroutine? &lt;br /&gt;&lt;br /&gt;In contrast to normal subroutines function modules have uniquely defined interface.  Declaring data as common parts is not possible for function modules.  Function modules are stored in a central library. &lt;br /&gt;&lt;br /&gt;  22. What is a function group? &lt;br /&gt;&lt;br /&gt;A function group is a collection of logically related modules that share global data with each other.  All the modules in the group are included in the same main program.  When an ABAP/4 program contains a CALL FUNCTION statement, the system loads the entire function group in with the program code at runtime.  Every function module belongs to a function group. &lt;br /&gt;&lt;br /&gt;  23. What is the disadvantage of a call by reference? &lt;br /&gt;&lt;br /&gt;During a call by reference damage or loss of data is not restricted to the subroutine, but will instantly lead to changes to the original data objects. &lt;br /&gt;&lt;br /&gt;  24. A function module can be called from a transaction screen outside an ABAP/4 program. (T/F). &lt;br /&gt;&lt;br /&gt;True. &lt;br /&gt;&lt;br /&gt;  25. What is an update task? &lt;br /&gt;&lt;br /&gt;It is an SAP provided procedure for updating a database. &lt;br /&gt;&lt;br /&gt;  26. What happens if a function module runs in an update task? &lt;br /&gt;&lt;br /&gt;The system performs the module processing asynchronously.  Instead of carrying out the call immediately, the system waits until the next database update is triggered with the ‘COMMIT WORK’ command. &lt;br /&gt;&lt;br /&gt;  27. When a function module is activated syntax checking is performed automatically. (Y/N) &lt;br /&gt;&lt;br /&gt;True. &lt;br /&gt;&lt;br /&gt;  28. What is the use of the RAISING exception? &lt;br /&gt;&lt;br /&gt;The raising exception determines whether the calling program will handle the exception itself or leave the exception to the system. &lt;br /&gt;&lt;br /&gt;  29. What is the difference between internal tables and extract datasets? &lt;br /&gt;&lt;br /&gt;·            The lines of an internal table always have the same structure. By using extract datasets, you can handle groups of data with different structure and get statistical figures from the grouped data.&lt;br /&gt;&lt;br /&gt;·            You have to define the structure of the internal table at the beginning. You need not define the structure of the extract dataset.&lt;br /&gt;&lt;br /&gt;·            In contrast to internal tables, the system partly compresses exact datasets when storing them. This reduces the storage space required.&lt;br /&gt;&lt;br /&gt;·            Internal tables require special work area for interface whereas extract datasets do not need a special work area for interface. &lt;br /&gt;&lt;br /&gt;  30.It is possible to assign a local data object defined in a subroutine or function module to a field group. (T/F). &lt;br /&gt;&lt;br /&gt;False.&lt;br /&gt;&lt;br /&gt;  31. What is the difference between field-group header and other field groups? &lt;br /&gt;&lt;br /&gt;The header field group is a special field group for the sort criteria.  The system automatically prefixes any other field groups with the header field group.&lt;br /&gt;&lt;br /&gt;  33. Can a filed occur in several field groups. &lt;br /&gt;&lt;br /&gt;Yes.  But it leads to unnecessary data redundancy.&lt;br /&gt;&lt;br /&gt;  34. When sorting the extract dataset the fields used as default sort key lie in the Header field group.&lt;br /&gt;  35. What does the insert statement in extract datasets do? &lt;br /&gt;&lt;br /&gt;      It defines the fields of a field group.&lt;br /&gt;&lt;br /&gt;  36.What does the extract statement do in extract datasets? &lt;br /&gt;&lt;br /&gt;The data is written to virtual memory by extract commands.&lt;br /&gt;&lt;br /&gt;  37. A field-groups statement or an insert statement reverses storage space and transfers values. (T/F). &lt;br /&gt;&lt;br /&gt;False.&lt;br /&gt;&lt;br /&gt;  38. While using extract datasets it is required to have a special workarea for interface (T/F) &lt;br /&gt;&lt;br /&gt;False.&lt;br /&gt;&lt;br /&gt;  39.  The LOOP-ENDLOOP on extract datasets can be used without any kind of errors (T/F) &lt;br /&gt;&lt;br /&gt;False.  It causes runtime errors.&lt;br /&gt;&lt;br /&gt;  40. The Maximum no of key fields that can be used in a header is 50.&lt;br /&gt;  41. While sorting field groups we cannot use more than one key field (T/F). &lt;br /&gt;&lt;br /&gt;False.&lt;br /&gt;&lt;br /&gt;  42. While sorting, if the main storage available is not enough, the system writes data to an external help file.  The SAP profile parameter, which determines this help file, is DIR_SORTTMP. &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;43.  The extract statements in field groups can be used before or after processing the sort statements. (T/F)&lt;br /&gt;&lt;br /&gt;       FALSE.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-6277733942709147270?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/6277733942709147270/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=6277733942709147270' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/6277733942709147270'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/6277733942709147270'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/08/modularization-faq.html' title='Modularization FAQ'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-4312141981779091237</id><published>2008-08-11T10:05:00.000-07:00</published><updated>2008-08-11T10:07:14.683-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FAQs'/><category scheme='http://www.blogger.com/atom/ns#' term='Data Migration'/><title type='text'>BDC Faq..</title><content type='html'>1.       What is full form of BDC Session?&lt;br /&gt;&lt;br /&gt;Batch Data Communication Session. &lt;br /&gt;&lt;br /&gt;2.       What are the steps in a BDC session?&lt;br /&gt;&lt;br /&gt;The first step in a BDC session is to identify the screens of the transaction that the program will process.  Next step is to write a program to build the BDC table that will be used to submit the data to SAP.  The final step is to submit the BDC table to the system in the batch mode or as a single transaction by the CALL TRANSACTION command. &lt;br /&gt;&lt;br /&gt;3.       How do you find the information on the current screen?&lt;br /&gt;&lt;br /&gt;The information on the current screen can be found by SYSTEM à STATUS command from any menu. &lt;br /&gt;&lt;br /&gt;4.       How do you save data in BDC tables?&lt;br /&gt;&lt;br /&gt;The data in BDC tables is saved by using the field name ‘BDC_OKCODE’ and field value of ‘/11’. &lt;br /&gt;&lt;br /&gt;5.       What is the last entry in all BDC tables?&lt;br /&gt;&lt;br /&gt;In all BDC tables the last entry is to save the data by using the field name BDC_OKCODE and a field value of ‘/11’. &lt;br /&gt;&lt;br /&gt;6.       What is a multiple line field?&lt;br /&gt;&lt;br /&gt;A multiple line field is a special kind of field which allows the user to enter multiple lines of data into it. &lt;br /&gt;&lt;br /&gt;7.       How do you populate data into a multiple line field?&lt;br /&gt;&lt;br /&gt;To populate data into a multiple line field, an index is added to the field name to indicate which line is to be populated by the BDC session (Line index). &lt;br /&gt;&lt;br /&gt;8.       Write the BDC table structure.&lt;br /&gt;&lt;br /&gt;BDC table structure &lt;br /&gt;&lt;br /&gt;FIELD                     TYPE                            DESCRIPTION&lt;br /&gt;&lt;br /&gt;Program                CHAR (8)                      Program name of transaction.&lt;br /&gt;&lt;br /&gt;DynPro                 CHAR (4)                      Screen number of transaction.&lt;br /&gt;&lt;br /&gt;DynBegin              CHAR (1)                      Indicator for new screen.&lt;br /&gt;&lt;br /&gt;Fnam                    CHAR (35)                     Name of database field from screen.&lt;br /&gt;&lt;br /&gt;Fval                      CHAR (80)                     Value to submit to field. &lt;br /&gt;&lt;br /&gt;9.       Does the CALL TRANSACTION method allow multiple transactions to be processed by SAP?&lt;br /&gt;&lt;br /&gt;No.  The CALL TRANSACTION method allows only a single transaction to be processed by SAP.&lt;br /&gt;&lt;br /&gt;10.    Does the BDC-INSERT function allow multiple transactions to be processed by SAP?&lt;br /&gt;&lt;br /&gt;Yes.&lt;br /&gt;&lt;br /&gt;11.    What is the syntax for ‘CALL TRANSACTION’?&lt;br /&gt;&lt;br /&gt;CALL TRANSACTION trans [using bdctab MODE mode].&lt;br /&gt;&lt;br /&gt;Three possible entries are there for MODE.&lt;br /&gt;&lt;br /&gt;                  A          -           Show all screens.&lt;br /&gt;&lt;br /&gt;                  E          -           Show only screens with errors.&lt;br /&gt;&lt;br /&gt;                  N          -           Show no screens.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-4312141981779091237?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/4312141981779091237/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=4312141981779091237' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/4312141981779091237'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/4312141981779091237'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/08/bdc-faq.html' title='BDC Faq..'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-4756189998180349259</id><published>2008-07-24T22:06:00.000-07:00</published><updated>2008-08-09T01:33:44.702-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Enhancement'/><title type='text'>User exits</title><content type='html'>&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="Word.Document"&gt;&lt;meta name="Generator" content="Microsoft Word 11"&gt;&lt;meta name="Originator" content="Microsoft Word 11"&gt;&lt;link rel="File-List" href="file:///C:%5CDOCUME%7E1%5COm%5CLOCALS%7E1%5CTemp%5Cmsohtml1%5C01%5Cclip_filelist.xml"&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:worddocument&gt;   &lt;w:view&gt;Normal&lt;/w:View&gt;   &lt;w:zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:punctuationkerning/&gt;   &lt;w:validateagainstschemas/&gt;   &lt;w:saveifxmlinvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:ignoremixedcontent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:alwaysshowplaceholdertext&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:compatibility&gt;    &lt;w:breakwrappedtables/&gt;    &lt;w:snaptogridincell/&gt;    &lt;w:wraptextwithpunct/&gt;    &lt;w:useasianbreakrules/&gt;    &lt;w:dontgrowautofit/&gt;   &lt;/w:Compatibility&gt;   &lt;w:browserlevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;  &lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:latentstyles deflockedstate="false" latentstylecount="156"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;style&gt; &lt;!--  /* Style Definitions */  p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-parent:""; 	margin:0in; 	margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:12.0pt; 	font-family:"Times New Roman"; 	mso-fareast-font-family:"Times New Roman";} @page Section1 	{size:8.5in 11.0in; 	margin:1.0in 1.25in 1.0in 1.25in; 	mso-header-margin:.5in; 	mso-footer-margin:.5in; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --&gt; &lt;/style&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt;  /* Style Definitions */  table.MsoNormalTable 	{mso-style-name:"Table Normal"; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-parent:""; 	mso-padding-alt:0in 5.4pt 0in 5.4pt; 	mso-para-margin:0in; 	mso-para-margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:10.0pt; 	font-family:"Times New Roman"; 	mso-ansi-language:#0400; 	mso-fareast-language:#0400; 	mso-bidi-language:#0400;} &lt;/style&gt; &lt;![endif]--&gt;  &lt;p class="MsoNormal"&gt;What are user exits?&lt;br /&gt;&lt;br /&gt;What is involved in writing them? What precautions are needed?&lt;br /&gt;User defined functionality included to predefined SAP standards. Point in an SAP program where a customer's own program can be called. In contrast to customer exits, user exits allow developers to access and modify program components and data objects in the standard system.&lt;br /&gt;&lt;br /&gt;On upgrade, each user exit must be checked to ensure that it conforms to the standard system.&lt;br /&gt;There are two types of user exit:&lt;br /&gt;User exits that use INCLUDEs.&lt;br /&gt;These are customer enhancements that are called directly in the program.&lt;br /&gt;User exits that use tables.&lt;br /&gt;These are used and managed using Customizing.&lt;br /&gt;Should find the customer enhancements belonging to particular development class.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;What are the different ways in which you can make changes to SAP standard software ?&lt;br /&gt;&lt;br /&gt;Customizing&lt;br /&gt;Enhancements to the SAP Standard&lt;br /&gt;Modifications to the SAP Standard&lt;br /&gt;Customer Development&lt;br /&gt;&lt;br /&gt;What is customizing?&lt;br /&gt;&lt;br /&gt;Customizing is the setting of system parameters via SAP's own interface.&lt;br /&gt;&lt;br /&gt;Why do you need enhancements?&lt;br /&gt;&lt;br /&gt;The standard applications do not offer some of the functionality you need. The R/3 enhancement concept allows you to add your own functionality to SAP's standard business applications.&lt;br /&gt;&lt;br /&gt;What are the different types of enhancements ?&lt;br /&gt;&lt;br /&gt;Enhancements using customer exits&lt;br /&gt;Customers' potential requirements which are not included in the standard software are incorporated in the standard as empty modification 'shells'. Customers can then fill these with their own coding. Enhancements can relate to programs, menus and screens. Upward compatibility is assured.&lt;br /&gt;&lt;br /&gt;In other words, SAP guarantees that the jump from the standard software to the exit and the interface which call the exit will remain valid in future releases.&lt;br /&gt;&lt;br /&gt;Enhancements to ABAP/4 Dictionary elements&lt;br /&gt;These are ABAP/4 Dictionary enhancements (creation of table appends), text enhancements (customer-specific key words and documentation for data elements) and field exits (creation of additional coding for data elements).&lt;br /&gt;&lt;br /&gt;What is customer development ?&lt;br /&gt;Creating customer-specific objects within the customer name range.&lt;br /&gt;&lt;br /&gt;What is SSCR ?&lt;br /&gt;SSCR (SAP Software Change Registration) is a procedure, for registering all manual changes to SAP source coding and SAP Dictionary objects.&lt;br /&gt;&lt;br /&gt;What is the difference between modifications and enhancements ?&lt;br /&gt;Modifications mean making changes to the SAP standard functionality.&lt;br /&gt;Enhancements mean adding some functionality to SAP standard functionality.&lt;br /&gt;&lt;br /&gt;What are the disadvantages of modification ?&lt;br /&gt;Modifying standard code can lead to errors&lt;br /&gt;Modifications mean more work during software upgrades&lt;br /&gt;&lt;br /&gt;What are the advantages of enhancements ?&lt;br /&gt;Do not affect standard SAP source code&lt;br /&gt;Do not affect software upgrades&lt;br /&gt;&lt;br /&gt;when do you opt for modification ?&lt;br /&gt;Customer exits are not available for all programs and screens within the R/3 standard applications. You can only use exits if they already exist within the SAP R/3 System . Otherwise you have to opt for modifications .&lt;br /&gt;&lt;br /&gt;What are the various types of customer exits ?&lt;br /&gt;Menu exits&lt;br /&gt;Screen exits&lt;br /&gt;Function module exits&lt;br /&gt;Keyword exits&lt;br /&gt;&lt;br /&gt;What is a menu exit ?&lt;br /&gt;Adding items to the pulldown menus in standard R/3 applications .&lt;br /&gt;&lt;br /&gt;13.What is a screen exit ?&lt;br /&gt;Adding fields to the screens within R/3 applications. SAP creates screen exits by placing special subscreen areas within a standard R/3 screen and calling a customer subscreen from within the standard dynpro's flow logic.&lt;br /&gt;&lt;br /&gt;What is a function module exit ?&lt;br /&gt;Adding functionality to R/3 applications. Function module exits play a role in both menu and screen exits.&lt;br /&gt;&lt;br /&gt;What is a keyword exit ?&lt;br /&gt;Add documentation to the data elements of key words defined in the ABAP/4 Dictionary. The system displays this documentation whenever a user presses F1 to get online help for a screen field.&lt;br /&gt;&lt;br /&gt;How do SAP organizes its exits ?&lt;br /&gt;SAP organizes its exits in packages that are called SAP enhancements. Each SAP enhancement can contain many individual exits.&lt;br /&gt;&lt;br /&gt;What is an add-on project ?&lt;br /&gt;To take advantage of the exits available within standard R/3 applications, you need to create an add-on project. This project lets you organize the enhancement packages and exits you want to use. The add-on project also allows you to hang add-on functionality onto the exit hooks contained with SAP enhancements.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-4756189998180349259?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/4756189998180349259/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=4756189998180349259' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/4756189998180349259'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/4756189998180349259'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/07/user-exits.html' title='User exits'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-8776671443738241054</id><published>2008-07-05T06:17:00.000-07:00</published><updated>2008-08-09T01:12:56.863-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Dictionary'/><title type='text'>Internal Table type...</title><content type='html'>&lt;b&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;&lt;span style="font-size:85%;"&gt;What Are Different Types Of Internal Tables and Their Usage&lt;/span&gt;&lt;/span&gt;&lt;/b&gt; &lt;p&gt;&lt;b&gt;Standard Internal Tables&lt;/b&gt; &lt;/p&gt;&lt;p&gt;Standard tables have a linear index. You can access them using either the index or the key. If you use the key, the response time is in linear relationship to the number of table entries. The key of a standard table is always non-unique, and you may not include any specification for the uniqueness in the table definition. &lt;/p&gt;&lt;p&gt;This table type is particularly appropriate if you want to address individual table entries using the index. This is the quickest way to access table entries. To fill a standard table, append lines using the (APPEND) statement. You should read, modify and delete lines by referring to the index (INDEX option with the relevant ABAP command).  The response time for accessing a standard table is in linear relation to the number of table entries. If you need to use key access, standard tables are appropriate if you can fill and process the table in separate steps. For example, you can fill a standard table by appending records and then sort it. If you then use key access with the binary search option (BINARY), the response time is in logarithmic relation to&lt;br /&gt;the number of table entries. &lt;/p&gt;&lt;p&gt;&lt;b&gt;Sorted Internal Tables&lt;/b&gt; &lt;/p&gt;&lt;p&gt;Sorted tables are always saved correctly sorted by key. They also have a linear key, and, like standard tables, you can access them using either the table index or the key. When you use the key, the response time is in logarithmic relationship to the number of table entries, since the system uses a binary search. The key of a sorted table can be either unique, or non-unique, and you must specify either UNIQUE or NON-UNIQUE in the table definition.  Standard tables and sorted tables both belong to the generic group index tables. &lt;/p&gt;&lt;p&gt;This table type is particularly suitable if you want the table to be sorted while you are still adding entries to it. You fill the table using the (INSERT) statement, according to the sort sequence defined in the table key. Table entries that do not fit are recognised before they are inserted. The response time for access using the key is in logarithmic relation to the number of&lt;br /&gt;table entries, since the system automatically uses a binary search. Sorted tables are appropriate for partially sequential processing in a LOOP, as long as the WHERE condition contains the beginning of the table key. &lt;/p&gt;&lt;p&gt;&lt;b&gt;Hashed Internal Tables&lt;/b&gt; &lt;/p&gt;&lt;p&gt;Hashes tables have no internal linear index. You can only access hashed tables by specifying the key. The response time is constant, regardless of the number of table entries, since the search uses a hash algorithm. The key of a hashed table must be unique, and you must specify UNIQUE in the table definition. &lt;/p&gt;&lt;p&gt;This table type is particularly suitable if you want mainly to use key access for table entries. You cannot access hashed tables using the index. When you use key access, the response time remains constant, regardless of the number of table entries. As with database tables, the key of a hashed table is always unique. Hashed tables are therefore a useful way of constructing and&lt;br /&gt;using internal tables that are similar to database tables. &lt;/p&gt;&lt;p&gt;&lt;b&gt;Index Tables&lt;/b&gt; &lt;/p&gt;&lt;p&gt;Index table is only used to specify the type of generic parameters in a FORM or FUNCTION. That means that you can't create a table of type INDEX. &lt;/p&gt;&lt;p&gt;Internal tables are not DB tables. Standard and Sorted tables in combined are basically called as Index tables and there nothing else. Here is the hierarchy &lt;/p&gt;&lt;p&gt;                                 ANY TABLE&lt;br /&gt;                                           |&lt;br /&gt;                   ------------------------------------&lt;br /&gt;                    |                                                    |&lt;br /&gt;            Index Tables                                    Hashed Table&lt;br /&gt;                    |         &lt;br /&gt;   ------------------------------------&lt;br /&gt;   |                                                     |&lt;br /&gt;Standard Table                      Sorted Table &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-8776671443738241054?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/8776671443738241054/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=8776671443738241054' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8776671443738241054'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8776671443738241054'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/07/internal-table-type.html' title='Internal Table type...'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-8135921941822658971</id><published>2008-07-03T12:09:00.000-07:00</published><updated>2008-11-12T23:36:57.110-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SAP architecture'/><title type='text'>Work process...</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_xXiFfhO31BQ/SG0kDmibQZI/AAAAAAAAB9s/_JjFc2Fm3Wg/s1600-h/server.JPG"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_xXiFfhO31BQ/SG0kDmibQZI/AAAAAAAAB9s/_JjFc2Fm3Wg/s320/server.JPG" alt="" id="BLOGGER_PHOTO_ID_5218867187495420306" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-8135921941822658971?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/8135921941822658971/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=8135921941822658971' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8135921941822658971'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8135921941822658971'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/07/work-process.html' title='Work process...'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_xXiFfhO31BQ/SG0kDmibQZI/AAAAAAAAB9s/_JjFc2Fm3Wg/s72-c/server.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-3878149503618030000</id><published>2008-07-03T08:52:00.000-07:00</published><updated>2008-08-09T01:14:15.641-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Dictionary'/><title type='text'>FACTS ON INCLUDE &amp; APPEND Structures</title><content type='html'>&lt;h3&gt;&lt;span style="font-family:Arial;"&gt;Includes&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;With tables and structures it is possible to include the fields of another structure as well as to list the individual fields. Individual fields and includes can be combined as required.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;If an include is changed, all the tables and structures that contain this include are automatically adjusted.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;Example:&lt;/span&gt;&lt;/em&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt; Structure X is included in tables A and B. If another field is inserted into structure X, this field is also inserted in tables A and B.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;Includes can also be nested, i.e. structure A includes structure B, which in turn includes another structure C etc. The maximum nesting depth is limited to &lt;span style="font-weight: bold;"&gt;nine&lt;/span&gt;. A path of nested includes in a table or structure therefore can have at most length nine (excluding the table/structure itself).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;Only &lt;em&gt;flat structures&lt;/em&gt; can be included. In a flat structure, each field either refers to a data element or is directly assigned a data type and length by direct type entry.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;Only structures can be included in a table. Both tables and structures can be included in a structure, but only one table may lie on a path of nested includes.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;Example:&lt;/span&gt;&lt;/em&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt; Table TAB1 includes structure STRUKT1, which in turn includes structure STRUKT2. Only table TAB1 lies on the path of nested includes. It is also possible to include TAB1 in a further structure STRUKT0, but no other table may be included in TAB1 because in this case two tables (TAB1 and TAB2) would lie on a path of nested includes.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h3&gt;&lt;span style="font-family:Arial;"&gt;Append Structures&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;Append structures are used for enhancements which are not provided for in the standard (special developments, country versions and adding customer fields to SAP standard tables).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;An append structure is assigned to exactly one table. There can however be several append structures to one table. If an append structure is created or changed, the table assigned to it (appending object) is also activated again at activation and the changes also take effect there.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;An append structure permits the following enhancements to a table or structure:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal"  style="color:black;"&gt;&lt;span style=";font-family:Arial;font-size:9;"  &gt;Add new fields&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal"  style="color:black;"&gt;&lt;span style=";font-family:Arial;font-size:9;"  &gt;Add foreign keys to fields of the appending      object&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal"  style="color:black;"&gt;&lt;span style=";font-family:Arial;font-size:9;"  &gt;Add search help attachments to fields of the      appending object&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;Appending an append structure or inserting fields in an existing append structure does not lead to the conversion of the table. The fields of the append structure are appended to the database table.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;Append structures are created by customers in the customer name range and are thus protected against overwriting in upgrades or release upgrades. After a release upgrade, the new versions of the standard tables are imported and fields contained in append structures are appended to the new standard tables.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;Note:&lt;/span&gt;&lt;/em&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt; Append structures can only be created for transparent tables and structures. It is not possible to add fields with an append structure for transparent tables containing a long field. Furthermore, append structures may not be created for tables and structures of the central Basis of the R/3 System.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;!--[if !supportEmptyParas]--&gt; &lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-3878149503618030000?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/3878149503618030000/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=3878149503618030000' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/3878149503618030000'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/3878149503618030000'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/07/facts-on-include-append-structures.html' title='FACTS ON INCLUDE &amp; APPEND Structures'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-6522916281903310761</id><published>2008-07-03T00:25:00.000-07:00</published><updated>2008-08-09T01:24:48.187-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FAQs'/><title type='text'>SAP Interview Questions- Basics</title><content type='html'>&lt;h1 class="title"&gt;&lt;a href="http://www.techinterviews.com/?p=184" rel="bookmark" title="SAP Interview Questions"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/h1&gt;            &lt;ol&gt;&lt;li&gt;&lt;b&gt;What is ERP?&lt;/b&gt; - ERP is a package with the techniques and concepts for the integrated management of business as a whole, for effective use of management resources, to improve the efficiency of an enterprise. Initially, ERP was targeted for manufacturing industry mainly for planning and managing core business like production and financial market. As the growth and merits of ERP package ERP software is designed for basic process of a company from manufacturing to small shops with a target of integrating information across the company.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Different types of ERP?&lt;/b&gt;  - SAP, BAAN, JD Edwards, &lt;a href="http://www.oracle.com/applications/financials/index.html?intro.html"&gt;Oracle Financials&lt;/a&gt;, Siebel, PeopleSoft. Among all the ERP’s most of the companies implemented or trying to implement SAP because of number of advantages aver other ERP packages.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What is SAP?&lt;/b&gt; - SAP is the name of the company founded in 1972 under the German name (Systems, Applications, and Products in Data Processing) is the leading ERP (Enterprise Resource Planning) software package.&lt;/li&gt;&lt;p&gt;&lt;span id="more-184"&gt;&lt;/span&gt;&lt;/p&gt;&lt;li&gt;&lt;b&gt;Explain the concept of “Business Content” in SAP Business Information Warehouse?&lt;/b&gt; - Business Content is a pre-configured set of role and task-relevant information models based on consistent Metadata in the SAP Business Information Warehouse. Business Content provides selected roles within a company with the information they need to carry out their tasks. These information models essentially contain roles, workbooks, queries, InfoSources, InfoCubes, key figures, characteristics, update rules and extractors for SAP R/3, mySAP.com Business Applications and other selected applications.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Why do you usually choose to implement SAP?&lt;/b&gt; - There are number of technical reasons numbers of companies are planning to implement SAP. It’s highly configurable, highly secure data handling, min data redundancy, max data consistency, you can capitalize on economics of sales like purchasing, tight integration-cross function.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Can BW run without a SAP R/3 implementation?&lt;/b&gt; - Certainly. You can run BW without R/3 implementation. You can use pre-defined business content in BW using your non-SAP data. Here you simply need to map the transfer structures associated with BW data sources (InfoCubes, ODS tables) to the inbound data files or use 3rd part tool to connect your flat files and other data sources and load data in BW. Several third party ETL products such as Acta, Infomatica, DataStage and others will have been certified to load data in BW.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What is IDES?&lt;/b&gt; - International Demonstration and Education System. A sample application provided for faster learning and implementation.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What is WF and its importance?&lt;/b&gt; - Business Work Flow: Tool for automatic control and execution of cross-application processes. This involves coordinating the persons involved, the work steps required, the data, which needs to be processed (business objects). The main advantage is reduction in throughput times and the costs involved in managing business processes. Transparency and quality are enhanced by its use. &lt;/li&gt;&lt;li&gt;&lt;b&gt;What is SAP R/3?&lt;/b&gt; - A third generation set of highly integrated software modules that performs common business function based on multinational leading practice. Takes care of any enterprise however diverse in operation, spread over the world. In R/3 system all the three servers like presentation, application server and database server are located at different system.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What are presentation, application and database servers in SAP R/3?&lt;/b&gt; - The application layer of an R/3 System is made up of the application servers and the message server. Application programs in an R/3 System are run on application servers. The application servers communicate with the presentation components, the database, and also with each other, using the message server. All the data are stored in a centralized server. This server is called database server.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What should be the approach for writing a BDC program?&lt;/b&gt; - Convert the legacy system data to a flat file and convert flat file into internal table. Transfer the flat file into sap system called “sap data transfer”. Call transaction(Write the program explicitly) or create sessions (sessions are created and processed ,if success data will transfer).&lt;/li&gt;&lt;li&gt;&lt;b&gt;Explain open SQL vs native SQL?&lt;/b&gt; - ABAP Native SQL allows you to include database-specific SQL statements in an ABAP program. Most ABAP programs containing database-specific SQL statements do not run with different databases. If different databases are involved, use Open SQL. To execute ABAP Native SQL in an ABAP program, use the statement EXEC. Open SQL (Subset of standard SQL statements), allows you to access all database tables available in the R/3 System, regardless of the manufacturer. To avoid conflicts between database tables and to keep ABAP programs independent from the database system used, SAP has generated its own set of SQL statements known as Open SQL.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What are datasets?&lt;/b&gt;   - The sequential files (processed on application server) are called datasets. They are used for file handling in SAP.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What are internal tables check table, value table, and transparent table?&lt;/b&gt; - Internal table: It is a standard data type object, which exists only during the runtime of the program. Check table: Check table will be at field level checking. Value table: Value table will be at domain level checking ex: scarr table is check table for carrid. Transparent table: - Exists with the same structure both in dictionary as well as in database exactly with the same data and fields. &lt;/li&gt;&lt;li&gt;&lt;b&gt;What are the major benefits of reporting with BW over R/3?&lt;/b&gt; Would it be sufficient just to Web-enable R/3 Reports? - Performance — Heavy reporting along with regular OLTP transactions can produce a lot of load both on the R/3 and the database (cpu, memory, disks, etc). Just take a look at the load put on your system during a month end, quarter end, or year-end — now imagine that occurring even more frequently. Data analysis — BW uses a Data Warehouse and OLAP concepts for storing and analyzing data, where R/3 was designed for transaction processing. With a lot of work you can get the same analysis out of R/3 but most likely would be easier from a BW.&lt;/li&gt;&lt;li&gt;&lt;b&gt;How can an ERP such as SAP help a business owner learn more about how business operates?&lt;/b&gt;  -  In order to use an ERP system, a&lt;br /&gt;business person must understand the business processes and how they work together from one functional area to the other. This knowledge gives the student a much deeper understanding of how a business operates. Using SAP as a tool to learn about ERP systems will require that the&lt;br /&gt;people understand the business processes and how they integrate.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What is the difference between OLAP and Data Mining?&lt;/b&gt; - OLAP - On line Analytical processing is a reporting tool configured to understand your database schema ,composition facts and dimensions . By simple point-n-clicking, a user can run any number of canned or user-designed reports without having to know anything of SQL or the schema. Because of that prior configuration, the OLAP engine “builds” and executes the appropriate SQL. Mining is to build the application to specifically look at detailed analyses, often algorithmic; even more often misappropriate called “reporting.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What is “Extended Star Schema” and how did it emerge?&lt;/b&gt; - The Star Schema consists of the Dimension Tables and the Fact Table. The Master Data related tables are kept in separate tables, which has reference to the characteristics in the dimension table(s). These separate tables for master data is termed as the Extended Star Schema.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Define Meta data, Master data and Transaction data&lt;/b&gt; - Meta Data: Data that describes the structure of data or MetaObjects is called Metadata. In other words data about data is known as Meta Data. Master Data: Master data is data that remains unchanged over a long period of time. It contains information that is always needed in the same way. Characteristics can bear master data in BW. With master data you are dealing with attributes, texts or hierarchies. Transaction data: Data relating to the day-to-day transactions is the Transaction data.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Name some drawbacks of SAP&lt;/b&gt; - Interfaces are huge problem, Determine where master data resides, Expensive, very complex, demands highly trained staff, lengthy implementation time.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What is Bex?&lt;/b&gt; - Bex stands for Business Explorer. Bex enables end user to locate reports, view reports, analyze information and can execute queries. The queries in workbook can be saved to there respective roles in the Bex browser. Bex has the following components: Bex Browser, Bex analyzer, Bex Map, Bex Web.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What are variables?&lt;/b&gt; - Variables are parameters of a query that are set in the parameter query definition and are not filled with values until the queries are inserted into workbooks. There are different types of variables which are used in different application: Characteristics variables, Hierarchies and hierarchy node, Texts, Formulas, Processing types, User entry/Default type, Replacment Path.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What is AWB?&lt;/b&gt;. What is its purpose? - AWB stands for &lt;a href="http://help.sap.com/saphelp_nw04/helpdata/en/a8/6b023b6069d22ee10000000a11402f/content.htm"&gt;Administrator WorkBench&lt;/a&gt;. AWB is a tool for controlling, monitoring and maintaining all the processes connected with data staging and processing in the business information whearhousing.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What is the significance of ODS in BIW?&lt;/b&gt; - An ODS Object serves to store consolidated and debugged transaction data on a document level (atomic level). It describes a consolidated dataset from one or more InfoSources. This dataset can be analyzed with a BEx Query or InfoSet Query. The data of an ODS Object can be updated with a delta update into InfoCubes and/or other ODS Objects in the same system or across systems. In contrast to multi-dimensional data storage with InfoCubes, the data in ODS Objects is stored in transparent, flat database tables.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What are the different types of source system?&lt;/b&gt; - SAP R/3 Source Systems, SAP BW, Flat Files and External Systems.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What is Extractor?&lt;/b&gt; - Extractors is a data retrieval mechanisms in the SAP source system. Which can fill the extract structure of a data source with the data from the SAP source system datasets. The extractor may be able to supply data to more fields than exist in the extract structure.&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-6522916281903310761?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/6522916281903310761/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=6522916281903310761' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/6522916281903310761'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/6522916281903310761'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/07/sap-interview-questions-basics.html' title='SAP Interview Questions- Basics'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-2731570125710132851</id><published>2008-07-03T00:21:00.001-07:00</published><updated>2008-08-09T01:25:48.592-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FAQs'/><title type='text'>SAP ABAP interview questions</title><content type='html'>&lt;p&gt;&lt;br /&gt;&lt;/p&gt; &lt;ol&gt;&lt;li&gt;&lt;b&gt;What is an ABAP data dictionary?&lt;/b&gt;- ABAP 4 data dictionary describes the logical structures of the objects used in application development and shows how they are mapped to the underlying relational database in tables/views.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What are domains and data element?&lt;/b&gt;- Domains:Domain is the central object for describing the technical characteristics of an attribute of an business objects. It describes the value range of the field. Data Element: It is used to describe the semantic definition of the table fields like description the field. Data element describes how a field can be displayed to end-user.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What is foreign key relationship?&lt;/b&gt;- A relationship which can be defined between tables and must be explicitly defined at field level. Foreign keys are used to ensure the consistency of data. Data entered should be checked against existing data to ensure that there are now contradiction. While defining foreign key relationship cardinality has to be specified. Cardinality mentions how many dependent records or how referenced records are possible.&lt;/li&gt;&lt;p&gt;&lt;span id="more-198"&gt;&lt;/span&gt;&lt;/p&gt;&lt;li&gt;&lt;b&gt;Describe data classes.&lt;/b&gt;- Master data: It is the data which is seldomly changed. Transaction data: It is the data which is often changed. Organization data: It is a customizing data which is entered in the system when the system is configured and is then rarely changed. System data:It is the data which R/3 system needs for itself.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What are indexes?&lt;/b&gt;- Indexes are described as a copy of a database table reduced to specific fields. This data exists in sorted form. This sorting form ease fast access to the field of the tables. In order that other fields are also read, a pointer to the associated record of the actual table are included in the index. Yhe indexes are activated along with the table and are created automatically with it in the database.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Difference between transparent tables and pooled tables.&lt;/b&gt;- Transparent tables: Transparent tables in the dictionary has a one-to-one relation with the table in database. Its structure corresponds to single database field. Table in the database has the same name as in the dictionary. Transparent table holds application data. Pooled tables. Pooled tables in the dictionary has a many-to-one relation with the table in database. Table in the database has the different name as in the dictionary. Pooled table are stored in table pool at the database level.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What is an ABAP/4 Query?&lt;/b&gt;- ABAP/4 Query is a powerful tool to generate simple reports without any coding. ABAP/4 Query can generate the following 3 simple reports: Basic List: It is the simple reports. Statistics: Reports with statistical functions like Average, Percentages. Ranked Lists: For analytical reports. - For creating a ABAP/4 Query, programmer has to create user group and a functional group. Functional group can be created using with or without logical database table. Finally, assign user group to functional group. Finally, create a query on the functional group generated.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What is BDC programming?&lt;/b&gt;- Transferring of large/external/legacy data into SAP system using Batch Input programming. Batch input is a automatic procedure referred to as BDC(Batch Data Communications).The central component of the transfer is a queue file which receives the data vie a batch input programs and groups associated data into “sessions”.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What are the functional modules used in sequence in BDC?&lt;/b&gt;- These are the 3 functional modules which are used in a sequence to perform a data transfer successfully using BDC programming: BDC_OPEN_GROUP - Parameters like Name of the client, sessions and user name are specified in this functional modules. BDC_INSERT - It is used to insert the data for one transaction into a session. BDC_CLOSE_GROUP - This is used to close the batch input session.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What are internal tables?&lt;/b&gt;- Internal tables are a standard data type object which exists only during the runtime of the program. They are used to perform table calculations on subsets of database tables and for re-organising the contents of database tables according to users need.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What is ITS? What are the merits of ITS?&lt;/b&gt;- ITS is a Internet Transaction Server. ITS forms an interface between HTTP server and R/3 system, which converts screen provided data by the R/3 system into HTML documents and vice-versa. Merits of ITS: A complete web transaction can be developed and tested in R/3 system. All transaction components, including those used by the ITS outside the R/3 system at runtime, can be stored in the R/3 system. The advantage of automatic language processing in the R/3 system can be utilized to language-dependent HTML documents at runtime.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What is DynPro?&lt;/b&gt;- DynPro is a Dynamic Programming which is a combination of screen and the associated flow logic Screen is also called as DynPro.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What are screen painter and menu painter?&lt;/b&gt;- Screen painter: Screen painter is a tool to design and maintain screen and its elements. It allows user to create GUI screens for the transactions. Attributes, layout, filed attributes and flow logic are the elements of Screen painter. Menu painter: Menu painter is a tool to design the interface components. Status, menu bars, menu lists, F-key settings, functions and titles are the components of Menu painters. Screen painter and menu painter both are the graphical interface of an ABAP/4 applications.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What are the components of SAP scripts?&lt;/b&gt;- SAP scripts is a word processing tool of SAP which has the following components: Standard text. It is like a standard normal documents. Layout sets. - Layout set consists of the following components: Windows and pages, Paragraph formats, Character formats. Creating forms in the R/3 system. Every layout set consists of Header, paragraph, and character string. ABAP/4 program.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What is ALV programming in ABAP? When is this grid used in ABAP?&lt;/b&gt;- ALV is Application List viewer. Sap provides a set of ALV (ABAP LIST VIEWER) function modules which can be put into use to embellish the output of a report. This set of ALV functions is used to enhance the readability and functionality of any report output. Cases arise in sap when the output of a report contains columns extending more than 255 characters in length. In such cases, this set of ALV functions can help choose selected columns and arrange the different columns from a report output and also save different variants for report display. This is a very efficient tool for dynamically sorting and arranging the columns from a report output. The report output can contain up to 90 columns in the display with the wide array of display options.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What are the events in ABAP/4 language?&lt;/b&gt;- Initialization, At selection-screen, Start-of-selection, end-of-selection, top-of-page, end-of-page, At line-selection, At user-command, At PF, Get, At New, At LAST, AT END, AT FIRST.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What is CTS and what do you know about it?&lt;/b&gt;- The Change and Transport System (CTS) is a tool that helps you to organize development projects in the ABAP Workbench and in Customizing, and then transport the changes between the SAP Systems and clients in your system landscape. This documentation provides you with an overview of how to manage changes with the CTS and essential information on setting up your system and client landscape and deciding on a transport strategy. Read and follow this documentation when planning your development project.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What are logical databases? What are the advantages/ dis-advantages of logical databases?&lt;/b&gt;- To read data from a database tables we use logical database. A logical database provides read-only access to a group of related tables to an ABAP/4 program. Advantages: i)check functions which check that user input is complete, correct,and plausible. ii)Meaningful data selection. iii)central authorization checks for database accesses. iv)good read access performance while retaining the hierarchical data view determined by the application logic. dis advantages: i)If you donot specify a logical database in the program attributes,the GET events never occur. ii)There is no ENDGET command,so the code block associated with an event ends with the next event statement (such as another GET or an END-OF-SELECTION).&lt;/li&gt;&lt;li&gt;&lt;b&gt;What is a batch input session?&lt;/b&gt;- BATCH INPUT SESSION is an intermediate step between internal table and database table. Data along with the action is stored in session ie data for screen fields, to which screen it is passed, program name behind it, and how next screen is processed.&lt;/li&gt;&lt;li&gt;&lt;b&gt;How to upload data using CATT ?&lt;/b&gt;- These are the steps to be followed to Upload data through CATT: Creation of the CATT test case &amp;amp; recording the sample data input. Download of the source file template. Modification of the source file. Upload of the data from the source file.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What is Smart Forms?&lt;/b&gt;- Smart Forms allows you to create forms using a graphical design tool with robust functionality, color, and more. Additionally, all new forms developed at SAP will be created with the new Smart Form solution.&lt;/li&gt;&lt;li&gt;&lt;b&gt;How can I make a differentiation between dependent and independent data?&lt;/b&gt;- Client dependent or independent transfer requirements include client specific or cross client objects in the change requests. Workbench objects like SAPscripts are client specific, some entries in customizing are client independent. If you display the object list for one change request, and then for each object the object attributes, you will find the flag client specific. If one object in the task list has this flag on, then that transport will be client dependent.&lt;/li&gt;&lt;li&gt;&lt;b&gt;What is the difference between macro and subroutine?&lt;/b&gt;- Macros can only be used in the program the are defined in and only after the definition are expanded at compilation / generation. Subroutines (FORM) can be called from both the program the are defined in and other programs . A MACRO is more or less an abbreviation for some lines of code that are used more than once or twice. A FORM is a local subroutine (which can be called external). A FUNCTION is (more or less) a subroutine that is called external. Since debugging a MACRO is not really possible, prevent the use of them (I’ve never used them, but seen them in action). If the subroutine is used only local (called internal) use a FORM. If the subroutine is called external (used by more than one program) use a FUNCTION.&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-2731570125710132851?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/2731570125710132851/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=2731570125710132851' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/2731570125710132851'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/2731570125710132851'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/07/sap-abap-interview-questions.html' title='SAP ABAP interview questions'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-9178158825792510538</id><published>2008-07-02T22:38:00.001-07:00</published><updated>2008-08-09T01:23:03.155-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SAP architecture'/><title type='text'>SAP R/3 INTERVIEW ARCHITECTURE QUESTIONS</title><content type='html'>&lt;span style="color:black;"&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:9;"  &gt;&lt;span style="font-weight: 700;"&gt;1. What guarantees the  integration of all application modules?&lt;/span&gt;&lt;/span&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;      The R/3 basis system guarantees the integration of all application modules.  The  R/3 basis s/w provides the run time environment for the R/3 applications ensures  optimal integration, defines a stable architectural frame for system  enhancements, and contains the administration tools for the entire system.One  of the main tasks of the basis system is to guarantee the portability of the  complete system.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;b&gt;2. What are the central  interfaces of the R/3 system?&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;      Presentation Interface.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;      Database Interface.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;      Operating system Interface.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; 3. Which interface controls what  is shown on the p.c.?&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;      Presentation Interface.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;strong&gt;4. Which interface converts SQL requirements  in the SAP development system to those of the database?&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;      Database Interface.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;span style="font-weight: 700;"&gt; &lt;/span&gt;&lt;strong&gt;5. What is SAP dispatcher?&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;      SAP dispatcher is the control agent that manages the resources for the R/3  applications.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;strong&gt;6. What are the functions of dispatcher?&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;      Equal distribution of transaction load to the work processes.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;      Management of buffer areas in main memory.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;      Integration of the presentation levels.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;      Organization of communication activities.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;span style="font-weight: 700;"&gt; &lt;/span&gt;&lt;strong&gt;7. What is a work process?&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;      A work process is where individual dialog steps are actually processed and the  work is done.  Each work process handles one type of request.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;strong&gt;8. Name various work processes of R/3 system?&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;     Dialog or Online (processes only one request at a time).&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;     Background (Started at a specific time)&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;     Update (primary or secondary)&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;     Enque (Lock mechanism).&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;     Spool (generated online or during back ground processing for printing).&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;strong&gt;9. Explain about the two services that are  used to deal with communication.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;Message Service: Used by the application servers to exchange short internal  messages, all system communications.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;Gateway Service: Enables communication between R/3 and external applications  using CPI-C protocol.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;strong&gt;10. Which work process triggers database  changes?&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;Update work process.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;strong&gt;11. Define service (within R/3)?&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;A  service is a process or group of processes that perform a specific system  function and often provide an application-programming interface for other  processes to call.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;span style="font-weight: 700;"&gt; &lt;/span&gt;&lt;strong&gt;12. What are the roll and page areas?&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;Roll  and page areas are SAP R/3 buffers used to store user contexts (process  requests).  The SAP dispatcher assigns process requests to work processes as  they are queued in the roll and page areas.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;Paging area holds data from the application programs.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;Roll  area holds data from previous dialog steps and data that characterize the user.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;strong&gt;13. What are the different layers in R/3  system?&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;Presentation Layer.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;Application Layer.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;Database Layer.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;span style="font-weight: 700;"&gt; &lt;/span&gt;&lt;strong&gt;14. What are the phases of background  processing?&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;Job  Scheduling.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;Job  Processing.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;Job  Overview.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;strong&gt;15. What components of the R/e system  initiate the start of background jobs at the specified time?&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;The  batch scheduler initiates the start of background job.  The dispatcher then  sends this request to an available background work process for processing.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;strong&gt;16. Define Instance.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;An  instance is an administrative unit in which components of an R/3 systems  providing one or more services are grouped together.  The services offered by an  instance are started and stopped at random.  All components are parameterized  using a joint instance profile.  A central R/3 system consists of a single  instance in which all-necessary SAP services are offered.  Each instance uses  separate buffer areas.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;span style="font-weight: 700;"&gt; &lt;/span&gt;&lt;strong&gt;17. From hardware perspective, every  information system can be divided into three task areas Presentation,  Application Logic and Data Storage.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;The  R/3 Basis software is highly suitable for use in multi-level client/server  architectures.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;strong&gt;18. What are R/3 Basis configurations?&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;A  central system with centrally installed presentation software.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;Two-level client/server system with rolled out presentation software.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;Two-level client/server system. Presentation and Application run on the same  computer.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;Three-level client/server system.  Presentation, Application and database each  run on separate computers.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;strong&gt;19. What is a Service in SAP terminology?&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;A  service refers to something offered by a s/w component.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;span style="font-weight: 700;"&gt; 20.  What is Server in SAP terminology?&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;A  component can consist of one process or a group and is then called the server  for the respective service.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;b&gt;21.  What is a client in SAP terminology?&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;A  S/W component that uses the service (offered by a s/w component) is called a  Client.  At the same time these clients may also be servers for other services.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;b&gt;22.What is a SAP system?&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;The  union of all s/w components that are assigned to the same databases is called as  a SAP system.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;b&gt;23.  What is the means of communications between R/3 and external applications?&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;The  means of communication between R/2,R/3 and external applications is via the  CPI-C handler or SAP Gateway, using the CPI-C Protocol.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;b&gt;24.  What is the protocol used by SAP Gateway process?&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;The  SAP Gateway process communicates with the clients based on the TCP/IP Protocol.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;span style="font-weight: 700;"&gt; 25.  Expand CPI-C.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;Common Program Interface Communication.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;b&gt;26.  What is a Spool request?&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;Spool requests are generated during dialog or background processing and placed  in the spool database with information about the printer and print format.  The  actual data is places in the Tem Se (Temporary Sequential objects).&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;b&gt;27.  What are different types of Log records?&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;V1  and V2.  V1 must be processed before V2.  But, we can have more than one V2  logs.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;b&gt;28.  What are the types of Update requests?&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;An  update request can be divided into one primary (V1) and several Secondary update  components (V2).  Time-critical operations are placed in V1 component and those  whose timing is less critical are placed in V2 components.  If a V1 update  fails, V2 components will not be processed.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;b&gt;29.  Dialog work processes perform only one dialog step and then available for the  next request.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;span style="font-weight: 700;"&gt; &lt;/span&gt;&lt;strong&gt;30. Explain what is a transaction in SAP  terminology.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;In  SAP terminology, a transaction is series of logically connected dialog steps.&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt; &lt;strong&gt;31. Explain how SAP GUI handles output screen  for the user.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="line-height: 14.4pt;" align="justify"&gt; &lt;span style=";font-family:Arial;font-size:9;"  &gt;The  SAP front-end s/w can either run on the same computer or on different computers  provided for that purpose. User terminal input is accepted by the SAP terminal  program SAP GUI, converted to SAP proprietary format and sent to the SAP  dispatcher.  The dispatcher coordinates the information exchange between the SAP  GUIs and the work processes.  The dispatcher first places the processing request  in request queues, which it then processes.  The dispatcher dispatches the  requests one after another, to the available work process.  The actual  processing takes place in the work process.  When processing is complete, the  result of a work process is returned via the dispatcher to the SAP GUI.  The SAP  GUI interprets the received data and generates the output screen for the user.&lt;/span&gt;&lt;/p&gt;          &lt;p&gt; &lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-9310778039021344"; /* SAPBRAIN_Tutorials_LgRect_Whitebcg_no border */ google_ad_slot = "4597213027"; google_ad_width = 336; google_ad_height = 280; //--&gt; &lt;/script&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-9178158825792510538?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/9178158825792510538/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=9178158825792510538' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/9178158825792510538'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/9178158825792510538'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/07/sap-r3-interview-architecture-questions.html' title='SAP R/3 INTERVIEW ARCHITECTURE QUESTIONS'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-6445296538700990121</id><published>2008-07-02T22:22:00.001-07:00</published><updated>2008-08-09T01:25:21.923-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FAQs'/><category scheme='http://www.blogger.com/atom/ns#' term='Real-Time Stuffs'/><title type='text'>SAP ABAP Real Time Questions</title><content type='html'>&lt;ul&gt;&lt;div align="justify"&gt;         &lt;div align="justify"&gt;           &lt;p&gt;&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;           &lt;ol&gt;&lt;li&gt;Which client number you use for the   current                project?&lt;br /&gt;           &lt;/li&gt;&lt;li&gt;You are running a report. It is   taking long time for                execution. What steps   will you do to reduce the                execution   time.&lt;br /&gt;           &lt;/li&gt;&lt;li&gt;After running a BDC program in   background, next                day morning when you see   the results, few records                are not updated(error   records). What will you do                then?&lt;br /&gt;           &lt;/li&gt;&lt;li&gt;You are given functional specs for a   BDC program                and you need to decide whether to   write a method                call transaction or a   session. How u will decide?&lt;br /&gt;           &lt;/li&gt;&lt;li&gt;What is the difference between report   and script?&lt;br /&gt;           &lt;/li&gt;&lt;li&gt;what are the differences between   scripts &amp;amp; smart                forms?&lt;br /&gt;           &lt;/li&gt;&lt;li&gt;what are   enhancements?&lt;br /&gt;           &lt;/li&gt;&lt;li&gt;what are   user-exits?&lt;br /&gt;           &lt;/li&gt;&lt;li&gt;what is badi?&lt;br /&gt;           &lt;/li&gt;&lt;li&gt;what is the difference between   user-exit &amp;amp; BADIs?&lt;br /&gt;           &lt;/li&gt;&lt;li&gt;what is the difference between   user-exit &amp;amp;               customer-exit?&lt;br /&gt;           &lt;/li&gt;&lt;li&gt;how do you get functional specs  when   you are                assigned some object? (specs through   email..??)&lt;br /&gt;           &lt;/li&gt;&lt;li&gt;How do you write technical   specs?&lt;br /&gt;           &lt;/li&gt;&lt;li&gt;Howdo you write UTP?(unit test   plan)            &lt;/li&gt;&lt;/ol&gt;         &lt;/div&gt;       &lt;/div&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-6445296538700990121?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/6445296538700990121/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=6445296538700990121' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/6445296538700990121'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/6445296538700990121'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/07/sap-abap-real-time-questions.html' title='SAP ABAP Real Time Questions'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-1749470622279685839</id><published>2008-07-02T13:30:00.001-07:00</published><updated>2008-08-09T01:29:51.644-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Migration'/><title type='text'>Differences between LSMW and BDC</title><content type='html'>&lt;p&gt;&lt;b&gt;Batch Data Communication (BDC)&lt;/b&gt; is the oldest batch interfacing technique that SAP provided since the early versions of R/3. BDC is not a&lt;br /&gt;typical integration tool, in the sense that, it can be only be used for uploading data into R/3 and so it is not bi-directional.&lt;br /&gt;BDC works on the principle of simulating user input for transactional screen, via an ABAP program. Typically the input comes in the form&lt;br /&gt;of a flat file. The ABAP program reads this file and formats the input data screen by screen into an internal table (BDCDATA). The&lt;br /&gt;transaction is then started using this internal table as the input and executed in the background.&lt;br /&gt;&lt;br /&gt;In &lt;i&gt;Call Transaction&lt;/i&gt;, the transactions are triggered at the time of processing itself and so the ABAP program must do the error handling.&lt;br /&gt;It can also be used for real-time interfaces and custom error handling &amp;amp; logging features. Whereas in Batch Input Sessions, the ABAP&lt;br /&gt;program creates a session with all the transactional data, and this session can be viewed, scheduled and processed (using&lt;br /&gt;Transaction SM35) at a later time. The latter technique has a built-in error processing mechanism too.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Batch Input (BI) programs&lt;/i&gt; still use the classical BDC approach but doesnt require an ABAP program to be written to format the&lt;br /&gt;BDCDATA. The user has to format the data using predefined structures and store it in a flat file. The BI program then reads this and&lt;br /&gt;invokes the transaction mentioned in the header record of the file.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Direct Input (DI) programs&lt;/i&gt; work exactly similar to BI programs. But the only difference is, instead of processing screens they validate&lt;br /&gt;fields and directly load the data into tables using standard function modules. For this reason, DI programs are much faster (RMDATIND - Material Master DI program works at least 5 times faster) than the BDC counterpart and so ideally suited for loading large volume data. DI programs are&lt;br /&gt;not available for all application areas.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;LSMW&lt;/b&gt; is an encapsulated data transfer tool. It can provide the same functionality as BDC infact much more but when coming to techinical perspective most the parameters are encapulated. To listout some of the differences :&lt;/p&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;LSMW is basicaly designed for      a fuctional consultant who do not do much coding but need to explore the      fuctionality while BDC is designed for a technical consultant.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;LSMW offers different      techinque for migrating data: Direct input ,BAPI,Idoc,Batch input      recording. While bdc basically uses recording.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;LSMW mapping is done by SAP      while in BDC we have to do it explicitly .&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;LSMW is basically for      standard SAP application while bdc basically for customized application.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Coding can be done flexibly      in BDC when compared to LSMW&lt;/li&gt;&lt;/ul&gt;  &lt;p class="MsoNormal"&gt;&lt;!--[if !supportEmptyParas]--&gt; &lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-1749470622279685839?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/1749470622279685839/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=1749470622279685839' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/1749470622279685839'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/1749470622279685839'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/07/differences-between-lsmw-and-bdc.html' title='Differences between LSMW and BDC'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-3566352879551687821</id><published>2008-07-02T12:46:00.000-07:00</published><updated>2008-08-09T01:34:52.968-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Dictionary'/><title type='text'>Secondary Index</title><content type='html'>&lt;h2&gt;Creating a secondary index&lt;/h2&gt;  &lt;p&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt; &lt;/p&gt;  &lt;p class="MsoBodyText"&gt;There are two types of indexes: Primary index and secondary index. Primary index is automatically created using the primary keys defined.&lt;span style="font-size: 10pt; font-family: Arial;"&gt;  &lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;Secondary index could be created as per the user requirement. This article discusses about creating a secondary index.  &lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;Go to transaction SE11.  &lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-3566352879551687821?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/3566352879551687821/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=3566352879551687821' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/3566352879551687821'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/3566352879551687821'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/07/secondary-index.html' title='Secondary Index'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-7774149171622991749</id><published>2008-06-17T12:10:00.001-07:00</published><updated>2008-08-09T01:31:50.505-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Dictionary'/><title type='text'>LOGICAL DATABASE</title><content type='html'>What are logical databases?  What are the advantages/disadvantages of logical databases?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Ans :- A Logical Database is a hierarchical structure of tables. Use the GET statement to process Logical Databases.&lt;br /&gt;LDB consists of logically related tables grouped together - used for reading and processing data.&lt;br /&gt;&lt;br /&gt;Advantages&lt;br /&gt;1. No need of programming for retrieval , meaning for data selection&lt;br /&gt;2. Easy to use standard user interface, have check completeness of user input.&lt;br /&gt;&lt;br /&gt;Disadvantages&lt;br /&gt;&lt;br /&gt;1. Fast in case of lesser no. of tables But if the table is in the lowest level of hierarchy, all upper level tables should be read so performance is slower.&lt;br /&gt;&lt;br /&gt;Preparation of the data records by the L.D.B and reading of the data records in the actual report are accomplished with the command pair.&lt;br /&gt;Put and Get.&lt;br /&gt;The three main elements of  LDB are&lt;br /&gt;Structure, Selections, Database Program.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-7774149171622991749?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/7774149171622991749/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=7774149171622991749' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/7774149171622991749'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/7774149171622991749'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/06/logical-database.html' title='LOGICAL DATABASE'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-8416466929243547422</id><published>2008-06-17T12:05:00.000-07:00</published><updated>2008-08-09T01:15:13.669-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Dictionary'/><title type='text'>A look on DATA DICTIONARY</title><content type='html'>DATA TYPES AND DATA OBJECT:&lt;br /&gt;&lt;br /&gt;To work with data at runtime, you need to store it in the program at runtime and address it from your program. The system needs to know the type of the data (for example, character string, whole number, table consisting of name, currency amount, and date, and so on). A data object is a named memory area that is structured according to a particular data type . The type normally specifies all of the attributes of the data object. Using the name, you can access the contents, that is the data, directly. The name may be a compound name consisting of more than one single name.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;You could regard a data type as being similar to the construction plans for a building. The plans could be used for more than one building, which would all have the same type, but you would still be able to tell them apart. Suppose the buildings were used for storage. You would find a particular item using the address of the building, and knowing on which floor, in which room, and in which shelf or bin it was stored. You would have to consider carefully when drawing up your plans the kinds of things you would want to store in your buildings.&lt;br /&gt;&lt;br /&gt;The ABAP language is very flexible. Some of the attributes of a data type do not have to be specified until you use it to declare a data object, or, in some cases, not until runtime. It also allows you to use data objects that you have already declared or ABAP Dictionary objects as the basis for new types or data objects.&lt;br /&gt;&lt;br /&gt;There are various places in the ABAP Workbench in which you can store and define data types:&lt;br /&gt;&lt;br /&gt;ABAP Dictionary&lt;br /&gt;&lt;br /&gt;The ABAP Dictionary contains 23 predefined data types, which serve as a basis for all other ABAP Dictionary objects (such as domains, data elements, data types, and so on). These ABAP Dictionary types are available for use globally throughout the system.&lt;br /&gt;&lt;br /&gt;As well as the Dictionary objects used to access tables (tables, views, search helps, and so on), you can also (from Release 4.5) create global data types in the ABAP Dictionary.&lt;br /&gt;&lt;br /&gt;Previously, the only way to define global data types was to use a type group. Type groups are still supported, but the concept is actually obsolete now that it is possible to define global data types in the ABAP Dictionary.&lt;br /&gt;&lt;br /&gt;ABAP programs&lt;br /&gt;&lt;br /&gt;Data types that you define in an ABAP program are local, that is, only valid within that program. You use the ten predefined ABAP data types as a basis for your own types.&lt;br /&gt;&lt;br /&gt;Both global and local data types fit into the schematic diagram above. The names used above should make it easier for you to understand the following slides and the online documentation.&lt;br /&gt;&lt;br /&gt;The technical attributes of an elementary field are defined by an elementary type .&lt;br /&gt;&lt;br /&gt;A structure type consists of components.&lt;br /&gt;A table type consists of a line type , access type , key definition, and key type .&lt;br /&gt;In certain exceptional cases, types only desscribe part of the attributes of a data object. For example, a table type does not specify how many lines the table will have. This attribute is not set until runtime, and only affects that one data object.&lt;br /&gt;&lt;br /&gt;You can nest types "deeply" to any level. That means:&lt;br /&gt;A structured type can have components that are themselves structured or table types. This enables you to construct very complex data types. However, the smallest indivisible unit is always an elementary type.&lt;br /&gt;&lt;br /&gt;The ABAP Dictionary contains a series of predefined data types to represent the external data types of the various database systems.&lt;br /&gt;&lt;br /&gt;When you define a field with type CURR in the ABAP Dictionary, you must always link to a currency. You do this by specifying a field with the type CUKY. (When you create a list, you use the CURRENCY addition in the WRITE statement). The same applies to type QUAN, which must always link to a field with type UNIT.&lt;br /&gt;&lt;br /&gt;Type FLTP is useful for calculations involving very large or very small numbers. This usually only occurs in scientific applications or when making estimates.&lt;br /&gt;&lt;br /&gt;For business calculations, you should always use type DEC or QUAN. The arithmetic is the same as that to which you are used "on paper" - the system calculates precisely to the last decimal place.&lt;br /&gt;&lt;br /&gt;A typical use for type NUMC is for postal code fields - fields in which only digits should be allowed, but with which you do not want to perform calculations. (It is, however, possible to use conversions and calculate with alpha-numeric data.) For further details about arithmetic and conversions, refer to the Statements unit.&lt;br /&gt;&lt;br /&gt;Based on their underlying data type, some data objects are displayed according to formatting options (for example, country-specific date formats). Each user defines these formats in their user defaults.&lt;br /&gt;All of these data types apart from string and rawstring are elementary types. For technical reasons, these are classified as nested types. This has consequences for certain uses, such as the INTO clause of a SELECT statement.&lt;br /&gt;&lt;br /&gt;Data element&lt;br /&gt;&lt;br /&gt;Data elements have a business meaning (field label, help text, and so on). Up to and including Release 4.0, it was only possible to specify the technical attributes of a data element by specifying a domain. Each domain had to have a predefined Dictionary type assigned to it. This is still possible. However, it is now possible to enter a predefined Dictionary type directly. If you want to ensure that the technical attributes of a group of data elements can only be changed centrally, you should continue to use domains.&lt;br /&gt;&lt;br /&gt;As part of ABAP Objects, you can now designate a data element a reference type and declare global types for references to global classes or interfaces. Note that, in this case, the type of the data element is no longer elementary, but nested. The same applies when you use the predefined types string and rawstring.&lt;br /&gt;&lt;br /&gt;Structure&lt;br /&gt;&lt;br /&gt;Each component of a structure must have a name so that it can be addressed directly. For the type of a component you may specify a predefined Dictionary type, a data element, a structured type, or a table type. This allows you to construct nested data types. Note the consequences we have already mentioned with particular kinds of access. For example, if a structure contains a component with the type reference or string, you cannot use INTO CORRESPONDING FIELDS OF in a SELECT statement. Instead, you must list the components in the INTO clause.&lt;br /&gt;&lt;br /&gt;The data type of an internal table is fully specified by its:&lt;br /&gt;&lt;br /&gt;Line type&lt;br /&gt;The line type defines the attributes of the individual fields. You can specify any ABAP data type.&lt;br /&gt;&lt;br /&gt;Key definition&lt;br /&gt;The key fields and their sequence determine the criteria by which the system identifies table lines.&lt;br /&gt;&lt;br /&gt;Key type&lt;br /&gt;You can define the key as either unique or non-unique . The uniqueness of the key must be compatible with the access type you have chosen for the table. If the key is unique, there can be no duplicate entrie s in the table.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Access type&lt;br /&gt;&lt;br /&gt;Unlike database tables, the system assigns line numbers to certain kinds of internal tables. This means that you can use the index to access lines as well as the key. We sometimes use the term "table type " to refer to this.&lt;br /&gt;&lt;br /&gt;We can also divide up internal table types into three kinds by their access type:&lt;br /&gt;&lt;br /&gt;Standard tables.&lt;br /&gt;&lt;br /&gt;In a standard table, you can access data using either the table index or the key. Since the key of a standard table always has to be non-unique for compatibility reasons, the system searches the whole table each time you access it using the key. Consequently, you should always use the index to access a standard table whenever possible.&lt;br /&gt;&lt;br /&gt;Sorted tables.&lt;br /&gt;&lt;br /&gt;In a sorted table, the system automatically stores the entries and inserts new entries sorted by the table key. The system uses a binary search on the table when you access it using the key. You can specify the key of a sorted table as unique. You will often use the key to access a sorted table, but it is also possible to use the index. Standard tables and sorted tables are generically known as index tables.&lt;br /&gt;&lt;br /&gt;Hashed tables.&lt;br /&gt;&lt;br /&gt;You can only access a hashed table using the key. There are certain conditions under which you can considerably reduce the access times to large tables by using a hashed table.&lt;br /&gt;&lt;br /&gt;The key of a hashed table must always be unique.&lt;br /&gt;&lt;br /&gt;You do not have to specify the access type fully. You can either omit it altogether, or specify it partially (index table). The table type is then generic, and, by omitting certain attributes, we can use it to specify the types of interface parameters.&lt;br /&gt;&lt;br /&gt;To find out the access type of an internal table at runtime, use the statement DESCRIBE TABLE  KIND .&lt;br /&gt;&lt;br /&gt;The line type specifies the semantic and technical attributes of the individual fields in a line. As already mentioned, you can specify either another table type, a structured type, or an elementary type. If you only use an elementary type, the internal table will have a single column with no component name (unstructured table&lt;br /&gt;&lt;br /&gt;Key definition&lt;br /&gt;&lt;br /&gt;The default key consists of all character (alphanumeric) components of the line type that are not themselves table types. In this case, it would be empty (only possible with standard tables).&lt;br /&gt;&lt;br /&gt;It is particularly useful to name the line type , that is, the whole line, as the key if the table type is unstructured.&lt;br /&gt;&lt;br /&gt;You can also name key components and their sequence explicitly.&lt;br /&gt;&lt;br /&gt;A final possibility is not to specify the key, leaving it generic instead.&lt;br /&gt;Key type As well as defining the key as unique and non-unique , you can specify a generic key type by omitting the specificatio n.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Type F is useful for calculations involving very large or very small numbers. This usually only occurs in scientific applications or when making estimates.&lt;br /&gt;&lt;br /&gt;For business calculations, you should always use type P. The arithmetic is the same as that to which you are used "on paper" - the system calcualtes precisely to the la st decimal place.&lt;br /&gt;&lt;br /&gt;A typical use for type N is for postal code fields - fields in which only digits should be allowed, but with which you do not want to perform calculations. (It is, however, possible to use conversions and calculate with alpha-numeric data.) For further details about arithmetic and conversions, refer to the Statements unit.&lt;br /&gt;&lt;br /&gt;Unlike type C, N, or X fields, the length of a string or hexadecimal string is not statically defined. Instead, it is variable, and, at runtime, will always take the length of its current contents. The memory is managed dynamically by the system. Strings and hexadecimal strings can have any length.&lt;br /&gt;&lt;br /&gt;You cannot currently use STRING or XSTRING to specify the type of a screen field.&lt;br /&gt;You can only define a new data type based on an existing type. Use the TYPE addition to refer to data types, that is, predefined ABAP types, user-defined local types, predefined ABAP Dictionary types, user-defined ABAP Dictionary types, or fields or entire lines from database tables. If you refer to an ABAP Dictionary type, changes to the global type are automatically passed on to your type. This ensures that your type is always compatible with the corresponding ABAP Dictionary object. Types that refer to the ABAP Dictionary also have the advantages of formatting options, field help, and possible entries help.&lt;br /&gt;&lt;br /&gt;The underlying ABAP Dictionary data type is converted into the corresponding ABAP data type when the program is generated. For further information, refer to the ABAP syntax documentation for the TABLES statement.&lt;br /&gt;&lt;br /&gt;If a global and a local data type both have the same name, the system uses the local type .&lt;br /&gt;&lt;br /&gt;Use the LIKE addition to refer to the type of a data object that you have already declared. This also applies to the next slides.&lt;br /&gt;&lt;br /&gt;Elementary types&lt;br /&gt;&lt;br /&gt;The length specification after the type name for ABAP data types C, N, and X specifies the number of characters in the type. For type P fields, you can also set the number of decimal places. If you omit these specifications, the system uses the default values (refer to the chart under Predefined ABAP Types).&lt;br /&gt;&lt;br /&gt;Structured type s Use the statements&lt;br /&gt;&lt;br /&gt;TYPES BEGIN OF .&lt;br /&gt;And TYPES END OF .&lt;br /&gt;to enclose the list of components in your structure. Any type definitions may appear between the two statements. You can also construct nested data types.&lt;br /&gt;To refer to the line type of a table type or an internal table, use the additions TYPE LINE OF  or LIKE LINE OF  respectively.&lt;br /&gt;&lt;br /&gt;Table types Similarly to when you create table types in the ABAP Dictionary, you must specify various attributes here:&lt;br /&gt;&lt;br /&gt;The line type after ... TABLE OF (as always, if you refer to a data type, use TYPE, if you refer to a data object that has already been declared, used LIKE);&lt;br /&gt;&lt;br /&gt;The access type before TABLE OF ... (If you omit this, the system uses the default access type, which is standard. You can also specify a generic table type using INDEX or ANY.);&lt;br /&gt;&lt;br /&gt;The key definition after the key type (to specify the default key, use the DEFAULT KEY addition); You can also specify fields from the (flat) line type and specify the sequence explicitly. If the table is unstructured, you can use the TABLE LINE addition);&lt;br /&gt;&lt;br /&gt;The key type after ...WITH (UNIQUE or NON-UNIQUE).&lt;br /&gt;If you omit the key specification entirely, the system uses the non-unique default key.&lt;br /&gt;&lt;br /&gt;For information about the optional INITIAL SIZE  addition, refer to the page Declaring Internal Tables.&lt;br /&gt;&lt;br /&gt;We have not yet introduced reference types. These will be discussed in conjunction with field symbols and references.&lt;br /&gt;&lt;br /&gt;Similarly to when you define data types, you must specify a type when you declare data objects. You can do this in one of two ways:&lt;br /&gt;&lt;br /&gt;Either by referring to a data type (using the TYPE addition), or a data object in the program that has already been declared (using the LIKE addition). You can use exactly the same syntax variants in the DATA statement as when you declare local data types using the TYPES statement.&lt;br /&gt;&lt;br /&gt;You can also construct a field, structure, or internal table directly in a DATA statement, without having to define your own data type first.&lt;br /&gt;In most cases, you will want to change the value of data objects at runtime. They are therefore also known as variables. You can assign a starting value to a data object using the VALUE addition. If you do not, the system assigns it the initial value appropriate to its type (see the table under Predefined ABAP Types).&lt;br /&gt;&lt;br /&gt;There are two further statements that you can use to declare special data objects:&lt;br /&gt;&lt;br /&gt;STATICS declares local variables in a subroutine whose values are retained in subsequent subroutine calls instead of being initialized again. For further information, refer to the Subroutines uint.&lt;br /&gt;&lt;br /&gt;CLASS-DATA, an ABAP Objects statement, allows you to declare static class attributes.&lt;br /&gt;With the exception of the WITH HEADER LINE addition, the syntax for declaring internal table objects is exactly the same as that used to define table types or other kinds of data objects. The addition allows you to create an internal table with a header line . However, this is an obsolete programming technique, and you should consequently no longer use it. For more information about header lines, along with general information about internal tables, refer to the Internal Table Operations unit.&lt;br /&gt;&lt;br /&gt;Dynamic table extension&lt;br /&gt;&lt;br /&gt;Unlike arrays in other programming languages, the number of lines in an internal table is increased automatically by the ABAP runtime environment as required. You therefore do not have to worry about managing the size of the table, but only about inserting, reading, or deleting lines. This makes chained lists redundant in ABAP.&lt;br /&gt;&lt;br /&gt;INITIAL SIZE addition&lt;br /&gt;&lt;br /&gt;When you create an internal table, the system allocates 256 bytes to it. The system then allocates a block of 8 KB to the table when you first add data, followed by further 8KB blocks as required. If you are only expecting to place a few lines in your table, or are using nested internal tables, it may be worth restricting the first automatic extension using the addition INITIAL SIZE . You may do this either in the data object definition or in the type definition.  is the maximum number of lines that you are expecting to put in the table. When the system first allocates memory, it allocates the product of  and the length of the line. In the second step, it allocates twice that amount, and then in subsequent steps, it allocates between 12 and 16 KB.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Selection screens are a special kind of screen whose layout you program directly in the processing logic using ABAP statements . In an executable (type 1) program, there is a standard selection screen (screen number 1000). The definition of the standard selection screen does not require the statements that normally mark the beginning and end of a selection screen definition, neither does it require an explicit call. The following statements allow you to easily create screens on which the user can enter data.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;PARAMETERS creates an input field on the selection screen with the type you specify and a variable in the program with the same name. You cannot use f, string, xstring, or references to specify the type.&lt;br /&gt;&lt;br /&gt;SELECT-OPTIONS creates a pair of "from - to" fields on the screen, in which it is possible to enter sets of complex selections for a specified variable. The values that the user enters are stored in an internal table that the system creates automatically. The internal table has four fields sign, option, low, and high.&lt;br /&gt;You can also create this kind of table using …{TYPE|LIKE} RANGE OF … . However, tables declared in this way are not linked to the selection screen.&lt;br /&gt;&lt;br /&gt;For further information about these statements, refer to the courses BC405 (Techniques of List Processing and ABAP Query) and BC410 (Programming User Dialogs).&lt;br /&gt;Constants and literals are fixed data objects - you cannot change their values at runtime.&lt;br /&gt;&lt;br /&gt;You define constants using the ABAP keyword CONSTANTS. In it, you must use the VALUE addition to assign a value to your constant.&lt;br /&gt;&lt;br /&gt;Recommendation:&lt;br /&gt;&lt;br /&gt;Avoid using literals wherever possible. Use constants instead. Your programs will then be easier to maintain.&lt;br /&gt;&lt;br /&gt;Literals allow you to specify a value directly in an ABAP statement. There are two kinds of literals - numeric literals and text literals. Text literals must always be enclosed in single quotes. Integers (including a minus sign if appropriate) can be represented as numeric literals. They are mapped to the data types i and p (based on the interval that each data type can represent).&lt;br /&gt;&lt;br /&gt;Example :&lt;br /&gt;&lt;br /&gt;DATA: result1 TYPE i, result2 LIKE result1.&lt;br /&gt;result1 = -1000000000 / 300 * 3. "result1: 999.999-&lt;br /&gt;result2 = -10000000000 / 300 * 3. "result2: 10.000.000-&lt;br /&gt;A numeric literal can contain up to 31 digits.&lt;br /&gt;All other values (decimal and floating point numbers, strings, and so on) must be given as text literals. The system converts the data type if necessary.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;A text literal can contain up to 255 characters.&lt;br /&gt;If you want a single quote to appear in a text literal, you must use two single quotes in order for it to be interpreted as part of the literal and not the closing single quote.&lt;br /&gt;&lt;br /&gt;Text symbols are a special form of text literals. You can create a set of text symbols for any program. These can be used for output in various ways. The advantage of text symbols over normal text literals is that they can be translated. Furthermore, text elements are stored separately from the program source code, making your program easier to understand.&lt;br /&gt;&lt;br /&gt;Text symbols are often used to create lists that are not language-specific. You can also use them to assign texts dynamically to screen objects. (Static text elements for screen objects are a special case, and can be translated).&lt;br /&gt;You can display text symbols in two different ways using the WRITE statement:&lt;br /&gt;&lt;br /&gt;WRITE text-. (where  can be any three-character ID).&lt;br /&gt;WRITE ''(). (where  can be any three-character ID). In this&lt;br /&gt;case,  is displayed if there is a text for it in the current logon language. If there is not, the default text is displayed.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;When you use screens, the system automatically transports field contents from the processing logic to the screen and back, but only where screen fields and ABAP fields have the same names.&lt;br /&gt;&lt;br /&gt;Restriction:&lt;br /&gt;&lt;br /&gt;If you use screen fields with a reference to the ABAP Dictionary (Get from Dictionary function in the Screen Painter), you must use the TABLES statement to declare a data object with the same name as the ABAP Dictionary object in order for the field transport to work. Structures you declare like this are often referred to as work areas.&lt;br /&gt;&lt;br /&gt;There are numerous advantages to using an ABAP Dictionary reference: Dictionary objects normally include foreign key checks, field help, possible entries, and the necessary error dialogs. Consequently you can catch inconsistent data as soon as the user enters it and before you even leave the screen.&lt;br /&gt;&lt;br /&gt;If you program your own field checks, the field contents must already have been transported to the program. If you forget to reset the field when a check fails, an unwanted value may remain in the work area. You also face the same danger if you are not sure whether work areas are shared by more than one program.&lt;br /&gt;&lt;br /&gt;To avoid these dangers, you should regard TABLES work areas as an interface between the screen and program, and only use them in this context. They provide data for the screen at the end of the PBO event, and receive it again when the values are transported from the screen.&lt;br /&gt;&lt;br /&gt;Logical databases are special ABAP programs that you can attach to an executable (type 1) program. They read data from the database and pass it to the executable program. Because the task of reading the data has been passed to the logical database, your own ABAP program becomes considerably simpler.&lt;br /&gt;&lt;br /&gt;The logical database passes the data to your program using interface work areas that you declare using the NODES  statement. The statement creates a variable  that refers to the data type in the ABAP Dictionary with the same name.&lt;br /&gt;&lt;br /&gt;The data is passed to your program record by record. Each time the logical database makes a record available to your program, the corresponding GET  or GET  LATE event is triggered. In your program, you can code the relevant event blocks.&lt;br /&gt;You can determine the type of the data record returned by the logical database using the TYPE addition However, you are restricted to types that are supported by the logical database.&lt;br /&gt;&lt;br /&gt;The data object SPACE is a constant with type C and length 1. It contains a single space.&lt;br /&gt;&lt;br /&gt;The system automatically creates a structure called sy for each program, based on the ABAP Dictionary structure syst. The individual components of the structure are known as system fields .&lt;br /&gt;&lt;br /&gt;They contain values that inform you about the current state of the system. The values are updated automatically by the ABAP runtime environment.&lt;br /&gt;&lt;br /&gt;You can access individual system fields using the notation sy-.&lt;br /&gt;System fields are variables, so you can change them in your programs. However, you should only do this in cases where it is explicitly recommended in the documentation (for example, navigating between list levels by manipulating sy-lsind). In all other cases, you should only read the contents of system fields, since by changing them you might overwrite information that is important for subsequent steps in the program.&lt;br /&gt;The online documentation contains a list of all system fields with notes on their use. You can also display the structure syst in the ABAP Dictionary.&lt;br /&gt;&lt;br /&gt;You declare field symbols using the FIELD-SYMBOLS &lt;&gt; statement. The brackets (&lt;&gt;) are part of the syntax.&lt;br /&gt;&lt;br /&gt;Field symbols allow you symbolic access to an existing data object. All of the changes that you make to the field symbol are applied to the data object assigned to it. If the field symbol is not typed (TYPE ANY), it adopts the type of the data object. By specifying a type for the field symbol, you can ensure that only compatible objects are assigned to it.&lt;br /&gt;&lt;br /&gt;Field symbols are similar to dereferenced pointers .&lt;br /&gt;&lt;br /&gt;You use the ASSIGN statement to assign a data object to the field symbol &lt;&gt;. To lift a type restriction, use the CASTING addition. The data object is then interpreted as though it had the data type of the field symbol. You can also do this with untyped field symbols using the CASTING TYPE  addition.&lt;br /&gt;&lt;br /&gt;Use the expression &lt;&gt; IS ASSIGNED to find out whether the fie ld symbol &lt;&gt; is assigned to a field.&lt;br /&gt;&lt;br /&gt;The statement UNASSIGN &lt;&gt;. sets the field symbol &lt;&gt; so that it points to nothing.&lt;br /&gt;&lt;br /&gt;The logical expression &lt;&gt; IS ASSIGNED is then false.&lt;br /&gt;An untyped field symbol that does not have a data object assigned to it behaves (for compatibility reasons) like a constant with type C and length 1.&lt;br /&gt;&lt;br /&gt;The statement TYPES  TYPE REF TO data. *) defines a reference type to a data object. DATA... defines the corresponding reference itself. Such a reference is a field in which an address can be stored.&lt;br /&gt;&lt;br /&gt;The GET REFERENCE OF  INTO  statement writes the address of the data object (already declared) into the reference variable. In other words, the reference points to the data object in memory.&lt;br /&gt;&lt;br /&gt;Thus ABAP uses reference semantics (changes apply to the address) as well as value semantics, as used in field symbols (where changes apply to the data objects). However, in ABAP, reference semantics is restricted to assignments.&lt;br /&gt;&lt;br /&gt;The dereferencing operator -&gt;* in the ASSIGN statement allows you to assign the data object to which the reference points to a field symbol. You can then access the value of the data object.&lt;br /&gt;&lt;br /&gt;You can create a data object with a specified type at runtime using the CREATE DATA&lt;br /&gt;statement. This data object has no name, but the reference points to its address.&lt;br /&gt;&lt;br /&gt;You can use type casting dynamically when you assign a data object to a field symbol. The graphic presents an example of this.&lt;br /&gt;The name of the database table is not known until runtime (and consequently, neither is the line type).&lt;br /&gt;&lt;br /&gt;Since you cannot specify a dynamic INTO clause in the SELECT statement, the system writes the data records into the long character field line.&lt;br /&gt;&lt;br /&gt;The assignment to field symbol  and the type casting then make it possible to access the field as though it were a flat structure. All type attributes are inherited from the database table. (You can also refer to the line type of an ABAP Dictionary object using the TYPE addition.)&lt;br /&gt;&lt;br /&gt;If you knew the component names, you could display the fields directly using&lt;br /&gt;WRITE -... .&lt;br /&gt;&lt;br /&gt;However, you will not normally know the names of the components. In this case, you must use the ASSIGN COMPONENT variant, in which the components of the structure  are assigned one-by-one to the field symbol  and then displayed. When the loop runs out of components, the program reads the next data record.&lt;br /&gt;&lt;br /&gt;Problem&lt;br /&gt;&lt;br /&gt;The address of line must satisfy the same address rules as a table structure (address must be divisible by four with no remainder). You can force this by declaring an integer field dummy directly before declaring line. (Integers are always stored at addresses that are divisible by four.)&lt;br /&gt;&lt;br /&gt;Unlike conventional data objects, you can specify the type of a data object created at runtime dynamically. The above example is a slightly modified version of the example on the previous page.&lt;br /&gt;&lt;br /&gt;This time, the idea is the create the data object for the INTO clause dynamically at runtime . In this case, the type is already known (you have entered the table name), and there are no more alignment problems. The statement ASSIGN d_ref-&gt;* to  assigns the data object to the field symbol. The data type of the table is inherited by the field symbol, so type casting is no longer necessary.&lt;br /&gt;&lt;br /&gt;Instead of using a long character field, you can now write the data record into the data object with the same type to which the reference d_ref is pointing, by using the field symbol .&lt;br /&gt;&lt;br /&gt;You will sometimes need to find out the attributes of a data object at runtime , especially when you use field symbols and references. The DESCRIBE FIELD statement returns various type attributes of variables.&lt;br /&gt;&lt;br /&gt;Caution:&lt;br /&gt;&lt;br /&gt;If you query the length of a field with type string or xstring, the system does not return the length of the string. Instead, it returns the length of the string reference, which is always eight bytes. To find out the length of the string, use the OUTPUT-LENGTH addition.&lt;br /&gt;&lt;br /&gt;The statement DESCRIBE TABLE  LINES  returns the number of lines in an internal table.&lt;br /&gt;&lt;br /&gt;Since the introduction of ABAP Objects, there is now a system called the RTTI concept (Run Time Type Information) that you can use to find out type attributes at runtime. It is based on system classes. The concept includes all ABAP types, and so covers all of the functions of the statements DESCRIBE FIELD and DESCRIBE TABLE.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-8416466929243547422?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/8416466929243547422/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=8416466929243547422' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8416466929243547422'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/8416466929243547422'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/06/look-on-data-dictionary.html' title='A look on DATA DICTIONARY'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-7293652598808883247</id><published>2008-06-17T11:49:00.000-07:00</published><updated>2008-08-09T01:16:10.101-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Dictionary'/><title type='text'>TYPES OF TABLE IN SAP</title><content type='html'>&lt;p style="color: rgb(0, 0, 0); text-align: justify;" class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;b style=""&gt;&lt;span style="font-family:Arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="color: rgb(0, 0, 0); text-align: justify;" class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;b style=""&gt;&lt;span style="font-family:Arial;"&gt;Choosing a Table Type&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="color: rgb(0, 0, 0); text-align: justify;" class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;The table type (and particularly the access method) that you will use depends on how the typical internal table operations will be most frequently executed.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="color: rgb(0, 0, 0); text-align: justify;" class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;b style=""&gt;&lt;span style="font-family:Arial;"&gt;Standard tables&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="color: rgb(0, 0, 0); text-align: justify;" class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;This is the most appropriate type if you are going to address the individual table entries using the index. Index access is the quickest possible access. You should fill a standard table by appending lines (ABAP APPEND statement), and read, modify and delete entries by specifying the index (INDEX option with the relevant ABAP command). The access time for a standard table increases in a linear relationship with the number of table entries. If you need key access, standard tables are particularly useful if you can fill and process the table in separate steps. For example, you could fill the table by appending entries, and then sort it. If you use the binary search option with key access, the response time is logarithmically proportional to the number of table entries.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="color: rgb(0, 0, 0); text-align: justify;" class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;b style=""&gt;&lt;span style="font-family:Arial;"&gt;Sorted tables&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="color: rgb(0, 0, 0); text-align: justify;" class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;This is the most appropriate type if you need a table which is sorted as you fill it. You fill sorted tables using the INSERT statement. Entries are inserted according to the sort sequence defined through the table key. Any illegal entries are recognized as soon as you try to add them to the table. The response time for key access is logarithmically proportional to the number of table entries, since the system always uses a binary search. Sorted tables are particularly useful for partially sequential processing in a LOOP if you specify the beginning of the table key in the WHERE condition.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="color: rgb(0, 0, 0); text-align: justify;" class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;b style=""&gt;&lt;span style="font-family:Arial;"&gt;Hashed tables&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="color: rgb(0, 0, 0); text-align: justify;" class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;This is the most appropriate type for any table where the main operation is key access. You cannot access a hashed table using its index. The response time for key access remains constant, regardless of the number of table entries. Like database tables, hashed tables always have a unique key. Hashed tables are useful if you want to construct and use an internal table which resembles a database table or for processing large amounts of data. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="color: rgb(0, 0, 0); text-align: justify;" class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="color: rgb(0, 0, 0); text-align: justify;" class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;b style=""&gt;&lt;span style="font-family:Arial;"&gt;Table type&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="color: rgb(0, 0, 0); text-align: justify;" class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;The table type determines how ABAP will access individual table entries. Internal tables can be divided into three types: &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="color: rgb(0, 0, 0); text-align: justify;" class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Standard tables have an internal linear index. From a particular size upwards, the indexes of internal tables are administered as trees. In this case, the index administration overhead increases in logarithmic and not linear relation to the number of lines. The system can access records either by using the table index or the key. The response time for key access is proportional to the number of entries in the table. The key of a standard table is always non-unique. You cannot specify a unique key. This means that standard tables can always be filled very quickly, since the system does not have to check whether there are already existing entries. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="color: rgb(0, 0, 0); text-align: justify;" class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="color: rgb(0, 0, 0); text-align: justify;" class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Sorted tables are always saved sorted by the key. They also have an internal index. The system can access records either by using the table index or the key. The response time for key access is logarithmically proportional to the number of table entries, since the system uses a binary search. The key of a sorted table can be either unique or non-unique. When you define the table, you must specify whether the key is to be unique or not. Standard tables and sorted tables are known generically as index tables.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="color: rgb(0, 0, 0); text-align: justify;" class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="color: rgb(0, 0, 0); text-align: justify;" class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;b style=""&gt;&lt;span style="font-family:Arial;"&gt;Hashed tables&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt; have no linear index. You can only access a hashed table using its key. The response time is independent of the number of table entries, and is constant, since the system access the table entries using a hash algorithm. The key of a hashed table must be unique. When you define the table, you must specify the key as UNIQUE.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="color: rgb(0, 0, 0); text-align: justify;" class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-7293652598808883247?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/7293652598808883247/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=7293652598808883247' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/7293652598808883247'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/7293652598808883247'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/06/types-of-table-in-sap.html' title='TYPES OF TABLE IN SAP'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-782904819336314429</id><published>2008-06-17T11:47:00.001-07:00</published><updated>2008-08-09T01:27:05.299-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Dictionary'/><title type='text'>Concept of VIEWS in SAP</title><content type='html'>&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;    &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;Views :&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Data about an application object is often distributed on several tables. By defining a :view, you can define an application-dependent view that combines this data. The structure of such a view is defined by specifying the tables and fields used in the view. Fields that are not required can be hidden, thereby minimizing interfaces. A view can be used in ABAP programs for data selection.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;The data of a view is derived from one or more tables, but not stored physically. The simplest form of deriving data is to mask out one or more fields from a base table (projection) or to include only certain entries of a base table in the view (selection). More complicated views can comprise several base tables, the individual tables being linked with a relational join operation.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt; &lt;/u&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;The base tables of the view must be selected in the first step of a view definition. In the second step, these tables must be linked by defining the join conditions. It is also possible to use the join condition from a foreign key defined between the tables &lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;In the third step, you must select the fields of the base tables to be used in the view. Selection conditions that restrict the records in the view can be formulated in the fourth step.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Four different view types are supported. These differ in the way in which the view is implemented and in the methods permitted for accessing the view data.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;br /&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in 5pt 0.5in; text-indent: -0.25in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=";font-family:Symbol;font-size:100%;"  &gt;&lt;span style=""&gt;·&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;Database views &lt;/u&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;implemented with an equivalent view on the database.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in 5pt 0.5in; text-indent: -0.25in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=";font-family:Symbol;font-size:100%;"  &gt;&lt;span style=""&gt;·&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;Projection views &lt;/u&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;used to hide fields of a table (only projection).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in 5pt 0.5in; text-indent: -0.25in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=";font-family:Symbol;font-size:100%;"  &gt;&lt;span style=""&gt;·&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;Help views &lt;/u&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;used as selection method in &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;search helps &lt;/u&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in 5pt 0.5in; text-indent: -0.25in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=";font-family:Symbol;font-size:100%;"  &gt;&lt;span style=""&gt;·&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;Maintenance views &lt;/u&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;permit you to maintain the data distributed on several tables for one application object at one time.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Database views implement an &lt;b&gt;inner join&lt;/b&gt;. The other view types implement an &lt;b&gt;outer join&lt;/b&gt;&lt;i&gt; &lt;/i&gt;&lt;/span&gt;&lt;span style="text-decoration: underline;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;br /&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;The join conditions for database views can be formulated using equality relationships between any base fields. The join conditions for the other view types must be obtained from existing foreign keys. Tables therefore can only be combined in a maintenance view or help view if they are linked to one another with foreign keys.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;The &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;maintenance status &lt;/u&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;whether you can only read data with the view or whether you can also insert and change data with it.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;br /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;Database Views &lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;:&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Data about an application object is often distributed on several database tables. A database view provides an application-specific view on such distributed data.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Database views are defined in the ABAP Dictionary. A database view is automatically created in the underlying database when it is activated.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Application programs can access the data of a database view using the database interface. You can access the data in ABAP programs with both OPEN SQL and NATIVE SQL. However, the data is actually selected in the database. Since the join operation is executed in the database in this case, you can minimize the number of database accesses in this way. Database views implement an &lt;b&gt;inner join&lt;/b&gt;&lt;i&gt; &lt;/i&gt;(see &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;Inner and Outer Join )&lt;/u&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1027" type="#_x0000_t75" style="'width:354pt;height:265.5pt'"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image004.gif" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;br /&gt;&lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;If the database view only contains a single table, the &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;maintenance status &lt;/u&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;can be used to determine if data records can also be inserted with the view. If the database view contains more than one table, you can only read the data.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Database views should be created if want to select logically connected data from different tables simultaneously. Selection with a database view is generally faster than access to individual tables. When selecting with views, you should also ensure that there are suitable indexes on the tables contained in the view.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Since a database view is implemented in the database, a database view may only contain transparent tables.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;The &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;technical settings of a database view &lt;/u&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;span style=""&gt; &lt;/span&gt;control whether the view data should be buffered.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/u&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;Projection Views :&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Projection views are used to hide fields of a table. This can minimize interfaces; for example when you access the database, you only read and write the field contents actually needed.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;A projection view contains exactly one table. You cannot define selection conditions for projection views.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;There is no corresponding object in the database for a projection view. The R/3 System maps the access to a projection view to the corresponding access to its base table. You can also access pooled tables and cluster tables with a projection view.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;The &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;maintenance status &lt;/u&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;of the view controls how the data of the table can be accessed with the projection view.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;br /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1028" type="#_x0000_t75" style="'width:358.5pt;height:268.5pt'"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image005.gif" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;br /&gt;&lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;    &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;Help Views:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;You have to create a help view if a view with &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;outer join &lt;/u&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;span style=""&gt; &lt;/span&gt;is needed as selection method of a &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;search help&lt;/u&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;The selection method of a search help is either a table or a view. If you have to select data from several tables for the search help, you should generally use a database view as selection method. However, a database view always implements an inner join. If you need a view with outer join for the data selection, you have to use a help view as selection method.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1029" type="#_x0000_t75" style="'width:5in;height:269.25pt'"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image006.gif" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;br /&gt;&lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;All the tables included in a help view must be linked with foreign keys. Only foreign keys that have certain attributes can be used here&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;. The first table to be inserted in the help view is called the &lt;b&gt;primary table&lt;/b&gt; of the help view. The tables added to this primary table with foreign keys are called &lt;b&gt;secondary tables&lt;/b&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in 5pt 0.5in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;The functionality of a help view has changed significantly between Release 3.0 and Release 4.0. In Release 3.0, a help view was automatically displayed for the input help (F4 help) for all the fields that were checked against the primary table of the help view. This is no longer the case in Release 4.0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in 5pt 0.5in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;As of Release 4.0, you must explicitly create a search help that must be linked with the fields for which it is offered (see &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;Linking Search Helps with Screen Fields &lt;/u&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in 5pt 0.5in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Existing help views are automatically &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;migrated &lt;/u&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;span style=""&gt; &lt;/span&gt;to search helps when you upgrade to a release higher than 4.0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in 5pt 0.5in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;A help view implements an outer join, i.e. all the contents of the primary table of the help view are always displayed. You therefore should not formulate a selection condition for fields in one of the secondary tables of the help view. If records of these secondary tables cannot be read as a result of this selection condition, the contents of the corresponding fields of the secondary table are displayed with initial value.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;Search Helps &lt;span style="text-decoration: underline;"&gt;:&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;The input help (F4 help) is a standard function of the R/3 System. The user can display the list of all possible input values for a screen field with the input help. The possible input values can be enhanced with further information. This is meaningful especially when the field requires the input of a formal key.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;Standard Input Help Process&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;A user calls an input help with the following steps (some steps can be omitted, depending on the definition of the input help):&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in 5pt 0.5in; text-indent: -0.25in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;The user starts the input help to display the possible input values for a field (search field) in a screen template. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in 5pt 0.5in; text-indent: -0.25in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;The system offers the user a number of possible search paths. The user selects one of these search paths. Each search path offers a number of restrictions to limit the number of possible input values. These values are offered in a &lt;i&gt;Dialog box for value restriction&lt;/i&gt; when the search path is selected. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in 5pt 0.5in; text-indent: -0.25in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;The user enters restrictions if required and then starts the search. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1030" type="#_x0000_t75" style="'width:195.75pt;height:151.5pt'"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image007.gif" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;br /&gt;&lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;The system determines the values that satisfy the entered restrictions (hits) and displays them as a list (hit list). &lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1031" type="#_x0000_t75" style="'width:194.25pt;height:150pt'"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image008.gif" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;br /&gt;&lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;The user selects the most suitable line from the hit list by double-clicking. The value of the search field is returned to the screen template (possibly together with other values).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Steps 2 and 3 are omitted if there is only a single search path available. In this case the dialog box for the value selection is offered immediately. You can also output the hit list directly after starting the input help. Steps 2 to 4 are omitted in this case.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;Function of a Search Help&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;This standard process can be completely defined by creating a search help in the ABAP Dictionary. This search help only has to be assigned to the screen fields in which they should be available&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;. &lt;/u&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;There are two types of search help:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in 5pt 0.5in; text-indent: -0.25in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=";font-family:Symbol;font-size:100%;"  &gt;&lt;span style=""&gt;·&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;Elementary search helps &lt;/u&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;describe a search path. The elementary search help must define where the data of the hit list should be read from (selection method), how the exchange of values between the screen template and selection method is implemented (interface of the search help) and how the online input help should be defined (online behavior of the search help). &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in 5pt 0.5in; text-indent: -0.25in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=";font-family:Symbol;font-size:100%;"  &gt;&lt;span style=""&gt;·&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;Collective search helps&lt;/u&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;combine several elementary search helps. A collective search help thus can offer several alternative search paths.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;Maintenance Views &lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;:&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Maintenance views offer easy ways to maintain complex application objects.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Data distributed on several tables often forms a logical unit, for example an application object, for the user. You want to be able to display, modify and create the data of such an application object together. Normally the user is not interested in the technical implementation of the application object, that is in the distribution of the data on several tables.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;A maintenance view permits you to maintain the data of an application object together. The data is automatically distributed in the underlying database tables. The &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;maintenance status &lt;/u&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;determines which accesses to the data of the underlying tables are possible with the maintenance view.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;All the tables in a maintenance view must be linked with foreign keys, that is the join conditions for maintenance views are always derived from the foreign key&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;u&gt; &lt;/u&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;cannot directly enter the join conditions as for database views.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;There are some restrictions for the attributes of the foreign keys with which the tables in a maintenance view can be linked .&lt;br /&gt;&lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;A standardized table maintenance transaction is provided (SM30), permitting you to maintain the data from the base tables of a maintenance view together.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p class="MsoNormal" style="margin: 5pt 0in; color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;Maintenance mechanisms, like screens and processing programs, must be created from the view definition with the transaction &lt;i&gt;Generate Table View&lt;/i&gt; (SE54). This makes it possible to create easy-to-use maintenance interfaces in a simple manner.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-782904819336314429?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/782904819336314429/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=782904819336314429' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/782904819336314429'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/782904819336314429'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/06/types-of-views-in-sap.html' title='Concept of VIEWS in SAP'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-369972500884369780</id><published>2008-06-17T11:44:00.000-07:00</published><updated>2008-08-09T01:35:39.747-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Dictionary'/><title type='text'>LOCK OBJECT CONCEPT IN SAP</title><content type='html'>If several users are competing to access the same resource or resources, you need to find a way of synchronizing the access in order to protect the consistency of your data.&lt;br /&gt;&lt;br /&gt;Example: In a flight booking system, you would need to check whether seats were still free before making a reservation. You also need a guarantee that critical data (the number of free seats in this case) cannot be changed while you are working with the program.&lt;br /&gt;&lt;br /&gt;Locks are a way of coordinating competing accesses to a resource. Each user requests a lock before accessing critical data.&lt;br /&gt;&lt;br /&gt;It is important to release the lock as soon as possible, so as not to hinder other users unnecessarily.&lt;br /&gt;&lt;br /&gt;Whenever you make direct changes to data on the database in a transaction, the database system sets corresponding locks.&lt;br /&gt;&lt;br /&gt;The database management system (DBMS) physically locks the table entries that you want to change (INSERT; UPDATE, MODIFY), and those that you read from the database and intend to change (SELECT SINGLE &lt;f&gt; FROM &lt;dbtab&gt; FOR UPDATE). Other users who want to access the locked record or records must wait until the physical lock has been released. In such a case, the ABAP program waits until the lock has been released again.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;At the end of the database transaction, the database releases all of the locks that it has set during the transaction.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;In the R/3 System, this means that each database lock is released when a new screen is displayed, since a change of screen triggers an implicit database commits.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;To keep a lock set through a series of screens (from the dialog program to the update program), the R/3 System has a global lock table at the application server level, which you can use to set logical locks for table entries.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;One application server contains this lock table and a special enqueue work process, which administers all requests for logical locks in the R/3 System. All logical lock requests of the R/3 System run using this work process.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;You can also use logical locks to "lock" table entries that do not yet exist on the database (inserting new lines). You cannot do this with physical database locks.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;For further information, see the ABAP Editor Keyword documentation for the term Locking.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;Logical locks are generated when an entry is written in the lock table. You use function modules to do this.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;You can only set a lock if the relevant table entry is not already locked.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;The SAP transaction receives information on the success of a lock request from a return code sent via the EXCEPTION interface of the function module. In other words, the control is returned to the program using the function module. The ABAP program does not need to wait.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;The SAP transaction can react appropriately by analyzing the return code.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;Another user cannot gain access to work with the same table entries that are already locked.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;Depending on the bundling technique in use for database updates), the program must delete the lock entries it generated using a lock module, or have them deleted indirectly (see unit Organizing Database Updates).&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;If the user terminates the program that generated the lock entries (usually a dialog program), the locks are released automatically (implicitly). You can do this by entering /n in the command field, or with the statements LEAVE PROGRAM, LEAVE TO TRANSACTION, and 'A' or 'X'&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;Messages.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;When you call an ENQUEUE function module, the dialog program tries to generate a lock entry.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;The export parameters identify the table entry (or entries) that you want to lock.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;The program that generates the locks (usually dialog program) analyzes the return code for lock requests and reacts accordingly.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;If the lock could not be set; you should normally output an error message.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;At the end of the dialog program, you can use the corresponding DEQUEUE function module to delete the entries from the lock table.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;DEQUEUE function modules have no exceptions. If you try to release an entry that is not locked, this has no effect.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;If you want to release all of the locks that you have set, at the end of your dialog program, you can use the function module DEQUEUE_ALL.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;The lock table contains the lock arguments for each table (for lock arguments, see the following slide).&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;To display the lock table, use transaction SM12.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;The entries in the lock table are standard. Locks are always set using the values of the key fields in a table. These form the lock argument.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;You pass the values for the lock argument to the lock modules via their interface (function module IMPORT parameters).&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;If you fail to set any of these parameters, the system interprets it generically, that is, the lock is set for all table lines that meet the criteria specified in the other parameters. The client parameter is an exception to this rule, where the default client SY-MANDT applies.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;Lock entries must be assigned to a lock mode.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;There are three different lock modes:&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;Mode 'E' for write locks: This is set if you want to write data to the database (change, create, or delete).&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;Mode 'S' for read locks: This is set if you want to ensure that the data, which you are reading from the database in your program, is not changed by other users while the program is running. You do not want to change the data itself in your program.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;Mode 'X' for write locks: Like mode 'E', mode 'X' is used for writing data to the database. The technical difference between mode 'X' and mode 'E' is that locks of mode 'X' are not accumulated while a program is being executed. (For further details, see the following pages).&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;If someone tries to lock the same data record again with a second program (different user), the various lock modes take effect as follows:&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;Write locks ('E' or 'X') mean that any lock attempts from other users are refused, irrespective of the mode in which the lock is attempted.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;If a data record is locked in mode 'S' (shared), further locks in mode 'S' may be set by other users.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;Lock attempts in other lock modes ('E' or 'X') are refused.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;If you want to try to lock a data record more than once while a program is running (for example using a function module that you call up, which sets locks itself), the lock system reacts in the following way:&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;Mode 'E' write locks are not refused. Instead, a cumulative counter is incremented. The same applies to read locks (mode 'S').&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;If a data record is locked in mode 'E', a lock request generates a second lock, which is marked as a read lock.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;If a data record is locked in mode 'S' and no further read locks are set by other users, a lock attempt in mode 'E' is possible. This generates a second entry in the lock table (for mode 'E').&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;If a data record is locked in mode 'X', all further lock requests are refused.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;If you want to ensure that you are reading up-to-date data in your program (with the intention of changing and returning this to the database), you should use the following procedure for lock requests and database accesses in your program:&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;First, lock the data that you want to edit.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;Then read the current data from the database.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;In the next step, process (change) the data in your program and write this to the database.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;In the final step, release the locks that you set at the beginning.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;This procedure ensures that your changes run fully with lock protection and that you only read data that has been changed consistently by other programs (provided that these also use the SAP lock concept and follow the procedure described here).&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;Lock modules are created for lock objects and not tables.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;Lock objects are maintained in the dictionary. Customer lock objects must begin with "EY" or "EZ".&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;A lock object is a logical object composed of a list of tables that are linked by foreign key&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;Relationships. Lock modules are generated for these objects and enable common lock entries to be set for all tables contained in the lock object. This allows combinations of table entries to be locked.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;Example: A lock object that contains the tables SFLIGHT and SBOOK enables a flight with its bookings to be locked.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;The list of tables for a lock object consists of a primary table. Further table entries are referred to as secondary tables. Only tables with foreign key relationships to the primary table can be used as secondary tables.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;With lock objects, you can assign different names for the parameters that describe the fields of the lock arguments for the lock modules. The names of the table fields (key fields of the tables) are proposed by the system.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;You can specify the lock mode (a write lock 'E' or 'X' or a read lock 'S') for each table. These function as default values for the lock modules.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;After you have assigned tables and default lock modes, lock objects must be generated.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;When you activate a lock object, the system generates an ENQUEUE and a DEQUEUE function module.&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;These have the names ENQUEUE_&lt;object_name&gt; and DEQUEUE_&lt;object_name&gt; respectively.&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;If you want to ensure that you are reading current data in your program (with the intention of changing and returning this to the database), you should use the following procedure in your program for lock requests and database accesses:&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;1. Lock the data that you want to edit.&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;2. Read the current data from the database.&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;3. Process (change) the data in your program and write this to the database.&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;4. Release the locks that you set at the beginning.&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;This procedure ensures that your changes run fully with lock protection and that you only read data, which has been changed consistently by other programs (with the restriction that these are also using the SAP lock concept and following the procedure described).&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;If you change the order of the four steps to Read -&gt; Lock -&gt; Change -&gt; Unlock, you run the risk that the data read by your program will not be up to date. Your program can read data before another user's program writes changes to the database. This means that a user of your program will make decisions for entries that are not based on up-to-date data from the database. For this reason, you should always follow the recommended procedure.&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;Requesting a lock from a program is a communication step with lock administration. The&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;Communication step requires a certain time interval. If your program sets locks for several objects, this interval occurs more than once.&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;By using so-called local lock containers, you can reduce these communication intervals with lock administration. To do so, collect the required lock requests of your program and send them together to lock administration.&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;The locks (delayed execution) can be collected when the lock modules are called. For this purpose, qualify the IMPORT parameter_collect with 'X'. The data transferred via the lock module interface is then registered in a list (lock container) as a lock request that needs to be executed.&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;The lock container can be terminated using the FLUSH_ENQUEUE function module and sent to lock administration.&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;When the lock orders of a lock container can be executed, the lock container is deleted.&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;If one of the locks in a container cannot be set, the function module FLUSH_ENQUEUE triggers the exception FOREIGN_LOCK. In this case, none of the registered lock requests is executed. The registered locks remain in the lock container.&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;You can delete the contents of an existing lock container with the function module&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;RESET_ENQUEUE.&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;br /&gt;&lt;f&gt;&lt;dbtab&gt;&lt;object_name&gt;&lt;object_name&gt;The specified function modules have release status internally-released.&lt;/object_name&gt;&lt;/object_name&gt;&lt;/dbtab&gt;&lt;/f&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-369972500884369780?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/369972500884369780/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=369972500884369780' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/369972500884369780'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/369972500884369780'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/06/sap-lock-concept.html' title='LOCK OBJECT CONCEPT IN SAP'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-3713125324210448088</id><published>2008-06-17T10:49:00.000-07:00</published><updated>2008-08-09T01:38:20.293-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Reports'/><category scheme='http://www.blogger.com/atom/ns#' term='Data Dictionary'/><title type='text'>Open SQL vs Native SQL</title><content type='html'>&lt;h2&gt;&lt;br /&gt;&lt;/h2&gt;  &lt;p&gt;&lt;strong&gt;Question :&lt;/strong&gt; What is Open SQL vs Native SQL?&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Question :&lt;/strong&gt;What does an EXEC SQL statement do in ABAP? What is the disadvantage of using it? &lt;/p&gt;  &lt;p&gt;If you write a business application, there is always a database on backend. So SAP R/3 uses a database too. It is a&lt;br /&gt;special database? No. SAP uses standard databases like Oracle, IBM DB2, MS SQL Server, etc. If you have a database on backend, it is inevitable that you must use SQL. SAP uses SQL to select, insert and update data inside database. However, the problem is that if you use different databases, your code whatever it is whether ABAP or not, SQL can vary. In that situation although programmers tend to use Standard SQL which is valid for all databases, the problems sometimes occur to switch one database to different database. What I am trying to say is SAP had invented a new way to solve this problem: &lt;strong&gt;Open SQL&lt;/strong&gt;&lt;/p&gt;  &lt;h3&gt;Open SQL&lt;/h3&gt;  &lt;p&gt;Open SQL consists of a set of ABAP statements that perform operation on central database in the R/3 System. The results of the operations and any error messages are independent of the database system in use. Open SQL thus provides a uniform syntax and semantics for all of database systems supported by SAP. ABAP programs that only use Open SQL statements will work in any SAP R/3 System, regardless of the database system in use. Open SQL statements can work with database tables that have been created in the ABAP Dictionary.&lt;/p&gt;  &lt;p&gt;The method actually is simple that when a programmer writes an ABAP program with Open SQL statements, the kernel SAP programs convert Open SQL statements to real / native SQL statements for database in use. So like that write once, run for all databases and even for all operating systems. Like Java’s “&lt;em&gt;&lt;b&gt;Write Once. Run Anywhere&lt;/b&gt;&lt;/em&gt;“. Think about Java, even the Java uses the same principal that is &lt;strong&gt;Java Virtual Machine&lt;/strong&gt; which looks like SAP’s kernel programs. Right? &lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;  &lt;v:stroke joinstyle="miter"&gt;  &lt;v:formulas&gt;   &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;   &lt;v:f eqn="sum @0 1 0"&gt;   &lt;v:f eqn="sum 0 0 @1"&gt;   &lt;v:f eqn="prod @2 1 2"&gt;   &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;   &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @0 0 1"&gt;   &lt;v:f eqn="prod @6 1 2"&gt;   &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;   &lt;v:f eqn="sum @8 21600 0"&gt;   &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @10 21600 0"&gt;  &lt;/v:formulas&gt;  &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;  &lt;o:lock ext="edit" aspectratio="t"&gt; &lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1025" type="#_x0000_t75" alt=":)" style="'width:11.25pt;"&gt;  &lt;v:imagedata src="file:///C:/WINDOWS/TEMP/msoclip1/01/clip_image001.gif" href="http://www.itcserver.com/blog/wp-includes/images/smilies/icon_smile.gif"&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;img src="file:///C:/WINDOWS/TEMP/msoclip1/01/clip_image001.gif" alt=":)" shapes="_x0000_i1025" height="15" width="15" /&gt;&lt;!--[endif]--&gt;Can we say SAP did “&lt;em&gt;&lt;b&gt;Write Once. Run Anywhere&lt;/b&gt;&lt;/em&gt;” before Java?&lt;/p&gt;  &lt;p&gt;Open SQL contains the following keywords:&lt;/p&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;strong&gt;SELECT&lt;/strong&gt; -      Reads data from database tables. &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;strong&gt;INSERT&lt;/strong&gt; -      Adds lines to database tables. &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;strong&gt;UPDATE&lt;/strong&gt; -      Changes the contents of lines of database tables. &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;strong&gt;MODIFY&lt;/strong&gt; -      Inserts lines into database tables or changes the contents of existing      lines. &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;strong&gt;DELETE&lt;/strong&gt; -      Delete lines from database tables. &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;strong&gt;OPEN CURSOR, FETCH,      CLOSE CURSOR&lt;/strong&gt; - Reads lines of database tables using the cursor. &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;All Open SQL statements fill the following two system fields with return codes:&lt;/p&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;strong&gt;SY-SUBRC&lt;/strong&gt;&lt;br /&gt;     After every Open SQL statement, the system field SY-SUBRC contains 0 if      the operation was successful, a value other than 0 if not. &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;strong&gt;SY-DBCNT&lt;/strong&gt;&lt;br /&gt;     After an OPEN SQL statement, the system field SY-DBCNT contains the number      of database lines processed. &lt;/li&gt;&lt;/ul&gt;  &lt;h3&gt;Native SQL&lt;/h3&gt;  &lt;p&gt;Native SQL is real SQL for database in use. It means beside OPEN SQL, if you need you can use the native SQL for databases. Native SQL allows you to use database-specific SQL statements in an ABAP program. This means that you can use database tables that are not administered by the ABAP Dictionary, and therefore integrate data that is not part of the R/3 System.&lt;/p&gt;  &lt;p&gt;As a rule, an ABAP program containing database-specific SQL statements will not run under different database systems. If your program will be used on more than one database platform, only use Open SQL statements.&lt;/p&gt;  &lt;p&gt;I have never used Native SQL in my experiences more than 6 years for ABAP programming. I tried it, you can be sure it works. All ABAP programs in SAP R/3 System have been written with Open SQL. But I sometimes encountered Native SQL statements in original ABAP programs. I think if you have a different database instant in the same database, you can use Native SQL statement to connect and do operation on this database instant. Let me clarify this a little bit. Let’s assume you have an SAP R/3 system that uses Oracle database instant ORC1. You have an other application, even it uses the same database Oracle, but as normally different database instant ORC2. So like data inside ABAP program, you can use Native SQL statements to connect ORC2, non-SAP database instant, to integrate SAP R/3 and non-SAP system. It is kind of an integration activity.&lt;/p&gt;  &lt;p&gt;If you create a table by using database tools, without ABAP Dictionary, you are not able to use Open SQL to reach this table. You just can use Native SQL to do that.&lt;/p&gt;  &lt;p&gt;Native SQL statements bypass the R/3 database interface. There is no table logging, and no synchronization with the database buffer on the application server. For this reason, you should, wherever possible, use Open SQL to change database tables declared in the ABAP Dictionary. In particular, tables declared in the ABAP Dictionary that contain log columns with types LCHR and LRAW should only be addressed using Open SQL, since the columns contain extra, database-specific length information for the column. Native SQL does not take this information into account, and may therefore produce incorrect results. Furthermore, Native SQL does not support automatic client handling. Instead, you must treat client fields like any other.&lt;/p&gt;  &lt;p&gt;To ensure that transactions in the R/3 System are consistent, you should not use any transaction control statements (COMMIT, ROLLBACK WORK), or any statements that set transaction parameters (isolation level…) using Native SQL.&lt;/p&gt;  &lt;p&gt;Using Native SQL, you can&lt;/p&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;Transfer values from ABAP      fields to the database &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Read data from the database      and process it in ABAP programs. &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;Native SQL works without the administrative data about database tables stored in the ABAP Dictionary. Consequently, it cannot perform all of the consistency check used in Open SQL. This places a larger degree responsibility on application developers to work with ABAP fields of the correct type. You should always ensure that the ABAP data type and the type of database column are identical.&lt;/p&gt;  &lt;h3&gt;Native SQL Advantages and Disadvantages - EXEC SQL statement&lt;/h3&gt;  &lt;p&gt;Advantages&lt;/p&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;Tables are not declared in      ABAP Dictionary can be accessed. (e.g. Tables belonging to sys or system      user of Oracle, etc.) &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;To use some of the special      features supported by the database-specific SQL. (e.g. Passing hints to      Oracle optimizer.) &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;Disadvanteges&lt;/p&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;No syntax check is performed      whatever is written between EXEC and ENDEXEC. &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;ABAP program containing      database-specific SQL statements will not run under different database systems.      &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;There is no automatic client      handling for client dependent tables. &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Care has to be taken during      migration to higher versions. &lt;/li&gt;&lt;/ul&gt;  &lt;p class="MsoNormal"&gt;&lt;!--[if !supportEmptyParas]--&gt; &lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-3713125324210448088?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/3713125324210448088/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=3713125324210448088' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/3713125324210448088'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/3713125324210448088'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/06/open-sql-vs-native-sql.html' title='Open SQL vs Native SQL'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-6785748947241893433</id><published>2008-06-17T04:30:00.000-07:00</published><updated>2008-08-09T01:17:02.033-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Real-Time Stuffs'/><category scheme='http://www.blogger.com/atom/ns#' term='ASAP'/><title type='text'>ASAP Methodology</title><content type='html'>&lt;a href="http://jobs.monsterindia.com/details/5452252.html"&gt;  &lt;/a&gt;&lt;p&gt;&lt;a name="_Toc430155337"&gt;&lt;/a&gt;&lt;a name="_Toc427981647"&gt;&lt;/a&gt;&lt;span style=""&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:24;"  &gt;Introduction&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:24;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Enterprise application software has to cover a broad spectrum of functionality, yet be configured flexibly enough to meet specific requirements, which can vary enormously. SAP’s answers to this challenge are AcceleratedSAP and the R/3 Business Engineer, providing a comprehensive solution for implementing R/3 quickly, easily, and according to your own needs even during productive operation.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Born out of the need to cost effectively configure R/3 to order, AcceleratedSAP and the Business R/3 Engineer support custom configuration of R/3. You can tailor the R/3 components, functions and organizational structures to your needs, hiding and/or deactivating those functions that are not required.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:7;"  &gt;Fig. 1: The R/3 Business Engineer Complements ASAP&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;AcceleratedSAP (ASAP)&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt; is SAP's standard implementation methodology. It contains the Roadmap, a step-by-step guide that incorporates experience from many years of implementing R/3. Along with that, AcceleratedSAP contains a multitude of tools, accelerators and useful information to assist all team members in implementing R/3. Quality checks are incorporated at the end of each phase to easily monitor deliverables and critical success factors. ASAP is delivered as a PC-based package, so that - if required - an implementation project can begin prior to having an R/3 System installed.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;The &lt;b&gt;R/3 Business Engineer&lt;/b&gt; contains a set of configuration and implementation tools which enable you or your consultants to define and configure R/3 and also to adapt an existing configuration to new needs or changed circumstances. The Business Engineer is resident to R/3.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;So that its customers can implement R/3 as quickly as possible, SAP has standardized the implementation procedure, simplified the way functions are presented and reduced the technical complexity of implementation.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;AcceleratedSAP and the Business Engineer help you configure R/3 according to your own needs using proven, industry-specific business scenarios and processes. Whether implementing new processes in your enterprise or restructuring old ones, R/3 can release the full potential of change for you. AcceleratedSAP and the Business Engineer help you determine which of R/3’s proven processes are most suited to your business, and then help you configure to meet your specific needs. The benefit is obvious: Restructuring enterprise processes in the R/3 System leads to a rapid and efficient production startup, meaning a faster return on investment.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;By simplifying configuration, ASAP and the Business Engineer make the power of R/3 more accessible, helping companies to lower their dependence on expensive specialists or outside consultants. The user-friendliness of ASAP and the Business Engineer make them particularly suitable for the following groups:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Business professionals who need to discuss,      prototype and design their business blueprint (enterprise model) &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;IS departments of large enterprises who need      to customize R/3 applications more efficiently and more rapidly &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Small and medium-sized companies previously      wary of implementing R/3 because of the perceived scale of such projects &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Consultants and SAP partners looking for an      efficient way of offering their customers configure-to-order or wishing to      develop R/3-based solutions for niche markets&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Together, AcceleratedSAP and the Business Engineer empower you to manage cost, time and quality without compromising on implementation requirements. Some of the features offered are:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left: 0.5in;"&gt;&lt;span style=";font-family:Symbol;font-size:10;"  &gt;&lt;span style=""&gt;q&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt; Reduced implementation times and faster return on investment through structured planning and preconfiguration&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Intuitive understanding of the wide range of      functions offered by R/3 &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Process optimization using proven scenarios,      processes and value chains, illustrating clearly the software’s      capabilities and offering practical help when you configure the R/3      System. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p style="margin-left: 0.5in;"&gt;&lt;span style=";font-family:Symbol;font-size:10;"  &gt;&lt;span style=""&gt;q&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt; High quality installations through comprehensive procedural guidelines&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left: 0.5in;"&gt;&lt;span style=";font-family:Symbol;font-size:10;"  &gt;&lt;span style=""&gt;q&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt; Optimizing business processes using SAP Business Workflow, via process monitoring and automation of procedures &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Continuous, dynamic adjustment and      optimization of R/3 applications&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;The capability to copy configured areas, for      example, by transferring existing settings to new organizational units. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;AcceleratedSAP and the Business Engineer are designed for openness and new platforms, using HTML-based documentation. Compatibility with many third-party modeling tools and software packages, for example, Microsoft Excel, is ensured.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;a name="_Toc430155338"&gt;&lt;/a&gt;&lt;a name="_Toc427981648"&gt;&lt;/a&gt;&lt;span style=""&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:18;"  &gt;Available Tools&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:18;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Embarking on an implementation project requires a lot of careful thought beforehand. You need to think about what you want to accomplish, the optimum sequence, and the business cases that are best suited to your needs. But SAP has already done a lot of the thinking for you and packaged its findings in the following tools. They are then described in more detail in the following chapters organized according to the corresponding AcceleratedSAP phases.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;AcceleratedSAP&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt; (ASAP): A      comprehensive solution for the introduction of the R/3 System in your      enterprise. ASAP and most of its tools can be used independently of an R/3      installation. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;  &lt;p style="margin-left: 0.5in;"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;The tools available for AcceleratedSAP are:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;The &lt;b&gt;Project Estimator&lt;/b&gt;, an internal SAP      tool which enables SAP consultants to accurately gauge the required      resources, the costs and the time frame of implementation. The Project      Estimator takes into account the project scope and several project and      risk factors. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;The &lt;b&gt;Concept Check Tool&lt;/b&gt;, a tool enabling      you to carry out quality checks on the project preparation, technical      infrastructure and R/3 configuration settings. This is done mainly during      the first two implementation phases of the R/3 project. In this way you      are alerted to potential data volume and configuration conflicts that      could lead to performance issues if not addressed. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;The &lt;b&gt;Implementation Assistant&lt;/b&gt;: The ASAP      navigation tool that accompanies you through the five phases of      implementation down to the task level. It includes a description and a      detailed "how-to" for each task in the Roadmap. Along with that,      many tools, templates and documents are hyperlinked to the task. The      Implementation Assistant contains the following elements:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;ASAP Implementation Roadmap &lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;and&lt;b&gt; Project Plan&lt;/b&gt;.      The &lt;i&gt;Roadmap &lt;/i&gt;contains the five phases, from which you can drill down      into work packages, activities and tasks. The &lt;i&gt;Project Plan&lt;/i&gt; contains      three components, a budget plan, a resource plan and a work plan. These      are explained in more detail in the next chapter.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p style="margin-left: 1in;"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;The ASAP Roadmap is the successor of the R/3-based Procedure Model, which was used until Rel. 3.1 in R/3 implementation projects.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Knowledge Corner&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;, containing tips and      tricks for configuration from consultants, detailed documentation on SAP’s      implementation services, information on technical tools, as well as      simplification guidebooks and R/3 Customizing wizards.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Question and Answer Database      (Q&amp;amp;Adb). &lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Using      the R/3 Reference Model structure, the Q&amp;amp;Adb is used to assist in      gathering requirements for business processes, conversions, reports,      interfaces, enhancements and authorizations. The database provides useful      questionnaires to help you define the process needs and also serves as a      repository for all this information. Since it is a database, it allows for      flexible reporting. The business requirements generated from the Q&amp;amp;Adb      are collectively known as the &lt;b&gt;Business Blueprint&lt;/b&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Business Process Master List&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;, to manage      configuration, testing and the creation of end user documentation. The      Business Process Master List is linked to pre-written Business Process      Procedures (BPPs), detailled end-user documentation for R/3 transactions. &lt;b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Issues Database&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;: supporting project      management, this database supports the entering, monitoring and managing      of issues that come up during the project.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;ol start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;R/3 Business Engineer: &lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;The implementation      tools for the high-quality configuration of the R/3 System are:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;R/3 Reference Model&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;: Comprehensive      graphical process flows describing the R/3 functionality from different      points of view. It contains scenarios, processes and functions, as well as      components. The R/3 Reference Model can be viewed using SAP's &lt;b&gt;Business      Navigator&lt;/b&gt; and the &lt;b&gt;Business Navigator Web, &lt;/b&gt;or using third-party      modeling tools available from modeling partners. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Implementation Guide &lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;(IMG): Used to      configure all system parameters for the business processes in R/3. It      contains project management functionality and a menu-driven view of all      R/3 Customizing activities. Every activity can be documented in detail,      and responsibilities and statuses can be assigned.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;ol start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Preconfigured systems:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;/ol&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Preconfigured US and Canadian clients:&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt; Provides a head start      on baseline configuration. It includes a preconfigured US/Canadian chart      of accounts, print forms, account determination, units of measure, etc.      The predefined test sequences that are included can be a starting point      for integration testing. &lt;b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Preconfigured industry systems:&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt; A number of complete      preconfigured clients consisting of an industry-specific model and      preconfigured business processes for the needs of a particular industry in      R/3 are available. For more information on preconfigured systems, see the      description of Phase 2, &lt;i&gt;Business Blueprint&lt;/i&gt; or the information on      the IDES System in this chapter.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;&lt;a name="_Toc430155339"&gt;&lt;/a&gt;&lt;a name="_Toc427981649"&gt;&lt;/a&gt;&lt;span style=""&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:18;"  &gt;Continuous Business Engineering&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:18;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;In today’s fast-moving, ever-changing business climate, companies are in a constant state of flux and their mission-critical applications must adapt and evolve at the same speed. If software cannot grow with the needs of a company, the company will quickly find itself in a straightjacket.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Furthermore, an ERP application needs to let you move forward fast, knowing that you can roll back changes without downtime.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;An enterprise's organizational structure and the corresponding R/3 implementation created using the Business Engineer are not "set in concrete", they can be modified at any time. Examples of possible changes, which can be made rapidly include the following:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Addition or removal of entities within the      organization structure (for example, business units, production plants,      warehouses, etc.) &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Introduction of new staff, promotion,      reallocation of work tasks, and maintenance of authorization profiles&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:10;"&gt;Changes to the reporting or cost/profit center structure&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;ul type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;New and concurrent currencies &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Accommodation of changed legal requirements      (for example, new tax rates, new employment legislation) &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Activation or deactivation of R/3 functions &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Optimization of business processes &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;Support for new and multiple versions of R/3&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;In addition, SAP offers a range of services if you want support for some of these changes, for example, conversion services to support mergers and acquisitions. Standard Euro services are a further example of the available services.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;AcceleratedSAP and R/3 Business Engineer take the hassle out of implementation procedures and change management. Modifications can be made at any time, and the compatibility of changes can be verified with other configuration decisions, thus supporting their smooth, trouble-free introduction into the productive system.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;!--[if !supportEmptyParas]--&gt; &lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-6785748947241893433?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/6785748947241893433/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=6785748947241893433' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/6785748947241893433'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/6785748947241893433'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/06/asap-methodology.html' title='ASAP Methodology'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-5914280053803932886</id><published>2008-06-16T02:27:00.001-07:00</published><updated>2008-08-09T01:39:57.597-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Project'/><category scheme='http://www.blogger.com/atom/ns#' term='Real-Time Stuffs'/><title type='text'>SAP Implementation</title><content type='html'>Implementing a package can be a traumatic affair for both the customer and the vendor. Get it wrong and the vendor may get paid late or have to resort to lawyers to get paid and tarnish their reputation. For the company the new package may not work the way they expected, be late or cost a more than budgeted for and take management will take their eye off running their business.&lt;br /&gt;&lt;br /&gt;top five factors to consider would be:&lt;br /&gt;&lt;br /&gt;1. Set up a Project Board,&lt;br /&gt;2. Secure the resources,&lt;br /&gt;3. Complete the GAP Analysis,&lt;br /&gt;4. Have detailed Cut Over Plans,&lt;br /&gt;5. Train the users.&lt;br /&gt;&lt;br /&gt;Taking each one in turn:&lt;br /&gt;&lt;br /&gt;The Project Board&lt;br /&gt;&lt;br /&gt;The correct set up and operation of the Project Board in my view is major factor in the success failure of the project. The Project Board will consist of the stakeholders, key users and the vendor. The Project Board is part of the governance of the project. The Project Board will meet regularly to ensure that the project plans are created and being executed as planned, moves from stage to stage with all the deliverables being signed off is resourced properly.&lt;br /&gt;&lt;br /&gt;The Resources&lt;br /&gt;&lt;br /&gt;Three types of resources are absolutely necessary -- end users, change team and technicians.&lt;br /&gt;&lt;br /&gt;Early involvement by the end users is absolutely necessary, as they will be the ones living with the system for hopefully many years to come. They will want to feel involved in its implementation. Buy in from the end users of the system is absolutely essential if the system is to have a long and stable life in any organisation.&lt;br /&gt;&lt;br /&gt;The Change Team will identify the gaps between the package and the business requirements, re-engineer some of the businesses process to cope with the package, train the users to ensure implementation is smooth as possible into the business.&lt;br /&gt;&lt;br /&gt;The Technical Team will prepare the systems environment for the package, apply any software fixes from the vendor, implement the software in the best way possible for the organisation set up and tune the software for the particular technical environment.&lt;br /&gt;&lt;br /&gt;GAP Analysis&lt;br /&gt;&lt;br /&gt;A through gap analysis will identify the gaps between how the business operates ad its needs against what the package can can't do. For each gap there will be one of three outcomes which must be recorded and actioned, GAP must be closed and customised software can be developed close the gap, GAP must be closed but software cannot be written therefore a workaround is required, GAP does not need to be closed.&lt;br /&gt;&lt;br /&gt;In simple terms:&lt;br /&gt;&lt;br /&gt;Gap means small cracks. In SAP world. In information technology, gap analysis is the study of the differences between two different information systems or applications( ex; existing system or legacy system with Client and new is SAP), often for the purpose of determining how to get from one state to a new state. A gap is sometimes spoken of as "the space between where we are and where we want to be." Gap analysis is undertaken as a means of bridging that space.&lt;br /&gt;Actual gap analysis is time consuming and it plays vital role in blue print stage.&lt;br /&gt;&lt;br /&gt;Cut Over Plans&lt;br /&gt;&lt;br /&gt;Detailed plans need to be developed for cutting over from the old system(s) to the new. Parallel runs of what will happen over the conversion period using test data, convert and watch for a period after wards to ensure nothing unexpected happens.&lt;br /&gt;&lt;br /&gt;Train Users&lt;br /&gt;&lt;br /&gt;Well trained users will support and defend the system on site. Unsupportive users will continually undermine the system and eventually it will be replaced. Therefore the more effort you put into helping the users master the system early the better.&lt;br /&gt;&lt;br /&gt;Difference between the User Exit &amp;amp; Gap analysis.&lt;br /&gt;&lt;br /&gt;Both are quiet a different and has a small relation.&lt;br /&gt;&lt;br /&gt;User exits are standard gate ways provided by SAP to exit the standard code and we can write our own code with the help of ABAP workbench. its not new functionality which we are trying to build in sap but its slight enhancement within the same code.&lt;br /&gt;&lt;br /&gt;Gap analysis is start point of Realization and once blue print is finished we have to find the realization of sap system for client requirment and there will be certain gaps when compared to system fit. Those gaps can be closed either by re-engineering of business process to fit with SAP or we have to use USER exits in case of small deviations or complete enhancements with the help of ABAP to fit with the SAP system.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-5914280053803932886?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/5914280053803932886/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=5914280053803932886' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/5914280053803932886'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/5914280053803932886'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/06/sap-implementation.html' title='SAP Implementation'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-4404437054042289609</id><published>2008-06-16T02:24:00.000-07:00</published><updated>2008-08-09T01:22:10.395-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SAP architecture'/><title type='text'>SAP LANDSCAPE</title><content type='html'>Landscape is like a server system or like a layout of the servers or some may even call it the architecture of the servers viz. SAP is divided into three different lanscape DEV, QAS and PROD.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;DEV would have multiple clients for ex: 190- Sandbox, 100- Golden, 180- Unit Test.&lt;br /&gt;&lt;br /&gt;QAS may again have mutiple clients for ex: 300- Integration Test, 700 to 710           Training.&lt;br /&gt;&lt;br /&gt;PROD may have something like a 200 Production.&lt;br /&gt;&lt;br /&gt;These names and numbers are the implementer's discreet on how they want it or they have been using in their previous implementations or how is the client's business scenario.&lt;br /&gt;&lt;br /&gt;Now whatever you do in the Sandbox doesn't affect the other servers or clients. Whenever you think you are satisfied with your configuration and you think you can use it moving forward, you RE-DO it in the golden client (remember, this is a very neat and clean client and you cannot use it for rough usage).&lt;br /&gt;&lt;br /&gt;As you re-do everything that you had thought was important and usable, you get a transport request pop up upon saving everytime. You save it under a transport request and give your description to it. Thus the configuration is transported to the Unit Test client (180 in this example).&lt;br /&gt;&lt;br /&gt;You don't run any transaction or even use the SAP Easy Access screen on the 100 (golden) client. This is a configuration only client. Now upon a successful tranport by the Basis guy, you have all the configuration in the Testing client, just as it is in the Golden client. The configuration remains in sync between these two clients.&lt;br /&gt;&lt;br /&gt;But in the Testing client you can not even access SPRO (Display IMG) screen. It's a transaction only client where you perform the unit test. Upon a satisfactory unit test, you move the good configuration to the next SERVER (DEV).&lt;br /&gt;&lt;br /&gt;The incorrect or unsatisfactory configuration is corrected in Golden (may again as well be practised in the sandbox prior to Golden) and accordingly transported back to 180 (Unit Test) until the unit test affected by that particular config is satisfactory.&lt;br /&gt;&lt;br /&gt;The Golden client remains the 'database' (if you wanna call it that) or you may rather call it the 'ultimate' reference client for all the good, complete and final configuration that is being used in the implementation.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;In summary:&lt;br /&gt;&lt;br /&gt;Landscape : is the arrangement for the servers&lt;br /&gt;&lt;br /&gt;IDES : is purely for education purpose and is NOT INCLUDED in the landscape.&lt;br /&gt;&lt;br /&gt;DEVELOPMENT ---&gt; QUALITY ----&gt; PRODUCTION&lt;br /&gt;&lt;br /&gt;DEVELOPMENT : is where the the consultants do the customization as per the company's requirement.&lt;br /&gt;&lt;br /&gt;QUALITY : is where the core team members and other members test the customization.&lt;br /&gt;&lt;br /&gt;PRODUCTION : is where the live data of the company is recorded.&lt;br /&gt;&lt;br /&gt;A request will flow from Dev-&gt;Qual-&gt;Prod and not backwards.&lt;br /&gt;&lt;br /&gt;1. Sandbox server:&lt;br /&gt;&lt;br /&gt;In the initial stages of any implementation project, You are given&lt;br /&gt;a sandbox server where you do all the configuration/customization as per the companies business process.&lt;br /&gt;&lt;br /&gt;2. Development Server:&lt;br /&gt;&lt;br /&gt;Once the BBP gets signed off, the configuration is done is development server and saved in workbench requests, to be transported to Production server.&lt;br /&gt;&lt;br /&gt;3. Production Server:&lt;br /&gt;&lt;br /&gt;This is the last/ most refined client where the user will work after project GO LIVE. Any changes/ new develpoment is done is development client and the request is transported to production.&lt;br /&gt;&lt;br /&gt;These three are landscape of any Company. They organised their office in these three way. Developer develop their program in Development server and then transport it to test server. In testing server tester check/test the program and then transport it to Production Server. Later it will deploy to client from production server.&lt;br /&gt;&lt;br /&gt;Presentaion Server- Where SAP GUI have.&lt;br /&gt;Application Server - Where SAP Installed.&lt;br /&gt;Database Server - Where Database installed.&lt;br /&gt;&lt;br /&gt;What is the meaning of "R" in R/3 systems?&lt;br /&gt;&lt;br /&gt;R/3 stands for realtime three tier architecture. This is the kind of architrecture SAP R/3 system has.&lt;br /&gt;&lt;br /&gt;R/3 means three layers are installed in Different system/server and they are connected with each other.&lt;br /&gt;&lt;br /&gt;1)Presentation&lt;br /&gt;2)Application.&lt;br /&gt;3)Data base server.&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-4404437054042289609?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/4404437054042289609/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=4404437054042289609' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/4404437054042289609'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/4404437054042289609'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/06/sap-landscape.html' title='SAP LANDSCAPE'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-6728338572963673452</id><published>2008-06-16T02:22:00.001-07:00</published><updated>2008-08-09T01:18:08.827-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Reports'/><category scheme='http://www.blogger.com/atom/ns#' term='Data Dictionary'/><title type='text'>LOGICAL DATABASES</title><content type='html'>In general, the system reads data that will appear in a list from the database.&lt;br /&gt;&lt;br /&gt;You can use OPEN SQL or NATIVE SQL statements to read data from the database.&lt;br /&gt;&lt;br /&gt;The use of a logical database provides you with an alternative to having to program database accesses individually. Logical databases retrieve data records and make them available to ABAP programs.&lt;br /&gt;&lt;br /&gt;The same logical database can be the data source for several Quick Views, queries, and programs. In the Quick View, the LDB can be specified directly as a data source. A query works with the logical database when the functional area that generated the query is defined with a logical database. In the case of type 1 programs, the LDB is entered in the attributes or called using function module LDB_PROCESS. See appendix for information on how to use the function module.&lt;br /&gt;&lt;br /&gt;Logical databases offer several advantages:&lt;br /&gt;&lt;br /&gt;The system generates a selection screen. The use of selection screen versions or variants provides the required flexibility.&lt;br /&gt;&lt;br /&gt;The user does not have to know the exact structure of the tables involved (especially the foreign key dependencies); the data is made available in the correct order at GET events.&lt;br /&gt;&lt;br /&gt;Performance improvements within logical databases directly affect all programs linked to the logical database, without having to change the programs themselves.&lt;br /&gt;&lt;br /&gt;Maintenance can be performed at a central location.&lt;br /&gt;&lt;br /&gt;Authorization checks can also be performed centrally.&lt;br /&gt;&lt;br /&gt;A logical database is an ABAP program that reads predefined data from the database and makes it available to other programs.&lt;br /&gt;&lt;br /&gt;A hierarchical structure determines the order in which the data is supplied to the programs. A logical database also provides a selection screen that checks user entries and conducts error dialogs. These can be extended in programs.&lt;br /&gt;&lt;br /&gt;SAP provides some 200 logical databases in Release 4.6. The names of logical databases have been extended to 20 places in Release 4.0 (namespace prefix max. 10 characters).&lt;br /&gt;&lt;br /&gt;In the case of executable programs, you can enter a logical database in the attributes.&lt;br /&gt;&lt;br /&gt;Use the NODES &lt;node&gt; statement to specify the nodes of the logical database that You want to use in the program. NODES allocates the appropriate storage space for the node - that is, a work area or a table area depending on the node type.&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;The logical database makes the data records available for the corresponding GET events. &lt;/node&gt;&lt;br /&gt;&lt;node&gt;The sequence in which these events are processed is determined by the structure of the logical database.&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;Logical databases are made up of several sub-objects. The structure determines the hierarchy, and thus the read sequence of the data records.&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;Node names can contain up to 14 characters. There are four different node types.&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;Table (type T): The node name is the name of a transparent table (this type corresponds to the concept prior to Release 4.0A). The table name must be identical to the node name. Deep types (complex) are not allowed.&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;DDIC type (type S): Any node name is possible. It is assigned a structure or a table type from the Dictionary. The node name can differ from the type name. Deep structures are possible.&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;Type groups (type C): The node type is defined in a type group. The name of the type group must be maintained in the "Type group" field. You should generally prefer DDIC types, as the other applications that use the logical database (such as SAP Query) can access them (short texts, and so on).&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;Dynamic nodes (type A): These nodes do not have a fixed type; they are not classified until the program runtime. Which types are generally allowed is determined when the structure is created.&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;Nodes are declared using language element NODES.&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;Processing blocks are always allocated to an event. A processing block is closed by the next event key word, the start of form routines, or by the end of the program.&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;The START-OF-SELECTION event is triggered before control is given to the read routine of the logical database. The END-OF-SELECTION event is triggered after all GET events have been processed - that is, all data records have been read and processed.&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;The GET &lt;node&gt; event is triggered whenever the logical database supplies data for this node. This means that GET events are processed several times, and that data has already been read from the database for these events. The sequence in which the GET events are processed is determined by the structure of the logical database.&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;The GET &lt;node&gt; LATE event is triggered when all subordinate nodes of node &lt;node&gt; have been processed, before the data is read for the next &lt;node&gt;; that is, whenever a hierarchy level has been completed.&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;At the start of the event, the system automatically adds a line feed and configures the default formats (for example, INTENSIFIED ON).&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;CHECK statements end the current processing block.&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;STOP statements end program processing. However, in contrast to the EXIT statement, the processing block END-OF-SELECTION is processed first (if it exists).&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;If there is a STOP statement within the END-OF-SELECTION processing block, program processing ends immediately and a list is displayed.&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;The EXIT statement exits the program and displays the list.&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;You can also use the REJECT statement. The data record is not processed further. Processing continues on the same hierarchy level when the next data record is read. REJECT, unlike the CHECK statement, can also be used within a subroutine.&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;Use the selection include db&lt;name&gt;sel to define selection screens for logical databases. The addition FOR NODE assigns selections to individual logical nodes. The appearance of a selection screen thus directly depends on the NODES statement contained within your program.&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;A field selection can be defined for the individual nodes. To do this, you have to specify the addition FIELD SELECTION FOR NODE in the SELECTION-SCREEN statement. You can then use GET &lt;node&gt; FIELDS &lt;field list=""&gt; to restrict the amount of data returned.&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;You can designate individual nodes for dynamic selection using the addition DYNAMIC SELECTIONS FOR NODE. The Dynamic selection pushbutton then appears on your selection screen. You can determine which selection fields can be set by choosing a particular selection view yourself (type: CUS) or by using the selection view delivered by SAP (type: SAP).&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;With large logical databases you can define several selection screen versions. Each selection screen version contains a subset of your selection criteria (language element: EXCLUDE). Specify the name of a selection screen version in the program attributes.&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;When you enter a logical database in the attributes of your type 1 program, the system processes the selection screen of the logical database. The concrete characteristics of the selection screen depend upon the node specified in the NODES statement. If you specify a node of type T (table), you can also declare the table work area with the TABLES statement.&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;If you address only subordinate nodes (in the hierarchy) of the logical database in the program (for example sflight), the selection screen criteria for the superior node in the hierarchy (spfli) also appear. You can thus restrict the dataset to be read so that it meets your specific requirements.&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;Note: A logical database always reads in accordance with its structure. This means that if you only need data from a node deep in the hierarchy, you will achieve better performance by programming the access yourself. This avoids unnecessary reading of the database.&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;If the logical database supports dynamic selections, the pushbutton for Dynamic selections appears on the selection screen. When the user presses this button, a second selection screen is displayed.&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;This screen allows the user to select additional database fields. The system transfers the selections directly to the logical database program and therefore to the database (dynamic selections).&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;he selection view determines which fields are displayed on the selection screen. Create your own view with type CUS, and have it override the view with type SAP.&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;Database program sapdb&lt;ldbname&gt; for logical database &lt;ldbname&gt; is a collection of subroutines, each of which is performed for specific events. For example, subroutine &lt;init&gt; is processed once at the start of the database program. This program can be used to define default values for the selection screen of the LDB.&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;Other subroutines also exist that are processed during events PBO (Process Before Output) and PAI (Process After Input) of the selection screen. Checks, such as authorization checks (AUTHORITY-CHECK), are usually performed during event PAI.&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;The database accesses (SELECT statements) are programmed in the put_&lt;node&gt; subroutines. These subroutines may be processed several times, depending on which selection criteria the user specifies. The sequence in which these subroutines are processed is determined by the structure of the logical database.&lt;/node&gt;&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;&lt;node&gt;&lt;/node&gt;&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;&lt;node&gt;Database access (SELECT statements) should be programmed with optimal performance in mind. When creating a logical database you generate the corresponding database program after first having determined its structure and selection attributes. You can find performance tips in the comment lines.&lt;/node&gt;&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;&lt;node&gt;&lt;/node&gt;&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;&lt;node&gt;When a program that has been assigned a logical database is started, control is initially passed to the database program of the logical database. Each event has a corresponding subroutine in the database program - for example, subroutine init for event INITIALIZATION. During the interaction between the LDB and the associated program, the subroutine is always processed first, followed by the event (if there is one in the report).&lt;/node&gt;&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;&lt;node&gt;&lt;/node&gt;&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;&lt;node&gt;Logical database programs read data from a database according to the structure declared for the logical database. They begin with the root node and then process the individual "branches" consecutively from top to bottom.&lt;/node&gt;&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;&lt;node&gt;&lt;/node&gt;&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;&lt;node&gt;The logical database reads the data in the put_&lt;node&gt; subroutines. During event PUT, control is passed from the database program to the GET event of the associated report.&lt;/node&gt;&lt;/node&gt;&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;&lt;node&gt;&lt;node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;&lt;node&gt;&lt;node&gt;The data is made available in the corresponding work areas in the report. The processing block defined for the GET event is performed. Control then returns to the logical database.&lt;/node&gt;&lt;/node&gt;&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;&lt;node&gt;&lt;node&gt;PUT activates the next form subroutine found in the structure. This flow is continued until the report has collected all the available data.&lt;/node&gt;&lt;/node&gt;&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;&lt;node&gt;&lt;node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;&lt;node&gt;&lt;node&gt;The depth of data read in the structure depends upon a program's GET events. A logical database reads to the lowest GET event contained within the structure attributes. Only those GET events for which processing is supposed to take place are written into the report program. Logical databases read all data records found on the direct access path.&lt;/node&gt;&lt;/node&gt;&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;&lt;node&gt;&lt;node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;&lt;node&gt;&lt;node&gt;If you specify a logical database and declare additional selections in the program attributes that refer to the fields of a node not designated for dynamic selection, you must use the CHECK &lt;seltab&gt; statement to see if the current data record fulfills the selection criteria.&lt;/seltab&gt;&lt;/node&gt;&lt;/node&gt;&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;&lt;node&gt;&lt;node&gt;&lt;seltab&gt;&lt;/seltab&gt;&lt;/node&gt;&lt;/node&gt;&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;br /&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;node&gt;&lt;name&gt;&lt;node&gt;&lt;field list=""&gt;&lt;ldbname&gt;&lt;ldbname&gt;&lt;init&gt;&lt;node&gt;&lt;node&gt;&lt;seltab&gt;If the data record does not fulfill these selection criteria, current event block processing ends.&lt;/seltab&gt;&lt;/node&gt;&lt;/node&gt;&lt;/init&gt;&lt;/ldbname&gt;&lt;/ldbname&gt;&lt;/field&gt;&lt;/node&gt;&lt;/name&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;/node&gt;&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-6728338572963673452?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/6728338572963673452/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=6728338572963673452' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/6728338572963673452'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/6728338572963673452'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/06/logical-databases.html' title='LOGICAL DATABASES'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-4505594195025824583</id><published>2008-06-16T02:19:00.000-07:00</published><updated>2008-08-09T01:09:06.057-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Real-Time Stuffs'/><title type='text'>Understanding TICKETS in SAP</title><content type='html'>Handling tickets is called Issue Tracking system. The errors or bugs forwarded by the end user to the support team are prioritized under three seviority High, Medium and Low.&lt;br /&gt;&lt;br /&gt;Each and every seviority as got its time limits before that we have to fix the error.&lt;br /&gt;The main job of the supporting consultant is to provide assistance on line to the customer or the organisation where SAP is already implemented for which the person should be very strong in the subject and the process which are implemented in SAP at the client side to understand,to analyse,to actuate and to give the right solution in right time.This is the job of the support consultant.&lt;br /&gt;&lt;br /&gt;The issues or the tickets(problems) which are arised is taken care of on priority basis by the support team consultants.&lt;br /&gt;The work process in support projects are given below for your reference.&lt;br /&gt;&lt;br /&gt;1. The customer or the end user logs a call through any tool or by mail (RADIX).&lt;br /&gt;2. Each one of the support team is a part of support group.&lt;br /&gt;3. Whenever a customer logs a call he /she has to mention to which work group (by name).&lt;br /&gt;4. Once the calls came to the work group the support consultant or the team need to send an IR (Initial Response) to the user depending upon the priority of the calls. (Top,High,Med,Low,None)&lt;br /&gt;5. Then the error is fixed, debugged by the support consultant or the team. Then after testing properly by generating TR(Transport Request through the basis admin)&lt;br /&gt;6. Then it is informed to the end user/customer/super user about the changes which have moved to the production server by CTS process.&lt;br /&gt;These are the process. In summary, what I understand is that if any configuration or customization is required to solve the issue, then the consultant have to work on DEV Client, then the end user will test it in the QA client and after approval the BASIS consultant has to transport it to the PRODUCTION&lt;br /&gt;client.&lt;br /&gt;An example:&lt;br /&gt;Tickets in SD can be considered as the problems which the end user or the employee in the company face while working on R/3. Tickets usually occur during the implementation or after the implementation of the project. There can be numerous problem which can occur in the production&lt;br /&gt;support and a person who is working in the support has to resolve those tickets in the limited duration,&lt;br /&gt;every ticket has the particular deadline alert so your responsibility is to finish it before that deadline.&lt;br /&gt;&lt;br /&gt;To begin with , we should give "TICKET" to you for not knowing it.&lt;br /&gt;Here is an eg of a ticket raise:&lt;br /&gt;End user is not able to&lt;br /&gt;&lt;br /&gt;1. Create Sales order for a customer from a New plant , since shipping point determination is not&lt;br /&gt;happened . ( Without Shipping point the document becomes INCOMPLETE and he will not be able to&lt;br /&gt;proceed further like DELIVERY, BILLING).&lt;br /&gt;He raises a ticket and the priority is set in one of the below:&lt;br /&gt;&lt;br /&gt;1. Low 2. Medium 3. High.&lt;br /&gt;Now you need to solve this ticket. You would analyze the problem and identify that the SP configuration has to be done for the new plant.&lt;br /&gt;You would request a transport for DEV CLIENT to BASIS. You do the change and Request one more Transport to BASIS for QA client. The End user will test the same by creating a sales order for the new plant and approve it.&lt;br /&gt;Finally, you request a transport to move the changes to PRODUCTION. Once the change is deployed in production the TICKET is closed. What I have given is a small example. You would get some real issues with severity HIGH in your day-day support.&lt;br /&gt;&lt;br /&gt;In maintenance and Support projects what happens is if a customer is facing any problem while executing any particular transaction or report etc .&lt;br /&gt;&lt;br /&gt;He calls up the Call center (help desk) and explains the problem and the help desk ppl will create a ticket based on the users requirement.these ticket are assigned to&lt;br /&gt;&lt;br /&gt;1. User will encounter a error/problem&lt;br /&gt;2. User will call up the Help desk.&lt;br /&gt;3. Help desk will take the inputs from the user and routes it to the&lt;br /&gt;concerned group (technical or functional).&lt;br /&gt;4. Technical guys will accept the ticket taking the ownership and will work on that.&lt;br /&gt;5. He solves the issue and sends a mail to the user for conmfirmation.&lt;br /&gt;6. After users confimation the ticket will be closed by the technical or functional&lt;br /&gt;consultant.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;tickets(A number ) is a Incident that is created for a issue that is asked by a client .. Let us say you are working in suppot and client asks you to do some changes to a report.&lt;br /&gt;we will create a ticket and update the ticket with the client requirment and also the progress of the work that is being done on that ticket and the time that you have spent on doing the changes or resolving that ticket.&lt;br /&gt;&lt;br /&gt;Different company uses differnt incident manament system for the tracking the time spent by a consultant on the issue.. and the terminology varies from company to company.. some one say it a ticket, token,incident, task..&lt;br /&gt;&lt;br /&gt;Few of the used incident managment softwares are Remedy, Symergy, PMT, Lotus Note..&lt;div class="blogger-post-footer"&gt;One Stop for all SAP related discussions...&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7340973092627485257-4505594195025824583?l=sapchamps.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sapchamps.blogspot.com/feeds/4505594195025824583/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7340973092627485257&amp;postID=4505594195025824583' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/4505594195025824583'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7340973092627485257/posts/default/4505594195025824583'/><link rel='alternate' type='text/html' href='http://sapchamps.blogspot.com/2008/06/understanding-tickets-in-sap.html' title='Understanding TICKETS in SAP'/><author><name>Satyabrata Sahoo</name><uri>http://www.blogger.com/profile/15220736251899391567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_xXiFfhO31BQ/SMFRcBOosJI/AAAAAAAACNU/v2RMBoq6pfI/S220/123.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7340973092627485257.post-5585679435584488442</id><published>2008-06-16T02:08:00.000-07:00</published><updated>2008-08-09T01:09:51.001-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Real-Time Stuffs'/><title type='text'>ABAP PROJECT OVERVIEW</title><content type='html'>MANAGING ABAP PROJECT OBJECT-ABAP PROJECT OVERVIEW:&lt;br /&gt;&lt;br /&gt;TeamSAP is the coordinated network of people, processes &amp;amp; products from SAP &amp;amp; partners that delivers fast, integrated and assured solutions over time.&lt;br /&gt;&lt;br /&gt;There are three key components: People, Processes, and Products.&lt;br /&gt;&lt;br /&gt;The people component represents SAP and its partners. Any R/3 implementation team is usually composed of multiple organizations which bring different skills to the table.&lt;br /&gt;&lt;br /&gt;Our objective with TeamSAP is to ensure that the right vendor skills are coordinated, at the right time, with appropriate quantities and management.&lt;br /&gt;&lt;br /&gt;The product, SAP’s Business Framework, is a vital piece of TeamSAP because it’s the platform on which SAP and non-SAP applications work together. It also provides the flexibility to change over time and includes R/3 business components, integration technologies, and open interfaces that allow R/3 and complementary partner software to operate together.&lt;br /&gt;Third party software and hardware products are certified by SAP within this infrastructure. Certification programs for TeamSAP partners that are part of the Business Framework include Joint Development Partners, Certified Interfac
