SAP ABAP MATERIALS

SAP PRESS EBOOKS,INSTITUTE MATERIALS,SUPPORT ISSUES,TICKETTING TOOLS

1463988 10202039058114141 1070888609 n

SAP ABAP MATERIALS DOWNLOADS

REPORTS,INTERFACES,BATCH DATA COMMUNICATION PROGRAMMING,ENHANCEMENTS,SCRITS,SMART-FORMS,MODULE POOL PROGRAMING.

SAP ABAP MATERIALS

CLASS ROOM TEACHING MATERIALS

sap web gui login

http://molgaard.consolut.eu/sap/bc/gui/sap/its/webgui

Sunday, July 27, 2014

Page protection in Smart Forms

Introduction

This article covers the usage of Page Protection which is very much useful in Smart forms. 
Here I have created 2 texts to describe the usage of Page Protection. I have also described that what will be the output of the displayed scenario if we don't check in the Page Protection Check box(i.e. if we don't use Page Protection Option).


Steps

Step 1: Go to T-code SMARTFORMS, give the smart form name you want to create and then click on create button. For reference do it as given below.












Step 2: Once you create your smart form, you can see the details of it in this screen.














Step 3: Open Node Pages and Windows Node, %PAGE1 New Page, MAIN Main Window and create 2 texts by right clicking on the MAIN Window as shown below.





































Step 4: Go to Text Element of First Text (TEXT_PAGE1) and give below information or the information you want to print on the first page of smart form.























Step 5: Go to Text Element of Second Text (TEXT_PAGE2) and give below information or the information you want to print on the second page of smart form.






















Step 6: Double click on the second text (TEXT_PAGE2) and go to tab Output Options. Here the Page Protection check box is not marked 







Step 7: Save, Check and Activate the smart form. Click on the Print Preview to see the output as shown below [ Note : Here First few  Second Page (TEXT_PAGE2)  text elements are coming in the First page as the Page Protection is not marked  and rest are coming the second page]




















Second text contents appearing in the first page  














Step 8: Double click on the second text (TEXT_PAGE2) and go to tab Output Options. Here we have to make sure that the Page Protection check box is marked








Step 9: Save, Check and Activate the smart form. Click on the Print Preview to see the output as shown below [ Note : Here First Page (TEXT_PAGE1)  text elements are coming in the First page  and Second Page (TEXT_PAGE2)  text elements are coming in the Second page  as the Page Protection is marked.






































 Summary

Page Protection is used to avoid displaying the broken contents of the page and allow it to display in the new page from the beginning after the previous page. E.g. I have two texts available and i want to display them in two different pages without any break in any of the page contents.  But here if we don't use Page Protection then first text will be displayed in first page and if some space is available in the first page then second text also will get started after the first text contents (few lines) in the first page itself, it will break the second text contents and the rest of the lines of the second text it will display in the second page. If we use Page Protection then First text contents will be displayed in the first page and without any break of the second text contents, it will be displayed in a new page i.e. in the second page.

Friday, July 25, 2014

Code Inspector

Code Inspector

Features
The Code Inspector is a tool for checking static ABAP coding and DDIC objects (i.e. generally all objects of the Object Repository) under
aspects of functional correctness, performance, security, reliability, and statistical information.
It helps developers to adhere to programming standards and guidelines by creating messages on less-than-optimal coding. The Code
Inspector offers various possibilities to define object sets and to combine multiple single checks in so-called "check variants". These
functions, and the tool's parallel processing framework, make the Code Inspector a flexible and effective development assistant.
The Code Inspector can be used in various scenarios with different types of checks, thus providing insights into the code quality from
various angles.
Usage scenarios
1. Single object checks from the Development Workbench
You can check a single object with the Code Inspector from the ABAP Editor (transaction SE38), the Function Builder
(transaction SE37), the Class Builder (transaction SE24), or the ABAP Data Dictionary (transaction SE11). To do this, choose
<object> > Check > Code Inspector from the menu, w here <object> can be a program, function module, class, or table. The
respective single objects are then checked with a default check variant.
2. Checks on transport objects from the Transport Organizer
You can invoke the Code Inspector from w thin the Transport Organizer (transaction SE09) to check objects in a transport
request. To do this, choose Request/Task > Complete Check > Objects (Syntax Check).
3. Checks on sets of objects from transaction SCI
The Code Inspector (transaction SCI) itself enables you to create a wide range of object sets using standard selections via
package, software and application component, source system, transport layer, responsible, object type, object name and so on.
In addition, special object collectors are available that allow you to read objects from a file, for example.
An object set can be combined with a check variant to a so-called "inspection" that can be executed in a single process or in
parallel. For a more details see Code Inspector User Manual
Types of checks and check variants
Below is a short extract of the types of checks and functions that are offered by Code Inspector. New checks can be implemented if
required, see for example Code Inspector - How to create a new check.
ABAP Test Cockpit
Syntax
Syntax check; extended program check
Performance
Analysis of WHERE clauses for SELECT, UPDATE and DELETE; SELECT statements that bypass the table buffer; Low performance
operations on internal tables ; table attributes check
Security
Usage of critical statements; dynamic and cross-client database accesses; use of ADBC-interface
Robustness
Check of SY-SUBRC handling; suspect conversions; activation check for DDIC objects
Programming Conventions
Naming conventions
Search Functions
Search of ABAP tokens; search ABAP statement patterns; search for ABAP statements with regular expressions
Metrics and Statistics
Program complexity test; statement statistics
You can combine any of these single checks into so-called "check variants", for example to check for the adherence to given
programming guidelines.
Best Practices
Developers can use the Code Inspector to support their everyday work. For example, the search functions or metric checks of the tool
can be a great help w hen restructuring the code.
The Code Inspector allow s developers to define which objects are to be checked and which quality aspect of the code is to be
inspected (e.g. performance, security).
It is also possible to define global check variants as general programming guidelines, to ensure standardized programming within a
development community. Check variants can prescribe for example naming conventions or other rules. The global check variants
'DEFAULT' and 'TRANSPORT' inspect objects in the development workbench and in transport requests, respectively. These check

Code Inspector's Performance Checks
Analysis of the WHERE clause for SELECT, UPDATE and
DELETE
SELECT statements that bypass the table buffer
Low performance operations on internal tables
Table attributes check
3/4/2014 Code Inspector - ABAP Development - SCN Wiki
http://wiki.scn.sap.com/wiki/display/ABAP/Code+Inspector 2/2
'DEFAULT' and 'TRANSPORT' inspect objects in the development w orkbench and in transport requests, respectively. These check
variants contain SAP-defined settings, but can be modified as needed.
Another global check variant delivered w ith every SAP system is 'PERFORMANCE_CHECKLIST' w hich helps to detect less-than-optimal
coding w ith regard to application performance.
Related tools
ABAP Test Cockpit (ATC) : ABAP check toolset w hich allow s running static checks and unit tests for your ABAP development
objects
Syntax checks: standard syntax check is integrated into the ABAP editor. Extended syntax check (transaction SLIN)
Dynamic performance checks: performance trace (transaction ST05 ) for SQL (database access) / SAP enqueue / RFC trace
analysis, ABAP runtime trace (transaction SAT or ABAP profiler) for application code
Performance in a system landscape: global performance analysis (transaction ST30)

Thursday, July 24, 2014

Enhancement Framework


  Click here to view

Wednesday, July 23, 2014

Efficient databaseprogrammingwithabap

Secondary Indexes
by Suresh Kumar Parvathaneni

Consider the following example:
SELECT * FROM SPFLI
  %_HINTS ORACLE 'INDEX("SPFLI" "SPFLI~001")'
.......
ENDSELECT.

In the above example, 001 is the secondary index of the table SPFLI. It's a well-known fact that the efficient way of retrieving data from the database tables is by using secondary indexes. Many database vendors provide the optimizer hints for the same. From SAP® v4.5, optimizer hints can be provided by the %_HINTS parameter. This is dependent on the database systems that support optimizer hints. The point to be noted here is these optimizer hints are not standardized by the SQL standards. Each database vendor is free to provide the optimizer hints.
Now to know which index to use for our table:
1. Go to SE11 and there specify the table name
2. Now from the menu, goto --> indexes
3. select the required index.

Now suppose that the identifier 001 represents a non-unique secondary index comprising of the columns CITYFROM and CITYTO. The index name should be defined as:
 <tablename>~<Index Identifier>
like SPFLI~001 in the above example.
The sequence of fields in the WHERE condition is of no relevance in using this optimizers index. If you specify hints incorrectly, ABAPTM ignores them but doesn't return a syntax error or runtime error.
The code was written in R/3 4.6C.

Code

Consider the following example:
REPORT Suresh_test.

TABLES: spfli.

DATA : t_spfli LIKE spfli OCCURS 0 WITH HEADER LINE.

SELECT * FROM spfli
  INTO TABLE t_spfli
  %_HINTS ORACLE 'INDEX("SPFLI" "SPFLI~001")'.

LOOP AT t_spfli.
  WRITE :/ t_spfli.
ENDLOOP.


OOABAP

SD flow with t-codes and tables in SAP


SD flow with t-codes and tables in SAP


Below is the standard sales and distribution(SD) document flow in SAP .
INQUIRY
VA11 is the T-code for inquiry and related tables are VBAK, VBAP.Once inquiry is done customer requests
quotation.

QUOTATION
T-code for quotation in VA21, tables are VBAK, VBAP.After quotation flow goes for purchase order.

PURCHASE ORDER
Purchase order t-code is ME21N, related tables are EKKO, EKPO.Based on purchase order sales order
will be created.

SALES ORDER
Sales order t-code is VA01, related tables are VBAK, VBAP. Once sales order is created, delivery will be done.

DELIVERY
T-code for delivery order is VL01N, tables are LIKP, LIPS. Next the goods should be delivered through shipping

SHIPPING
Shipping t-code is VT01, related tables are VTTK, VTTP. Once goods are shipped, go for billing.

BILLING
Billing t-code is VF01, tables are VBRK,VBRP. Every bill has invoice...next provide invoice.

INVOICE
Invoice t-code is VF21, related tables are VBRK, VBRP. Invoice end of sales flow.